[Libreoffice-commits] core.git: 2 commits - cui/source cui/uiconfig cui/UI_cui.mk

Caolán McNamara caolanm at redhat.com
Thu Feb 14 04:44:27 PST 2013


 cui/UI_cui.mk                      |    1 
 cui/source/inc/helpid.hrc          |    1 
 cui/source/inc/paragrph.hxx        |   10 +---
 cui/source/tabpages/paragrph.cxx   |   40 ++++++++---------
 cui/source/tabpages/paragrph.hrc   |    8 ---
 cui/source/tabpages/paragrph.src   |   37 ----------------
 cui/uiconfig/ui/asiantypography.ui |   85 +++++++++++++++++++++++++++++++++++++
 7 files changed, 109 insertions(+), 73 deletions(-)

New commits:
commit 6f1a99392a4c12bd17aa844726c528f773261047
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Thu Feb 14 12:42:34 2013 +0000

    TriState boxes created via the builder default to STATE_DONTKNOW
    
    while classic ones default to "false", easiest thing to do here
    is to simply only query for their value if enabled
    
    Change-Id: I5b01d344a5310b9bbd8d59e9c53bef1a6bfee1ce

diff --git a/cui/source/inc/helpid.hrc b/cui/source/inc/helpid.hrc
index e67692a..f041f41 100644
--- a/cui/source/inc/helpid.hrc
+++ b/cui/source/inc/helpid.hrc
@@ -273,7 +273,6 @@
 #define HID_MEASURE_CTL_PREVIEW "CUI_HID_MEASURE_CTL_PREVIEW"
 #define HID_FORMAT_PARAGRAPH_EXT "CUI_HID_FORMAT_PARAGRAPH_EXT"
 #define HID_FORMAT_PARAGRAPH_ALIGN "CUI_HID_FORMAT_PARAGRAPH_ALIGN"
-#define HID_SVXPAGE_PARA_ASIAN "CUI_HID_SVXPAGE_PARA_ASIAN"
 #define HID_SVXPAGE_SWPOSSIZE "CUI_HID_SVXPAGE_SWPOSSIZE"
 #define HID_AREA_TRANSPARENCE "CUI_HID_AREA_TRANSPARENCE"
 #define HID_AREA_AREA "CUI_HID_AREA_AREA"
diff --git a/cui/source/tabpages/paragrph.cxx b/cui/source/tabpages/paragrph.cxx
index 96753dd..cf8ded0 100644
--- a/cui/source/tabpages/paragrph.cxx
+++ b/cui/source/tabpages/paragrph.cxx
@@ -2253,12 +2253,12 @@ 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 SvxAsianTabPage::FillItemSet( SfxItemSet& rSet )
 {
     sal_Bool bRet = sal_False;
     SfxItemPool* pPool = rSet.GetPool();
-    if(m_pScriptSpaceCB->IsChecked() != m_pScriptSpaceCB->GetSavedValue())
+    if (m_pScriptSpaceCB->IsEnabled() && m_pScriptSpaceCB->IsChecked() != m_pScriptSpaceCB->GetSavedValue())
     {
         SfxBoolItem* pNewItem = (SfxBoolItem*)rSet.Get(
             pPool->GetWhich(SID_ATTR_PARA_SCRIPTSPACE)).Clone();
@@ -2267,7 +2267,7 @@ sal_Bool        SvxAsianTabPage::FillItemSet( SfxItemSet& rSet )
         delete pNewItem;
         bRet = sal_True;
     }
-    if(m_pHangingPunctCB->IsChecked() != m_pHangingPunctCB->GetSavedValue())
+    if (m_pHangingPunctCB->IsEnabled() && m_pHangingPunctCB->IsChecked() != m_pHangingPunctCB->GetSavedValue())
     {
         SfxBoolItem* pNewItem = (SfxBoolItem*)rSet.Get(
             pPool->GetWhich(SID_ATTR_PARA_HANGPUNCTUATION)).Clone();
@@ -2276,7 +2276,7 @@ sal_Bool        SvxAsianTabPage::FillItemSet( SfxItemSet& rSet )
         delete pNewItem;
         bRet = sal_True;
     }
-    if(m_pForbiddenRulesCB->IsChecked() != m_pForbiddenRulesCB->GetSavedValue())
+    if (m_pForbiddenRulesCB->IsEnabled() && m_pForbiddenRulesCB->IsChecked() != m_pForbiddenRulesCB->GetSavedValue())
     {
         SfxBoolItem* pNewItem = (SfxBoolItem*)rSet.Get(
             pPool->GetWhich(SID_ATTR_PARA_FORBIDDEN_RULES)).Clone();
diff --git a/cui/uiconfig/ui/asiantypography.ui b/cui/uiconfig/ui/asiantypography.ui
index eeeb7a4..012ad37 100644
--- a/cui/uiconfig/ui/asiantypography.ui
+++ b/cui/uiconfig/ui/asiantypography.ui
@@ -11,12 +11,14 @@
       <object class="GtkAlignment" id="alignment1">
         <property name="visible">True</property>
         <property name="can_focus">False</property>
+        <property name="top_padding">6</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>
+            <property name="spacing">6</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>
commit 4b21195e883472d020e18332976c35ad01393da9
Author: Olivier Hallot <olivier.hallot at alta.org.br>
Date:   Mon Feb 11 21:41:19 2013 -0200

    Widget for asian typography
    
    Change-Id: I70535593c3e06caca48ae8bc8b9476ae09210df8

diff --git a/cui/UI_cui.mk b/cui/UI_cui.mk
index f4af231..5799a87 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 ae9904f..045a29d 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 673e1dc..96753dd 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 cf44622..8377d75 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 d27d636..5b3f14c 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 0000000..eeeb7a4
--- /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>


More information about the Libreoffice-commits mailing list