/**************************************************************
 *
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 *
 *************************************************************/

interface Annotation : _Annotation
[
	uuid = "CA0C4280-293D-11D1-89CB-008029E4B0B1"
]
{

	SID_THESAURUS // api:
	[
		ExecMethod = ExecLingu ;
		StateMethod = GetLinguState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_HANGUL_HANJA_CONVERSION // api:
	[
		ExecMethod = ExecLingu ;
		StateMethod = GetLinguState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_CHINESE_CONVERSION // api:
	[
		ExecMethod = ExecLingu ;
		StateMethod = GetLinguState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_STYLE_CATALOG // ole(no) api(play/rec)
	[
		StateMethod = StateDisableItems ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TWAIN_SELECT
	[
		StateMethod = StateDisableItems ;
	]

	SID_TWAIN_TRANSFER
	[
		StateMethod = StateDisableItems ;
	]

	 SID_INSERT_GRAPHIC
	[
		StateMethod = StateDisableItems ;
	]

	SID_AUTOSPELL_CHECK
	[
		ExecMethod = Exec;
		StateMethod = GetState;
	]

	SID_HYPERLINK_SETLINK // status()
	[
		ExecMethod = Exec ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]
	SID_HYPERLINK_GETLINK // status()
	[
		StateMethod = StateInsert ;
	]

	FN_INSERT_SOFT_HYPHEN // status(final|play)
	[
		ExecMethod = Exec ;
		StateMethod = NoState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	FN_INSERT_HARDHYPHEN // status()
	[
		ExecMethod = Exec ;
		StateMethod = NoState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	FN_INSERT_HARD_SPACE // status(final|play)
	[
		ExecMethod = Exec ;
		StateMethod = NoState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_INSERT_RLM
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_INSERT_LRM
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_INSERT_ZWSP
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_INSERT_ZWNBSP
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_ATTR_PARA_LEFT_TO_RIGHT
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_ATTR_PARA_RIGHT_TO_LEFT
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TEXTDIRECTION_LEFT_TO_RIGHT
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TEXTDIRECTION_TOP_TO_BOTTOM
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_VERTICALTEXT_STATE
	[
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_CTLFONT_STATE
	[
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TRANSLITERATE_SENTENCE_CASE
	[
		ExecMethod = ExecTransliteration ;
		StateMethod = NoState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TRANSLITERATE_TITLE_CASE
	[
		ExecMethod = ExecTransliteration ;
		StateMethod = NoState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TRANSLITERATE_TOGGLE_CASE
	[
		ExecMethod = ExecTransliteration ;
		StateMethod = NoState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TRANSLITERATE_UPPER
	[
		ExecMethod = ExecTransliteration ;
		StateMethod = NoState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TRANSLITERATE_LOWER
	[
		ExecMethod = ExecTransliteration ;
		StateMethod = NoState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TRANSLITERATE_HALFWIDTH
	[
		ExecMethod = ExecTransliteration ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TRANSLITERATE_FULLWIDTH
	[
		ExecMethod = ExecTransliteration ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TRANSLITERATE_HIRAGANA
	[
		ExecMethod = ExecTransliteration ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_TRANSLITERATE_KATAGANA
	[
		ExecMethod = ExecTransliteration ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_ATTR_CHAR_WORDLINEMODE // status(final|play)
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_ATTR_CHAR_RELIEF
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_ATTR_CHAR_LANGUAGE // status(final|play)
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_ATTR_CHAR_KERNING // status(final|play)
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_ATTR_CHAR_AUTOKERN // // status(final|play)
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_ATTR_CHAR_ESCAPEMENT // status(final|play)
	[
		ExecMethod = Exec ;
		StateMethod = GetState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_ATTR_CHAR_SCALEWIDTH // status()
	[
		ExecMethod = Exec ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_STYLE_FAMILY1
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_FAMILY2
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_FAMILY3
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_FAMILY4
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_FAMILY5
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_WATERCAN // status()
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_UPDATE_BY_EXAMPLE // status()
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_NEW_BY_EXAMPLE // status(fina|play)
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_APPLY // status(fina|play)
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_NEW // ole : no, status : ?
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_EDIT // ole : no, status : ?
	[
		StateMethod = StateDisableItems ;
	]

	SID_STYLE_DELETE // ole : no, status : ?
	[
		StateMethod = StateDisableItems ;
	]
	FN_STAT_SELMODE
	[
		StateMethod = StateStatusLine ;
	]

	FN_STAT_TEMPLATE
	[
		StateMethod = StateStatusLine ;
	]

	SID_LANGUAGE_STATUS
	[
		ExecMethod = ExecLingu ;
		StateMethod = GetLinguState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ;
	]

	SID_THES
	[
		ExecMethod = ExecLingu ;
		StateMethod = GetLinguState ;
		DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR" ; // e.g. disable for read-only documents
	]

}

shell SwAnnotationShell
{
	import Annotation[Automation];
}
