diff options
-rw-r--r-- | cui/source/inc/optlingu.hxx | 1 | ||||
-rw-r--r-- | cui/source/options/optlingu.cxx | 45 | ||||
-rw-r--r-- | include/svtools/svlbitm.hxx | 4 | ||||
-rw-r--r-- | include/svtools/treelistbox.hxx | 2 | ||||
-rw-r--r-- | svtools/source/contnr/treelistbox.cxx | 3 |
5 files changed, 29 insertions, 26 deletions
diff --git a/cui/source/inc/optlingu.hxx b/cui/source/inc/optlingu.hxx index 89a8e67f0c3a..36ae80a2d074 100644 --- a/cui/source/inc/optlingu.hxx +++ b/cui/source/inc/optlingu.hxx @@ -79,6 +79,7 @@ class SvxEditModulesDlg : public ModalDialog DECL_LINK_TYPED(ClickHdl_Impl, Button*, void); DECL_LINK_TYPED(BackHdl_Impl, Button*, void); DECL_LINK( LangSelectHdl_Impl, ListBox* ); + DECL_LINK_TYPED( BoxCheckButtonHdl_Impl2, SvLBoxButtonData*, void ); DECL_LINK( BoxCheckButtonHdl_Impl, SvTreeListBox * ); DECL_LINK(OpenURLHdl_Impl, void *); diff --git a/cui/source/options/optlingu.cxx b/cui/source/options/optlingu.cxx index 35c8b898bb46..b855be3d6de9 100644 --- a/cui/source/options/optlingu.cxx +++ b/cui/source/options/optlingu.cxx @@ -1935,7 +1935,7 @@ SvTreeListEntry* SvxEditModulesDlg::CreateEntry( OUString& rTxt, sal_uInt16 nCol if( !pCheckButtonData ) { pCheckButtonData = new SvLBoxButtonData(m_pModulesCLB); - pCheckButtonData->SetLink( m_pModulesCLB->GetCheckButtonHdl() ); + pCheckButtonData->SetLink( LINK( this, SvxEditModulesDlg, BoxCheckButtonHdl_Impl2 ) ); } if (CBCOL_FIRST == nCol) @@ -1984,33 +1984,36 @@ IMPL_LINK( SvxEditModulesDlg, SelectHdl_Impl, SvxCheckListBox *, pBox ) return 0; } -IMPL_LINK( SvxEditModulesDlg, BoxCheckButtonHdl_Impl, SvTreeListBox *, pBox ) +IMPL_LINK_NOARG_TYPED( SvxEditModulesDlg, BoxCheckButtonHdl_Impl2, SvLBoxButtonData*, void ) { - pBox = m_pModulesCLB; - SvTreeListEntry *pCurEntry = pBox->GetCurEntry(); - if (pCurEntry) + BoxCheckButtonHdl_Impl(NULL); +} +IMPL_LINK( SvxEditModulesDlg, BoxCheckButtonHdl_Impl, SvTreeListBox *, /*pBox*/ ) +{ + SvTreeListEntry *pCurEntry = m_pModulesCLB->GetCurEntry(); + if (pCurEntry) + { + ModuleUserData_Impl* pData = static_cast<ModuleUserData_Impl *>( + pCurEntry->GetUserData()); + if (!pData->IsParent() && pData->GetType() == TYPE_HYPH) { - ModuleUserData_Impl* pData = static_cast<ModuleUserData_Impl *>( - pCurEntry->GetUserData()); - if (!pData->IsParent() && pData->GetType() == TYPE_HYPH) + // make hyphenator checkboxes function as radio-buttons + // (at most one box may be checked) + SvTreeListEntry *pEntry = m_pModulesCLB->First(); + while (pEntry) { - // make hyphenator checkboxes function as radio-buttons - // (at most one box may be checked) - SvTreeListEntry *pEntry = pBox->First(); - while (pEntry) + pData = static_cast<ModuleUserData_Impl*>(pEntry->GetUserData()); + if (!pData->IsParent() && + pData->GetType() == TYPE_HYPH && + pEntry != pCurEntry) { - pData = static_cast<ModuleUserData_Impl*>(pEntry->GetUserData()); - if (!pData->IsParent() && - pData->GetType() == TYPE_HYPH && - pEntry != pCurEntry) - { - lcl_SetCheckButton( pEntry, false ); - pBox->InvalidateEntry( pEntry ); - } - pEntry = pBox->Next( pEntry ); + lcl_SetCheckButton( pEntry, false ); + m_pModulesCLB->InvalidateEntry( pEntry ); } + pEntry = m_pModulesCLB->Next( pEntry ); } } + } return 0; } diff --git a/include/svtools/svlbitm.hxx b/include/svtools/svlbitm.hxx index 2aa8e6355022..f65996c50efa 100644 --- a/include/svtools/svlbitm.hxx +++ b/include/svtools/svlbitm.hxx @@ -59,7 +59,7 @@ struct SvLBoxButtonData_Impl; class SVT_DLLPUBLIC SvLBoxButtonData { private: - Link<> aLink; + Link<SvLBoxButtonData*,void> aLink; long nWidth; long nHeight; SvLBoxButtonData_Impl* pImpl; @@ -80,7 +80,7 @@ public: static SvBmp GetIndex( SvItemStateFlags nItemState ); long Width(); long Height(); - void SetLink( const Link<>& rLink) { aLink=rLink; } + void SetLink( const Link<SvLBoxButtonData*,void>& rLink) { aLink=rLink; } bool IsRadio(); // as buttons are not derived from LinkHdl void CallLink(); diff --git a/include/svtools/treelistbox.hxx b/include/svtools/treelistbox.hxx index 9ec23e4653ac..83789c788cf1 100644 --- a/include/svtools/treelistbox.hxx +++ b/include/svtools/treelistbox.hxx @@ -294,7 +294,7 @@ protected: private: void SetBaseModel(SvTreeList* pNewModel); - DECL_DLLPRIVATE_LINK( CheckButtonClick, SvLBoxButtonData * ); + DECL_DLLPRIVATE_LINK_TYPED( CheckButtonClick, SvLBoxButtonData *, void ); DECL_DLLPRIVATE_LINK( TextEditEndedHdl_Impl, void * ); // Handler that is called by TreeList to clone an Entry DECL_DLLPRIVATE_LINK( CloneHdl_Impl, SvTreeListEntry* ); diff --git a/svtools/source/contnr/treelistbox.cxx b/svtools/source/contnr/treelistbox.cxx index 6d64a0a8c89c..3926371cd89d 100644 --- a/svtools/source/contnr/treelistbox.cxx +++ b/svtools/source/contnr/treelistbox.cxx @@ -1781,11 +1781,10 @@ const Image& SvTreeListBox::GetCollapsedEntryBmp( const SvTreeListEntry* pEntry return pItem->GetBitmap1( ); } -IMPL_LINK( SvTreeListBox, CheckButtonClick, SvLBoxButtonData *, pData ) +IMPL_LINK_TYPED( SvTreeListBox, CheckButtonClick, SvLBoxButtonData *, pData, void ) { pHdlEntry = pData->GetActEntry(); CheckButtonHdl(); - return 0; } SvTreeListEntry* SvTreeListBox::InsertEntry( |