[Libreoffice-commits] core.git: 31 commits - cui/Library_cui.mk cui/source cui/uiconfig cui/UIConfig_cui.mk

Thorsten Behrens tbehrens at suse.com
Wed Jul 31 17:42:13 PDT 2013


 cui/Library_cui.mk                    |    1 
 cui/UIConfig_cui.mk                   |    1 
 cui/source/inc/cuires.hrc             |    1 
 cui/source/options/optaboutconfig.cxx |  315 ++++++++++++++++++++++++++++++++++
 cui/source/options/optaboutconfig.hxx |   49 +++++
 cui/source/options/treeopt.cxx        |    3 
 cui/source/options/treeopt.src        |    1 
 cui/uiconfig/ui/aboutconfigdialog.ui  |  172 ++++++++++++++++++
 8 files changed, 543 insertions(+)

New commits:
commit 02fb63f8f29085213659b730456dbf0438c2f7cc
Author: Thorsten Behrens <tbehrens at suse.com>
Date:   Thu Aug 1 02:28:17 2013 +0200

    Fixup: SvxSimpleTableContainer got moved to svtools
    
    Change-Id: I358e244a8cc8a98255645265e8734a2bb6eac8f1

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index e9cad70..2b26768 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -37,7 +37,7 @@ CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet&
     get(m_pDefaultBtn,"default");
     get(m_pEditBtn, "edit");
 
-    m_pPrefCtrl = get<SvxSimpleTableContainer>("preferences");
+    m_pPrefCtrl = get<SvSimpleTableContainer>("preferences");
 
     Size aControlSize(200,200);
     m_pPrefCtrl->set_width_request(aControlSize.Width());
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index 10b4ec6..6c13732 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -24,7 +24,7 @@ class CuiAboutConfigTabPage;
 class CuiAboutConfigTabPage : public SfxTabPage
 {
 private:
-    SvxSimpleTableContainer* m_pPrefCtrl;
+    SvSimpleTableContainer* m_pPrefCtrl;
     PushButton* m_pDefaultBtn;
     PushButton* m_pEditBtn;
 
diff --git a/cui/uiconfig/ui/aboutconfigdialog.ui b/cui/uiconfig/ui/aboutconfigdialog.ui
index 46a2b4d..ef6ea85 100644
--- a/cui/uiconfig/ui/aboutconfigdialog.ui
+++ b/cui/uiconfig/ui/aboutconfigdialog.ui
@@ -96,7 +96,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="svxcorelo-SvxSimpleTableContainer" id="preferences">
+                  <object class="svtlo-SvSimpleTableContainer" id="preferences">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="hexpand">True</property>
commit db53bc6cbc58fe4c6a44501cbc34743c95fc37a0
Author: Thorsten Behrens <tbehrens at suse.com>
Date:   Thu Aug 1 01:14:04 2013 +0200

    Use a slightly less-hermetic name for the new about:config tabpage.
    
    Change-Id: Ib64d06acdbcc2dd988e1c28c10a5446903f45914

diff --git a/cui/source/options/treeopt.src b/cui/source/options/treeopt.src
index 871c787..e9de970 100644
--- a/cui/source/options/treeopt.src
+++ b/cui/source/options/treeopt.src
@@ -101,7 +101,7 @@ Resource RID_OFADLG_OPTIONS_TREE_PAGES
             < "Accessibility" ; RID_SVXPAGE_ACCESSIBILITYCONFIG ; > ;
             < "Advanced" ; RID_SVXPAGE_OPTIONS_JAVA ; > ;
             < "Online Update" ; RID_SVXPAGE_ONLINEUPDATE ; > ;
-            < "About Config" ; RID_SVXPAGE_ABOUT_CONFIG ; > ;
+            < "Expert Config" ; RID_SVXPAGE_ABOUT_CONFIG ; > ;
         };
     };
     StringArray SID_LANGUAGE_OPTIONS
commit 3f28d85ed0f1ed6112f36d63abacb7999711eae2
Author: Thorsten Behrens <tbehrens at suse.com>
Date:   Thu Aug 1 00:59:33 2013 +0200

    Fix indent, use more idiomatic const ascii array & methods.
    
    Change-Id: Ib8b03f96b3b07f6846c7ffce8522bb03fb1301a3

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 71a04d1..e9cad70 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -89,20 +89,20 @@ void CuiAboutConfigTabPage::InsertEntry( OUString& rProp, OUString&  rStatus, OU
 
 void CuiAboutConfigTabPage::Reset( const SfxItemSet& )
 {
-   OUString sRootNodePath = "/";
-   pPrefBox->Clear();
+    OUString sRootNodePath = "/";
+    pPrefBox->Clear();
 
-   m_pDefaultBtn->Enable(sal_False);
-   m_pEditBtn->Enable(sal_False);
+    m_pDefaultBtn->Enable(sal_False);
+    m_pEditBtn->Enable(sal_False);
 
-   OUString array[ 3 ] = {
+    const char* entries[] = {
            "/org.openoffice.Office.Common",
            "/org.openoffice.Office.Math",
            "/org.openoffice.Office.Addons" };
 
-    for (sal_Int16 nInd = 0; nInd < 3 ; ++nInd )
+    for (size_t nInd = 0; nInd < SAL_N_ELEMENTS(entries); ++nInd )
     {
-        sRootNodePath = array[nInd];
+        sRootNodePath = OUString::createFromAscii( entries[nInd] );
         Reference< XNameAccess > xConfigAccess = getConfigAccess( sRootNodePath, sal_False );
         FillItems( xConfigAccess, sRootNodePath );
     }
commit 7c63bf6cc1b81d5834d7a615b1c3d240b33110ab
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Wed Jul 31 22:01:07 2013 +0300

    Hardcoded 3 toplevel configuration names for merging to master
    
    Change-Id: Ic4271291f6f0adc66a69f5d9cd1b10c3393503cd

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 7f890a1..71a04d1 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -95,9 +95,21 @@ void CuiAboutConfigTabPage::Reset( const SfxItemSet& )
    m_pDefaultBtn->Enable(sal_False);
    m_pEditBtn->Enable(sal_False);
 
-   Reference< XNameAccess > xConfigAccess = getConfigAccess( sRootNodePath, sal_False );
+   OUString array[ 3 ] = {
+           "/org.openoffice.Office.Common",
+           "/org.openoffice.Office.Math",
+           "/org.openoffice.Office.Addons" };
 
-   FillItems( xConfigAccess, sRootNodePath );
+    for (sal_Int16 nInd = 0; nInd < 3 ; ++nInd )
+    {
+        sRootNodePath = array[nInd];
+        Reference< XNameAccess > xConfigAccess = getConfigAccess( sRootNodePath, sal_False );
+        FillItems( xConfigAccess, sRootNodePath );
+    }
+
+   //Reference< XNameAccess > xConfigAccess = getConfigAccess( sRootNodePath, sal_False );
+
+   //FillItems( xConfigAccess, sRootNodePath );
 }
 
 void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUString sPath)
commit 73eb4af1c0385438d5a4ab74ec4050976dd63923
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Tue Jul 30 00:54:11 2013 +0300

    Cosmetic changes for experimental features
    
    Change-Id: Ia7ade29a2780881f53799cb57100ff60495d9d88

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 688b48b..7f890a1 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -26,10 +26,10 @@ using namespace ::com::sun::star;
 using namespace com::sun::star::uno;
 using namespace com::sun::star::container;
 
-#define ITEMID_PREF     1
-#define ITEMID_TYPE     2
-#define ITEMID_STATUS   3
-#define ITEMID_VALUE    4
+#define ITEMID_PREFNAME     1
+#define ITEMID_PROPERTY     2
+#define ITEMID_TYPE         3
+#define ITEMID_VALUE        4
 
 CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet )
     :SfxTabPage( pParent, "AboutConfig", "cui/ui/aboutconfigdialog.ui", rItemSet)
@@ -49,16 +49,16 @@ CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet&
     m_pEditBtn->SetClickHdl( LINK( this, CuiAboutConfigTabPage, StandardHdl_Impl ) );
 
     HeaderBar &rBar = pPrefBox->GetTheHeaderBar();
-    rBar.InsertItem( ITEMID_PREF, get<FixedText>("preference")->GetText(), 0, HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW);
-    rBar.InsertItem( ITEMID_TYPE, get<FixedText>("status")->GetText(), 0,  HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW );
-    rBar.InsertItem( ITEMID_STATUS, get<FixedText>("type")->GetText(), 0,  HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW );
+    rBar.InsertItem( ITEMID_PREFNAME, get<FixedText>("preference")->GetText(), 0, HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW);
+    rBar.InsertItem( ITEMID_PROPERTY, get<FixedText>("property")->GetText(), 0,  HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW );
+    rBar.InsertItem( ITEMID_TYPE, get<FixedText>("type")->GetText(), 0,  HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW );
     rBar.InsertItem( ITEMID_VALUE, get<FixedText>("value")->GetText(), 0,  HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW );
 
-    long aTabs[] = {4,0,12,12,12};
+    long aTabs[] = {4,120,50,50,50};//TODO: Not works correctly hardcoded for now.
 
     aTabs[2] += aTabs[1] + rBar.GetTextWidth(rBar.GetItemText(1));
-    aTabs[3] += aTabs[2] + rBar.GetTextWidth(rBar.GetItemText(2));
-    aTabs[4] += aTabs[3] + rBar.GetTextWidth(rBar.GetItemText(3));
+    aTabs[3] += aTabs[2] + 160; //rBar.GetTextWidth(rBar.GetItemText(2));
+    aTabs[4] += aTabs[3] + 40; //rBar.GetTextWidth(rBar.GetItemText(3));
 
     pPrefBox->SetTabs(aTabs, MAP_PIXEL);
 
@@ -92,6 +92,9 @@ void CuiAboutConfigTabPage::Reset( const SfxItemSet& )
    OUString sRootNodePath = "/";
    pPrefBox->Clear();
 
+   m_pDefaultBtn->Enable(sal_False);
+   m_pEditBtn->Enable(sal_False);
+
    Reference< XNameAccess > xConfigAccess = getConfigAccess( sRootNodePath, sal_False );
 
    FillItems( xConfigAccess, sRootNodePath );
@@ -103,6 +106,8 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
 
     Reference< XHierarchicalNameAccess > xHierarchicalNameAccess( xNameAccess, uno::UNO_QUERY_THROW );
 
+    pPrefBox->SetUpdateMode(sal_False);
+
     uno::Sequence< OUString > seqItems = xNameAccess->getElementNames();
     for( sal_Int16 i = 0; i < seqItems.getLength(); ++i )
     {
@@ -127,7 +132,7 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
         {
             Any aProp = xHierarchicalNameAccess->getByHierarchicalName(seqItems[i]); //xProperty->getAsProperty();
 
-            OUString test;
+            OUString sValue;
             if( aProp.hasValue() )
             {
                 switch( aProp.getValueType().getTypeClass() )
@@ -142,7 +147,7 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
                         if(aProp >>= nVal)
                         {
                             OUString aNumber( OUString::valueOf( nVal ) );
-                            test = aNumber;
+                            sValue = aNumber;
                         }
                     }
                     break;
@@ -153,7 +158,7 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
                         if(aProp >>= bVal  )
                         {
                             OUString sBoolean( OUString::valueOf( bVal ) );
-                            test = sBoolean;
+                            sValue = sBoolean;
                         }
                     }
                     break;
@@ -163,7 +168,7 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
                         OUString sString;
                         if(aProp >>= sString)
                         {
-                            test = sString;
+                            sValue = sString;
                         }
 
                     }
@@ -172,18 +177,18 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
                     case ::com::sun::star::uno::TypeClass_SEQUENCE :
                     //case ::com::sun::star::uno::TypeClass_ARRAY :
                     {
-                        test = OUString("");
-                        if( OUString("[]long").equals(aProp.getValueTypeName()) )
+                        sValue = OUString("");
+                        if( OUString("[]long") ==aProp.getValueTypeName() ||
+                                OUString("[]short")==aProp.getValueTypeName() )
                         {
                             uno::Sequence<sal_Int32> seqLong;
                             if( aProp >>= seqLong )
                             {
-                                //test = OUString("Congrats bro!");
                                 for(sal_Int16 nInd=0;  nInd < seqLong.getLength(); ++nInd)
                                 {
                                     OUString sNumber( OUString::valueOf(seqLong[nInd]) );
-                                    test += sNumber;
-                                    test += OUString(",");
+                                    sValue += sNumber;
+                                    sValue += OUString(",");
                                 }
                             }
                         }
@@ -195,7 +200,7 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
                             {
                                 for( sal_Int16 nInd=0; nInd < seqOUString.getLength(); ++nInd )
                                 {
-                                    test += seqOUString[nInd] + OUString(",");
+                                    sValue += seqOUString[nInd] + OUString(",");
                                 }
                             }
                         }
@@ -204,16 +209,18 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
 
                     default:
                     {
-                        test = OUString("test");
+                        sValue = OUString("test");
                     }
                 }
             }
 
-            OUString sType = aProp.getValueTypeName();//.getTypeName() ;//Type.getTypeName();
-            OUString sPrefName = sPath + OUString("-") + seqItems[i] ;
-            InsertEntry( sPrefName, test, sType , sPath );//for testing only will change
+            OUString sType = aProp.getValueTypeName();
+            //OUString sPrefName = sPath + OUString("-") + seqItems[i] ;
+            InsertEntry( sPath, seqItems [ i ], sType, sValue);
         }
     }
+
+    pPrefBox->SetUpdateMode(sal_True);
 }
 
 Reference< XNameAccess > CuiAboutConfigTabPage::getConfigAccess( OUString sNodePath, sal_Bool bUpdate )
@@ -281,11 +288,11 @@ IMPL_LINK_NOARG( CuiAboutConfigTabPage, StandardHdl_Impl )
     if( sType == OUString("boolean") )
     {
         //TODO: this is just cosmetic, take all needed value and handle them properly
-        OUString sValue = pPrefBox->GetEntryText( pEntry, 1 );
+        OUString sValue = pPrefBox->GetEntryText( pEntry, 3 );
             if (sValue == OUString("true"))
-                pPrefBox->SetEntryText( OUString("false"), pEntry, 1 );
+                pPrefBox->SetEntryText( OUString("false"), pEntry, 3 );
             else if(sValue == OUString("false"))
-                pPrefBox->SetEntryText( OUString("true"), pEntry, 1 );
+                pPrefBox->SetEntryText( OUString("true"), pEntry, 3 );
     }
     //TODO: add other types
 
diff --git a/cui/uiconfig/ui/aboutconfigdialog.ui b/cui/uiconfig/ui/aboutconfigdialog.ui
index 6a39f86..46a2b4d 100644
--- a/cui/uiconfig/ui/aboutconfigdialog.ui
+++ b/cui/uiconfig/ui/aboutconfigdialog.ui
@@ -48,12 +48,12 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkLabel" id="status">
+                      <object class="GtkLabel" id="property">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="xalign">0.51999998092651367</property>
                         <property name="yalign">0.50999999046325684</property>
-                        <property name="label" translatable="yes">Status</property>
+                        <property name="label" translatable="yes">Property</property>
                       </object>
                       <packing>
                         <property name="left_attach">1</property>
commit 876de50303e9f9254103870f32577640611fd4df
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Mon Jul 29 03:48:41 2013 +0300

    initial editBtn click handler added
    
    Change-Id: I31ea8ab94331a8f6edc9e3c3f8f35105da5d7041

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 8434aa0..688b48b 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -46,6 +46,8 @@ CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet&
     WinBits nBits = WB_SCROLL | WB_SORT | WB_HSCROLL | WB_VSCROLL;
     pPrefBox = new svx::OptHeaderTabListBox( *m_pPrefCtrl, nBits );
 
+    m_pEditBtn->SetClickHdl( LINK( this, CuiAboutConfigTabPage, StandardHdl_Impl ) );
+
     HeaderBar &rBar = pPrefBox->GetTheHeaderBar();
     rBar.InsertItem( ITEMID_PREF, get<FixedText>("preference")->GetText(), 0, HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW);
     rBar.InsertItem( ITEMID_TYPE, get<FixedText>("status")->GetText(), 0,  HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW );
@@ -273,6 +275,20 @@ IMPL_LINK( CuiAboutConfigTabPage, HeaderSelect_Impl, HeaderBar*, pBar )
 IMPL_LINK_NOARG( CuiAboutConfigTabPage, StandardHdl_Impl )
 {
     SvTreeListEntry* pEntry = pPrefBox->FirstSelected();
+
+    OUString sType = pPrefBox->GetEntryText( pEntry, 2 );
+
+    if( sType == OUString("boolean") )
+    {
+        //TODO: this is just cosmetic, take all needed value and handle them properly
+        OUString sValue = pPrefBox->GetEntryText( pEntry, 1 );
+            if (sValue == OUString("true"))
+                pPrefBox->SetEntryText( OUString("false"), pEntry, 1 );
+            else if(sValue == OUString("false"))
+                pPrefBox->SetEntryText( OUString("true"), pEntry, 1 );
+    }
+    //TODO: add other types
+
     return 0;
 
 }
commit 39b31a28ced6d8bcb631921193d382322eb73ef7
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Mon Jul 29 02:21:50 2013 +0300

    getConfigAccess Re-arranged for getting update access
    
    getConfigAccess now has a second argument which allows getting update
    access when needed. If second argument is sal_False gets ReadOnly
    access, otherwise takes update access.
    
    Change-Id: I53731e6cb8c586f59aec81abc1f12bcb60fd5481

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index c36a195..8434aa0 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -90,7 +90,7 @@ void CuiAboutConfigTabPage::Reset( const SfxItemSet& )
    OUString sRootNodePath = "/";
    pPrefBox->Clear();
 
-   Reference< XNameAccess > xConfigAccess = getConfigAccess( sRootNodePath );
+   Reference< XNameAccess > xConfigAccess = getConfigAccess( sRootNodePath, sal_False );
 
    FillItems( xConfigAccess, sRootNodePath );
 }
@@ -214,7 +214,7 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
     }
 }
 
-Reference< XNameAccess > CuiAboutConfigTabPage::getConfigAccess( OUString sNodePath )
+Reference< XNameAccess > CuiAboutConfigTabPage::getConfigAccess( OUString sNodePath, sal_Bool bUpdate )
 {
     uno::Reference< uno::XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
 
@@ -228,9 +228,16 @@ Reference< XNameAccess > CuiAboutConfigTabPage::getConfigAccess( OUString sNodeP
     uno::Sequence< uno::Any > aArgumentList( 1 );
     aArgumentList[0] = uno::makeAny( aProperty );
 
+    OUString sAccessString;
+
+    if( bUpdate )
+        sAccessString = "com.sun.star.configuration.ConfigurationUpdateAccess";
+    else
+        sAccessString = "com.sun.star.configuration.ConfigurationAccess";
+
     uno::Reference< container::XNameAccess > xNameAccess(
                 xConfigProvider->createInstanceWithArguments(
-                    "com.sun.star.configuration.ConfigurationAccess", aArgumentList ),
+                    sAccessString, aArgumentList ),
                 uno::UNO_QUERY_THROW );
 
     return xNameAccess;
@@ -263,4 +270,11 @@ IMPL_LINK( CuiAboutConfigTabPage, HeaderSelect_Impl, HeaderBar*, pBar )
     return 1;
 }
 
+IMPL_LINK_NOARG( CuiAboutConfigTabPage, StandardHdl_Impl )
+{
+    SvTreeListEntry* pEntry = pPrefBox->FirstSelected();
+    return 0;
+
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index 6217f85..10b4ec6 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -33,13 +33,14 @@ private:
     ~CuiAboutConfigTabPage();
 
     DECL_LINK( HeaderSelect_Impl, HeaderBar * );
+    DECL_LINK( StandardHdl_Impl, void * );
 public:
    static SfxTabPage* Create( Window* pParent, const SfxItemSet& rItemset );
 
    void     InsertEntry(OUString& rProp, OUString&  rStatus, OUString& rType, OUString& rValue);
    void     Reset( const SfxItemSet& );
    void     FillItems( com::sun::star::uno::Reference < com::sun::star::container::XNameAccess > xNameAccess, OUString sPath);
-   com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > getConfigAccess( OUString sNodePath );
+   com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > getConfigAccess( OUString sNodePath, sal_Bool bUpdate );
 
 };
 
commit a018f321c5adbd139882adeaa37a195396db83b6
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Sat Jul 27 01:17:54 2013 +0300

    Header bar sorting implemented.
    
    Change-Id: I2c80b6f7973053c78af430b458ae2f9e5532532e

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 56c0d0a..c36a195 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -47,10 +47,10 @@ CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet&
     pPrefBox = new svx::OptHeaderTabListBox( *m_pPrefCtrl, nBits );
 
     HeaderBar &rBar = pPrefBox->GetTheHeaderBar();
-    rBar.InsertItem( ITEMID_PREF, get<FixedText>("preference")->GetText(), 0, HIB_LEFT | HIB_VCENTER );
-    rBar.InsertItem( ITEMID_TYPE, get<FixedText>("status")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
-    rBar.InsertItem( ITEMID_STATUS, get<FixedText>("type")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
-    rBar.InsertItem( ITEMID_VALUE, get<FixedText>("value")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
+    rBar.InsertItem( ITEMID_PREF, get<FixedText>("preference")->GetText(), 0, HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW);
+    rBar.InsertItem( ITEMID_TYPE, get<FixedText>("status")->GetText(), 0,  HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW );
+    rBar.InsertItem( ITEMID_STATUS, get<FixedText>("type")->GetText(), 0,  HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW );
+    rBar.InsertItem( ITEMID_VALUE, get<FixedText>("value")->GetText(), 0,  HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW );
 
     long aTabs[] = {4,0,12,12,12};
 
@@ -235,4 +235,32 @@ Reference< XNameAccess > CuiAboutConfigTabPage::getConfigAccess( OUString sNodeP
 
     return xNameAccess;
 }
+
+IMPL_LINK( CuiAboutConfigTabPage, HeaderSelect_Impl, HeaderBar*, pBar )
+{
+    if ( pBar && pBar->GetCurItemId() != ITEMID_TYPE )
+        return 0;
+
+    HeaderBarItemBits nBits = pBar->GetItemBits(ITEMID_TYPE);
+    sal_Bool bUp = ( ( nBits & HIB_UPARROW ) == HIB_UPARROW );
+    SvSortMode eMode = SortAscending;
+
+    if ( bUp )
+    {
+        nBits &= ~HIB_UPARROW;
+        nBits |= HIB_DOWNARROW;
+        eMode = SortDescending;
+    }
+    else
+    {
+        nBits &= ~HIB_DOWNARROW;
+        nBits |= HIB_UPARROW;
+    }
+    pBar->SetItemBits( ITEMID_TYPE, nBits );
+    SvTreeList* pModel = pPrefBox->GetModel();
+    pModel->SetSortMode( eMode );
+    pModel->Resort();
+    return 1;
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index ae68c54..6217f85 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -31,6 +31,8 @@ private:
     ::svx::OptHeaderTabListBox* pPrefBox;
     CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet );
     ~CuiAboutConfigTabPage();
+
+    DECL_LINK( HeaderSelect_Impl, HeaderBar * );
 public:
    static SfxTabPage* Create( Window* pParent, const SfxItemSet& rItemset );
 
commit c0d9c668069da2e52f99f875405cb8bbea0bdc30
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Sat Jul 27 01:00:19 2013 +0300

    string and long sequence's added.
    
    Change-Id: I46b6eed7a509ba6793f8e2b2a148acae3f4d06cc

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 7b2fbad..56c0d0a 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -167,6 +167,39 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
                     }
                     break;
 
+                    case ::com::sun::star::uno::TypeClass_SEQUENCE :
+                    //case ::com::sun::star::uno::TypeClass_ARRAY :
+                    {
+                        test = OUString("");
+                        if( OUString("[]long").equals(aProp.getValueTypeName()) )
+                        {
+                            uno::Sequence<sal_Int32> seqLong;
+                            if( aProp >>= seqLong )
+                            {
+                                //test = OUString("Congrats bro!");
+                                for(sal_Int16 nInd=0;  nInd < seqLong.getLength(); ++nInd)
+                                {
+                                    OUString sNumber( OUString::valueOf(seqLong[nInd]) );
+                                    test += sNumber;
+                                    test += OUString(",");
+                                }
+                            }
+                        }
+
+                        if( OUString("[]string") == aProp.getValueTypeName() )
+                        {
+                            uno::Sequence< OUString > seqOUString;
+                            if( aProp >>= seqOUString )
+                            {
+                                for( sal_Int16 nInd=0; nInd < seqOUString.getLength(); ++nInd )
+                                {
+                                    test += seqOUString[nInd] + OUString(",");
+                                }
+                            }
+                        }
+                    }
+                    break;
+
                     default:
                     {
                         test = OUString("test");
commit 4f4d64a5a919052376571b520f1a86d3ce9f74e4
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Sat Jul 27 00:02:10 2013 +0300

    Boolean and string types added for representation.
    
    Change-Id: I5e325ec36ee6977cd8916ea1edc552db7a35af52

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index ea66de6..7b2fbad 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -145,6 +145,28 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
                     }
                     break;
 
+                    case ::com::sun::star::uno::TypeClass_BOOLEAN :
+                    {
+                        sal_Bool bVal = sal_False;
+                        if(aProp >>= bVal  )
+                        {
+                            OUString sBoolean( OUString::valueOf( bVal ) );
+                            test = sBoolean;
+                        }
+                    }
+                    break;
+
+                    case ::com::sun::star::uno::TypeClass_STRING :
+                    {
+                        OUString sString;
+                        if(aProp >>= sString)
+                        {
+                            test = sString;
+                        }
+
+                    }
+                    break;
+
                     default:
                     {
                         test = OUString("test");
commit c8b0501c9bb93ee643018230a73d1b02fe8c1062
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Fri Jul 26 02:25:27 2013 +0300

    initial implementation of mapping values
    
    Change-Id: I04aae2c6586967b8788e6b3fcd2752b893831937

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 3a04e39..ea66de6 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -123,10 +123,38 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
 
         if( bIsLeafNode )
         {
-            Reference< beans::XProperty > xProperty ( xNameAccess, uno::UNO_QUERY_THROW ) ;
-            beans::Property aProp = xProperty->getAsProperty();
-            OUString test = aProp.Type.getTypeName();
-            InsertEntry( sPath, test,  sPath, sPath );//for testing only will change
+            Any aProp = xHierarchicalNameAccess->getByHierarchicalName(seqItems[i]); //xProperty->getAsProperty();
+
+            OUString test;
+            if( aProp.hasValue() )
+            {
+                switch( aProp.getValueType().getTypeClass() )
+                {
+                    case ::com::sun::star::uno::TypeClass_UNSIGNED_SHORT :
+                    case ::com::sun::star::uno::TypeClass_SHORT :
+                    case ::com::sun::star::uno::TypeClass_UNSIGNED_LONG :
+                    case ::com::sun::star::uno::TypeClass_LONG :
+                    //case ::com::sun::star::uno::TypeClass_INT :
+                    {
+                        sal_Int32 nVal = 0;
+                        if(aProp >>= nVal)
+                        {
+                            OUString aNumber( OUString::valueOf( nVal ) );
+                            test = aNumber;
+                        }
+                    }
+                    break;
+
+                    default:
+                    {
+                        test = OUString("test");
+                    }
+                }
+            }
+
+            OUString sType = aProp.getValueTypeName();//.getTypeName() ;//Type.getTypeName();
+            OUString sPrefName = sPath + OUString("-") + seqItems[i] ;
+            InsertEntry( sPrefName, test, sType , sPath );//for testing only will change
         }
     }
 }
commit fe90738ea8259e42790b06fa57ba6ee24f3e4610
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Thu Jul 25 00:50:43 2013 +0300

    Page testing loads options to the LB
    
    Formatting is not at the last version. Page loads all options to the
    listbox.
    
    Change-Id: Ic83817ff56411599389d549e6c135e0275dd940c

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index af4501f..3a04e39 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -16,6 +16,7 @@
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/beans/NamedValue.hpp>
 #include <com/sun/star/beans/Property.hpp>
+#include <com/sun/star/beans/XProperty.hpp>
 #include <com/sun/star/container/XNameAccess.hpp>
 #include <com/sun/star/container/XHierarchicalNameAccess.hpp>
 
@@ -75,6 +76,7 @@ void CuiAboutConfigTabPage::InsertEntry( OUString& rProp, OUString&  rStatus, OU
 {
     SvTreeListEntry* pEntry = new SvTreeListEntry;
 
+    pEntry->AddItem( new SvLBoxContextBmp( pEntry, 0, Image(), Image(), 0)); //It is needed, otherwise causes crash
     pEntry->AddItem( new SvLBoxString( pEntry, 0, rProp));
     pEntry->AddItem( new SvLBoxString( pEntry, 0, rStatus));
     pEntry->AddItem( new SvLBoxString( pEntry, 0, rType));
@@ -121,9 +123,10 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
 
         if( bIsLeafNode )
         {
-            //InsertEntry( sPath, "", "", "");
-            //Reference< beans::Property > aProperty = xHierarchicalNameAccess->getAsProperty();//getPropertyValue( seqItems[ i ] );
-            //InsertEntry( sPath + OUString("/") + seqItems[ i ], OUString(""), OUString(""), xHierarchicalNameAccess->getByHierarchicalName( seqItems[ i ] ).Value );
+            Reference< beans::XProperty > xProperty ( xNameAccess, uno::UNO_QUERY_THROW ) ;
+            beans::Property aProp = xProperty->getAsProperty();
+            OUString test = aProp.Type.getTypeName();
+            InsertEntry( sPath, test,  sPath, sPath );//for testing only will change
         }
     }
 }
commit 6abbd339a34177b43d74f441ef4f34cbb6102a8f
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Wed Jul 24 22:13:31 2013 +0300

    configaccess and FillItems can take '/' as nodepath
    
    The problem about taking '/' as nodepath solved.
    
    Change-Id: I9590a7bec95c8d90d18bfe55fdb7ab19043ccb55

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 0b9eb61..af4501f 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -85,11 +85,12 @@ void CuiAboutConfigTabPage::InsertEntry( OUString& rProp, OUString&  rStatus, OU
 
 void CuiAboutConfigTabPage::Reset( const SfxItemSet& )
 {
+   OUString sRootNodePath = "/";
    pPrefBox->Clear();
 
-   Reference< XNameAccess > xConfigAccess = getConfigAccess();
+   Reference< XNameAccess > xConfigAccess = getConfigAccess( sRootNodePath );
 
-   FillItems( xConfigAccess, OUString("org.openoffice.Office.Canvas") );
+   FillItems( xConfigAccess, sRootNodePath );
 }
 
 void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUString sPath)
@@ -127,7 +128,7 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
     }
 }
 
-Reference< XNameAccess > CuiAboutConfigTabPage::getConfigAccess()
+Reference< XNameAccess > CuiAboutConfigTabPage::getConfigAccess( OUString sNodePath )
 {
     uno::Reference< uno::XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
 
@@ -136,7 +137,7 @@ Reference< XNameAccess > CuiAboutConfigTabPage::getConfigAccess()
 
     beans::NamedValue aProperty;
     aProperty.Name = "nodepath";
-    aProperty.Value = uno::makeAny( OUString("org.openoffice.Office.Canvas") );
+    aProperty.Value = uno::makeAny( sNodePath );
 
     uno::Sequence< uno::Any > aArgumentList( 1 );
     aArgumentList[0] = uno::makeAny( aProperty );
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index 6b3f81b..ae68c54 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -37,7 +37,7 @@ public:
    void     InsertEntry(OUString& rProp, OUString&  rStatus, OUString& rType, OUString& rValue);
    void     Reset( const SfxItemSet& );
    void     FillItems( com::sun::star::uno::Reference < com::sun::star::container::XNameAccess > xNameAccess, OUString sPath);
-   com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > getConfigAccess();
+   com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > getConfigAccess( OUString sNodePath );
 
 };
 
commit 8577673a7ccafedb03e3b9762a2f557259acea22
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Wed Jul 24 02:00:05 2013 +0300

    Tabpage doesn't crash on load and traverses configurations
    
    Tabpage now works without crashing. It also traverses configurations.
    Traversed configurations doesn't display yet. But traversal can be seen
    when debugging. Root of the traversal should be given as a until "/"
    part. For example "org.openoffice" not accepted. But
    "org.openoffice.Office.Canvas" accepted.
    
    Change-Id: I2d3026781bfaafa0f721b317249c8879f103bd05

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index b7072c3..0b9eb61 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -89,7 +89,7 @@ void CuiAboutConfigTabPage::Reset( const SfxItemSet& )
 
    Reference< XNameAccess > xConfigAccess = getConfigAccess();
 
-   FillItems( xConfigAccess, OUString("org.openoffice") );
+   FillItems( xConfigAccess, OUString("org.openoffice.Office.Canvas") );
 }
 
 void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUString sPath)
@@ -102,13 +102,13 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
     for( sal_Int16 i = 0; i < seqItems.getLength(); ++i )
     {
         Any aNode = xHierarchicalNameAccess->getByHierarchicalName( seqItems[i] );
-        Reference< XHierarchicalNameAccess >xNextHierarchicalNameAccess( aNode, uno::UNO_QUERY_THROW );
-        Reference< XNameAccess > xNextNameAccess( xNextHierarchicalNameAccess, uno::UNO_QUERY_THROW );
 
         bIsLeafNode = sal_True;
 
         try
         {
+            Reference< XHierarchicalNameAccess >xNextHierarchicalNameAccess( aNode, uno::UNO_QUERY_THROW );
+            Reference< XNameAccess > xNextNameAccess( xNextHierarchicalNameAccess, uno::UNO_QUERY_THROW );
             uno::Sequence < OUString  > seqNext = xNextNameAccess->getElementNames();
             FillItems( xNextNameAccess, sPath + OUString("/") + seqItems[i] );
             bIsLeafNode = sal_False;
@@ -122,7 +122,7 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
         {
             //InsertEntry( sPath, "", "", "");
             //Reference< beans::Property > aProperty = xHierarchicalNameAccess->getAsProperty();//getPropertyValue( seqItems[ i ] );
-            //InsertEntry( sPath + OUString("/") + seqItems[ i ], OUString(""), OUString(""), xNameAccess->getPropertyValue( seqItems[ i ] ) );
+            //InsertEntry( sPath + OUString("/") + seqItems[ i ], OUString(""), OUString(""), xHierarchicalNameAccess->getByHierarchicalName( seqItems[ i ] ).Value );
         }
     }
 }
@@ -136,7 +136,7 @@ Reference< XNameAccess > CuiAboutConfigTabPage::getConfigAccess()
 
     beans::NamedValue aProperty;
     aProperty.Name = "nodepath";
-    aProperty.Value = uno::makeAny( OUString("org.openoffice") );
+    aProperty.Value = uno::makeAny( OUString("org.openoffice.Office.Canvas") );
 
     uno::Sequence< uno::Any > aArgumentList( 1 );
     aArgumentList[0] = uno::makeAny( aProperty );
commit 9bc5a1f3978deb9722b747d805cda4a773301437
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Tue Jul 23 16:28:39 2013 +0300

    Reset method implementation.
    
    Change-Id: I34fb54feb636eb9b3f61062969855f9d80140c08

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 48036df..b7072c3 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -14,8 +14,8 @@
 #include <comphelper/processfactory.hxx>
 #include <com/sun/star/configuration/theDefaultProvider.hpp>
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/container/XNameAccess.hpp>
 #include <com/sun/star/beans/NamedValue.hpp>
+#include <com/sun/star/beans/Property.hpp>
 #include <com/sun/star/container/XNameAccess.hpp>
 #include <com/sun/star/container/XHierarchicalNameAccess.hpp>
 
@@ -83,14 +83,20 @@ void CuiAboutConfigTabPage::InsertEntry( OUString& rProp, OUString&  rStatus, OU
     pPrefBox->Insert( pEntry );
 }
 
+void CuiAboutConfigTabPage::Reset( const SfxItemSet& )
+{
+   pPrefBox->Clear();
+
+   Reference< XNameAccess > xConfigAccess = getConfigAccess();
+
+   FillItems( xConfigAccess, OUString("org.openoffice") );
+}
 
 void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUString sPath)
 {
     sal_Bool bIsLeafNode;
 
-    //Reference< XNameAccess > xNextNameAccess;
     Reference< XHierarchicalNameAccess > xHierarchicalNameAccess( xNameAccess, uno::UNO_QUERY_THROW );
-    //Reference< XHierarchicalNameAccess > xNextHierarchicalNameAccess;
 
     uno::Sequence< OUString > seqItems = xNameAccess->getElementNames();
     for( sal_Int16 i = 0; i < seqItems.getLength(); ++i )
@@ -115,6 +121,8 @@ void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUSt
         if( bIsLeafNode )
         {
             //InsertEntry( sPath, "", "", "");
+            //Reference< beans::Property > aProperty = xHierarchicalNameAccess->getAsProperty();//getPropertyValue( seqItems[ i ] );
+            //InsertEntry( sPath + OUString("/") + seqItems[ i ], OUString(""), OUString(""), xNameAccess->getPropertyValue( seqItems[ i ] ) );
         }
     }
 }
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index 510a6c7..6b3f81b 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -35,6 +35,7 @@ public:
    static SfxTabPage* Create( Window* pParent, const SfxItemSet& rItemset );
 
    void     InsertEntry(OUString& rProp, OUString&  rStatus, OUString& rType, OUString& rValue);
+   void     Reset( const SfxItemSet& );
    void     FillItems( com::sun::star::uno::Reference < com::sun::star::container::XNameAccess > xNameAccess, OUString sPath);
    com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > getConfigAccess();
 
commit 1fe4ace618d8d3bbd3db1aa361dfc8e2a2426239
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Mon Jul 22 23:09:28 2013 +0300

    FillItems implemened
    
    This method will be used for traversing configuration tree.
    
    Change-Id: Iefd8a21d1cb27496c87502755834c31b1a35ba44

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 09805c0..48036df 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -16,10 +16,14 @@
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/container/XNameAccess.hpp>
 #include <com/sun/star/beans/NamedValue.hpp>
+#include <com/sun/star/container/XNameAccess.hpp>
+#include <com/sun/star/container/XHierarchicalNameAccess.hpp>
 
 
 using namespace svx;
 using namespace ::com::sun::star;
+using namespace com::sun::star::uno;
+using namespace com::sun::star::container;
 
 #define ITEMID_PREF     1
 #define ITEMID_TYPE     2
@@ -79,12 +83,43 @@ void CuiAboutConfigTabPage::InsertEntry( OUString& rProp, OUString&  rStatus, OU
     pPrefBox->Insert( pEntry );
 }
 
-sal_Bool CuiAboutConfigTabPage::FillItems()
+
+void CuiAboutConfigTabPage::FillItems( Reference< XNameAccess >xNameAccess, OUString sPath)
 {
-    return sal_False;
+    sal_Bool bIsLeafNode;
+
+    //Reference< XNameAccess > xNextNameAccess;
+    Reference< XHierarchicalNameAccess > xHierarchicalNameAccess( xNameAccess, uno::UNO_QUERY_THROW );
+    //Reference< XHierarchicalNameAccess > xNextHierarchicalNameAccess;
+
+    uno::Sequence< OUString > seqItems = xNameAccess->getElementNames();
+    for( sal_Int16 i = 0; i < seqItems.getLength(); ++i )
+    {
+        Any aNode = xHierarchicalNameAccess->getByHierarchicalName( seqItems[i] );
+        Reference< XHierarchicalNameAccess >xNextHierarchicalNameAccess( aNode, uno::UNO_QUERY_THROW );
+        Reference< XNameAccess > xNextNameAccess( xNextHierarchicalNameAccess, uno::UNO_QUERY_THROW );
+
+        bIsLeafNode = sal_True;
+
+        try
+        {
+            uno::Sequence < OUString  > seqNext = xNextNameAccess->getElementNames();
+            FillItems( xNextNameAccess, sPath + OUString("/") + seqItems[i] );
+            bIsLeafNode = sal_False;
+
+        }
+        catch( uno::Exception& )
+        {
+        }
+
+        if( bIsLeafNode )
+        {
+            //InsertEntry( sPath, "", "", "");
+        }
+    }
 }
 
-uno::Reference< container::XNameAccess > CuiAboutConfigTabPage::getConfigAccess()
+Reference< XNameAccess > CuiAboutConfigTabPage::getConfigAccess()
 {
     uno::Reference< uno::XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
 
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index dae360c..510a6c7 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -35,7 +35,7 @@ public:
    static SfxTabPage* Create( Window* pParent, const SfxItemSet& rItemset );
 
    void     InsertEntry(OUString& rProp, OUString&  rStatus, OUString& rType, OUString& rValue);
-   sal_Bool FillItems();
+   void     FillItems( com::sun::star::uno::Reference < com::sun::star::container::XNameAccess > xNameAccess, OUString sPath);
    com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > getConfigAccess();
 
 };
commit 217a1370977bcba866ad292aef4f2047460c275a
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Mon Jul 22 16:22:49 2013 +0300

    Configuration Access method implemented.
    
    This method is used for getting access to configurations.
    
    Change-Id: Ia4aa82a3f2df02e26f750133f7a7d2c85a75710c

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index e6ec794..09805c0 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -11,8 +11,15 @@
 #include "optHeaderTabListbox.hxx"
 #include <svtools/svlbitm.hxx>
 #include <svtools/treelistentry.hxx>
+#include <comphelper/processfactory.hxx>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/container/XNameAccess.hpp>
+#include <com/sun/star/beans/NamedValue.hpp>
+
 
 using namespace svx;
+using namespace ::com::sun::star;
 
 #define ITEMID_PREF     1
 #define ITEMID_TYPE     2
@@ -71,4 +78,31 @@ void CuiAboutConfigTabPage::InsertEntry( OUString& rProp, OUString&  rStatus, OU
 
     pPrefBox->Insert( pEntry );
 }
+
+sal_Bool CuiAboutConfigTabPage::FillItems()
+{
+    return sal_False;
+}
+
+uno::Reference< container::XNameAccess > CuiAboutConfigTabPage::getConfigAccess()
+{
+    uno::Reference< uno::XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+
+    uno::Reference< lang::XMultiServiceFactory > xConfigProvider(
+                com::sun::star::configuration::theDefaultProvider::get( xContext  ) );
+
+    beans::NamedValue aProperty;
+    aProperty.Name = "nodepath";
+    aProperty.Value = uno::makeAny( OUString("org.openoffice") );
+
+    uno::Sequence< uno::Any > aArgumentList( 1 );
+    aArgumentList[0] = uno::makeAny( aProperty );
+
+    uno::Reference< container::XNameAccess > xNameAccess(
+                xConfigProvider->createInstanceWithArguments(
+                    "com.sun.star.configuration.ConfigurationAccess", aArgumentList ),
+                uno::UNO_QUERY_THROW );
+
+    return xNameAccess;
+}
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index a670533..dae360c 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -13,6 +13,7 @@
 #include <sfx2/tabdlg.hxx>
 #include <svtools/simptabl.hxx>
 #include "optHeaderTabListbox.hxx"
+#include <com/sun/star/container/XNameAccess.hpp>
 
 namespace svx
 {
@@ -34,6 +35,8 @@ public:
    static SfxTabPage* Create( Window* pParent, const SfxItemSet& rItemset );
 
    void     InsertEntry(OUString& rProp, OUString&  rStatus, OUString& rType, OUString& rValue);
+   sal_Bool FillItems();
+   com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > getConfigAccess();
 
 };
 
commit 779c004133f79b292e660479aeccb731d1c6d668
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Sun Jul 21 22:05:28 2013 +0300

    InsertEntry method implemented
    
    This is used for the adding new items to the list box.
    
    Change-Id: I6c531141c9dd4df1e050bfec610735c917bf5403

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index a130753..e6ec794 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -9,6 +9,8 @@
 
 #include "optaboutconfig.hxx"
 #include "optHeaderTabListbox.hxx"
+#include <svtools/svlbitm.hxx>
+#include <svtools/treelistentry.hxx>
 
 using namespace svx;
 
@@ -57,4 +59,16 @@ SfxTabPage* CuiAboutConfigTabPage::Create( Window* pParent, const SfxItemSet& rI
 {
     return ( new CuiAboutConfigTabPage( pParent, rItemSet) );
 }
+
+void CuiAboutConfigTabPage::InsertEntry( OUString& rProp, OUString&  rStatus, OUString& rType, OUString& rValue)
+{
+    SvTreeListEntry* pEntry = new SvTreeListEntry;
+
+    pEntry->AddItem( new SvLBoxString( pEntry, 0, rProp));
+    pEntry->AddItem( new SvLBoxString( pEntry, 0, rStatus));
+    pEntry->AddItem( new SvLBoxString( pEntry, 0, rType));
+    pEntry->AddItem( new SvLBoxString( pEntry, 0, rValue));
+
+    pPrefBox->Insert( pEntry );
+}
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index d9ee9d5..a670533 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -28,12 +28,13 @@ private:
     PushButton* m_pEditBtn;
 
     ::svx::OptHeaderTabListBox* pPrefBox;
+    CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet );
+    ~CuiAboutConfigTabPage();
 public:
-   CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet );
-   ~CuiAboutConfigTabPage();
-
    static SfxTabPage* Create( Window* pParent, const SfxItemSet& rItemset );
 
+   void     InsertEntry(OUString& rProp, OUString&  rStatus, OUString& rType, OUString& rValue);
+
 };
 
 #endif
commit 9bd0629c510b31285cfe492b47dc455aeddea506
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Sun Jul 21 18:36:58 2013 +0300

    Revert "starting to initial implementation"
    
    This reverts commit 5a3b21b5fb579bcf86eff172862b1c23c499b361.
    Will implement it a different way.

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 864c681..a130753 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -9,7 +9,6 @@
 
 #include "optaboutconfig.hxx"
 #include "optHeaderTabListbox.hxx"
-#include <svtools/accessibilityoption.hxx>
 
 using namespace svx;
 
@@ -18,17 +17,8 @@ using namespace svx;
 #define ITEMID_STATUS   3
 #define ITEMID_VALUE    4
 
-struct CuiAboutConfigTabPage_Impl
-{
-    SvtAccessibilityOptions     m_aAccConfig;
-    CuiAccessibilityOptionsTabPage_Impl()
-        : m_aAccConfig(){}
-    //FIXME use this struct for all options possible.
-}
-
 CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet )
-    :SfxTabPage( pParent, "AboutConfig", "cui/ui/aboutconfigdialog.ui", rItemSet),
-    m_pImpl(new CuiAboutConfigTabPage_Impl)
+    :SfxTabPage( pParent, "AboutConfig", "cui/ui/aboutconfigdialog.ui", rItemSet)
 {
     get(m_pDefaultBtn,"default");
     get(m_pEditBtn, "edit");
@@ -67,8 +57,4 @@ SfxTabPage* CuiAboutConfigTabPage::Create( Window* pParent, const SfxItemSet& rI
 {
     return ( new CuiAboutConfigTabPage( pParent, rItemSet) );
 }
-
-sal_Bool CuiAboutConfigTabPage::FillItemSet()
-{
-}
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index 0c9c0e1..d9ee9d5 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -18,7 +18,7 @@ namespace svx
 {
     class OptHeaderTabListBox;
 }
-struct CuiAboutConfigTabPage_Impl;
+class CuiAboutConfigTabPage;
 
 class CuiAboutConfigTabPage : public SfxTabPage
 {
@@ -28,8 +28,6 @@ private:
     PushButton* m_pEditBtn;
 
     ::svx::OptHeaderTabListBox* pPrefBox;
-
-    CuiAboutConfigTabPage_Impl* m_pImpl;
 public:
    CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet );
    ~CuiAboutConfigTabPage();
commit 0650dd5db8049863534b37b2d55878abb53e6828
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Sun Jul 21 12:35:13 2013 +0300

    starting to initial implementation
    
    Change-Id: Ibe2e61b599bd47708cefaa03fdba03e6428c6ed6

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index a130753..864c681 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -9,6 +9,7 @@
 
 #include "optaboutconfig.hxx"
 #include "optHeaderTabListbox.hxx"
+#include <svtools/accessibilityoption.hxx>
 
 using namespace svx;
 
@@ -17,8 +18,17 @@ using namespace svx;
 #define ITEMID_STATUS   3
 #define ITEMID_VALUE    4
 
+struct CuiAboutConfigTabPage_Impl
+{
+    SvtAccessibilityOptions     m_aAccConfig;
+    CuiAccessibilityOptionsTabPage_Impl()
+        : m_aAccConfig(){}
+    //FIXME use this struct for all options possible.
+}
+
 CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet )
-    :SfxTabPage( pParent, "AboutConfig", "cui/ui/aboutconfigdialog.ui", rItemSet)
+    :SfxTabPage( pParent, "AboutConfig", "cui/ui/aboutconfigdialog.ui", rItemSet),
+    m_pImpl(new CuiAboutConfigTabPage_Impl)
 {
     get(m_pDefaultBtn,"default");
     get(m_pEditBtn, "edit");
@@ -57,4 +67,8 @@ SfxTabPage* CuiAboutConfigTabPage::Create( Window* pParent, const SfxItemSet& rI
 {
     return ( new CuiAboutConfigTabPage( pParent, rItemSet) );
 }
+
+sal_Bool CuiAboutConfigTabPage::FillItemSet()
+{
+}
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index d9ee9d5..0c9c0e1 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -18,7 +18,7 @@ namespace svx
 {
     class OptHeaderTabListBox;
 }
-class CuiAboutConfigTabPage;
+struct CuiAboutConfigTabPage_Impl;
 
 class CuiAboutConfigTabPage : public SfxTabPage
 {
@@ -28,6 +28,8 @@ private:
     PushButton* m_pEditBtn;
 
     ::svx::OptHeaderTabListBox* pPrefBox;
+
+    CuiAboutConfigTabPage_Impl* m_pImpl;
 public:
    CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet );
    ~CuiAboutConfigTabPage();
commit 268d06e51fecf651464c84b2c01802fe3e70fe99
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Mon Jul 8 01:17:03 2013 +0300

    Fix for crash on button press.
    
    Change-Id: I80fd5e981b23df04feca39546b9495c686396145

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 3cba370..a130753 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -50,6 +50,7 @@ CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet&
 
 CuiAboutConfigTabPage::~CuiAboutConfigTabPage()
 {
+    delete pPrefBox;
 }
 
 SfxTabPage* CuiAboutConfigTabPage::Create( Window* pParent, const SfxItemSet& rItemSet )
commit 60bf592bbe9bf097763a8f65efd11004fdb1aa4f
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Thu Jul 4 17:22:12 2013 +0300

    Small fix for visible column names
    
    Change-Id: I68a2ced7487f7d16d34475fe69e7fef2550e93e0

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 6a46085..3cba370 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -12,6 +12,11 @@
 
 using namespace svx;
 
+#define ITEMID_PREF     1
+#define ITEMID_TYPE     2
+#define ITEMID_STATUS   3
+#define ITEMID_VALUE    4
+
 CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet )
     :SfxTabPage( pParent, "AboutConfig", "cui/ui/aboutconfigdialog.ui", rItemSet)
 {
@@ -24,16 +29,20 @@ CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet&
     m_pPrefCtrl->set_width_request(aControlSize.Width());
     m_pPrefCtrl->set_height_request(aControlSize.Height());
 
-    WinBits nBits = WB_SCROLL | WB_SORT;
+    WinBits nBits = WB_SCROLL | WB_SORT | WB_HSCROLL | WB_VSCROLL;
     pPrefBox = new svx::OptHeaderTabListBox( *m_pPrefCtrl, nBits );
-    //FIXME use define's for ItemID's, InsertItem(itemID, text, nsize, winbits)
+
     HeaderBar &rBar = pPrefBox->GetTheHeaderBar();
-    rBar.InsertItem( 1, get<FixedText>("preference")->GetText(), 0, HIB_LEFT | HIB_VCENTER );
-    rBar.InsertItem( 2, get<FixedText>("status")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
-    rBar.InsertItem( 3, get<FixedText>("type")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
-    rBar.InsertItem( 4, get<FixedText>("value")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
-    //FIXME this numbers are just for testing purposes implement this better and more dynamic way.
-    long aTabs[] = {12,12,12,12};
+    rBar.InsertItem( ITEMID_PREF, get<FixedText>("preference")->GetText(), 0, HIB_LEFT | HIB_VCENTER );
+    rBar.InsertItem( ITEMID_TYPE, get<FixedText>("status")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
+    rBar.InsertItem( ITEMID_STATUS, get<FixedText>("type")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
+    rBar.InsertItem( ITEMID_VALUE, get<FixedText>("value")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
+
+    long aTabs[] = {4,0,12,12,12};
+
+    aTabs[2] += aTabs[1] + rBar.GetTextWidth(rBar.GetItemText(1));
+    aTabs[3] += aTabs[2] + rBar.GetTextWidth(rBar.GetItemText(2));
+    aTabs[4] += aTabs[3] + rBar.GetTextWidth(rBar.GetItemText(3));
 
     pPrefBox->SetTabs(aTabs, MAP_PIXEL);
 
commit b6717e053f80cf9b0a36e18492372f0704456248
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Wed Jul 3 22:50:03 2013 +0300

    Multi column listboxes initial headerbar added
    
    Change-Id: Ie5f4019e2565ae24a53e820f933c226cb9517660

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 22aff88..6a46085 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -15,7 +15,8 @@ using namespace svx;
 CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet )
     :SfxTabPage( pParent, "AboutConfig", "cui/ui/aboutconfigdialog.ui", rItemSet)
 {
-//    get(m_pEditBtn, "");
+    get(m_pDefaultBtn,"default");
+    get(m_pEditBtn, "edit");
 
     m_pPrefCtrl = get<SvxSimpleTableContainer>("preferences");
 
@@ -25,6 +26,17 @@ CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet&
 
     WinBits nBits = WB_SCROLL | WB_SORT;
     pPrefBox = new svx::OptHeaderTabListBox( *m_pPrefCtrl, nBits );
+    //FIXME use define's for ItemID's, InsertItem(itemID, text, nsize, winbits)
+    HeaderBar &rBar = pPrefBox->GetTheHeaderBar();
+    rBar.InsertItem( 1, get<FixedText>("preference")->GetText(), 0, HIB_LEFT | HIB_VCENTER );
+    rBar.InsertItem( 2, get<FixedText>("status")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
+    rBar.InsertItem( 3, get<FixedText>("type")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
+    rBar.InsertItem( 4, get<FixedText>("value")->GetText(), 0,  HIB_LEFT | HIB_VCENTER );
+    //FIXME this numbers are just for testing purposes implement this better and more dynamic way.
+    long aTabs[] = {12,12,12,12};
+
+    pPrefBox->SetTabs(aTabs, MAP_PIXEL);
+
 }
 
 CuiAboutConfigTabPage::~CuiAboutConfigTabPage()
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index 4ef04b0..d9ee9d5 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -24,8 +24,7 @@ class CuiAboutConfigTabPage : public SfxTabPage
 {
 private:
     SvxSimpleTableContainer* m_pPrefCtrl;
-    //In case of tab page we can think a revert button
-    //PushButton* m_pDefaultBtn
+    PushButton* m_pDefaultBtn;
     PushButton* m_pEditBtn;
 
     ::svx::OptHeaderTabListBox* pPrefBox;
commit 4755c19f38c9ec19d3bb5dfd87036095071d4fcd
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Wed Jul 3 16:17:43 2013 +0300

    Default and Edit buttons added to the tabpage
    
    Change-Id: Ia4802c4da9c2041a1de542f1f09ea853caccc58a

diff --git a/cui/uiconfig/ui/aboutconfigdialog.ui b/cui/uiconfig/ui/aboutconfigdialog.ui
index f07871d..6a39f86 100644
--- a/cui/uiconfig/ui/aboutconfigdialog.ui
+++ b/cui/uiconfig/ui/aboutconfigdialog.ui
@@ -4,12 +4,14 @@
   <object class="GtkBox" id="AboutConfig">
     <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">12</property>
     <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>
@@ -24,7 +26,6 @@
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="orientation">vertical</property>
-                <property name="spacing">6</property>
                 <child>
                   <object class="GtkGrid" id="grid1">
                     <property name="can_focus">False</property>
@@ -125,6 +126,45 @@
       <packing>
         <property name="expand">False</property>
         <property name="fill">True</property>
+        <property name="position">0</property>
+      </packing>
+    </child>
+    <child>
+      <object class="GtkButtonBox" id="buttonbox1">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="spacing">12</property>
+        <property name="layout_style">end</property>
+        <child>
+          <object class="GtkButton" id="default">
+            <property name="label" translatable="yes">Default</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">0</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkButton" id="edit">
+            <property name="label" translatable="yes">Edit</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">1</property>
       </packing>
     </child>
commit 8c325390b4442120a868f13930c86d1f22262892
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Wed Jul 3 02:49:28 2013 +0300

    About Config Tabpage is now visible
    
    about config tab page is now visible. Because it is a tab page I cleaned
    buttonbox, and toplevels.
    
    Change-Id: I5980322d657051664ad2ec8ae8ede97d7f33f84b

diff --git a/cui/uiconfig/ui/aboutconfigdialog.ui b/cui/uiconfig/ui/aboutconfigdialog.ui
index d038bfe..f07871d 100644
--- a/cui/uiconfig/ui/aboutconfigdialog.ui
+++ b/cui/uiconfig/ui/aboutconfigdialog.ui
@@ -1,215 +1,132 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <interface>
   <!-- interface-requires gtk+ 3.0 -->
-  <object class="GtkDialog" id="AboutConfig">
+  <object class="GtkBox" id="AboutConfig">
+    <property name="visible">True</property>
     <property name="can_focus">False</property>
-    <property name="border_width">5</property>
-    <property name="title" translatable="yes">Advanced Options</property>
-    <property name="type_hint">dialog</property>
-    <child internal-child="vbox">
-      <object class="GtkBox" id="dialog-vbox1">
+    <property name="orientation">vertical</property>
+    <property name="spacing">12</property>
+    <child>
+      <object class="GtkFrame" id="frame1">
+        <property name="visible">True</property>
         <property name="can_focus">False</property>
-        <property name="orientation">vertical</property>
-        <property name="spacing">2</property>
-        <child internal-child="action_area">
-          <object class="GtkButtonBox" id="dialog-action_area1">
-            <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="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="can_default">True</property>
-                <property name="has_default">True</property>
-                <property name="receives_default">True</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">False</property>
-                <property name="receives_default">True</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>
-            <child>
-              <object class="GtkButton" id="help">
-                <property name="label">gtk-help</property>
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="receives_default">True</property>
-                <property name="use_stock">True</property>
-              </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">True</property>
-                <property name="position">2</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkButton" id="revert">
-                <property name="label">gtk-revert-to-saved</property>
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="receives_default">True</property>
-                <property name="use_stock">True</property>
-              </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">True</property>
-                <property name="position">3</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>
+        <property name="vexpand">True</property>
+        <property name="label_xalign">0</property>
+        <property name="shadow_type">none</property>
         <child>
-          <object class="GtkFrame" id="frame1">
+          <object class="GtkAlignment" id="alignment1">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
-            <property name="vexpand">True</property>
-            <property name="label_xalign">0</property>
-            <property name="shadow_type">none</property>
+            <property name="top_padding">6</property>
+            <property name="left_padding">12</property>
             <child>
-              <object class="GtkAlignment" id="alignment1">
+              <object class="GtkBox" id="box1">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
-                <property name="top_padding">6</property>
-                <property name="left_padding">12</property>
+                <property name="orientation">vertical</property>
+                <property name="spacing">6</property>
                 <child>
-                  <object class="GtkBox" id="box1">
-                    <property name="visible">True</property>
+                  <object class="GtkGrid" id="grid1">
                     <property name="can_focus">False</property>
-                    <property name="orientation">vertical</property>
-                    <property name="spacing">6</property>
+                    <property name="no_show_all">True</property>
+                    <property name="row_spacing">6</property>
+                    <property name="column_spacing">6</property>
+                    <property name="column_homogeneous">True</property>
                     <child>
-                      <object class="GtkGrid" id="grid1">
+                      <object class="GtkLabel" id="preference">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="row_spacing">6</property>
-                        <property name="column_spacing">6</property>
-                        <property name="column_homogeneous">True</property>
-                        <child>
-                          <object class="GtkLabel" id="preference">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="yalign">0.49000000953674316</property>
-                            <property name="label" translatable="yes">Preference Name</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="status">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">0.51999998092651367</property>
-                            <property name="yalign">0.50999999046325684</property>
-                            <property name="label" translatable="yes">Status</property>
-                          </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="type">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="label" translatable="yes">Type</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">2</property>
-                            <property name="top_attach">0</property>
-                            <property name="width">1</property>
-                            <property name="height">1</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="value">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="label" translatable="yes">Value</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">3</property>
-                            <property name="top_attach">0</property>
-                            <property name="width">1</property>
-                            <property name="height">1</property>
-                          </packing>
-                        </child>
+                        <property name="yalign">0.49000000953674316</property>
+                        <property name="label" translatable="yes">Preference Name</property>
                       </object>
                       <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="position">0</property>
+                        <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="svxcorelo-SvxSimpleTableContainer" id="preferences">
+                      <object class="GtkLabel" id="status">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="hexpand">True</property>
-                        <property name="vexpand">True</property>
+                        <property name="xalign">0.51999998092651367</property>
+                        <property name="yalign">0.50999999046325684</property>
+                        <property name="label" translatable="yes">Status</property>
                       </object>
                       <packing>
-                        <property name="expand">True</property>
-                        <property name="fill">True</property>
-                        <property name="position">1</property>
+                        <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="type">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label" translatable="yes">Type</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">2</property>
+                        <property name="top_attach">0</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="value">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label" translatable="yes">Value</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">3</property>
+                        <property name="top_attach">0</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="svxcorelo-SvxSimpleTableContainer" id="preferences">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="hexpand">True</property>
+                    <property name="vexpand">True</property>
+                  </object>
+                  <packing>
+                    <property name="expand">True</property>
+                    <property name="fill">True</property>
+                    <property name="position">1</property>
+                  </packing>
                 </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">Preferences</property>
-                <attributes>
-                  <attribute name="weight" value="semibold"/>
-                </attributes>
-              </object>
-            </child>
           </object>
-          <packing>
-            <property name="expand">False</property>
-            <property name="fill">True</property>
-            <property name="position">1</property>
-          </packing>
+        </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">Preferences</property>
+            <attributes>
+              <attribute name="weight" value="semibold"/>
+            </attributes>
+          </object>
         </child>
       </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">True</property>
+        <property name="position">1</property>
+      </packing>
     </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-widget response="0">revert</action-widget>
-    </action-widgets>
   </object>
 </interface>
commit 3a19626d808e23f974711ee9fc0d394f76b5f9d7
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Thu Jun 27 17:02:01 2013 +0300

    Empty tab page created and added on options dialog
    
    Buttons cause crash on empty tab page.
    
    Change-Id: I34bfb412c4d9dda9fdf71b6803be67939c00ff59

diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
index 55870f9..22aff88 100644
--- a/cui/source/options/optaboutconfig.cxx
+++ b/cui/source/options/optaboutconfig.cxx
@@ -13,10 +13,16 @@
 using namespace svx;
 
 CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet )
-    :SfxTabPage( pParent, "AboutConfig", "cui/ui/optaboutconfigdialog.ui", rItemSet)
+    :SfxTabPage( pParent, "AboutConfig", "cui/ui/aboutconfigdialog.ui", rItemSet)
 {
 //    get(m_pEditBtn, "");
 
+    m_pPrefCtrl = get<SvxSimpleTableContainer>("preferences");
+
+    Size aControlSize(200,200);
+    m_pPrefCtrl->set_width_request(aControlSize.Width());
+    m_pPrefCtrl->set_height_request(aControlSize.Height());
+
     WinBits nBits = WB_SCROLL | WB_SORT;
     pPrefBox = new svx::OptHeaderTabListBox( *m_pPrefCtrl, nBits );
 }
diff --git a/cui/source/options/treeopt.src b/cui/source/options/treeopt.src
index af8e332..871c787 100644
--- a/cui/source/options/treeopt.src
+++ b/cui/source/options/treeopt.src
@@ -101,6 +101,7 @@ Resource RID_OFADLG_OPTIONS_TREE_PAGES
             < "Accessibility" ; RID_SVXPAGE_ACCESSIBILITYCONFIG ; > ;
             < "Advanced" ; RID_SVXPAGE_OPTIONS_JAVA ; > ;
             < "Online Update" ; RID_SVXPAGE_ONLINEUPDATE ; > ;
+            < "About Config" ; RID_SVXPAGE_ABOUT_CONFIG ; > ;
         };
     };
     StringArray SID_LANGUAGE_OPTIONS
commit a76f687d46014197d7ebefb85743ed66f996137d
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Mon Jun 24 21:50:23 2013 +0300

    Initial files are improved.
    
    Some typos fixed on header files.
    
    Change-Id: Ibd6f1b666a3a5b8b6a943b1bffae0be262bcf2fa

diff --git a/cui/Library_cui.mk b/cui/Library_cui.mk
index 4e4b9fd..035eb0d 100644
--- a/cui/Library_cui.mk
+++ b/cui/Library_cui.mk
@@ -136,6 +136,7 @@ $(eval $(call gb_Library_add_exception_objects,cui,\
     cui/source/options/doclinkdialog \
     cui/source/options/fontsubs \
     cui/source/options/internationaloptions \
+	cui/source/options/optaboutconfig \
     cui/source/options/optaccessibility \
     cui/source/options/optasian \
     cui/source/options/optchart \
diff --git a/cui/source/inc/cuires.hrc b/cui/source/inc/cuires.hrc
index 2ac707c..247a49a 100644
--- a/cui/source/inc/cuires.hrc
+++ b/cui/source/inc/cuires.hrc
@@ -152,6 +152,7 @@
 #define RID_OFAPAGE_SMARTTAG_OPTIONS    (RID_OFA_START + 125)
 #define RID_SVXPAGE_OPTIONS_CTL             (RID_SVX_START + 252)
 #define RID_SVXPAGE_OPTIONS_JAVA            (RID_SVX_START + 253)
+#define RID_SVXPAGE_ABOUT_CONFIG            (RID_SVX_START + 301)
 #define RID_SVXPAGE_ACCESSIBILITYCONFIG     (RID_SVX_START + 250)
 #define RID_SVXPAGE_ASIAN_LAYOUT            (RID_SVX_START + 246)
 #define RID_OPTPAGE_CHART_DEFCOLORS         (RID_SVX_START + 299)
diff --git a/cui/source/options/optaboutconfig.cxx b/cui/source/options/optaboutconfig.cxx
new file mode 100644
index 0000000..55870f9
--- /dev/null
+++ b/cui/source/options/optaboutconfig.cxx
@@ -0,0 +1,32 @@
+/* -*- 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 "optaboutconfig.hxx"
+#include "optHeaderTabListbox.hxx"
+
+using namespace svx;
+
+CuiAboutConfigTabPage::CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet )
+    :SfxTabPage( pParent, "AboutConfig", "cui/ui/optaboutconfigdialog.ui", rItemSet)
+{
+//    get(m_pEditBtn, "");
+
+    WinBits nBits = WB_SCROLL | WB_SORT;
+    pPrefBox = new svx::OptHeaderTabListBox( *m_pPrefCtrl, nBits );
+}
+
+CuiAboutConfigTabPage::~CuiAboutConfigTabPage()
+{
+}
+
+SfxTabPage* CuiAboutConfigTabPage::Create( Window* pParent, const SfxItemSet& rItemSet )
+{
+    return ( new CuiAboutConfigTabPage( pParent, rItemSet) );
+}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index 68fb0c5..4ef04b0 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -8,15 +8,17 @@
  */
 
 #ifndef INCLUDED_CUI_OPTABOUTCONFIG_HXX
-#define INCLUDED_CUI_OPTBABOUTCONFIG_HXX
+#define INCLUDED_CUI_OPTABOUTCONFIG_HXX
 
-#include <svx/simpltabl.hxx>
+#include <sfx2/tabdlg.hxx>
+#include <svtools/simptabl.hxx>
+#include "optHeaderTabListbox.hxx"
 
-namespace cui
+namespace svx
 {
     class OptHeaderTabListBox;
 }
-
+class CuiAboutConfigTabPage;
 
 class CuiAboutConfigTabPage : public SfxTabPage
 {
@@ -26,12 +28,15 @@ private:
     //PushButton* m_pDefaultBtn
     PushButton* m_pEditBtn;
 
-    ::cui::OptHeaderTabListBox* pPrefBox;
+    ::svx::OptHeaderTabListBox* pPrefBox;
 public:
    CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet );
    ~CuiAboutConfigTabPage();
 
-   static SfxTabPage* create( Window* pParent, const SfxItemSet& rItemset );
+   static SfxTabPage* Create( Window* pParent, const SfxItemSet& rItemset );
+
+};
+
+#endif
 
-}
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/options/treeopt.cxx b/cui/source/options/treeopt.cxx
index 33f2b79..fde7cbd 100644
--- a/cui/source/options/treeopt.cxx
+++ b/cui/source/options/treeopt.cxx
@@ -32,6 +32,7 @@
 #include "dbregisterednamesconfig.hxx"
 #include "dialmgr.hxx"
 #include "fontsubs.hxx"
+#include "optaboutconfig.hxx"
 #include "optaccessibility.hxx"
 #include "optasian.hxx"
 #include "optchart.hxx"
@@ -317,6 +318,7 @@ SfxTabPage* CreateGeneralTabPage( sal_uInt16 nId, Window* pParent, const SfxItem
         case RID_SVXPAGE_OPTIONS_JAVA:              fnCreate = &SvxJavaOptionsPage::Create ; break;
         case RID_SVXPAGE_ONLINEUPDATE:              fnCreate = &SvxOnlineUpdateTabPage::Create; break;
         case RID_OPTPAGE_CHART_DEFCOLORS:           fnCreate = &SvxDefaultColorOptPage::Create; break;
+        case RID_SVXPAGE_ABOUT_CONFIG:              fnCreate = &CuiAboutConfigTabPage::Create; break;
     }
 
     SfxTabPage* pRet = fnCreate ? (*fnCreate)( pParent, rSet ) : NULL;
@@ -348,6 +350,7 @@ static OptionsMapping_Impl const OptionsMap_Impl[] =
     { "ProductName",        "Accessibility",        RID_SVXPAGE_ACCESSIBILITYCONFIG },
     { "ProductName",        "Java",                 RID_SVXPAGE_OPTIONS_JAVA },
     { "ProductName",        "OnlineUpdate",         RID_SVXPAGE_ONLINEUPDATE },
+    { "ProductName",        "AboutConfig",          RID_SVXPAGE_ABOUT_CONFIG },
     { "LanguageSettings",   NULL,                   SID_LANGUAGE_OPTIONS },
     { "LanguageSettings",   "Languages",            OFA_TP_LANGUAGES  },
     { "LanguageSettings",   "WritingAids",          RID_SFXPAGE_LINGU },
diff --git a/cui/uiconfig/ui/aboutconfigdialog.ui b/cui/uiconfig/ui/aboutconfigdialog.ui
index 960200e..d038bfe 100644
--- a/cui/uiconfig/ui/aboutconfigdialog.ui
+++ b/cui/uiconfig/ui/aboutconfigdialog.ui
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <interface>
   <!-- interface-requires gtk+ 3.0 -->
-  <object class="GtkDialog" id="aboutconfig">
+  <object class="GtkDialog" id="AboutConfig">
     <property name="can_focus">False</property>
     <property name="border_width">5</property>
     <property name="title" translatable="yes">Advanced Options</property>
commit f106f277b517ebba523ff48a888e3c8496dc9e97
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Thu Jun 20 16:44:25 2013 +0300

    Improvements on current prototypes.
    
    License statement added to header. modulename changed svx to cui.
    
    Change-Id: I90f96e6c4720af392b344fce1052dd135e611bae

diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
index 969f130a..68fb0c5 100644
--- a/cui/source/options/optaboutconfig.hxx
+++ b/cui/source/options/optaboutconfig.hxx
@@ -1,16 +1,24 @@
 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-#ifndef _SVX_OPTABOUTCONFIG_HXX
-#define _SVX_OPTABOUTCONFIG_HXX
+/*
+ * 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 INCLUDED_CUI_OPTABOUTCONFIG_HXX
+#define INCLUDED_CUI_OPTBABOUTCONFIG_HXX
 
 #include <svx/simpltabl.hxx>
 
-namespace svx
+namespace cui
 {
     class OptHeaderTabListBox;
 }
 
 
-class SvxAboutConfigTabPage : public SfxTabPage
+class CuiAboutConfigTabPage : public SfxTabPage
 {
 private:
     SvxSimpleTableContainer* m_pPrefCtrl;
@@ -18,7 +26,12 @@ private:
     //PushButton* m_pDefaultBtn
     PushButton* m_pEditBtn;
 
-    ::svx::OptHeaderTabListBox* pPrefBox;
+    ::cui::OptHeaderTabListBox* pPrefBox;
 public:
+   CuiAboutConfigTabPage( Window* pParent, const SfxItemSet& rItemSet );
+   ~CuiAboutConfigTabPage();
+
+   static SfxTabPage* create( Window* pParent, const SfxItemSet& rItemset );
+
 }
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/uiconfig/ui/aboutconfigdialog.ui b/cui/uiconfig/ui/aboutconfigdialog.ui
index e3af350..960200e 100644
--- a/cui/uiconfig/ui/aboutconfigdialog.ui
+++ b/cui/uiconfig/ui/aboutconfigdialog.ui
@@ -85,22 +85,27 @@
           <object class="GtkFrame" id="frame1">
             <property name="visible">True</property>
             <property name="can_focus">False</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="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="GtkGrid" id="grid1">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
+                        <property name="row_spacing">6</property>
+                        <property name="column_spacing">6</property>
                         <property name="column_homogeneous">True</property>
                         <child>
                           <object class="GtkLabel" id="preference">
@@ -185,7 +190,7 @@
               <object class="GtkLabel" id="label1">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
-                <property name="label" translatable="yes">frame1</property>
+                <property name="label" translatable="yes">Preferences</property>
                 <attributes>
                   <attribute name="weight" value="semibold"/>
                 </attributes>
commit 208e3f6ea77057e301bfe6693b3bd4e3ba66defc
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Wed Jun 19 21:07:55 2013 +0300

    about config page header prototype
    
    prototype is added for about:config utility as SfxTabPage.
    
    Change-Id: I5146c0615a42f0ae084b3ec29b6b5f3b6677d9c6

diff --git a/cui/source/options/optaboutconfig.hxx b/cui/source/options/optaboutconfig.hxx
new file mode 100644
index 0000000..969f130a
--- /dev/null
+++ b/cui/source/options/optaboutconfig.hxx
@@ -0,0 +1,24 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+#ifndef _SVX_OPTABOUTCONFIG_HXX
+#define _SVX_OPTABOUTCONFIG_HXX
+
+#include <svx/simpltabl.hxx>
+
+namespace svx
+{
+    class OptHeaderTabListBox;
+}
+
+
+class SvxAboutConfigTabPage : public SfxTabPage
+{
+private:
+    SvxSimpleTableContainer* m_pPrefCtrl;
+    //In case of tab page we can think a revert button
+    //PushButton* m_pDefaultBtn
+    PushButton* m_pEditBtn;
+
+    ::svx::OptHeaderTabListBox* pPrefBox;
+public:
+}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 2004a788115fa8ec64fc2d5d5f857a0284b80263
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Wed Jun 19 14:01:09 2013 +0300

    second prototype of the aboutconfigdialog.ui
    
    This prototype has SvxSimpleTableContainer and a few labels related.
    
    Change-Id: I1cda9fdecc5b670f363da1d4ef94ff1663b03530

diff --git a/cui/uiconfig/ui/aboutconfigdialog.ui b/cui/uiconfig/ui/aboutconfigdialog.ui
index 1838ce7..e3af350 100644
--- a/cui/uiconfig/ui/aboutconfigdialog.ui
+++ b/cui/uiconfig/ui/aboutconfigdialog.ui
@@ -20,6 +20,8 @@
                 <property name="label">gtk-ok</property>
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
+                <property name="can_default">True</property>
+                <property name="has_default">True</property>
                 <property name="receives_default">True</property>
                 <property name="use_stock">True</property>
               </object>
@@ -80,11 +82,114 @@
           </packing>
         </child>
         <child>
-          <object class="GtkGrid" id="grid1">
+          <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>
-              <placeholder/>
+              <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="GtkGrid" id="grid1">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="column_homogeneous">True</property>
+                        <child>
+                          <object class="GtkLabel" id="preference">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="yalign">0.49000000953674316</property>
+                            <property name="label" translatable="yes">Preference Name</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="status">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="xalign">0.51999998092651367</property>
+                            <property name="yalign">0.50999999046325684</property>
+                            <property name="label" translatable="yes">Status</property>
+                          </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="type">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="label" translatable="yes">Type</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">2</property>
+                            <property name="top_attach">0</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="value">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="label" translatable="yes">Value</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">3</property>
+                            <property name="top_attach">0</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="svxcorelo-SvxSimpleTableContainer" id="preferences">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="hexpand">True</property>
+                        <property name="vexpand">True</property>
+                      </object>
+                      <packing>
+                        <property name="expand">True</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">frame1</property>
+                <attributes>
+                  <attribute name="weight" value="semibold"/>
+                </attributes>
+              </object>
             </child>
           </object>
           <packing>
commit 074cc3f4fb782eb1dd96da4cd110501879d64d78
Author: Efe Gürkan YALAMAN <efeyalaman at gmail.com>
Date:   Tue Jun 18 16:17:33 2013 +0300

    Initial .ui dialog for about:config utility
    
    Change-Id: I8c5b83e188e32fd1df1aa53ca1822f9b40285ad3

diff --git a/cui/UIConfig_cui.mk b/cui/UIConfig_cui.mk
index 9ed5ec2..a3f8efd 100644
--- a/cui/UIConfig_cui.mk
+++ b/cui/UIConfig_cui.mk
@@ -11,6 +11,7 @@ $(eval $(call gb_UIConfig_UIConfig,cui))
 
 $(eval $(call gb_UIConfig_add_uifiles,cui,\
 	cui/uiconfig/ui/aboutdialog \
+	cui/uiconfig/ui/aboutconfigdialog\
 	cui/uiconfig/ui/acorexceptpage \
 	cui/uiconfig/ui/acorreplacepage \
 	cui/uiconfig/ui/applyautofmtpage \
diff --git a/cui/uiconfig/ui/aboutconfigdialog.ui b/cui/uiconfig/ui/aboutconfigdialog.ui
new file mode 100644
index 0000000..1838ce7
--- /dev/null
+++ b/cui/uiconfig/ui/aboutconfigdialog.ui
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <!-- interface-requires gtk+ 3.0 -->
+  <object class="GtkDialog" id="aboutconfig">
+    <property name="can_focus">False</property>
+    <property name="border_width">5</property>
+    <property name="title" translatable="yes">Advanced Options</property>
+    <property name="type_hint">dialog</property>
+    <child internal-child="vbox">

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list