[Libreoffice-commits] core.git: Branch 'feature/aboutconfig' - 2 commits - cui/source
cui/source/options/optaboutconfig.cxx | 36 +++--- cui/source/options/optaboutconfig.hxx |3 +- 2 files changed, 35 insertions(+), 4 deletions(-) New commits: commit c5a5a09044ee794e6494d6a59e98b1380ae62fae Author: Efe Gürkan YALAMAN efeyala...@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, getFixedText(preference)-GetText(), 0, HIB_LEFT | HIB_VCENTER | HIB_CLICKABLE | HIB_UPARROW); rBar.InsertItem( ITEMID_TYPE, getFixedText(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 bbe546ac8d31a0e66e0593d346833281b18c9d24 Author: Efe Gürkan YALAMAN efeyala...@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 22661d7..3ba4355 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
[Libreoffice-commits] core.git: Branch 'feature/aboutconfig' - 2 commits - cui/source
Rebased ref, commits from common ancestor: commit e48c4f22d018037868e8aee4790d8ae6e7aa6162 Author: Efe Gürkan YALAMAN efeyala...@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 2982378..343f0c9 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 5bb3a60925b6b49811a225120f09b575234d5d15 Author: Efe Gürkan YALAMAN efeyala...@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(); +
[Libreoffice-commits] core.git: Branch 'feature/aboutconfig' - 2 commits - cui/source
cui/source/options/optaboutconfig.cxx | 24 cui/source/options/optaboutconfig.hxx | 11 +-- 2 files changed, 17 insertions(+), 18 deletions(-) New commits: commit daeccfaf65a0b312e1a19901de8b223cb3204724 Author: Efe Gürkan YALAMAN efeyala...@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 6848a8f..cdfb1d5 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 e81a396053526f9a7c09aefed805b189ecd4e0b9 Author: Efe Gürkan YALAMAN efeyala...@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_VALUE4 -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 a924877..6848a8f 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(); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'feature/aboutconfig' - 2 commits - cui/source
cui/source/options/optaboutconfig.cxx | 26 ++ 1 file changed, 18 insertions(+), 8 deletions(-) New commits: commit bca3615b8bfca15949ea5e0588763a51226fa50c Author: Efe Gürkan YALAMAN efeyala...@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 27f65ca9b5daf6cbedcfa54af9f88bc9d3c7686b Author: Efe Gürkan YALAMAN efeyala...@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_VALUE4 + 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, getFixedText(preference)-GetText(), 0, HIB_LEFT | HIB_VCENTER ); -rBar.InsertItem( 2, getFixedText(status)-GetText(), 0, HIB_LEFT | HIB_VCENTER ); -rBar.InsertItem( 3, getFixedText(type)-GetText(), 0, HIB_LEFT | HIB_VCENTER ); -rBar.InsertItem( 4, getFixedText(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, getFixedText(preference)-GetText(), 0, HIB_LEFT | HIB_VCENTER ); +rBar.InsertItem( ITEMID_TYPE, getFixedText(status)-GetText(), 0, HIB_LEFT | HIB_VCENTER ); +rBar.InsertItem( ITEMID_STATUS, getFixedText(type)-GetText(), 0, HIB_LEFT | HIB_VCENTER ); +rBar.InsertItem( ITEMID_VALUE, getFixedText(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); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits