summaryrefslogtreecommitdiffstats
path: root/extensions/spellcheck/idl/mozISpellCheckingEngine.idl
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/spellcheck/idl/mozISpellCheckingEngine.idl')
-rw-r--r--extensions/spellcheck/idl/mozISpellCheckingEngine.idl96
1 files changed, 96 insertions, 0 deletions
diff --git a/extensions/spellcheck/idl/mozISpellCheckingEngine.idl b/extensions/spellcheck/idl/mozISpellCheckingEngine.idl
new file mode 100644
index 000000000..95784b141
--- /dev/null
+++ b/extensions/spellcheck/idl/mozISpellCheckingEngine.idl
@@ -0,0 +1,96 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+#include "nsISupports.idl"
+
+interface nsIFile;
+interface mozIPersonalDictionary;
+
+[scriptable, uuid(8ba643a4-7ddc-4662-b976-7ec123843f10)]
+
+/**
+ * This interface represents a SpellChecker.
+ */
+
+interface mozISpellCheckingEngine : nsISupports {
+ /**
+ * The name of the current dictionary. Is either a value from
+ * getDictionaryList or the empty string if no dictionary is selected.
+ * Setting this attribute to a value not in getDictionaryList will throw
+ * NS_ERROR_FILE_NOT_FOUND.
+ *
+ * If the dictionary is changed to no dictionary (the empty string), an
+ * observer is allowed to set another dictionary before it returns.
+ */
+ attribute wstring dictionary;
+
+ /**
+ * The language this spellchecker is using when checking
+ */
+ readonly attribute wstring language;
+
+ /**
+ * Does the engine provide its own personal dictionary?
+ */
+ readonly attribute boolean providesPersonalDictionary;
+
+ /**
+ * Does the engine provide its own word utils?
+ */
+ readonly attribute boolean providesWordUtils;
+
+ /**
+ * The name of the engine
+ */
+ readonly attribute wstring name;
+
+ /**
+ * a string indicating the copyright of the engine
+ */
+ readonly attribute wstring copyright;
+
+ /**
+ * the personal dictionary
+ */
+ attribute mozIPersonalDictionary personalDictionary;
+
+ /**
+ * Get the list of dictionaries
+ */
+ void getDictionaryList([array, size_is(count)] out wstring dictionaries, out uint32_t count);
+
+ /**
+ * check a word
+ */
+ boolean check(in wstring word);
+
+ /**
+ * get a list of suggestions for a misspelled word
+ */
+ void suggest(in wstring word,[array, size_is(count)] out wstring suggestions, out uint32_t count);
+
+ /**
+ * Load dictionaries from the specified dir
+ */
+ void loadDictionariesFromDir(in nsIFile dir);
+
+ /**
+ * Add dictionaries from a directory to the spell checker
+ */
+ void addDirectory(in nsIFile dir);
+
+ /**
+ * Remove dictionaries from a directory from the spell checker
+ */
+ void removeDirectory(in nsIFile dir);
+};
+
+%{C++
+#define DICTIONARY_SEARCH_DIRECTORY "DictD"
+#define DICTIONARY_SEARCH_DIRECTORY_LIST "DictDL"
+
+#define SPELLCHECK_DICTIONARY_REMOVE_NOTIFICATION \
+ "spellcheck-dictionary-remove"
+%}