Kaydet (Commit) ac34ba07 authored tarafından Mihály Palenik's avatar Mihály Palenik Kaydeden (comit) Caolán McNamara

Use expanding handler in Expert Configuration dialog

Expert Configuration dialog use expanding handler instead of double click
handler when expanding tree node.

Change-Id: Ia35c289db46796ca61ef8898e669af6c5a0bd24d
Reviewed-on: https://gerrit.libreoffice.org/16674Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarCaolán McNamara <caolanm@redhat.com>
Tested-by: 's avatarCaolán McNamara <caolanm@redhat.com>
üst 0c8dd8f5
...@@ -153,6 +153,7 @@ CuiAboutConfigTabPage::CuiAboutConfigTabPage( vcl::Window* pParent/*, const SfxI ...@@ -153,6 +153,7 @@ CuiAboutConfigTabPage::CuiAboutConfigTabPage( vcl::Window* pParent/*, const SfxI
m_pEditBtn->SetClickHdl( LINK( this, CuiAboutConfigTabPage, StandardHdl_Impl ) ); m_pEditBtn->SetClickHdl( LINK( this, CuiAboutConfigTabPage, StandardHdl_Impl ) );
m_pResetBtn->SetClickHdl( LINK( this, CuiAboutConfigTabPage, ResetBtnHdl_Impl ) ); m_pResetBtn->SetClickHdl( LINK( this, CuiAboutConfigTabPage, ResetBtnHdl_Impl ) );
m_pPrefBox->SetDoubleClickHdl( LINK(this, CuiAboutConfigTabPage, StandardHdl_Impl) ); m_pPrefBox->SetDoubleClickHdl( LINK(this, CuiAboutConfigTabPage, StandardHdl_Impl) );
m_pPrefBox->SetExpandingHdl( LINK(this, CuiAboutConfigTabPage, ExpandingHdl_Impl) );
m_pSearchBtn->SetClickHdl( LINK(this, CuiAboutConfigTabPage, SearchHdl_Impl) ); m_pSearchBtn->SetClickHdl( LINK(this, CuiAboutConfigTabPage, SearchHdl_Impl) );
m_pPrefBox->InsertHeaderEntry(get<FixedText>("preference")->GetText()); m_pPrefBox->InsertHeaderEntry(get<FixedText>("preference")->GetText());
...@@ -279,6 +280,7 @@ void CuiAboutConfigTabPage::FillItems(const Reference< XNameAccess >& xNameAcces ...@@ -279,6 +280,7 @@ void CuiAboutConfigTabPage::FillItems(const Reference< XNameAccess >& xNameAcces
pEntry->AddItem( new SvLBoxString( pEntry, 0, "")); pEntry->AddItem( new SvLBoxString( pEntry, 0, ""));
pEntry->SetUserData( new UserData(xNextNameAccess) ); pEntry->SetUserData( new UserData(xNextNameAccess) );
pEntry->EnableChildrenOnDemand();
m_pPrefBox->Insert( pEntry, pParentEntry ); m_pPrefBox->Insert( pEntry, pParentEntry );
} }
else else
...@@ -547,16 +549,12 @@ IMPL_LINK_NOARG( CuiAboutConfigTabPage, ResetBtnHdl_Impl ) ...@@ -547,16 +549,12 @@ IMPL_LINK_NOARG( CuiAboutConfigTabPage, ResetBtnHdl_Impl )
IMPL_LINK_NOARG( CuiAboutConfigTabPage, StandardHdl_Impl ) IMPL_LINK_NOARG( CuiAboutConfigTabPage, StandardHdl_Impl )
{ {
SvTreeListEntry* pEntry = m_pPrefBox->FirstSelected(); SvTreeListEntry* pEntry = m_pPrefBox->GetHdlEntry();
if(pEntry == nullptr)
return 0;
UserData *pUserData = static_cast<UserData*>(pEntry->GetUserData()); UserData *pUserData = static_cast<UserData*>(pEntry->GetUserData());
if(!pUserData->bIsPropertyPath) if(pUserData->bIsPropertyPath)
{
//if selection is not node
if(!pEntry->HasChildren())
FillItems( pUserData->aXNameAccess, pEntry );
}
else
{ {
//if selection is a node //if selection is a node
OUString sPropertyName = SvTabListBox::GetEntryText( pEntry, 1 ); OUString sPropertyName = SvTabListBox::GetEntryText( pEntry, 1 );
...@@ -814,4 +812,25 @@ IMPL_LINK_NOARG( CuiAboutConfigTabPage, SearchHdl_Impl) ...@@ -814,4 +812,25 @@ IMPL_LINK_NOARG( CuiAboutConfigTabPage, SearchHdl_Impl)
return 0; return 0;
} }
IMPL_LINK_NOARG( CuiAboutConfigTabPage, ExpandingHdl_Impl )
{
SvTreeListEntry* pEntry = m_pPrefBox->GetHdlEntry();
if(pEntry != nullptr && pEntry->HasChildrenOnDemand())
{
pEntry->EnableChildrenOnDemand(false);
SvTreeListEntry *pFirstChild = m_pPrefBox->FirstChild(pEntry);
if(pFirstChild)
m_pPrefBox->RemoveEntry(pFirstChild);
if(pEntry->GetUserData() != nullptr)
{
UserData *pUserData = static_cast<UserData*>(pEntry->GetUserData());
FillItems( pUserData->aXNameAccess, pEntry );
}
}
return true;
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
...@@ -62,6 +62,7 @@ private: ...@@ -62,6 +62,7 @@ private:
DECL_LINK( StandardHdl_Impl, void * ); DECL_LINK( StandardHdl_Impl, void * );
DECL_LINK( ResetBtnHdl_Impl, void * ); DECL_LINK( ResetBtnHdl_Impl, void * );
DECL_LINK( SearchHdl_Impl, void* ); DECL_LINK( SearchHdl_Impl, void* );
DECL_LINK( ExpandingHdl_Impl, void* );
public: public:
explicit CuiAboutConfigTabPage(vcl::Window* pParent); explicit CuiAboutConfigTabPage(vcl::Window* pParent);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment