diff options
Diffstat (limited to 'cui/source/dialogs/srchxtra.cxx')
-rw-r--r-- | cui/source/dialogs/srchxtra.cxx | 112 |
1 files changed, 51 insertions, 61 deletions
diff --git a/cui/source/dialogs/srchxtra.cxx b/cui/source/dialogs/srchxtra.cxx index 87857a97287a..7000d954e778 100644 --- a/cui/source/dialogs/srchxtra.cxx +++ b/cui/source/dialogs/srchxtra.cxx @@ -37,87 +37,77 @@ #include <rtl/strbuf.hxx> #include "svtools/treelistentry.hxx" -// class SvxSearchFormatDialog ------------------------------------------- - -SvxSearchFormatDialog::SvxSearchFormatDialog( Window* pParent, const SfxItemSet& rSet ) : - - SfxTabDialog( pParent, CUI_RES( RID_SVXDLG_SEARCHFORMAT ), &rSet ), - - pFontList( NULL ) - +SvxSearchFormatDialog::SvxSearchFormatDialog(Window* pParent, const SfxItemSet& rSet) + : SfxTabDialog(pParent, "SearchFormatDialog", "cui/ui/searchformatdialog.ui", &rSet) + , m_pFontList(NULL) + , m_nNamePageId(0) + , m_nParaStdPageId(0) + , m_nParaAlignPageId(0) + , m_nBackPageId(0) { - FreeResource(); - - AddTabPage( RID_SVXPAGE_CHAR_NAME, SvxCharNamePage::Create, 0 ); - AddTabPage( RID_SVXPAGE_CHAR_EFFECTS, SvxCharEffectsPage::Create, 0 ); - AddTabPage( RID_SVXPAGE_CHAR_POSITION, SvxCharPositionPage::Create, 0 ); - AddTabPage( RID_SVXPAGE_CHAR_TWOLINES, SvxCharTwoLinesPage::Create, 0 ); - AddTabPage( RID_SVXPAGE_STD_PARAGRAPH, SvxStdParagraphTabPage::Create, 0 ); - AddTabPage( RID_SVXPAGE_ALIGN_PARAGRAPH, SvxParaAlignTabPage::Create, 0 ); - AddTabPage( RID_SVXPAGE_EXT_PARAGRAPH, SvxExtParagraphTabPage::Create, 0 ); - AddTabPage( RID_SVXPAGE_PARA_ASIAN, SvxAsianTabPage::Create, 0 ); - AddTabPage( RID_SVXPAGE_BACKGROUND, SvxBackgroundTabPage::Create, 0 ); + m_nNamePageId = AddTabPage("font", SvxCharNamePage::Create, 0); + AddTabPage("fonteffects", SvxCharEffectsPage::Create, 0); + AddTabPage("position", SvxCharPositionPage::Create, 0); + AddTabPage("asianlayout", SvxCharTwoLinesPage::Create, 0); + m_nParaStdPageId = AddTabPage("labelTP_PARA_STD", SvxStdParagraphTabPage::Create, 0); + m_nParaAlignPageId = AddTabPage("labelTP_PARA_ALIGN", SvxParaAlignTabPage::Create, 0); + AddTabPage("labelTP_PARA_EXT", SvxExtParagraphTabPage::Create, 0); + AddTabPage("labelTP_PARA_ASIAN", SvxAsianTabPage::Create, 0 ); + m_nBackPageId = AddTabPage("background", SvxBackgroundTabPage::Create, 0); // remove asian tabpages if necessary SvtCJKOptions aCJKOptions; if ( !aCJKOptions.IsDoubleLinesEnabled() ) - RemoveTabPage( RID_SVXPAGE_CHAR_TWOLINES ); + RemoveTabPage("asianlayout"); if ( !aCJKOptions.IsAsianTypographyEnabled() ) - RemoveTabPage( RID_SVXPAGE_PARA_ASIAN ); + RemoveTabPage("labelTP_PARA_ASIAN"); } -// ----------------------------------------------------------------------- - SvxSearchFormatDialog::~SvxSearchFormatDialog() { - delete pFontList; + delete m_pFontList; } -// ----------------------------------------------------------------------- - void SvxSearchFormatDialog::PageCreated( sal_uInt16 nId, SfxTabPage& rPage ) { - switch ( nId ) + if (nId == m_nNamePageId) { - case RID_SVXPAGE_CHAR_NAME: - { - const FontList* pAppFontList = 0; - SfxObjectShell* pSh = SfxObjectShell::Current(); + const FontList* pApm_pFontList = 0; + SfxObjectShell* pSh = SfxObjectShell::Current(); - if ( pSh ) - { - const SvxFontListItem* pFLItem = (const SvxFontListItem*) - pSh->GetItem( SID_ATTR_CHAR_FONTLIST ); - if ( pFLItem ) - pAppFontList = pFLItem->GetFontList(); - } + if ( pSh ) + { + const SvxFontListItem* pFLItem = (const SvxFontListItem*) + pSh->GetItem( SID_ATTR_CHAR_FONTLIST ); + if ( pFLItem ) + pApm_pFontList = pFLItem->GetFontList(); + } - const FontList* pList = pAppFontList; + const FontList* pList = pApm_pFontList; - if ( !pList ) - { - if ( !pFontList ) - pFontList = new FontList( this ); - pList = pFontList; - } - - if ( pList ) - ( (SvxCharNamePage&)rPage ). - SetFontList( SvxFontListItem( pList, SID_ATTR_CHAR_FONTLIST ) ); - ( (SvxCharNamePage&)rPage ).EnableSearchMode(); - break; + if ( !pList ) + { + if ( !m_pFontList ) + m_pFontList = new FontList( this ); + pList = m_pFontList; } - case RID_SVXPAGE_STD_PARAGRAPH: - ( (SvxStdParagraphTabPage&)rPage ).EnableAutoFirstLine(); - break; - - case RID_SVXPAGE_ALIGN_PARAGRAPH: - ( (SvxParaAlignTabPage&)rPage ).EnableJustifyExt(); - break; - case RID_SVXPAGE_BACKGROUND : - ( (SvxBackgroundTabPage&)rPage ).ShowParaControl(sal_True); - break; + if ( pList ) + ( (SvxCharNamePage&)rPage ). + SetFontList( SvxFontListItem( pList, SID_ATTR_CHAR_FONTLIST ) ); + ( (SvxCharNamePage&)rPage ).EnableSearchMode(); + } + else if (nId == m_nParaStdPageId) + { + ( (SvxStdParagraphTabPage&)rPage ).EnableAutoFirstLine(); + } + else if (nId == m_nParaAlignPageId) + { + ( (SvxParaAlignTabPage&)rPage ).EnableJustifyExt(); + } + else if (nId == m_nBackPageId) + { + ( (SvxBackgroundTabPage&)rPage ).ShowParaControl(sal_True); } } |