Back to index

lightning-sunbird  0.9+nobinonly
nsIAutoCompleteResultTypes.idl
Go to the documentation of this file.
00001 /* ***** BEGIN LICENSE BLOCK *****
00002  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
00003  *
00004  * The contents of this file are subject to the Mozilla Public License Version
00005  * 1.1 (the "License"); you may not use this file except in compliance with
00006  * the License. You may obtain a copy of the License at
00007  * http://www.mozilla.org/MPL/
00008  *
00009  * Software distributed under the License is distributed on an "AS IS" basis,
00010  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
00011  * for the specific language governing rights and limitations under the
00012  * License.
00013  *
00014  * The Original Code is Mozilla Communicator client code.
00015  *
00016  * The Initial Developer of the Original Code is
00017  * Netscape Communications Corporation.
00018  * Portions created by the Initial Developer are Copyright (C) 1998
00019  * the Initial Developer. All Rights Reserved.
00020  *
00021  * Contributor(s):
00022  *   Joe Hewitt <hewitt@netscape.com> (Original Author)
00023  *
00024  * Alternatively, the contents of this file may be used under the terms of
00025  * either the GNU General Public License Version 2 or later (the "GPL"), or
00026  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
00027  * in which case the provisions of the GPL or the LGPL are applicable instead
00028  * of those above. If you wish to allow use of your version of this file only
00029  * under the terms of either the GPL or the LGPL, and not to allow others to
00030  * use your version of this file under the terms of the MPL, indicate your
00031  * decision by deleting the provisions above and replace them with the notice
00032  * and other provisions required by the GPL or the LGPL. If you do not delete
00033  * the provisions above, a recipient may use your version of this file under
00034  * the terms of any one of the MPL, the GPL or the LGPL.
00035  *
00036  * ***** END LICENSE BLOCK ***** */
00037 
00038 #include "nsIAutoCompleteResult.idl"
00039 
00040 interface nsIMdbTable;
00041 interface nsIMdbEnv;
00042 interface nsIMdbRow;
00043 
00044 %{ C++
00045 #include "mdb.h"
00046 %}
00047 
00048 native mdb_scope(mdb_scope);
00049 native mdb_column(mdb_column);
00050 
00051 /* noscript */
00052 [uuid(e6396544-921d-4776-aa62-8bf2dc1ae058)]
00053 interface nsIAutoCompleteBaseResult : nsIAutoCompleteResult
00054 {
00055   void setSearchString(in AString searchString);
00056   void setErrorDescription(in AString errorDescription);
00057   void setDefaultIndex(in long defaultIndex);
00058   void setSearchResult(in unsigned long searchResult);
00059 };
00060 
00061 /* noscript */
00062 [uuid(f7e7b341-2d5c-4d04-9f51-496cb2ce178c)]
00063 interface nsIAutoCompleteMdbResult : nsIAutoCompleteBaseResult
00064 {
00065   const short kUnicharType = 0;
00066   const short kCharType    = 1;
00067   const short kIntType     = 2;
00068 
00069   void init(in nsIMdbEnv env, in nsIMdbTable table);
00070 
00071   void setTokens(in mdb_scope valueToken, in short valueType,
00072                in mdb_scope commentToken, in short commentType);
00073 
00074   void addRow(in nsIMdbRow row);
00075 
00076   nsIMdbRow getRowAt(in unsigned long rowIndex);
00077 
00078   AString getRowValue(in nsIMdbRow row, in mdb_column col);
00079 
00080   AUTF8String getUTF8RowValue(in nsIMdbRow row, in mdb_column col);
00081 
00082   long getIntRowValue(in nsIMdbRow row, in mdb_column col);
00083 };
00084 
00085 /* noscript */
00086 [uuid(148C9DC5-0FBB-408B-80FE-544F6A85B433)]
00087 interface nsIAutoCompleteMdbResult2 : nsIAutoCompleteMdbResult
00088 {
00089   attribute boolean reverseByteOrder;
00090 };