summaryrefslogtreecommitdiff
path: root/sw/source/ui/index
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2013-08-23 12:59:04 +0100
committerCaolán McNamara <caolanm@redhat.com>2013-08-23 13:58:12 +0100
commit194c692a7fe4949684920eba53ab4dfcc3391895 (patch)
tree0977b9b47c4b5ea5b9469597a4286e6394026112 /sw/source/ui/index
parent7038df3a6711a59774e2cd3e3f37cc2538ae094a (diff)
convert toc dialog to .ui
this should stop the intermittent redraw glitch and the toc dialog initially appearing shoved up against the left edge of the screen Change-Id: Id1dad162f110cd9140d2603a2b3b43ef64e703ca
Diffstat (limited to 'sw/source/ui/index')
-rw-r--r--sw/source/ui/index/cnttab.cxx98
-rw-r--r--sw/source/ui/index/cnttab.hrc2
-rw-r--r--sw/source/ui/index/cnttab.src62
3 files changed, 46 insertions, 116 deletions
diff --git a/sw/source/ui/index/cnttab.cxx b/sw/source/ui/index/cnttab.cxx
index 729002d1fd95..cfae2912dcf7 100644
--- a/sw/source/ui/index/cnttab.cxx
+++ b/sw/source/ui/index/cnttab.cxx
@@ -224,22 +224,25 @@ sal_uInt16 CurTOXType::GetFlatIndex() const
SwMultiTOXTabDialog::SwMultiTOXTabDialog(Window* pParent, const SfxItemSet& rSet,
SwWrtShell &rShell,
SwTOXBase* pCurTOX,
- sal_uInt16 nToxType, sal_Bool bGlobal) :
- SfxTabDialog( pParent, SW_RES(DLG_MULTI_TOX), &rSet),
- aExampleContainerWIN(this, SW_RES(WIN_EXAMPLE)),
- aShowExampleCB( this, SW_RES(CB_SHOWEXAMPLE)),
- pMgr( new SwTOXMgr( &rShell ) ),
- rSh(rShell),
- pExampleFrame(0),
- pParamTOXBase(pCurTOX),
- sUserDefinedIndex(SW_RES(ST_USERDEFINEDINDEX)),
- nInitialTOXType(nToxType),
-
- bEditTOX(sal_False),
- bExampleCreated(sal_False),
- bGlobalFlag(bGlobal)
-{
- FreeResource();
+ sal_uInt16 nToxType, sal_Bool bGlobal)
+ : SfxTabDialog(pParent, "TocDialog",
+ "modules/swriter/ui/tocdialog.ui", &rSet)
+ , pMgr( new SwTOXMgr( &rShell ) )
+ , rSh(rShell)
+ , pExampleFrame(0)
+ , pParamTOXBase(pCurTOX)
+ , sUserDefinedIndex(SW_RESSTR(STR_USER_DEFINED_INDEX))
+ , nInitialTOXType(nToxType)
+ , bEditTOX(false)
+ , bExampleCreated(false)
+ , bGlobalFlag(bGlobal)
+{
+ get(m_pShowExampleCB, "showexample");
+ get(m_pExampleContainerWIN, "example");
+ Size aWinSize(LogicToPixel(Size(150, 188), MapMode(MAP_APPFONT)));
+ m_pExampleContainerWIN->set_width_request(aWinSize.Width());
+ m_pExampleContainerWIN->set_height_request(aWinSize.Height());
+ m_pExampleContainerWIN->SetSizePixel(aWinSize);
eCurrentTOXType.eType = TOX_CONTENT;
eCurrentTOXType.nIndex = 0;
@@ -303,36 +306,31 @@ SwMultiTOXTabDialog::SwMultiTOXTabDialog(Window* pParent, const SfxItemSet& rSet
}
SfxAbstractDialogFactory* pFact = SfxAbstractDialogFactory::Create();
OSL_ENSURE(pFact, "Dialogdiet fail!");
- AddTabPage(TP_TOX_SELECT, SwTOXSelectTabPage::Create, 0);
- AddTabPage(TP_TOX_STYLES, SwTOXStylesTabPage::Create, 0);
- AddTabPage(TP_COLUMN, SwColumnPage::Create, 0);
- AddTabPage(TP_BACKGROUND, pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), 0 );
- AddTabPage(TP_TOX_ENTRY, SwTOXEntryTabPage::Create, 0);
+ m_nSelectId = AddTabPage("index", SwTOXSelectTabPage::Create, 0);
+ m_nStylesId = AddTabPage("styles", SwTOXStylesTabPage::Create, 0);
+ m_nColumnId = AddTabPage("columns", SwColumnPage::Create, 0);
+ m_nBackGroundId = AddTabPage("background", pFact->GetTabPageCreatorFunc( RID_SVXPAGE_BACKGROUND ), 0);
+ m_nEntriesId = AddTabPage("entries", SwTOXEntryTabPage::Create, 0);
if(!pCurTOX)
- SetCurPageId(TP_TOX_SELECT);
+ SetCurPageId(m_nSelectId);
- aShowExampleCB.SetClickHdl(LINK(this, SwMultiTOXTabDialog, ShowPreviewHdl));
+ m_pShowExampleCB->SetClickHdl(LINK(this, SwMultiTOXTabDialog, ShowPreviewHdl));
- aShowExampleCB.Check( SW_MOD()->GetModuleConfig()->IsShowIndexPreview());
+ m_pShowExampleCB->Check( SW_MOD()->GetModuleConfig()->IsShowIndexPreview());
- aExampleContainerWIN.SetAccessibleName(aShowExampleCB.GetText());
+ m_pExampleContainerWIN->SetAccessibleName(m_pShowExampleCB->GetText());
SetViewAlign( WINDOWALIGN_LEFT );
// SetViewWindow does not work if the dialog is visible!
- if(!aShowExampleCB.IsChecked())
- SetViewWindow( &aExampleContainerWIN );
+ if(!m_pShowExampleCB->IsChecked())
+ SetViewWindow(m_pExampleContainerWIN);
- Point aOldPos = GetPosPixel();
ShowPreviewHdl(0);
- Point aNewPos = GetPosPixel();
- //72040: initial position may be left of the view - that has to be corrected
- if(aNewPos.X() < 0)
- SetPosPixel(aOldPos);
}
SwMultiTOXTabDialog::~SwMultiTOXTabDialog()
{
- SW_MOD()->GetModuleConfig()->SetShowIndexPreview(aShowExampleCB.IsChecked());
+ SW_MOD()->GetModuleConfig()->SetShowIndexPreview(m_pShowExampleCB->IsChecked());
// fdo#38515 Avoid setting focus on deleted controls in the destructors
EnableInput( sal_False );
@@ -353,21 +351,21 @@ SwMultiTOXTabDialog::~SwMultiTOXTabDialog()
void SwMultiTOXTabDialog::PageCreated( sal_uInt16 nId, SfxTabPage &rPage )
{
- if( TP_BACKGROUND == nId )
+ if (nId == m_nBackGroundId)
{
SfxAllItemSet aSet(*(GetInputSetImpl()->GetPool()));
aSet.Put (SfxUInt32Item(SID_FLAG_TYPE, SVX_SHOW_SELECTOR));
rPage.PageCreated(aSet);
}
- else if(TP_COLUMN == nId )
+ else if(nId == m_nColumnId)
{
const SwFmtFrmSize& rSize = (const SwFmtFrmSize&)GetInputSetImpl()->Get(RES_FRM_SIZE);
((SwColumnPage&)rPage).SetPageWidth(rSize.GetWidth());
}
- else if(TP_TOX_ENTRY == nId)
+ else if (nId == m_nEntriesId)
((SwTOXEntryTabPage&)rPage).SetWrtShell(rSh);
- if(TP_TOX_SELECT == nId)
+ else if (nId == m_nSelectId)
{
((SwTOXSelectTabPage&)rPage).SetWrtShell(rSh);
if(USHRT_MAX != nInitialTOXType)
@@ -482,9 +480,9 @@ SwTOXDescription* SwMultiTOXTabDialog::CreateTOXDescFromTOXBase(
return pDesc;
}
-IMPL_LINK( SwMultiTOXTabDialog, ShowPreviewHdl, CheckBox *, pBox )
+IMPL_LINK_NOARG( SwMultiTOXTabDialog, ShowPreviewHdl )
{
- if(aShowExampleCB.IsChecked())
+ if(m_pShowExampleCB->IsChecked())
{
if(!pExampleFrame && !bExampleCreated)
{
@@ -527,33 +525,23 @@ IMPL_LINK( SwMultiTOXTabDialog, ShowPreviewHdl, CheckBox *, pBox )
Link aLink(LINK(this, SwMultiTOXTabDialog, CreateExample_Hdl));
String sTemp(sTemplate);
pExampleFrame = new SwOneExampleFrame(
- aExampleContainerWIN, EX_SHOW_ONLINE_LAYOUT, &aLink, &sTemp);
+ *m_pExampleContainerWIN, EX_SHOW_ONLINE_LAYOUT, &aLink, &sTemp);
if(!pExampleFrame->IsServiceAvailable())
{
pExampleFrame->CreateErrorMessage(0);
}
}
- aShowExampleCB.Show(pExampleFrame && pExampleFrame->IsServiceAvailable());
+ m_pShowExampleCB->Show(pExampleFrame && pExampleFrame->IsServiceAvailable());
}
}
- sal_Bool bSetViewWindow = aShowExampleCB.IsChecked()
+ sal_Bool bSetViewWindow = m_pShowExampleCB->IsChecked()
&& pExampleFrame && pExampleFrame->IsServiceAvailable();
- aExampleContainerWIN.Show( bSetViewWindow );
- SetViewWindow( bSetViewWindow ? &aExampleContainerWIN : 0 );
+ m_pExampleContainerWIN->Show( bSetViewWindow );
+ SetViewWindow( bSetViewWindow ? m_pExampleContainerWIN : 0 );
- Window *pTopmostParent = this;
- while(pTopmostParent->GetParent())
- pTopmostParent = pTopmostParent->GetParent();
- ::Rectangle aRect(GetClientWindowExtentsRelative(pTopmostParent));
- ::Point aPos = aRect.TopLeft();
- Size aSize = GetSizePixel();
- if(pBox)
- AdjustLayout();
- long nDiffWidth = GetSizePixel().Width() - aSize.Width();
- aPos.X() -= nDiffWidth;
- SetPosPixel(aPos);
+ setOptimalLayoutSize();
return 0;
}
diff --git a/sw/source/ui/index/cnttab.hrc b/sw/source/ui/index/cnttab.hrc
index 2108c6a57fc7..8ca4d610ae8b 100644
--- a/sw/source/ui/index/cnttab.hrc
+++ b/sw/source/ui/index/cnttab.hrc
@@ -195,10 +195,8 @@
//TabDialog
#define WIN_EXAMPLE 1
-#define ST_USERDEFINEDINDEX 13
#define CB_SHOWEXAMPLE 14
-
//ButtonMenu
#define MN_AUTOMARK_OPEN 1
#define MN_AUTOMARK_NEW 2
diff --git a/sw/source/ui/index/cnttab.src b/sw/source/ui/index/cnttab.src
index c2d356c4da60..7e8b1e678389 100644
--- a/sw/source/ui/index/cnttab.src
+++ b/sw/source/ui/index/cnttab.src
@@ -40,67 +40,11 @@ String STR_FILE_NOT_FOUND
Text [ en-US ] = "The file, \"%1\" in the \"%2\" path could not be found.";
};
-TabDialog DLG_MULTI_TOX
+String STR_USER_DEFINED_INDEX
{
- HelpID = HID_MULTI_TOX_DLG;
- OutputSize = TRUE ;
- SVLook = TRUE ;
-
- Moveable = TRUE ;
-
- TabControl 1
- {
- OutputSize = TRUE ;
- PageList =
- {
- PageItem
- {
- Identifier = TP_TOX_SELECT;
- PageResID = TP_TOX_SELECT;
- Text [ en-US ] = "Index/Table";
- };
- PageItem
- {
- Identifier = TP_TOX_ENTRY;
- PageResID = TP_TOX_ENTRY;
- Text [ en-US ] = "Entries";
- };
- PageItem
- {
- Identifier = TP_TOX_STYLES;
- PageResID = TP_TOX_STYLES;
- Text [ en-US ] = "Styles";
- };
- PageItem
- {
- Identifier = TP_COLUMN ;
- PageResID = TP_COLUMN ;
- Text [ en-US ] = "Columns" ;
- };
- PageItem
- {
- Identifier = TP_BACKGROUND ;
- PageResID = TP_BACKGROUND ;
- Text [ en-US ] = "Background" ;
- };
- };
- };
- Window WIN_EXAMPLE
- {
- Pos = MAP_APPFONT ( 0 , 12 ) ;
- Size = MAP_APPFONT ( 150, 188 ) ;
- };
- String ST_USERDEFINEDINDEX
- {
- Text [ en-US ] = "User-Defined Index";
- };
- CheckBox CB_SHOWEXAMPLE
- {
- Size = MAP_APPFONT ( 45, 10 ) ;
- Text [ en-US ] = "Preview";
- };
- Text [ en-US ] = "Insert Index/Table";
+ Text [ en-US ] = "User-Defined Index";
};
+
//------------------------------------------------------------------
TabPage TP_TOX_SELECT
{