[Libreoffice-commits] .: 5 commits - cui/Library_cui.mk cui/source cui/uiconfig cui/UI_cui.mk vcl/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Fri Nov 30 08:22:53 PST 2012


 cui/Library_cui.mk                       |    1 
 cui/UI_cui.mk                            |    2 
 cui/source/inc/cuires.hrc                |    1 
 cui/source/options/personalization.cxx   |  107 +++++++++++++
 cui/source/options/personalization.hxx   |   51 ++++++
 cui/source/options/treeopt.cxx           |    3 
 cui/source/options/treeopt.src           |    1 
 cui/uiconfig/ui/personalization_tab.ui   |  240 +++++++++++++++++++++++++++++++
 cui/uiconfig/ui/select_persona_dialog.ui |  179 +++++++++++++++++++++++
 vcl/source/window/builder.cxx            |    8 +
 10 files changed, 593 insertions(+)

New commits:
commit 20759742222c18ba507b31986622530904efc943
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Fri Nov 30 10:37:34 2012 +0100

    Personas: .ui file for the Select Persona dialog.
    
    Change-Id: Ibc493a486e5752525520cd7e21d6287d49edf681

diff --git a/cui/UI_cui.mk b/cui/UI_cui.mk
index 2413872..53490bb 100644
--- a/cui/UI_cui.mk
+++ b/cui/UI_cui.mk
@@ -21,6 +21,7 @@ $(eval $(call gb_UI_add_uifiles,cui,\
 	cui/uiconfig/ui/macroselectordialog \
 	cui/uiconfig/ui/personalization_tab \
 	cui/uiconfig/ui/positionpage \
+	cui/uiconfig/ui/select_persona_dialog \
 	cui/uiconfig/ui/specialcharacters \
 	cui/uiconfig/ui/thesaurus \
 	cui/uiconfig/ui/twolinespage \
diff --git a/cui/source/options/personalization.cxx b/cui/source/options/personalization.cxx
index 906f23c..e6d6a39 100644
--- a/cui/source/options/personalization.cxx
+++ b/cui/source/options/personalization.cxx
@@ -9,7 +9,21 @@
 
 #include "personalization.hxx"
 
-#include <vcl/fixed.hxx>
+/** Dialog that will allow the user to choose a Persona to use.
+
+So far there is no better possibility than just to paste the URL from
+http://www.getpersona.com ...
+*/
+class SelectPersonaDialog : public ModalDialog
+{
+public:
+    SelectPersonaDialog( Window *pParent );
+};
+
+SelectPersonaDialog::SelectPersonaDialog( Window *pParent )
+    : ModalDialog( pParent, "SelectPersonaDialog", "cui/ui/select_persona_dialog.ui" )
+{
+}
 
 SvxPersonalizationTabPage::SvxPersonalizationTabPage( Window *pParent, const SfxItemSet &rSet )
     : SfxTabPage( pParent, "PersonalizationTabPage", "cui/ui/personalization_tab.ui", rSet )
@@ -84,6 +98,9 @@ IMPL_LINK( SvxPersonalizationTabPage, SelectBackground, PushButton*, /*pButton*/
 
 IMPL_LINK( SvxPersonalizationTabPage, SelectPersona, PushButton*, /*pButton*/ )
 {
+    SelectPersonaDialog aDialog( NULL );
+    /* TODO handle the ret val sal_Int16 nReturn =*/ aDialog.Execute();
+
     return 0;
 }
 
diff --git a/cui/uiconfig/ui/select_persona_dialog.ui b/cui/uiconfig/ui/select_persona_dialog.ui
new file mode 100644
index 0000000..5715e67
--- /dev/null
+++ b/cui/uiconfig/ui/select_persona_dialog.ui
@@ -0,0 +1,179 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <requires lib="gtk+" version="2.24"/>
+  <!-- interface-naming-policy project-wide -->
+  <object class="GtkDialog" id="dialog1">
+    <property name="can_focus">False</property>
+    <property name="border_width">5</property>
+    <property name="type_hint">dialog</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox1">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="spacing">2</property>
+        <child>
+          <object class="GtkLabel" id="label1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="xalign">0</property>
+            <property name="label" translatable="yes">First visit Firefox Personas (http://www.getpersonas.com) and find Persona you like, and want to choose for LibreOffice.</property>
+            <property name="wrap">True</property>
+          </object>
+          <packing>
+            <property name="expand">True</property>
+            <property name="fill">True</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="ok">
+                <property name="label">gtk-ok</property>
+                <property name="use_action_appearance">False</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="cancel">
+                <property name="label">gtk-cancel</property>
+                <property name="use_action_appearance">False</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="help">
+                <property name="label">gtk-help</property>
+                <property name="use_action_appearance">False</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">2</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="GtkHBox" id="hbox2">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <object class="GtkButton" id="visit_personas">
+                <property name="label" translatable="yes">Visit Firefox Personas</property>
+                <property name="use_action_appearance">False</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">True</property>
+            <property name="fill">True</property>
+            <property name="position">2</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkLabel" id="label2">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="xalign">0</property>
+            <property name="label" translatable="yes">Then copy the URL of page that contains the Persona to clipboard, and paste it to the input field below, and confirm with OK.</property>
+            <property name="wrap">True</property>
+          </object>
+          <packing>
+            <property name="expand">True</property>
+            <property name="fill">True</property>
+            <property name="position">4</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkHBox" id="hbox1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <child>
+              <object class="GtkLabel" id="label3">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Persona URL:</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkEntry" id="persona_url">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="invisible_char">●</property>
+                <property name="primary_icon_activatable">False</property>
+                <property name="secondary_icon_activatable">False</property>
+                <property name="primary_icon_sensitive">True</property>
+                <property name="secondary_icon_sensitive">True</property>
+              </object>
+              <packing>
+                <property name="expand">True</property>
+                <property name="fill">True</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">True</property>
+            <property name="fill">True</property>
+            <property name="position">5</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="0">ok</action-widget>
+      <action-widget response="0">cancel</action-widget>
+      <action-widget response="0">help</action-widget>
+    </action-widgets>
+  </object>
+</interface>
commit 1092748ad0f554e574afb8bf9cc6832e4dc89097
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Fri Nov 30 17:16:21 2012 +0100

    More wrappers needed for my glade :-)
    
    Change-Id: I63c44abce5c4a3a8175413347da9af2980e6b47c

diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx
index 0144552..ab4a6e7 100644
--- a/vcl/source/window/builder.cxx
+++ b/vcl/source/window/builder.cxx
@@ -662,6 +662,10 @@ Window *VclBuilder::makeObject(Window *pParent, const OString &name, const OStri
         else
             pWindow = new VclHButtonBox(pParent);
     }
+    else if (name == "GtkHButtonBox")
+        pWindow = new VclHButtonBox(pParent);
+    else if (name == "GtkVButtonBox")
+        pWindow = new VclVButtonBox(pParent);
     else if (name == "GtkGrid")
         pWindow = new VclGrid(pParent);
     else if (name == "GtkFrame")
commit 4e31658c6998b401c302836ce2aa8015eb64633b
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Fri Nov 30 09:44:17 2012 +0100

    Personas: Enable / disable the push buttons according to radio buttons.
    
    Change-Id: Iece525f43238a3494b8a76d5a3d84886cd5c1317

diff --git a/cui/source/options/personalization.cxx b/cui/source/options/personalization.cxx
index 5389124..906f23c 100644
--- a/cui/source/options/personalization.cxx
+++ b/cui/source/options/personalization.cxx
@@ -14,7 +14,26 @@
 SvxPersonalizationTabPage::SvxPersonalizationTabPage( Window *pParent, const SfxItemSet &rSet )
     : SfxTabPage( pParent, "PersonalizationTabPage", "cui/ui/personalization_tab.ui", rSet )
 {
+    get( m_pNoBackground, "no_background" );
+    get( m_pDefaultBackground, "default_background" );
+    get( m_pOwnBackground, "own_background" );
+    m_pNoBackground->SetClickHdl( LINK( this, SvxPersonalizationTabPage, EnableDisableSelectionButtons ) );
+    m_pDefaultBackground->SetClickHdl( LINK( this, SvxPersonalizationTabPage, EnableDisableSelectionButtons ) );
+    m_pOwnBackground->SetClickHdl( LINK( this, SvxPersonalizationTabPage, EnableDisableSelectionButtons ) );
+
+    get( m_pSelectBackground, "select_background" );
+    m_pSelectBackground->SetClickHdl( LINK( this, SvxPersonalizationTabPage, SelectBackground ) );
+
     get( m_pNoPersona, "no_persona" );
+    get( m_pDefaultPersona, "default_persona" );
+    get( m_pOwnPersona, "own_persona" );
+    m_pNoPersona->SetClickHdl( LINK( this, SvxPersonalizationTabPage, EnableDisableSelectionButtons ) );
+    m_pDefaultPersona->SetClickHdl( LINK( this, SvxPersonalizationTabPage, EnableDisableSelectionButtons ) );
+    m_pOwnPersona->SetClickHdl( LINK( this, SvxPersonalizationTabPage, EnableDisableSelectionButtons ) );
+
+    get( m_pSelectPersona, "select_persona" );
+    LINK( this, SvxPersonalizationTabPage, SelectPersona );
+    m_pSelectPersona->SetClickHdl( LINK( this, SvxPersonalizationTabPage, SelectPersona ) );
 }
 
 SvxPersonalizationTabPage::~SvxPersonalizationTabPage()
@@ -26,4 +45,46 @@ SfxTabPage* SvxPersonalizationTabPage::Create( Window *pParent, const SfxItemSet
     return new SvxPersonalizationTabPage( pParent, rSet );
 }
 
+IMPL_LINK( SvxPersonalizationTabPage, EnableDisableSelectionButtons, RadioButton*, pButton )
+{
+    PushButton *pPushButton = NULL;
+    RadioButton *pRadioButton = NULL;
+
+    if ( pButton == m_pNoBackground || pButton == m_pDefaultBackground || pButton == m_pOwnBackground )
+    {
+        pPushButton = m_pSelectBackground;
+        pRadioButton = m_pOwnBackground;
+    }
+    else if ( pButton == m_pNoPersona || pButton == m_pDefaultPersona || pButton == m_pOwnPersona )
+    {
+        pPushButton = m_pSelectPersona;
+        pRadioButton = m_pOwnPersona;
+    }
+    else
+        return 0;
+
+    if ( pRadioButton->IsChecked() && !pPushButton->IsEnabled() )
+    {
+        pPushButton->Enable();
+        pPushButton->Invalidate();
+    }
+    else if ( !pRadioButton->IsChecked() && pPushButton->IsEnabled() )
+    {
+        pPushButton->Disable();
+        pPushButton->Invalidate();
+    }
+
+    return 0;
+}
+
+IMPL_LINK( SvxPersonalizationTabPage, SelectBackground, PushButton*, /*pButton*/ )
+{
+    return 0;
+}
+
+IMPL_LINK( SvxPersonalizationTabPage, SelectPersona, PushButton*, /*pButton*/ )
+{
+    return 0;
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/personalization.hxx b/cui/source/options/personalization.hxx
index 72c3b6b..89fc3fd 100644
--- a/cui/source/options/personalization.hxx
+++ b/cui/source/options/personalization.hxx
@@ -19,13 +19,31 @@ class SvxPersonalizationTabPage : public SfxTabPage
     using SfxTabPage::DeactivatePage;
 
 private:
-    RadioButton *m_pNoPersona; ///< Just the default look, without any bitmap
+    RadioButton *m_pNoBackground;           ///< Just the default look, without any bitmap
+    RadioButton *m_pDefaultBackground;      ///< Use the built-in bitmap for Writer background
+    RadioButton *m_pOwnBackground;          ///< Use the user-defined bitmap
+    PushButton *m_pSelectBackground;        ///< Let the user select in the 'own' case
+
+    RadioButton *m_pNoPersona;              ///< Just the default look, without any bitmap
+    RadioButton *m_pDefaultPersona;         ///< Use the built-in bitmap
+    RadioButton *m_pOwnPersona;             ///< Use the user-defined bitmap
+    PushButton *m_pSelectPersona;           ///< Let the user select in the 'own' case
 
 public:
     SvxPersonalizationTabPage( Window *pParent, const SfxItemSet &rSet );
     ~SvxPersonalizationTabPage();
 
     static SfxTabPage* Create( Window *pParent, const SfxItemSet &rSet );
+
+private:
+    /// Maintain sane behavior of the m_pSelect(Background|Persona) buttons
+    DECL_LINK( EnableDisableSelectionButtons, RadioButton* );
+
+    /// Handle the bacground selection
+    DECL_LINK( SelectBackground, PushButton* );
+
+    /// Handle the Persona selection
+    DECL_LINK( SelectPersona, PushButton* );
 };
 
 #endif // SVX_PERSONALIZATION_HXX
commit 4102ed7c5018c9fadb445d0ea49e29d1af75194a
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Thu Nov 29 13:05:39 2012 +0100

    Personas: Introduce Tools -> Options... entry for Firefox Personas.
    
    Change-Id: I95275a92ea607cce26f272044bc2de95de45d75b

diff --git a/cui/Library_cui.mk b/cui/Library_cui.mk
index ec0c925..404e72f 100644
--- a/cui/Library_cui.mk
+++ b/cui/Library_cui.mk
@@ -164,6 +164,7 @@ $(eval $(call gb_Library_add_exception_objects,cui,\
     cui/source/options/optpath \
     cui/source/options/optsave \
     cui/source/options/optupdt \
+    cui/source/options/personalization \
     cui/source/options/radiobtnbox \
     cui/source/options/readonlyimage \
     cui/source/options/sdbcdriverenum \
diff --git a/cui/UI_cui.mk b/cui/UI_cui.mk
index 119f8d6..2413872 100644
--- a/cui/UI_cui.mk
+++ b/cui/UI_cui.mk
@@ -19,6 +19,7 @@ $(eval $(call gb_UI_add_uifiles,cui,\
 	cui/uiconfig/ui/insertrowcolumn \
 	cui/uiconfig/ui/scriptorganizer \
 	cui/uiconfig/ui/macroselectordialog \
+	cui/uiconfig/ui/personalization_tab \
 	cui/uiconfig/ui/positionpage \
 	cui/uiconfig/ui/specialcharacters \
 	cui/uiconfig/ui/thesaurus \
diff --git a/cui/source/inc/cuires.hrc b/cui/source/inc/cuires.hrc
index 1e14f82..beabde5 100644
--- a/cui/source/inc/cuires.hrc
+++ b/cui/source/inc/cuires.hrc
@@ -161,6 +161,7 @@
 #define RID_OPTPAGE_CHART_DEFCOLORS         (RID_SVX_START + 299)
 #define RID_OPTQB_COLOR_CHART_DELETE        (RID_SVX_START + 296)
 #define RID_OPTSTR_COLOR_CHART_DELETE       (RID_SVX_START + 289)
+#define RID_SVXPAGE_PERSONALIZATION         (RID_SVX_START + 247)
 #define RID_SVXPAGE_COLORCONFIG             (RID_SVX_START + 249)
 #define RID_SVXQB_DELETE_COLOR_CONFIG       (RID_SVX_START + 324)
 #define RID_SVXSTR_COLOR_CONFIG_SAVE1       (RID_SVX_START + 853)
diff --git a/cui/source/options/personalization.cxx b/cui/source/options/personalization.cxx
new file mode 100644
index 0000000..5389124
--- /dev/null
+++ b/cui/source/options/personalization.cxx
@@ -0,0 +1,29 @@
+/* -*- 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/.
+ */
+
+#include "personalization.hxx"
+
+#include <vcl/fixed.hxx>
+
+SvxPersonalizationTabPage::SvxPersonalizationTabPage( Window *pParent, const SfxItemSet &rSet )
+    : SfxTabPage( pParent, "PersonalizationTabPage", "cui/ui/personalization_tab.ui", rSet )
+{
+    get( m_pNoPersona, "no_persona" );
+}
+
+SvxPersonalizationTabPage::~SvxPersonalizationTabPage()
+{
+}
+
+SfxTabPage* SvxPersonalizationTabPage::Create( Window *pParent, const SfxItemSet &rSet )
+{
+    return new SvxPersonalizationTabPage( pParent, rSet );
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/personalization.hxx b/cui/source/options/personalization.hxx
new file mode 100644
index 0000000..72c3b6b
--- /dev/null
+++ b/cui/source/options/personalization.hxx
@@ -0,0 +1,33 @@
+/* -*- 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/.
+ */
+
+#ifndef SVX_PERSONALIZATION_HXX
+#define SVX_PERSONALIZATION_HXX
+
+#include <sfx2/tabdlg.hxx>
+
+class FixedText;
+
+class SvxPersonalizationTabPage : public SfxTabPage
+{
+    using SfxTabPage::DeactivatePage;
+
+private:
+    RadioButton *m_pNoPersona; ///< Just the default look, without any bitmap
+
+public:
+    SvxPersonalizationTabPage( Window *pParent, const SfxItemSet &rSet );
+    ~SvxPersonalizationTabPage();
+
+    static SfxTabPage* Create( Window *pParent, const SfxItemSet &rSet );
+};
+
+#endif // SVX_PERSONALIZATION_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/treeopt.cxx b/cui/source/options/treeopt.cxx
index aafbc68..0a19a77 100644
--- a/cui/source/options/treeopt.cxx
+++ b/cui/source/options/treeopt.cxx
@@ -48,6 +48,7 @@
 #include "optpath.hxx"
 #include "optsave.hxx"
 #include "optupdt.hxx"
+#include "personalization.hxx"
 #include "treeopt.hxx"
 
 #include <com/sun/star/awt/XContainerWindowEventHandler.hpp>
@@ -303,6 +304,7 @@ SfxTabPage* CreateGeneralTabPage( sal_uInt16 nId, Window* pParent, const SfxItem
         case RID_SVXPAGE_INET_PROXY:                fnCreate = &SvxProxyTabPage::Create; break;
         case RID_SVXPAGE_INET_SECURITY:             fnCreate = &SvxSecurityTabPage::Create; break;
         case RID_SVXPAGE_INET_MAIL:                 fnCreate = &SvxEMailTabPage::Create; break;
+        case RID_SVXPAGE_PERSONALIZATION:           fnCreate = &SvxPersonalizationTabPage::Create; break;
         case RID_SVXPAGE_COLORCONFIG:               fnCreate = &SvxColorOptionsTabPage::Create; break;
         case RID_OFAPAGE_HTMLOPT:                   fnCreate = &OfaHtmlTabPage::Create; break;
         case SID_OPTFILTER_MSOFFICE:                fnCreate = &OfaMSFilterTabPage::Create; break;
@@ -342,6 +344,7 @@ static OptionsMapping_Impl const OptionsMap_Impl[] =
     { "ProductName",        "Colors",               RID_SVXPAGE_COLOR },
     { "ProductName",        "Fonts",                RID_SVX_FONT_SUBSTITUTION },
     { "ProductName",        "Security",             RID_SVXPAGE_INET_SECURITY },
+    { "ProductName",        "Personalization",      RID_SVXPAGE_PERSONALIZATION },
     { "ProductName",        "Appearance",           RID_SVXPAGE_COLORCONFIG },
     { "ProductName",        "Accessibility",        RID_SVXPAGE_ACCESSIBILITYCONFIG },
     { "ProductName",        "Java",                 RID_SVXPAGE_OPTIONS_JAVA },
diff --git a/cui/source/options/treeopt.src b/cui/source/options/treeopt.src
index 1c60cf7..47d0d66 100644
--- a/cui/source/options/treeopt.src
+++ b/cui/source/options/treeopt.src
@@ -95,6 +95,7 @@ Resource RID_OFADLG_OPTIONS_TREE_PAGES
             < "Colors" ;  RID_SVXPAGE_COLOR; > ;
             < "Fonts" ; RID_SVX_FONT_SUBSTITUTION ; > ;
             < "Security" ; RID_SVXPAGE_INET_SECURITY ; > ;
+            < "Personalization" ; RID_SVXPAGE_PERSONALIZATION ; > ;
             < "Appearance" ;        RID_SVXPAGE_COLORCONFIG        ; > ;
             < "Accessibility" ; RID_SVXPAGE_ACCESSIBILITYCONFIG ; > ;
             < "Advanced" ; RID_SVXPAGE_OPTIONS_JAVA ; > ;
diff --git a/cui/uiconfig/ui/personalization_tab.ui b/cui/uiconfig/ui/personalization_tab.ui
new file mode 100644
index 0000000..12acf49
--- /dev/null
+++ b/cui/uiconfig/ui/personalization_tab.ui
@@ -0,0 +1,240 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <requires lib="gtk+" version="2.24"/>
+  <!-- interface-naming-policy project-wide -->
+  <object class="GtkVBox" id="vbox1">
+    <property name="visible">True</property>
+    <property name="can_focus">False</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="alignment2">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="left_padding">12</property>
+            <child>
+              <object class="GtkVBox" id="vbox3">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <child>
+                  <object class="GtkRadioButton" id="no_background">
+                    <property name="label" translatable="yes">No background image</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="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">default_background</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="default_background">
+                    <property name="label" translatable="yes">Default background image</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="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">own_background</property>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">True</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkHBox" id="hbox2">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="homogeneous">True</property>
+                    <child>
+                      <object class="GtkRadioButton" id="own_background">
+                        <property name="label" translatable="yes">Own image</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="xalign">0</property>
+                        <property name="draw_indicator">True</property>
+                        <property name="group">no_background</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="select_background">
+                        <property name="label" translatable="yes">Select Backround Image</property>
+                        <property name="use_action_appearance">False</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">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="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">Background Image</property>
+            <attributes>
+              <attribute name="weight" value="bold"/>
+            </attributes>
+          </object>
+        </child>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">True</property>
+        <property name="padding">5</property>
+        <property name="position">0</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="alignment1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="left_padding">12</property>
+            <child>
+              <object class="GtkVBox" id="vbox2">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <child>
+                  <object class="GtkRadioButton" id="no_persona">
+                    <property name="label" translatable="yes">Do not use Persona</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="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">default_persona</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="default_persona">
+                    <property name="label" translatable="yes">Use default Persona</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="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">own_persona</property>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">True</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkHBox" id="hbox1">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="homogeneous">True</property>
+                    <child>
+                      <object class="GtkRadioButton" id="own_persona">
+                        <property name="label" translatable="yes">Use own Persona</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="xalign">0</property>
+                        <property name="draw_indicator">True</property>
+                        <property name="group">no_persona</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="select_persona">
+                        <property name="label" translatable="yes">Select Persona</property>
+                        <property name="use_action_appearance">False</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">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="position">2</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">Firefox Personas</property>
+            <attributes>
+              <attribute name="weight" value="bold"/>
+            </attributes>
+          </object>
+        </child>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">True</property>
+        <property name="padding">5</property>
+        <property name="position">1</property>
+      </packing>
+    </child>
+    <child>
+      <placeholder/>
+    </child>
+  </object>
+</interface>
commit 318e8eef3c9c6c44ba20f02560061614199e8d9f
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Thu Nov 29 18:56:20 2012 +0100

    Introduce GtkHBox and GtkVBox aliases.
    
    Change-Id: I4157ba0f33a0423c975a4f81c056f5305c022566

diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx
index 2caef3e..0144552 100644
--- a/vcl/source/window/builder.cxx
+++ b/vcl/source/window/builder.cxx
@@ -650,6 +650,10 @@ Window *VclBuilder::makeObject(Window *pParent, const OString &name, const OStri
         else
             pWindow = new VclHBox(pParent);
     }
+    else if (name == "GtkHBox")
+        pWindow = new VclHBox(pParent);
+    else if (name == "GtkVBox")
+        pWindow = new VclVBox(pParent);
     else if (name == "GtkButtonBox")
     {
         bVertical = extractOrientation(rMap);


More information about the Libreoffice-commits mailing list