Convert optasian page to .ui + adapt code.

Change-Id: Ia3ea3fcf38512431fb99191f230450f26c7b3e2f
diff --git a/cui/AllLangResTarget_cui.mk b/cui/AllLangResTarget_cui.mk
index e82b4e0..119a1d6 100644
--- a/cui/AllLangResTarget_cui.mk
+++ b/cui/AllLangResTarget_cui.mk
@@ -50,7 +50,6 @@ $(eval $(call gb_SrsTarget_add_files,cui/res,\
    cui/source/options/dbregister.src \
    cui/source/options/doclinkdialog.src \
    cui/source/options/internationaloptions.src \
    cui/source/options/optasian.src \
    cui/source/options/optchart.src \
    cui/source/options/optcolor.src \
    cui/source/options/optdict.src \
diff --git a/cui/UIConfig_cui.mk b/cui/UIConfig_cui.mk
index 5d3538b..9868086 100644
--- a/cui/UIConfig_cui.mk
+++ b/cui/UIConfig_cui.mk
@@ -63,6 +63,7 @@ $(eval $(call gb_UIConfig_add_uifiles,cui,\
	cui/uiconfig/ui/optaccessibilitypage \
	cui/uiconfig/ui/optadvancedpage \
	cui/uiconfig/ui/optappearancepage \
	cui/uiconfig/ui/optasianpage \
	cui/uiconfig/ui/optbasicidepage \
	cui/uiconfig/ui/optbrowserpage \
	cui/uiconfig/ui/optctlpage \
diff --git a/cui/source/inc/optasian.hxx b/cui/source/inc/optasian.hxx
index db7b2b0..e68452a 100644
--- a/cui/source/inc/optasian.hxx
+++ b/cui/source/inc/optasian.hxx
@@ -29,26 +29,22 @@
struct SvxAsianLayoutPage_Impl;
class SvxAsianLayoutPage : public SfxTabPage
{
    FixedLine    aKerningGB;
    RadioButton aCharKerningRB;
    RadioButton aCharPunctKerningRB;
    RadioButton* m_pCharKerningRB;
    RadioButton* m_pCharPunctKerningRB;

    FixedLine    aCharDistGB;
    RadioButton aNoCompressionRB;
    RadioButton aPunctCompressionRB;
    RadioButton aPunctKanaCompressionRB;
    RadioButton* m_pNoCompressionRB;
    RadioButton* m_pPunctCompressionRB;
    RadioButton* m_pPunctKanaCompressionRB;

    FixedLine    aStartEndGB;
    FixedText*      m_pLanguageFT;
    SvxLanguageBox* m_pLanguageLB;
    CheckBox*       m_pStandardCB;

    FixedText       aLanguageFT;
    SvxLanguageBox  aLanguageLB;
    CheckBox        aStandardCB;

    FixedText   aStartFT;
    Edit        aStartED;
    FixedText   aEndFT;
    Edit        aEndED;
    FixedText   aHintFT;
    FixedText*   m_pStartFT;
    Edit*        m_pStartED;
    FixedText*   m_pEndFT;
    Edit*        m_pEndED;
    FixedText*   m_pHintFT;

    SvxAsianLayoutPage_Impl* pImpl;

@@ -62,8 +58,8 @@ public:
    virtual ~SvxAsianLayoutPage();

    static SfxTabPage*  Create( Window* pParent, const SfxItemSet& rAttrSet );
    static sal_uInt16*      GetRanges();
    virtual sal_Bool        FillItemSet( SfxItemSet& rSet );
    static sal_uInt16*  GetRanges();
    virtual sal_Bool    FillItemSet( SfxItemSet& rSet );
    virtual void        Reset( const SfxItemSet& rSet );
};

diff --git a/cui/source/options/optasian.cxx b/cui/source/options/optasian.cxx
index a74b30a..2c86765 100644
--- a/cui/source/options/optasian.cxx
+++ b/cui/source/options/optasian.cxx
@@ -21,7 +21,6 @@
#include <optasian.hxx>
#include <editeng/langitem.hxx>
#include <editeng/unolingu.hxx>
#include <optasian.hrc>
#include <dialmgr.hxx>
#include <cuires.hrc>
#include <i18nlangtag/mslangid.hxx>
@@ -64,7 +63,7 @@ typedef ::std::map< LanguageType, SvxForbiddenChars_Impl* > SvxForbiddenCharacte
struct SvxAsianLayoutPage_Impl
{
    SvxAsianConfig  aConfig;
        SvxAsianLayoutPage_Impl() {}
    SvxAsianLayoutPage_Impl() {}

    ~SvxAsianLayoutPage_Impl();

@@ -123,34 +122,31 @@ void SvxAsianLayoutPage_Impl::addForbiddenCharacters(
static LanguageType eLastUsedLanguageTypeForForbiddenCharacters = USHRT_MAX;

SvxAsianLayoutPage::SvxAsianLayoutPage( Window* pParent, const SfxItemSet& rSet ) :
    SfxTabPage(pParent, CUI_RES( RID_SVXPAGE_ASIAN_LAYOUT ), rSet),
    aKerningGB(             this, CUI_RES(GB_KERNING            )),
    aCharKerningRB(         this, CUI_RES(RB_CHAR_KERNING       )),
    aCharPunctKerningRB(    this, CUI_RES(RB_CHAR_PUNCT     )),
    aCharDistGB(            this, CUI_RES(GB_CHAR_DIST      )),
    aNoCompressionRB(       this, CUI_RES(RB_NO_COMP            )),
    aPunctCompressionRB(    this, CUI_RES(RB_PUNCT_COMP     )),
     aPunctKanaCompressionRB(this, CUI_RES(RB_PUNCT_KANA_COMP   )),
    aStartEndGB(            this, CUI_RES(GB_START_END      )),
    aLanguageFT(            this, CUI_RES(FT_LANGUAGE           )),
    aLanguageLB(            this, CUI_RES(LB_LANGUAGE           )),
    aStandardCB(            this, CUI_RES(CB_STANDARD           )),
    aStartFT(               this, CUI_RES(FT_START          )),
    aStartED(               this, CUI_RES(ED_START          )),
    aEndFT(                 this, CUI_RES(FT_END                )),
    aEndED(                 this, CUI_RES(ED_END                )),
    aHintFT(                this, CUI_RES(FT_HINT               )),
    SfxTabPage(pParent, "OptAsianPage", "cui/ui/optasianpage.ui", rSet),
    pImpl(new SvxAsianLayoutPage_Impl)
{
    FreeResource();
    LanguageHdl(&aLanguageLB);
    aLanguageLB.SetSelectHdl(LINK(this, SvxAsianLayoutPage, LanguageHdl));
    aStandardCB.SetClickHdl(LINK(this, SvxAsianLayoutPage, ChangeStandardHdl));
    Link aLk(LINK(this, SvxAsianLayoutPage, ModifyHdl));
    aStartED.SetModifyHdl(aLk);
    aEndED.SetModifyHdl(aLk);
    get(m_pCharKerningRB, "charkerning");
    get(m_pCharPunctKerningRB, "charpunctkerning");
    get(m_pNoCompressionRB, "nocompression");
    get(m_pPunctCompressionRB, "punctcompression");
    get(m_pPunctKanaCompressionRB, "punctkanacompression");
    get(m_pLanguageFT, "languageft");
    get(m_pLanguageLB, "language");
    get(m_pStandardCB, "standard");
    get(m_pStartFT, "startft");
    get(m_pStartED, "start");
    get(m_pEndFT, "endft");
    get(m_pEndED, "end");
    get(m_pHintFT, "hintft");

    aLanguageLB.SetLanguageList( LANG_LIST_FBD_CHARS, sal_False, sal_False );
    LanguageHdl(m_pLanguageLB);
    m_pLanguageLB->SetSelectHdl(LINK(this, SvxAsianLayoutPage, LanguageHdl));
    m_pStandardCB->SetClickHdl(LINK(this, SvxAsianLayoutPage, ChangeStandardHdl));
    Link aLk(LINK(this, SvxAsianLayoutPage, ModifyHdl));
    m_pStartED->SetModifyHdl(aLk);
    m_pEndED->SetModifyHdl(aLk);

    m_pLanguageLB->SetLanguageList( LANG_LIST_FBD_CHARS, sal_False, sal_False );
}

SvxAsianLayoutPage::~SvxAsianLayoutPage()
@@ -165,24 +161,24 @@ SfxTabPage* SvxAsianLayoutPage::Create( Window* pParent, const SfxItemSet& rAttr

sal_Bool SvxAsianLayoutPage::FillItemSet( SfxItemSet& )
{
    if(aCharKerningRB.IsChecked() != aCharKerningRB.GetSavedValue())
    if(m_pCharKerningRB->IsChecked() != m_pCharKerningRB->GetSavedValue())
    {
        pImpl->aConfig.SetKerningWesternTextOnly(aCharKerningRB.IsChecked());
        pImpl->aConfig.SetKerningWesternTextOnly(m_pCharKerningRB->IsChecked());
        OUString sPunct(cIsKernAsianPunctuation);
        if(pImpl->xPrSetInfo.is() && pImpl->xPrSetInfo->hasPropertyByName(sPunct))
        {
            Any aVal;
            sal_Bool bVal = !aCharKerningRB.IsChecked();
            sal_Bool bVal = !m_pCharKerningRB->IsChecked();
            aVal.setValue(&bVal, ::getBooleanCppuType());
            pImpl->xPrSet->setPropertyValue(sPunct, aVal);
        }
    }

    if(aNoCompressionRB.IsChecked() != aNoCompressionRB.GetSavedValue() ||
            aPunctCompressionRB.IsChecked() != aPunctCompressionRB.GetSavedValue())
    if(m_pNoCompressionRB->IsChecked() != m_pNoCompressionRB->GetSavedValue() ||
            m_pPunctCompressionRB->IsChecked() != m_pPunctCompressionRB->GetSavedValue())
    {
        sal_Int16 nSet = aNoCompressionRB.IsChecked() ? 0 :
                            aPunctCompressionRB.IsChecked() ? 1 : 2;
        sal_Int16 nSet = m_pNoCompressionRB->IsChecked() ? 0 :
                            m_pPunctCompressionRB->IsChecked() ? 1 : 2;
        pImpl->aConfig.SetCharDistanceCompression(nSet);
        OUString sCompress(cCharacterCompressionType);
        if(pImpl->xPrSetInfo.is() && pImpl->xPrSetInfo->hasPropertyByName(sCompress))
@@ -213,7 +209,7 @@ sal_Bool SvxAsianLayoutPage::FillItemSet( SfxItemSet& )
            OSL_FAIL("exception in XForbiddenCharacters");
        }
    }
    eLastUsedLanguageTypeForForbiddenCharacters = aLanguageLB.GetSelectLanguage();
    eLastUsedLanguageTypeForForbiddenCharacters = m_pLanguageLB->GetSelectLanguage();

    return sal_False;
}
@@ -258,32 +254,31 @@ void SvxAsianLayoutPage::Reset( const SfxItemSet& )
    }
    else
    {
        aStartEndGB.Enable(sal_False);
        aLanguageFT.Enable(sal_False);
        aLanguageLB.Enable(sal_False);
        aStandardCB.Enable(sal_False);
        aStartFT.Enable(sal_False);
        aStartED.Enable(sal_False);
        aEndFT.Enable(sal_False);
        aEndED.Enable(sal_False);
        aHintFT.Enable(sal_False);
        m_pLanguageFT->Enable(sal_False);
        m_pLanguageLB->Enable(sal_False);
        m_pStandardCB->Enable(sal_False);
        m_pStartFT->Enable(sal_False);
        m_pStartED->Enable(sal_False);
        m_pEndFT->Enable(sal_False);
        m_pEndED->Enable(sal_False);
        m_pHintFT->Enable(sal_False);
    }
    if(bKernWesternText)
        aCharKerningRB.Check(sal_True);
        m_pCharKerningRB->Check(sal_True);
    else
        aCharPunctKerningRB.Check(sal_True);
        m_pCharPunctKerningRB->Check(sal_True);
    switch(nCompress)
    {
        case 0 : aNoCompressionRB.Check();        break;
        case 1 : aPunctCompressionRB.Check();     break;
        default: aPunctKanaCompressionRB.Check();
        case 0 : m_pNoCompressionRB->Check();        break;
        case 1 : m_pPunctCompressionRB->Check();     break;
        default: m_pPunctKanaCompressionRB->Check();
    }
    aCharKerningRB.SaveValue();
    aNoCompressionRB.SaveValue();
    aPunctCompressionRB.SaveValue();
    aPunctKanaCompressionRB.SaveValue();
    m_pCharKerningRB->SaveValue();
    m_pNoCompressionRB->SaveValue();
    m_pPunctCompressionRB->SaveValue();
    m_pPunctKanaCompressionRB->SaveValue();

    aLanguageLB.SelectEntryPos(0);
    m_pLanguageLB->SelectEntryPos(0);
    //preselect the system language in the box - if available
    if(USHRT_MAX == eLastUsedLanguageTypeForForbiddenCharacters)
    {
@@ -294,14 +289,14 @@ void SvxAsianLayoutPage::Reset( const SfxItemSet& )
        else if (MsLangId::isTraditionalChinese(eLastUsedLanguageTypeForForbiddenCharacters))
            eLastUsedLanguageTypeForForbiddenCharacters = LANGUAGE_CHINESE_TRADITIONAL;
    }
    aLanguageLB.SelectLanguage( eLastUsedLanguageTypeForForbiddenCharacters );
    LanguageHdl(&aLanguageLB);
    m_pLanguageLB->SelectLanguage( eLastUsedLanguageTypeForForbiddenCharacters );
    LanguageHdl(m_pLanguageLB);
}

IMPL_LINK_NOARG(SvxAsianLayoutPage, LanguageHdl)
{
    //set current value
    LanguageType eSelectLanguage = aLanguageLB.GetSelectLanguage();
    LanguageType eSelectLanguage = m_pLanguageLB->GetSelectLanguage();
    LanguageTag aLanguageTag( eSelectLanguage);
    Locale aLocale( aLanguageTag.getLocale());

@@ -352,13 +347,13 @@ IMPL_LINK_NOARG(SvxAsianLayoutPage, LanguageHdl)
        sStart = aForbidden.beginLine;
        sEnd = aForbidden.endLine;
    }
    aStandardCB.Check(!bAvail);
    aStartED.Enable(bAvail);
    aEndED.Enable(bAvail);
    aStartFT.Enable(bAvail);
    aEndFT.Enable(bAvail);
    aStartED.SetText(sStart);
    aEndED.SetText(sEnd);
    m_pStandardCB->Check(!bAvail);
    m_pStartED->Enable(bAvail);
    m_pEndED->Enable(bAvail);
    m_pStartFT->Enable(bAvail);
    m_pEndFT->Enable(bAvail);
    m_pStartED->SetText(sStart);
    m_pEndED->SetText(sEnd);

    return 0;
}
@@ -366,21 +361,21 @@ IMPL_LINK_NOARG(SvxAsianLayoutPage, LanguageHdl)
IMPL_LINK(SvxAsianLayoutPage, ChangeStandardHdl, CheckBox*, pBox)
{
    sal_Bool bCheck = pBox->IsChecked();
    aStartED.Enable(!bCheck);
    aEndED.Enable(!bCheck);
    aStartFT.Enable(!bCheck);
    aEndFT.Enable(!bCheck);
    m_pStartED->Enable(!bCheck);
    m_pEndED->Enable(!bCheck);
    m_pStartFT->Enable(!bCheck);
    m_pEndFT->Enable(!bCheck);

    ModifyHdl(&aStartED);
    ModifyHdl(m_pStartED);
    return 0;
}

IMPL_LINK(SvxAsianLayoutPage, ModifyHdl, Edit*, pEdit)
{
    LanguageType eSelectLanguage = aLanguageLB.GetSelectLanguage();
    LanguageType eSelectLanguage = m_pLanguageLB->GetSelectLanguage();
    Locale aLocale( LanguageTag::convertToLocale( eSelectLanguage ));
    OUString sStart = aStartED.GetText();
    OUString sEnd = aEndED.GetText();
    OUString sStart = m_pStartED->GetText();
    OUString sEnd = m_pEndED->GetText();
    sal_Bool bEnable = pEdit->IsEnabled();
    if(pImpl->xForbidden.is())
    {
diff --git a/cui/source/options/optasian.hrc b/cui/source/options/optasian.hrc
deleted file mode 100644
index caf3722..0000000
--- a/cui/source/options/optasian.hrc
+++ /dev/null
@@ -1,42 +0,0 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
 * 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 .
 */
#ifndef _SVX_OPTASIAN_HRC
#define _SVX_OPTASIAN_HRC

#define GB_KERNING              1
#define RB_CHAR_KERNING         2
#define RB_CHAR_PUNCT           3
#define GB_CHAR_DIST            4
#define RB_NO_COMP              5
#define RB_PUNCT_COMP           6
#define RB_PUNCT_KANA_COMP      7
#define GB_START_END            8
#define CB_STANDARD             9

#define FT_LANGUAGE             11
#define LB_LANGUAGE             12
#define FT_START                13
#define ED_START                14
#define FT_END                  15
#define ED_END                  16
#define FT_HINT                 17

#endif

/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/optasian.src b/cui/source/options/optasian.src
deleted file mode 100644
index 054b247..0000000
--- a/cui/source/options/optasian.src
+++ /dev/null
@@ -1,141 +0,0 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
 * 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 .
 */

#include "optasian.hrc"
#include <sfx2/sfx.hrc>
#include "helpid.hrc"
#include <cuires.hrc>

TabPage RID_SVXPAGE_ASIAN_LAYOUT
{
    HelpId = HID_OPTIONS_ASIAN_LAYOUT ;
    OutputSize = TRUE ;
    Size = MAP_APPFONT ( TP_WIDTH , TP_HEIGHT ) ;
    SVLook = TRUE ;
    Hide = TRUE ;
    FixedLine GB_KERNING
    {
        Pos = MAP_APPFONT ( 6, 3 ) ;
        Size = MAP_APPFONT ( 248 , 8 ) ;
        Text [ en-US ] = "Kerning";
    };
    RadioButton RB_CHAR_KERNING
    {
        HelpID = "cui:RadioButton:RID_SVXPAGE_ASIAN_LAYOUT:RB_CHAR_KERNING";
        Pos = MAP_APPFONT ( 12, 14 ) ;
        Size = MAP_APPFONT ( 200 , 10 ) ;
        Text [ en-US ] = "~Western characters only";
    };
    RadioButton RB_CHAR_PUNCT
    {
        HelpID = "cui:RadioButton:RID_SVXPAGE_ASIAN_LAYOUT:RB_CHAR_PUNCT";
        Pos = MAP_APPFONT ( 12, 27 ) ;
        Size = MAP_APPFONT ( 200 , 10 ) ;
        Text [ en-US ] = "Western ~text and Asian punctuation";
    };
    FixedLine GB_CHAR_DIST
    {
        Pos = MAP_APPFONT ( 6, 43 ) ;
        Size = MAP_APPFONT ( 248 , 8 ) ;
        Text [ en-US ] = "Character spacing";
    };
    RadioButton RB_NO_COMP
    {
        HelpID = "cui:RadioButton:RID_SVXPAGE_ASIAN_LAYOUT:RB_NO_COMP";
        Pos = MAP_APPFONT ( 12, 54 ) ;
        Size = MAP_APPFONT ( 200 , 10 ) ;
        Text [ en-US ] = "~No compression";
    };
    RadioButton RB_PUNCT_COMP
    {
        HelpID = "cui:RadioButton:RID_SVXPAGE_ASIAN_LAYOUT:RB_PUNCT_COMP";
        Pos = MAP_APPFONT ( 12, 67) ;
        Size = MAP_APPFONT ( 200 , 10 ) ;
        Text [ en-US ] = "~Compress punctuation only";
    };
    RadioButton RB_PUNCT_KANA_COMP
    {
        HelpID = "cui:RadioButton:RID_SVXPAGE_ASIAN_LAYOUT:RB_PUNCT_KANA_COMP";
        Pos = MAP_APPFONT ( 12, 80 ) ;
        Size = MAP_APPFONT ( 200 , 10 ) ;
        Text [ en-US ] = "Compress ~punctuation and Japanese Kana";
    };
    FixedLine GB_START_END
    {
        Pos = MAP_APPFONT ( 6, 96 ) ;
        Size = MAP_APPFONT ( 248 , 8 ) ;
        Text [ en-US ] = "First and last characters";
    };
    FixedText FT_LANGUAGE
    {
        Pos = MAP_APPFONT ( 12 , 109 ) ;
        Size = MAP_APPFONT ( 80 , 8 ) ;
        Text [ en-US ] = "~Language";
    };
    ListBox LB_LANGUAGE
    {
        HelpID = "cui:ListBox:RID_SVXPAGE_ASIAN_LAYOUT:LB_LANGUAGE";
        Pos = MAP_APPFONT ( 95 , 107 ) ;
        Size = MAP_APPFONT ( 80 , 48 ) ;
        Border = TRUE ;
        DropDown = TRUE ;
    };
    CheckBox CB_STANDARD
    {
        HelpID = "cui:CheckBox:RID_SVXPAGE_ASIAN_LAYOUT:CB_STANDARD";
        Pos = MAP_APPFONT ( 180, 109 ) ;
        Size = MAP_APPFONT ( 74 , 10 ) ;
        Text [ en-US ] = "~Default";
    };
    FixedText FT_START
    {
        Pos = MAP_APPFONT ( 12 , 125 ) ;
        Size = MAP_APPFONT ( 80 , 8 ) ;
        Text [ en-US ] = "Not at start of line:";
    };
    Edit ED_START
    {
        HelpID = "cui:Edit:RID_SVXPAGE_ASIAN_LAYOUT:ED_START";
        Pos = MAP_APPFONT ( 95 , 123 ) ;
        Size = MAP_APPFONT ( 159 , 12 ) ;
        Border = TRUE ;
    };
    FixedText FT_END
    {
        Pos = MAP_APPFONT ( 12 , 141 ) ;
        Size = MAP_APPFONT ( 80 , 8 ) ;
        Text [ en-US ] = "Not at end of line:";
    };
    Edit ED_END
    {
        HelpID = "cui:Edit:RID_SVXPAGE_ASIAN_LAYOUT:ED_END";
        Pos = MAP_APPFONT ( 95 , 139 ) ;
        Size = MAP_APPFONT ( 159 , 12 ) ;
        Border = TRUE ;
    };
    FixedText FT_HINT
    {
        Pos = MAP_APPFONT ( 12 , 155 ) ;
        Size = MAP_APPFONT ( 242 , 8 ) ;
        Text [ en-US ] = "Without user-defined line break symbols";
    };
    Text [ en-US ] = "Proxy";
};

/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/uiconfig/ui/optasianpage.ui b/cui/uiconfig/ui/optasianpage.ui
new file mode 100644
index 0000000..1898909
--- /dev/null
+++ b/cui/uiconfig/ui/optasianpage.ui
@@ -0,0 +1,381 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
  <!-- interface-requires gtk+ 3.0 -->
  <object class="GtkGrid" id="OptAsianPage">
    <property name="visible">True</property>
    <property name="can_focus">False</property>
    <property name="border_width">6</property>
    <property name="row_spacing">12</property>
    <child>
      <object class="GtkFrame" id="frame1">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <property name="label_xalign">0</property>
        <property name="shadow_type">none</property>
        <child>
          <object class="GtkAlignment" id="alignment1">
            <property name="visible">True</property>
            <property name="can_focus">False</property>
            <property name="left_padding">12</property>
            <child>
              <object class="GtkBox" id="box1">
                <property name="visible">True</property>
                <property name="can_focus">False</property>
                <property name="border_width">6</property>
                <property name="orientation">vertical</property>
                <property name="spacing">6</property>
                <child>
                  <object class="GtkRadioButton" id="charkerning">
                    <property name="label" translatable="yes">_Western characters only</property>
                    <property name="use_action_appearance">False</property>
                    <property name="visible">True</property>
                    <property name="can_focus">True</property>
                    <property name="receives_default">False</property>
                    <property name="use_action_appearance">False</property>
                    <property name="use_underline">True</property>
                    <property name="xalign">0</property>
                    <property name="active">True</property>
                    <property name="draw_indicator">True</property>
                    <property name="group">charpunctkerning</property>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="fill">True</property>
                    <property name="position">0</property>
                  </packing>
                </child>
                <child>
                  <object class="GtkRadioButton" id="charpunctkerning">
                    <property name="label" translatable="yes">Western _text and Asian punctuation</property>
                    <property name="use_action_appearance">False</property>
                    <property name="visible">True</property>
                    <property name="can_focus">True</property>
                    <property name="receives_default">False</property>
                    <property name="use_action_appearance">False</property>
                    <property name="use_underline">True</property>
                    <property name="xalign">0</property>
                    <property name="active">True</property>
                    <property name="draw_indicator">True</property>
                    <property name="group">charkerning</property>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="fill">True</property>
                    <property name="position">1</property>
                  </packing>
                </child>
              </object>
            </child>
          </object>
        </child>
        <child type="label">
          <object class="GtkLabel" id="label1">
            <property name="visible">True</property>
            <property name="can_focus">False</property>
            <property name="label" translatable="yes">Kerning</property>
            <property name="use_markup">False</property>
            <attributes>
              <attribute name="weight" value="bold"/>
            </attributes>
          </object>
        </child>
      </object>
      <packing>
        <property name="left_attach">0</property>
        <property name="top_attach">0</property>
        <property name="width">1</property>
        <property name="height">1</property>
      </packing>
    </child>
    <child>
      <object class="GtkFrame" id="frame2">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <property name="label_xalign">0</property>
        <property name="shadow_type">none</property>
        <child>
          <object class="GtkAlignment" id="alignment2">
            <property name="visible">True</property>
            <property name="can_focus">False</property>
            <property name="left_padding">12</property>
            <child>
              <object class="GtkBox" id="box2">
                <property name="visible">True</property>
                <property name="can_focus">False</property>
                <property name="border_width">6</property>
                <property name="orientation">vertical</property>
                <property name="spacing">6</property>
                <child>
                  <object class="GtkRadioButton" id="nocompression">
                    <property name="label" translatable="yes">_No compression</property>
                    <property name="use_action_appearance">False</property>
                    <property name="visible">True</property>
                    <property name="can_focus">True</property>
                    <property name="receives_default">False</property>
                    <property name="use_action_appearance">False</property>
                    <property name="use_underline">True</property>
                    <property name="xalign">0</property>
                    <property name="active">True</property>
                    <property name="draw_indicator">True</property>
                    <property name="group">punctcompression</property>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="fill">True</property>
                    <property name="position">0</property>
                  </packing>
                </child>
                <child>
                  <object class="GtkRadioButton" id="punctcompression">
                    <property name="label" translatable="yes">_Compress punctuation only</property>
                    <property name="use_action_appearance">False</property>
                    <property name="visible">True</property>
                    <property name="can_focus">True</property>
                    <property name="receives_default">False</property>
                    <property name="use_action_appearance">False</property>
                    <property name="use_underline">True</property>
                    <property name="xalign">0</property>
                    <property name="active">True</property>
                    <property name="draw_indicator">True</property>
                    <property name="group">punctkanacompression</property>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="fill">True</property>
                    <property name="position">1</property>
                  </packing>
                </child>
                <child>
                  <object class="GtkRadioButton" id="punctkanacompression">
                    <property name="label" translatable="yes">Compress punctuation and Japanese Kana</property>
                    <property name="use_action_appearance">False</property>
                    <property name="visible">True</property>
                    <property name="can_focus">True</property>
                    <property name="receives_default">False</property>
                    <property name="use_action_appearance">False</property>
                    <property name="use_underline">True</property>
                    <property name="xalign">0</property>
                    <property name="active">True</property>
                    <property name="draw_indicator">True</property>
                    <property name="group">nocompression</property>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="fill">True</property>
                    <property name="position">2</property>
                  </packing>
                </child>
              </object>
            </child>
          </object>
        </child>
        <child type="label">
          <object class="GtkLabel" id="label2">
            <property name="visible">True</property>
            <property name="can_focus">False</property>
            <property name="label" translatable="yes">Character spacing</property>
            <property name="use_markup">False</property>
            <attributes>
              <attribute name="weight" value="bold"/>
            </attributes>
          </object>
        </child>
      </object>
      <packing>
        <property name="left_attach">0</property>
        <property name="top_attach">1</property>
        <property name="width">1</property>
        <property name="height">1</property>
      </packing>
    </child>
    <child>
      <object class="GtkFrame" id="frame3">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <property name="hexpand">True</property>
        <property name="label_xalign">0</property>
        <property name="shadow_type">none</property>
        <child>
          <object class="GtkAlignment" id="alignment3">
            <property name="visible">True</property>
            <property name="can_focus">False</property>
            <property name="hexpand">True</property>
            <property name="border_width">6</property>
            <property name="left_padding">12</property>
            <child>
              <object class="GtkBox" id="box3">
                <property name="visible">True</property>
                <property name="can_focus">False</property>
                <property name="hexpand">True</property>
                <property name="orientation">vertical</property>
                <property name="spacing">12</property>
                <child>
                  <object class="GtkGrid" id="grid1">
                    <property name="visible">True</property>
                    <property name="can_focus">False</property>
                    <property name="hexpand">True</property>
                    <property name="row_spacing">12</property>
                    <property name="column_spacing">12</property>
                    <child>
                      <object class="GtkBox" id="box4">
                        <property name="visible">True</property>
                        <property name="can_focus">False</property>
                        <property name="hexpand">True</property>
                        <property name="spacing">12</property>
                        <property name="homogeneous">True</property>
                        <child>
                          <object class="svxcorelo-SvxLanguageBox" id="language">
                            <property name="visible">True</property>
                            <property name="can_focus">False</property>
                            <property name="hexpand">True</property>
                          </object>
                          <packing>
                            <property name="expand">False</property>
                            <property name="fill">True</property>
                            <property name="position">0</property>
                          </packing>
                        </child>
                        <child>
                          <object class="GtkCheckButton" id="standard">
                            <property name="label" translatable="yes">_Default</property>
                            <property name="use_action_appearance">False</property>
                            <property name="visible">True</property>
                            <property name="can_focus">True</property>
                            <property name="receives_default">False</property>
                            <property name="use_action_appearance">False</property>
                            <property name="use_underline">True</property>
                            <property name="xalign">0</property>
                            <property name="draw_indicator">True</property>
                          </object>
                          <packing>
                            <property name="expand">False</property>
                            <property name="fill">True</property>
                            <property name="position">1</property>
                          </packing>
                        </child>
                      </object>
                      <packing>
                        <property name="left_attach">1</property>
                        <property name="top_attach">0</property>
                        <property name="width">1</property>
                        <property name="height">1</property>
                      </packing>
                    </child>
                    <child>
                      <object class="GtkLabel" id="languageft">
                        <property name="visible">True</property>
                        <property name="can_focus">False</property>
                        <property name="xalign">0</property>
                        <property name="label" translatable="yes">_Language</property>
                        <property name="use_underline">True</property>
                      </object>
                      <packing>
                        <property name="left_attach">0</property>
                        <property name="top_attach">0</property>
                        <property name="width">1</property>
                        <property name="height">1</property>
                      </packing>
                    </child>
                    <child>
                      <object class="GtkLabel" id="startft">
                        <property name="visible">True</property>
                        <property name="can_focus">False</property>
                        <property name="xalign">0</property>
                        <property name="label" translatable="yes">Not _at start of line:</property>
                        <property name="use_underline">True</property>
                      </object>
                      <packing>
                        <property name="left_attach">0</property>
                        <property name="top_attach">1</property>
                        <property name="width">1</property>
                        <property name="height">1</property>
                      </packing>
                    </child>
                    <child>
                      <object class="GtkLabel" id="endft">
                        <property name="visible">True</property>
                        <property name="can_focus">False</property>
                        <property name="xalign">0</property>
                        <property name="label" translatable="yes">Not at _end of line:</property>
                        <property name="use_underline">True</property>
                      </object>
                      <packing>
                        <property name="left_attach">0</property>
                        <property name="top_attach">2</property>
                        <property name="width">1</property>
                        <property name="height">1</property>
                      </packing>
                    </child>
                    <child>
                      <object class="GtkEntry" id="start">
                        <property name="visible">True</property>
                        <property name="can_focus">True</property>
                        <property name="hexpand">True</property>
                        <property name="invisible_char">●</property>
                      </object>
                      <packing>
                        <property name="left_attach">1</property>
                        <property name="top_attach">1</property>
                        <property name="width">1</property>
                        <property name="height">1</property>
                      </packing>
                    </child>
                    <child>
                      <object class="GtkEntry" id="end">
                        <property name="visible">True</property>
                        <property name="can_focus">True</property>
                        <property name="hexpand">True</property>
                        <property name="invisible_char">●</property>
                      </object>
                      <packing>
                        <property name="left_attach">1</property>
                        <property name="top_attach">2</property>
                        <property name="width">1</property>
                        <property name="height">1</property>
                      </packing>
                    </child>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="fill">True</property>
                    <property name="position">0</property>
                  </packing>
                </child>
                <child>
                  <object class="GtkLabel" id="hintft">
                    <property name="visible">True</property>
                    <property name="can_focus">False</property>
                    <property name="xalign">0</property>
                    <property name="label" translatable="yes">Without user-defined line break symbols</property>
                  </object>
                  <packing>
                    <property name="expand">False</property>
                    <property name="fill">True</property>
                    <property name="position">1</property>
                  </packing>
                </child>
              </object>
            </child>
          </object>
        </child>
        <child type="label">
          <object class="GtkLabel" id="label3">
            <property name="visible">True</property>
            <property name="can_focus">False</property>
            <property name="label" translatable="yes">First and last characters</property>
            <property name="use_markup">False</property>
            <attributes>
              <attribute name="weight" value="bold"/>
            </attributes>
          </object>
        </child>
      </object>
      <packing>
        <property name="left_attach">0</property>
        <property name="top_attach">2</property>
        <property name="width">1</property>
        <property name="height">1</property>
      </packing>
    </child>
  </object>
</interface>