[Libreoffice-commits] core.git: include/sfx2 sfx2/source sfx2/uiconfig sfx2/UIConfig_sfx.mk

Manal Alhassoun malhassoun at kacst.edu.sa
Tue Nov 12 04:07:57 PST 2013


 include/sfx2/newstyle.hxx       |    8 +-
 sfx2/UIConfig_sfx.mk            |    1 
 sfx2/source/dialog/newstyle.cxx |   24 +++-----
 sfx2/source/dialog/newstyle.hrc |    4 -
 sfx2/source/dialog/newstyle.src |   36 ------------
 sfx2/uiconfig/ui/newstyle.ui    |  120 ++++++++++++++++++++++++++++++++++++++++
 6 files changed, 135 insertions(+), 58 deletions(-)

New commits:
commit eb505c259d0d7bd05d1bb5be5a14ad8613c2a9c7
Author: Manal Alhassoun <malhassoun at kacst.edu.sa>
Date:   Thu Nov 7 15:12:10 2013 +0300

    Convert New Style dialog to widget UI
    
    Change-Id: Idaea69f674e1e84e3e1e649006c2d92176897fe0
    Reviewed-on: https://gerrit.libreoffice.org/6607
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/include/sfx2/newstyle.hxx b/include/sfx2/newstyle.hxx
index 9584396..368d154 100644
--- a/include/sfx2/newstyle.hxx
+++ b/include/sfx2/newstyle.hxx
@@ -33,10 +33,8 @@ class SfxStyleSheetBasePool;
 class SFX2_DLLPUBLIC SfxNewStyleDlg : public ModalDialog
 {
 private:
-    FixedLine               aColFL;
-    ComboBox                aColBox;
-    OKButton                aOKBtn;
-    CancelButton            aCancelBtn;
+    ComboBox* m_pColBox;
+    OKButton* m_pOKBtn;
 
     QueryBox                aQueryOverwriteBox;
     SfxStyleSheetBasePool&  rPool;
@@ -48,7 +46,7 @@ public:
     SfxNewStyleDlg( Window* pParent, SfxStyleSheetBasePool& );
     ~SfxNewStyleDlg();
 
-    OUString                GetName() const { return comphelper::string::stripStart(aColBox.GetText(), ' '); }
+    OUString                GetName() const { return comphelper::string::stripStart(m_pColBox->GetText(), ' '); }
 };
 
 #endif
diff --git a/sfx2/UIConfig_sfx.mk b/sfx2/UIConfig_sfx.mk
index a2629d2..1ae9091 100644
--- a/sfx2/UIConfig_sfx.mk
+++ b/sfx2/UIConfig_sfx.mk
@@ -19,6 +19,7 @@ $(eval $(call gb_UIConfig_add_uifiles,sfx,\
 	sfx2/uiconfig/ui/errorfindemaildialog \
 	sfx2/uiconfig/ui/licensedialog \
 	sfx2/uiconfig/ui/managestylepage \
+	sfx2/uiconfig/ui/newstyle \
 	sfx2/uiconfig/ui/optprintpage \
 	sfx2/uiconfig/ui/password \
 	sfx2/uiconfig/ui/printeroptionsdialog \
diff --git a/sfx2/source/dialog/newstyle.cxx b/sfx2/source/dialog/newstyle.cxx
index 2995a71..5f8e24e 100644
--- a/sfx2/source/dialog/newstyle.cxx
+++ b/sfx2/source/dialog/newstyle.cxx
@@ -31,7 +31,7 @@
 IMPL_LINK( SfxNewStyleDlg, OKHdl, Control *, pControl )
 {
     (void)pControl; //unused
-    const OUString aName( aColBox.GetText() );
+    const OUString aName( m_pColBox->GetText() );
     SfxStyleSheetBase* pStyle = rPool.Find( aName, rPool.GetSearchFamily(), SFXSTYLEBIT_ALL );
     if ( pStyle )
     {
@@ -54,7 +54,7 @@ IMPL_LINK( SfxNewStyleDlg, OKHdl, Control *, pControl )
 
 IMPL_LINK_INLINE_START( SfxNewStyleDlg, ModifyHdl, ComboBox *, pBox )
 {
-    aOKBtn.Enable( !comphelper::string::remove(pBox->GetText(), ' ').isEmpty() );
+    m_pOKBtn->Enable( !comphelper::string::remove(pBox->GetText(), ' ').isEmpty() );
     return 0;
 }
 IMPL_LINK_INLINE_END( SfxNewStyleDlg, ModifyHdl, ComboBox *, pBox )
@@ -63,28 +63,26 @@ IMPL_LINK_INLINE_END( SfxNewStyleDlg, ModifyHdl, ComboBox *, pBox )
 
 SfxNewStyleDlg::SfxNewStyleDlg( Window* pParent, SfxStyleSheetBasePool& rInPool ) :
 
-    ModalDialog( pParent, SfxResId( DLG_NEW_STYLE_BY_EXAMPLE ) ),
+    ModalDialog( pParent, "CreateStyleDialog", "sfx/ui/newstyle.ui" ),
 
-    aColFL              ( this, SfxResId( FL_COL ) ),
-    aColBox             ( this, SfxResId( LB_COL ) ),
-    aOKBtn              ( this, SfxResId( BT_OK ) ),
-    aCancelBtn          ( this, SfxResId( BT_CANCEL ) ),
     aQueryOverwriteBox  ( this, SfxResId( MSG_OVERWRITE ) ),
 
     rPool( rInPool )
 
 {
-    FreeResource();
+    get(m_pColBox, "stylename");
+    m_pColBox->set_width_request(m_pColBox->approximate_char_width() * 25);
+    m_pColBox->set_height_request(m_pColBox->GetTextHeight() * 10);
+    get(m_pOKBtn, "ok");
 
-    aOKBtn.SetClickHdl(LINK(this, SfxNewStyleDlg, OKHdl));
-    aColBox.SetModifyHdl(LINK(this, SfxNewStyleDlg, ModifyHdl));
-    aColBox.SetDoubleClickHdl(LINK(this, SfxNewStyleDlg, OKHdl));
-//    aColBox.SetAccessibleName(SfxResId(FL_COL).toString());
+    m_pOKBtn->SetClickHdl(LINK(this, SfxNewStyleDlg, OKHdl));
+    m_pColBox->SetModifyHdl(LINK(this, SfxNewStyleDlg, ModifyHdl));
+    m_pColBox->SetDoubleClickHdl(LINK(this, SfxNewStyleDlg, OKHdl));
 
     SfxStyleSheetBase *pStyle = rPool.First();
     while ( pStyle )
     {
-        aColBox.InsertEntry(pStyle->GetName());
+        m_pColBox->InsertEntry(pStyle->GetName());
         pStyle = rPool.Next();
     }
 }
diff --git a/sfx2/source/dialog/newstyle.hrc b/sfx2/source/dialog/newstyle.hrc
index 0262c89..4725dbd 100644
--- a/sfx2/source/dialog/newstyle.hrc
+++ b/sfx2/source/dialog/newstyle.hrc
@@ -17,10 +17,6 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#define BT_OK           100
-#define BT_CANCEL       101
-#define LB_COL          1
-#define FL_COL          2
 #define MSG_OVERWRITE   3
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/source/dialog/newstyle.src b/sfx2/source/dialog/newstyle.src
index 8a8d147..375bac5 100644
--- a/sfx2/source/dialog/newstyle.src
+++ b/sfx2/source/dialog/newstyle.src
@@ -22,47 +22,11 @@
 #include "newstyle.hrc"
 #include <sfx2/sfxcommands.h>
 
-ModalDialog DLG_NEW_STYLE_BY_EXAMPLE
-{
-    HelpId = CMD_SID_STYLE_NEW_BY_EXAMPLE ;
-    OutputSize = TRUE ;
-    SVLook = TRUE ;
-    Size = MAP_APPFONT ( 177 , 112 ) ;
-    Text [ en-US ] = "Create Style" ;
-    Moveable = TRUE ;
-    FixedLine FL_COL
-    {
-        Pos = MAP_APPFONT ( 6 , 3 ) ;
-        Size = MAP_APPFONT ( 109 , 8 ) ;
-        Text [ en-US ] = "Style name" ;
-    };
-    ComboBox LB_COL
-    {
-        HelpID = "sfx2:ComboBox:DLG_NEW_STYLE_BY_EXAMPLE:LB_COL";
-        Pos = MAP_APPFONT ( 12 , 14 ) ;
-        Size = MAP_APPFONT ( 94 , 92 ) ;
-        TabStop = TRUE ;
-    };
-    OKButton BT_OK
-    {
-        Disable = TRUE ;
-        Pos = MAP_APPFONT ( 121 , 6 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-        TabStop = TRUE ;
-        DefButton = TRUE ;
-    };
-    CancelButton BT_CANCEL
-    {
-        Pos = MAP_APPFONT ( 121 , 23 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-        TabStop = TRUE ;
-    };
     QueryBox MSG_OVERWRITE
     {
         Buttons = WB_YES_NO ;
         DefButton = WB_DEF_NO ;
         Message [ en-US ] = "Style already exists. Overwrite?" ;
     };
-};
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sfx2/uiconfig/ui/newstyle.ui b/sfx2/uiconfig/ui/newstyle.ui
new file mode 100644
index 0000000..e44b94f
--- /dev/null
+++ b/sfx2/uiconfig/ui/newstyle.ui
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <!-- interface-requires gtk+ 3.0 -->
+  <object class="GtkDialog" id="CreateStyleDialog">
+    <property name="can_focus">False</property>
+    <property name="border_width">6</property>
+    <property name="title" translatable="yes">Create Style</property>
+    <property name="type_hint">dialog</property>
+    <child internal-child="vbox">
+      <object class="GtkBox" id="dialog-vbox3">
+        <property name="can_focus">False</property>
+        <property name="hexpand">True</property>
+        <property name="vexpand">True</property>
+        <property name="spacing">12</property>
+        <child internal-child="action_area">
+          <object class="GtkButtonBox" id="dialog-action_area3">
+            <property name="can_focus">False</property>
+            <property name="orientation">vertical</property>
+            <property name="layout_style">start</property>
+            <child>
+              <object class="GtkButton" id="ok">
+                <property name="label">gtk-ok</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="has_default">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_action_appearance">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="cancel">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_action_appearance">False</property>
+                <property name="use_stock">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="expand">False</property>
+            <property name="fill">True</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkFrame" id="frame1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="hexpand">True</property>
+            <property name="vexpand">True</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="hexpand">True</property>
+                <property name="vexpand">True</property>
+                <property name="top_padding">6</property>
+                <property name="left_padding">12</property>
+                <child>
+                  <object class="VclComboBoxText" id="stylename">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="hexpand">True</property>
+                    <property name="vexpand">True</property>
+                    <property name="has_entry">True</property>
+                    <property name="entry_text_column">0</property>
+                    <property name="id_column">1</property>
+                    <property name="dropdown">False</property>
+                    <property name="max_width_chars">60</property>
+                    <child internal-child="entry">
+                      <object class="GtkEntry" id="comboboxtext-entry">
+                        <property name="can_focus">False</property>
+                      </object>
+                    </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">Style name</property>
+                <attributes>
+                  <attribute name="weight" value="bold"/>
+                </attributes>
+              </object>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="0">ok</action-widget>
+      <action-widget response="0">cancel</action-widget>
+    </action-widgets>
+  </object>
+</interface>


More information about the Libreoffice-commits mailing list