summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cui/UI_cui.mk1
-rw-r--r--cui/source/inc/paragrph.hxx10
-rw-r--r--cui/source/tabpages/paragrph.cxx40
-rw-r--r--cui/source/tabpages/paragrph.hrc8
-rw-r--r--cui/source/tabpages/paragrph.src37
-rw-r--r--cui/uiconfig/ui/asiantypography.ui83
6 files changed, 107 insertions, 72 deletions
diff --git a/cui/UI_cui.mk b/cui/UI_cui.mk
index f4af2314be6f..5799a878f4e7 100644
--- a/cui/UI_cui.mk
+++ b/cui/UI_cui.mk
@@ -10,6 +10,7 @@
$(eval $(call gb_UI_UI,cui))
$(eval $(call gb_UI_add_uifiles,cui,\
+ cui/uiconfig/ui/asiantypography \
cui/uiconfig/ui/backgroundpage \
cui/uiconfig/ui/borderpage \
cui/uiconfig/ui/charnamepage \
diff --git a/cui/source/inc/paragrph.hxx b/cui/source/inc/paragrph.hxx
index ae9904fedcbc..045a29d422ad 100644
--- a/cui/source/inc/paragrph.hxx
+++ b/cui/source/inc/paragrph.hxx
@@ -278,17 +278,15 @@ private:
//--------------------------------------------------------------------------
class SvxAsianTabPage : public SfxTabPage
{
- FixedLine aOptionsFL;
- TriStateBox aForbiddenRulesCB;
- TriStateBox aHangingPunctCB;
-
- TriStateBox aScriptSpaceCB;
+ CheckBox* m_pForbiddenRulesCB;
+ CheckBox* m_pHangingPunctCB;
+ CheckBox* m_pScriptSpaceCB;
SvxAsianTabPage( Window* pParent, const SfxItemSet& rSet );
#ifdef _SVX_PARAGRPH_CXX
- DECL_LINK( ClickHdl_Impl, TriStateBox* );
+ DECL_LINK( ClickHdl_Impl, CheckBox* );
#endif
public:
~SvxAsianTabPage();
diff --git a/cui/source/tabpages/paragrph.cxx b/cui/source/tabpages/paragrph.cxx
index 673e1dcbcac4..96753dd7cae8 100644
--- a/cui/source/tabpages/paragrph.cxx
+++ b/cui/source/tabpages/paragrph.cxx
@@ -2221,19 +2221,17 @@ void SvxExtParagraphTabPage::PageCreated(SfxAllItemSet aSet)
}
SvxAsianTabPage::SvxAsianTabPage( Window* pParent, const SfxItemSet& rSet ) :
- SfxTabPage(pParent, CUI_RES( RID_SVXPAGE_PARA_ASIAN ), rSet),
- aOptionsFL( this, CUI_RES(FL_AS_OPTIONS )),
- aForbiddenRulesCB( this, CUI_RES(CB_AS_FORBIDDEN )),
- aHangingPunctCB( this, CUI_RES(CB_AS_HANG_PUNC )),
- aScriptSpaceCB( this, CUI_RES(CB_AS_SCRIPT_SPACE ))//,
+ SfxTabPage(pParent, "AsianTypography","cui/ui/asiantypography.ui", rSet)
{
- FreeResource();
+ get(m_pForbiddenRulesCB,"checkForbidList");
+ get(m_pHangingPunctCB,"checkHangPunct");
+ get(m_pScriptSpaceCB,"checkApplySpacing");
Link aLink = LINK( this, SvxAsianTabPage, ClickHdl_Impl );
- aHangingPunctCB.SetClickHdl( aLink );
- aScriptSpaceCB.SetClickHdl( aLink );
- aForbiddenRulesCB.SetClickHdl( aLink );
+ m_pHangingPunctCB->SetClickHdl( aLink );
+ m_pScriptSpaceCB->SetClickHdl( aLink );
+ m_pForbiddenRulesCB->SetClickHdl( aLink );
}
@@ -2255,34 +2253,34 @@ sal_uInt16* SvxAsianTabPage::GetRanges()
};
return pRanges;
}
-
+//FIXME: This crash in Calc, but works in Writer/Draw/Impress
sal_Bool SvxAsianTabPage::FillItemSet( SfxItemSet& rSet )
{
sal_Bool bRet = sal_False;
SfxItemPool* pPool = rSet.GetPool();
- if(aScriptSpaceCB.IsChecked() != aScriptSpaceCB.GetSavedValue())
+ if(m_pScriptSpaceCB->IsChecked() != m_pScriptSpaceCB->GetSavedValue())
{
SfxBoolItem* pNewItem = (SfxBoolItem*)rSet.Get(
pPool->GetWhich(SID_ATTR_PARA_SCRIPTSPACE)).Clone();
- pNewItem->SetValue(aScriptSpaceCB.IsChecked());
+ pNewItem->SetValue(m_pScriptSpaceCB->IsChecked());
rSet.Put(*pNewItem);
delete pNewItem;
bRet = sal_True;
}
- if(aHangingPunctCB.IsChecked() != aHangingPunctCB.GetSavedValue())
+ if(m_pHangingPunctCB->IsChecked() != m_pHangingPunctCB->GetSavedValue())
{
SfxBoolItem* pNewItem = (SfxBoolItem*)rSet.Get(
pPool->GetWhich(SID_ATTR_PARA_HANGPUNCTUATION)).Clone();
- pNewItem->SetValue(aHangingPunctCB.IsChecked());
+ pNewItem->SetValue(m_pHangingPunctCB->IsChecked());
rSet.Put(*pNewItem);
delete pNewItem;
bRet = sal_True;
}
- if(aForbiddenRulesCB.IsChecked() != aForbiddenRulesCB.GetSavedValue())
+ if(m_pForbiddenRulesCB->IsChecked() != m_pForbiddenRulesCB->GetSavedValue())
{
SfxBoolItem* pNewItem = (SfxBoolItem*)rSet.Get(
pPool->GetWhich(SID_ATTR_PARA_FORBIDDEN_RULES)).Clone();
- pNewItem->SetValue(aForbiddenRulesCB.IsChecked());
+ pNewItem->SetValue(m_pForbiddenRulesCB->IsChecked());
rSet.Put(*pNewItem);
delete pNewItem;
bRet = sal_True;
@@ -2290,7 +2288,7 @@ sal_Bool SvxAsianTabPage::FillItemSet( SfxItemSet& rSet )
return bRet;
}
-static void lcl_SetBox(const SfxItemSet& rSet, sal_uInt16 nSlotId, TriStateBox& rBox)
+static void lcl_SetBox(const SfxItemSet& rSet, sal_uInt16 nSlotId, CheckBox& rBox)
{
sal_uInt16 _nWhich = rSet.GetPool()->GetWhich(nSlotId);
SfxItemState eState = rSet.GetItemState(_nWhich, sal_True);
@@ -2309,14 +2307,14 @@ static void lcl_SetBox(const SfxItemSet& rSet, sal_uInt16 nSlotId, TriStateBox&
void SvxAsianTabPage::Reset( const SfxItemSet& rSet )
{
- lcl_SetBox(rSet, SID_ATTR_PARA_FORBIDDEN_RULES, aForbiddenRulesCB );
- lcl_SetBox(rSet, SID_ATTR_PARA_HANGPUNCTUATION, aHangingPunctCB );
+ lcl_SetBox(rSet, SID_ATTR_PARA_FORBIDDEN_RULES, *m_pForbiddenRulesCB );
+ lcl_SetBox(rSet, SID_ATTR_PARA_HANGPUNCTUATION, *m_pHangingPunctCB );
//character distance not yet available
- lcl_SetBox(rSet, SID_ATTR_PARA_SCRIPTSPACE, aScriptSpaceCB );
+ lcl_SetBox(rSet, SID_ATTR_PARA_SCRIPTSPACE, *m_pScriptSpaceCB );
}
-IMPL_LINK( SvxAsianTabPage, ClickHdl_Impl, TriStateBox*, pBox )
+IMPL_LINK( SvxAsianTabPage, ClickHdl_Impl, CheckBox*, pBox )
{
pBox->EnableTriState( sal_False );
return 0;
diff --git a/cui/source/tabpages/paragrph.hrc b/cui/source/tabpages/paragrph.hrc
index cf44622c76ee..8377d757bad7 100644
--- a/cui/source/tabpages/paragrph.hrc
+++ b/cui/source/tabpages/paragrph.hrc
@@ -100,14 +100,6 @@
#define LB_TEXTDIRECTION 92
-//asian typography
-#define FL_AS_OPTIONS 1
-#define CB_AS_HANG_PUNC 2
-
-#define CB_AS_FORBIDDEN 4
-
-#define CB_AS_SCRIPT_SPACE 7
-
#define STR_EXAMPLE 5010
#define STR_PAGE_STYLE 5011
#endif
diff --git a/cui/source/tabpages/paragrph.src b/cui/source/tabpages/paragrph.src
index d27d636c28a3..5b3f14cc8cb8 100644
--- a/cui/source/tabpages/paragrph.src
+++ b/cui/source/tabpages/paragrph.src
@@ -692,43 +692,6 @@ TabPage RID_SVXPAGE_EXT_PARAGRAPH
Left = TRUE ;
};
};
-
-// Asian typography
-TabPage RID_SVXPAGE_PARA_ASIAN
-{
- HelpId = HID_SVXPAGE_PARA_ASIAN ;
- Hide = TRUE ;
- Text [ en-US ] = "Asian Typography";
- Size = MAP_APPFONT ( TP_WIDTH , TP_HEIGHT ) ;
- FixedLine FL_AS_OPTIONS
- {
- Pos = MAP_APPFONT ( 6 , 3 ) ;
- Size = MAP_APPFONT ( 248 , 8 ) ;
- Text [ en-US ] = "Line change";
- };
- TriStateBox CB_AS_FORBIDDEN
- {
- HelpID = "cui:TriStateBox:RID_SVXPAGE_PARA_ASIAN:CB_AS_FORBIDDEN";
- Pos = MAP_APPFONT ( 12 , 14 ) ;
- Size = MAP_APPFONT ( 242 , 10 ) ;
- Text [ en-US ] = "Apply list of forbidden characters to the beginning and end of lines";
- };
- TriStateBox CB_AS_HANG_PUNC
- {
- HelpID = "cui:TriStateBox:RID_SVXPAGE_PARA_ASIAN:CB_AS_HANG_PUNC";
- Pos = MAP_APPFONT ( 12 , 28 ) ;
- Size = MAP_APPFONT ( 242 , 10 ) ;
- Text [ en-US ] = "Allow hanging punctuation";
- };
- TriStateBox CB_AS_SCRIPT_SPACE
- {
- HelpID = "cui:TriStateBox:RID_SVXPAGE_PARA_ASIAN:CB_AS_SCRIPT_SPACE";
- Pos = MAP_APPFONT ( 12 , 42 ) ;
- Size = MAP_APPFONT ( 242 , 10 ) ;
- Text [ en-US ] = "Apply spacing between Asian, Latin and Complex text";
- };
-};
-
String STR_EXAMPLE
{
Text [ en-US ] = "Example" ;
diff --git a/cui/uiconfig/ui/asiantypography.ui b/cui/uiconfig/ui/asiantypography.ui
new file mode 100644
index 000000000000..eeeb7a432812
--- /dev/null
+++ b/cui/uiconfig/ui/asiantypography.ui
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <!-- interface-requires gtk+ 3.0 -->
+ <object class="GtkFrame" id="AsianTypography">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="border_width">6</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="orientation">vertical</property>
+ <child>
+ <object class="GtkCheckButton" id="checkForbidList">
+ <property name="label" translatable="yes">Apply list of forbidden characters to the beginning and end of lines</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="xalign">0</property>
+ <property name="inconsistent">True</property>
+ <property name="draw_indicator">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="checkHangPunct">
+ <property name="label" translatable="yes">Allow hanging punctuation</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="xalign">0</property>
+ <property name="inconsistent">True</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>
+ <child>
+ <object class="GtkCheckButton" id="checkApplySpacing">
+ <property name="label" translatable="yes">Apply spacing between Asian, Latin and Complex text</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="xalign">0</property>
+ <property name="inconsistent">True</property>
+ <property name="draw_indicator">True</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="labelLineChange">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Line change</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+</interface>