convert search format dialog to .ui

Change-Id: I29db27f8adf2afda7e47b69c43b032758c1e7b24
This commit is contained in:
Caolán McNamara 2013-12-26 09:55:18 +00:00
parent 297f5b525f
commit fdc1b1fc17
10 changed files with 302 additions and 151 deletions

View File

@ -128,6 +128,7 @@ $(eval $(call gb_UIConfig_add_uifiles,cui,\
cui/uiconfig/ui/recordnumberdialog \
cui/uiconfig/ui/rotationtabpage \
cui/uiconfig/ui/scriptorganizer \
cui/uiconfig/ui/searchformatdialog \
cui/uiconfig/ui/securityoptionsdialog \
cui/uiconfig/ui/select_persona_dialog \
cui/uiconfig/ui/shadowtabpage \

View File

@ -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* pApm_pFontList = 0;
SfxObjectShell* pSh = SfxObjectShell::Current();
if ( pSh )
{
const FontList* pAppFontList = 0;
SfxObjectShell* pSh = SfxObjectShell::Current();
if ( pSh )
{
const SvxFontListItem* pFLItem = (const SvxFontListItem*)
pSh->GetItem( SID_ATTR_CHAR_FONTLIST );
if ( pFLItem )
pAppFontList = pFLItem->GetFontList();
}
const FontList* pList = pAppFontList;
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;
const SvxFontListItem* pFLItem = (const SvxFontListItem*)
pSh->GetItem( SID_ATTR_CHAR_FONTLIST );
if ( pFLItem )
pApm_pFontList = pFLItem->GetFontList();
}
case RID_SVXPAGE_STD_PARAGRAPH:
( (SvxStdParagraphTabPage&)rPage ).EnableAutoFirstLine();
break;
const FontList* pList = pApm_pFontList;
case RID_SVXPAGE_ALIGN_PARAGRAPH:
( (SvxParaAlignTabPage&)rPage ).EnableJustifyExt();
break;
case RID_SVXPAGE_BACKGROUND :
( (SvxBackgroundTabPage&)rPage ).ShowParaControl(sal_True);
break;
if ( !pList )
{
if ( !m_pFontList )
m_pFontList = new FontList( this );
pList = m_pFontList;
}
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);
}
}

View File

@ -22,67 +22,7 @@
#include "srchxtra.hrc"
#include <svx/dialogs.hrc>
// RID_SVXDLG_SEARCHFORMAT -----------------------------------------------
TabDialog RID_SVXDLG_SEARCHFORMAT
{
OutputSize = TRUE ;
SvLook = TRUE ;
Text [ en-US ] = "Text Format" ;
Moveable = TRUE ;
TabControl 1
{
OutputSize = TRUE ;
PageList =
{
PageItem
{
Identifier = RID_SVXPAGE_CHAR_NAME ;
Text [ en-US ] = "Font" ;
};
PageItem
{
Identifier = RID_SVXPAGE_CHAR_EFFECTS ;
Text [ en-US ] = "Font Effects" ;
};
PageItem
{
Identifier = RID_SVXPAGE_CHAR_POSITION ;
Text [ en-US ] = "Position" ;
};
PageItem
{
Identifier = RID_SVXPAGE_CHAR_TWOLINES ;
Text [ en-US ] = "Asian Layout" ;
};
PageItem
{
Identifier = RID_SVXPAGE_STD_PARAGRAPH ;
Text [ en-US ] = "Indents & Spacing" ;
};
PageItem
{
Identifier = RID_SVXPAGE_ALIGN_PARAGRAPH ;
Text [ en-US ] = "Alignment" ;
};
PageItem
{
Identifier = RID_SVXPAGE_EXT_PARAGRAPH ;
Text [ en-US ] = "Text Flow" ;
};
PageItem
{
Identifier = RID_SVXPAGE_PARA_ASIAN;
Text [ en-US ] = "Asian Typography";
};
PageItem
{
Identifier = RID_SVXPAGE_BACKGROUND;
Text [ en-US ] = "Background" ;
};
};
};
};
// RID_SVXDLG_SEARCHATTRIBUTE --------------------------------------------
// RID_SVXDLG_SEARCHATTRIBUTE --------------------------------------------
ModalDialog RID_SVXDLG_SEARCHATTR
{
HelpId = HID_SEARCHATTR ;

View File

@ -1313,23 +1313,11 @@ SfxAbstractDialog* AbstractDialogFactory_Impl::CreateSfxDialog( sal_uInt32,
return new CuiAbstractSfxDialog_Impl( pDlg );
}
SfxAbstractTabDialog* AbstractDialogFactory_Impl::CreateTabItemDialog( Window* pParent,
const SfxItemSet& rSet,
sal_uInt32 nResId)
SfxAbstractTabDialog* AbstractDialogFactory_Impl::CreateTabItemDialog(Window* pParent,
const SfxItemSet& rSet)
{
SfxTabDialog* pDlg=NULL;
switch ( nResId )
{
case RID_SVXDLG_SEARCHFORMAT :
pDlg = new SvxSearchFormatDialog( pParent, rSet );
break;
default:
break;
}
if ( pDlg )
return new CuiAbstractTabDialog_Impl( pDlg );
return 0;
SfxTabDialog* pDlg = new SvxSearchFormatDialog(pParent, rSet);
return new CuiAbstractTabDialog_Impl(pDlg);
}
VclAbstractDialog* AbstractDialogFactory_Impl::CreateSvxSearchAttributeDialog( Window* pParent,

View File

@ -552,9 +552,8 @@ public:
const SfxItemSet* pAttrSet,
SdrView* pView,
SdrModel* pModel=0 );
virtual SfxAbstractTabDialog* CreateTabItemDialog( Window* pParent,
const SfxItemSet& rSet,
sal_uInt32 nResId);
virtual SfxAbstractTabDialog* CreateTabItemDialog(Window* pParent,
const SfxItemSet& rSet);
virtual AbstractSvxCaptionDialog* CreateCaptionDialog( Window* pParent,
const SdrView* pView,
sal_uInt16 nAnchorTypes = 0 );

View File

@ -26,19 +26,21 @@
#include <svx/checklbx.hxx>
#include <svx/srchdlg.hxx>
// class SvxSearchFormatDialog -------------------------------------------
class SvxSearchFormatDialog : public SfxTabDialog
{
public:
SvxSearchFormatDialog( Window* pParent, const SfxItemSet& rSet );
~SvxSearchFormatDialog();
virtual ~SvxSearchFormatDialog();
protected:
virtual void PageCreated( sal_uInt16 nId, SfxTabPage &rPage );
private:
FontList* pFontList;
FontList* m_pFontList;
sal_uInt16 m_nNamePageId;
sal_uInt16 m_nParaStdPageId;
sal_uInt16 m_nParaAlignPageId;
sal_uInt16 m_nBackPageId;
};
// class SvxSearchFormatDialog -------------------------------------------

View File

@ -0,0 +1,233 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<!-- interface-requires gtk+ 3.0 -->
<object class="GtkDialog" id="SearchFormatDialog">
<property name="can_focus">False</property>
<property name="border_width">6</property>
<property name="title" translatable="yes">Text Format</property>
<property name="type_hint">dialog</property>
<child internal-child="vbox">
<object class="GtkBox" id="dialog-vbox1">
<property name="can_focus">False</property>
<property name="orientation">vertical</property>
<property name="spacing">12</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">True</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">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">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">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">2</property>
</packing>
</child>
<child>
<object class="GtkButton" id="reset">
<property name="label">gtk-revert-to-saved</property>
<property name="visible">True</property>
<property name="can_focus">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">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>
<child>
<object class="GtkNotebook" id="tabcontrol">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel" id="font">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Font</property>
</object>
<packing>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel" id="fonteffects">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Font Effects</property>
</object>
<packing>
<property name="position">1</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel" id="position">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Position</property>
</object>
<packing>
<property name="position">2</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel" id="asianlayout">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Asian Layout</property>
</object>
<packing>
<property name="position">3</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel" id="labelTP_PARA_STD">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Indents &amp; Spacing</property>
</object>
<packing>
<property name="position">4</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel" id="labelTP_PARA_ALIGN">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0.4699999988079071</property>
<property name="label" translatable="yes">Alignment</property>
</object>
<packing>
<property name="position">5</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel" id="labelTP_PARA_EXT">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="xalign">0.46000000834465027</property>
<property name="label" translatable="yes">Text Flow</property>
</object>
<packing>
<property name="position">6</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel" id="labelTP_PARA_ASIAN">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Asian Typography</property>
</object>
<packing>
<property name="position">7</property>
<property name="tab_fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel" id="background">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Background</property>
</object>
<packing>
<property name="position">8</property>
<property name="tab_fill">False</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
</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">reset</action-widget>
</action-widgets>
</object>
</interface>

View File

@ -107,7 +107,6 @@
#define RID_SVX_GRFFILTER_DLG_SOLARIZE (RID_SVX_START + 333)
#define RID_SVX_GRFFILTER_DLG_EMBOSS (RID_SVX_START + 336)
#define RID_SVX_GRFFILTER_DLG_SMOOTH (RID_SVX_START + 337)
#define RID_SVXDLG_SEARCHFORMAT (RID_SVX_START + 21)
#define RID_SVXDLG_CHARMAP ( RID_SVX_START + 10 )
// IDs of options pages of applications

View File

@ -358,9 +358,8 @@ public:
TargetList& rTargetList ) = 0;
virtual AbstractSvxHlinkDlgMarkWnd* CreateSvxHlinkDlgMarkWndDialog( SvxHyperlinkTabPageBase* pParent, sal_uInt32 nResId ) =0;
virtual SfxAbstractTabDialog* CreateTabItemDialog( Window* pParent,
const SfxItemSet& rSet,
sal_uInt32 nResId) = 0;
virtual SfxAbstractTabDialog* CreateTabItemDialog(Window* pParent,
const SfxItemSet& rSet) = 0;
virtual VclAbstractDialog* CreateSvxSearchAttributeDialog( Window* pParent,
SearchAttrItemList& rLst,
const sal_uInt16* pWhRanges)=0;

View File

@ -1950,7 +1950,7 @@ IMPL_LINK_NOARG(SvxSearchDialog, FormatHdl_Impl)
SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create();
if(pFact)
{
SfxAbstractTabDialog* pDlg = pFact->CreateTabItemDialog( this, aSet, RID_SVXDLG_SEARCHFORMAT );
SfxAbstractTabDialog* pDlg = pFact->CreateTabItemDialog(this, aSet);
DBG_ASSERT(pDlg, "Dialogdiet fail!");
aTxt = pDlg->GetText() + aTxt;
pDlg->SetText( aTxt );