/*
 * This file is part of the LibreOffice project.
 *
 * 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/.
 *
 * This file incorporates work covered by the following license notice:
 *
 *   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 .
 */

interface Annotation : _Annotation
{

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

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

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

    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="SfxDisableFlags::SwOnProtectedCursor";
    ]
    SID_HYPERLINK_GETLINK // status()
    [
        StateMethod = StateInsert ;
    ]

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

    FN_INSERT_HARDHYPHEN // status()
    [
        ExecMethod = Exec ;
        StateMethod = NoState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

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

    FN_INSERT_NNBSP // status(final|play)
    [
        ExecMethod = Exec ;
        StateMethod = NoState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_INSERT_RLM
    [
        ExecMethod = Exec ;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_INSERT_LRM
    [
        ExecMethod = Exec ;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_INSERT_ZWSP
    [
        ExecMethod = Exec ;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_INSERT_WJ
    [
        ExecMethod = Exec ;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_ATTR_PARA_LEFT_TO_RIGHT
    [
        ExecMethod = Exec ;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_ATTR_PARA_RIGHT_TO_LEFT
    [
        ExecMethod = Exec ;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TEXTDIRECTION_LEFT_TO_RIGHT
    [
        ExecMethod = Exec ;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TEXTDIRECTION_TOP_TO_BOTTOM
    [
        ExecMethod = Exec ;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_VERTICALTEXT_STATE
    [
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_CTLFONT_STATE
    [
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TRANSLITERATE_SENTENCE_CASE
    [
        ExecMethod = ExecTransliteration;
        StateMethod = NoState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TRANSLITERATE_TITLE_CASE
    [
        ExecMethod = ExecTransliteration;
        StateMethod = NoState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TRANSLITERATE_TOGGLE_CASE
    [
        ExecMethod = ExecTransliteration;
        StateMethod = NoState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TRANSLITERATE_ROTATE_CASE
    [
        ExecMethod = ExecRotateTransliteration;
        StateMethod = NoState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TRANSLITERATE_UPPER
    [
        ExecMethod = ExecTransliteration;
        StateMethod = NoState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TRANSLITERATE_LOWER
    [
        ExecMethod = ExecTransliteration;
        StateMethod = NoState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TRANSLITERATE_HALFWIDTH
    [
        ExecMethod = ExecTransliteration;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TRANSLITERATE_FULLWIDTH
    [
        ExecMethod = ExecTransliteration;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TRANSLITERATE_HIRAGANA
    [
        ExecMethod = ExecTransliteration;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_TRANSLITERATE_KATAKANA
    [
        ExecMethod = ExecTransliteration;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

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

    SID_ATTR_CHAR_RELIEF
    [
        ExecMethod = Exec ;
        StateMethod = GetState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

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

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

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

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

    SID_ATTR_CHAR_SCALEWIDTH // status()
    [
        ExecMethod = Exec ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

    SID_STYLE_FAMILY1
    [
        StateMethod = StateDisableItems ;
    ]

    SID_STYLE_FAMILY3
    [
        StateMethod = StateDisableItems ;
    ]

    SID_STYLE_FAMILY4
    [
        StateMethod = StateDisableItems ;
    ]

    SID_STYLE_FAMILY5
    [
        StateMethod = StateDisableItems ;
    ]

    SID_STYLE_FAMILY6
    [
        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 ;
    ]

    FN_STAT_SELMODE
    [
        StateMethod = StateStatusLine ;
    ]

    FN_STAT_TEMPLATE
    [
        StateMethod = StateStatusLine ;
    ]

    SID_LANGUAGE_STATUS
    [
        ExecMethod = ExecLingu ;
        StateMethod = GetLinguState ;
        DisableFlags="SfxDisableFlags::SwOnProtectedCursor";
    ]

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

}

shell SwAnnotationShell
{
    import Annotation;
}