diff options
-rw-r--r-- | svx/inc/svx/ctredlin.hxx | 7 | ||||
-rw-r--r-- | svx/inc/svx/simptabl.hxx | 33 | ||||
-rw-r--r-- | svx/source/dialog/ctredlin.cxx | 15 | ||||
-rw-r--r-- | svx/source/dialog/docrecovery.cxx | 25 | ||||
-rw-r--r-- | svx/source/dialog/simptabl.cxx | 157 | ||||
-rw-r--r-- | svx/source/form/datanavi.cxx | 3 | ||||
-rw-r--r-- | svx/source/inc/datanavi.hxx | 1 | ||||
-rw-r--r-- | svx/source/inc/docrecovery.hxx | 5 |
8 files changed, 98 insertions, 148 deletions
diff --git a/svx/inc/svx/ctredlin.hxx b/svx/inc/svx/ctredlin.hxx index e7d5d46ed83d..3b7ed86b4b68 100644 --- a/svx/inc/svx/ctredlin.hxx +++ b/svx/inc/svx/ctredlin.hxx @@ -121,9 +121,9 @@ protected: public: - SvxRedlinTable( Window* pParent,WinBits nBits ); - SvxRedlinTable( Window* pParent,const ResId& rResId); - ~SvxRedlinTable(); + SvxRedlinTable(SvxSimpleTableContainer& rParent, WinBits nBits = WB_BORDER); + SvxRedlinTable(SvxSimpleTableContainer& rParent, const ResId& rResId); + ~SvxRedlinTable(); // For FilterPage only { void SetFilterDate(sal_Bool bFlag=sal_True); @@ -318,6 +318,7 @@ private: Link RejectAllClickLk; Link UndoClickLk; + SvxSimpleTableContainer m_aViewDataContainer; SvxRedlinTable aViewData; PushButton PbAccept; PushButton PbReject; diff --git a/svx/inc/svx/simptabl.hxx b/svx/inc/svx/simptabl.hxx index 98020a97fcc4..3cca7b1a18df 100644 --- a/svx/inc/svx/simptabl.hxx +++ b/svx/inc/svx/simptabl.hxx @@ -40,31 +40,32 @@ #include "svx/svxdllapi.h" class SvxSimpleTable; -class SvxSimpTblContainer : public Control +class SVX_DLLPUBLIC SvxSimpleTableContainer : public Control { private: SvxSimpleTable* m_pTable; protected: - virtual long PreNotify( NotifyEvent& rNEvt ); + virtual long PreNotify( NotifyEvent& rNEvt ); public: - SvxSimpTblContainer( Window* pParent, WinBits nWinStyle = 0 ); - SvxSimpTblContainer( Window* pParent, const ResId& rResId ); + SvxSimpleTableContainer( Window* pParent, WinBits nWinStyle = WB_BORDER ); + SvxSimpleTableContainer( Window* pParent, const ResId& rResId ); - inline void SetTable( SvxSimpleTable* _pTable ) { m_pTable = _pTable; } + void SetTable(SvxSimpleTable* pTable); + + virtual void SetSizePixel(const Size& rNewSize); }; class SVX_DLLPUBLIC SvxSimpleTable : public SvHeaderTabListBox { - using Window::SetPosSizePixel; private: + SvxSimpleTableContainer& m_rParentTableContainer; Link aHeaderBarClickLink; Link aHeaderBarDblClickLink; Link aCommandLink; CommandEvent aCEvt; - SvxSimpTblContainer aPrivContainer; HeaderBar aHeaderBar; long nOldPos; sal_uInt16 nHeaderItemId; @@ -72,7 +73,6 @@ private: sal_Bool bPaintFlag; sal_Bool bSortDirection; sal_uInt16 nSortCol; - Window* pMyParentWin; DECL_LINK( StartDragHdl, HeaderBar* ); DECL_LINK( DragHdl, HeaderBar* ); @@ -87,7 +87,6 @@ protected: virtual void SetTabs(); virtual void Paint( const Rectangle& rRect ); - virtual void UpdateViewSize(); virtual void HBarClick(); virtual void HBarDblClick(); @@ -102,10 +101,13 @@ protected: public: - SvxSimpleTable( Window* pParent,WinBits nBits =WB_BORDER ); - SvxSimpleTable( Window* pParent,const ResId& ); + SvxSimpleTable(SvxSimpleTableContainer& rParent, WinBits nBits = WB_BORDER); + SvxSimpleTable(SvxSimpleTableContainer& rParent, const ResId&); ~SvxSimpleTable(); + void UpdateViewSize(); + Size getPreferredContainerSize() const; + void InsertHeaderEntry(const XubString& rText, sal_uInt16 nCol=HEADERBAR_APPEND, HeaderBarItemBits nBits = HIB_STDSTYLE); @@ -139,15 +141,6 @@ public: sal_Bool IsEnabled() const; void TableToTop(); - void SetPosPixel( const Point& rNewPos ); - Point GetPosPixel() const ; - virtual void SetPosSizePixel( const Point& rNewPos, Size& rNewSize ); - void SetPosSize( const Point& rNewPos, const Size& rNewSize ); - void SetSizePixel(const Size& rNewSize ); - void SetOutputSizePixel(const Size& rNewSize ); - - Size GetSizePixel() const; - Size GetOutputSizePixel() const; sal_uInt16 GetSelectedCol(); void SortByCol(sal_uInt16,sal_Bool bDir=sal_True); diff --git a/svx/source/dialog/ctredlin.cxx b/svx/source/dialog/ctredlin.cxx index c7bb02dd1fa7..ef2e0b943498 100644 --- a/svx/source/dialog/ctredlin.cxx +++ b/svx/source/dialog/ctredlin.cxx @@ -147,8 +147,8 @@ void SvLBoxColorString::Paint( const Point& rPos, SvLBox& rDev, // class SvxRedlinTable //---------------------------------------------------------------------------- -SvxRedlinTable::SvxRedlinTable( Window* pParent,WinBits nBits ): - SvxSimpleTable(pParent,nBits ) +SvxRedlinTable::SvxRedlinTable(SvxSimpleTableContainer& rParent,WinBits nBits) + : SvxSimpleTable(rParent,nBits) { bAuthor=sal_False; bDate=sal_False; @@ -159,8 +159,8 @@ SvxRedlinTable::SvxRedlinTable( Window* pParent,WinBits nBits ): SetNodeDefaultImages(); } -SvxRedlinTable::SvxRedlinTable( Window* pParent,const ResId& rResId): - SvxSimpleTable(pParent,rResId) +SvxRedlinTable::SvxRedlinTable(SvxSimpleTableContainer& rParent,const ResId& rResId) + : SvxSimpleTable(rParent,rResId) { bAuthor=sal_False; bDate=sal_False; @@ -549,7 +549,8 @@ void SvxRedlinTable::InitEntry( SvLBoxEntry* pEntry, const XubString& rStr, SvxTPView::SvxTPView( Window * pParent) : TabPage( pParent, SVX_RES(SID_REDLIN_VIEW_PAGE)), - aViewData ( this, SVX_RES( DG_VIEW) ), + m_aViewDataContainer(this, SVX_RES(DG_VIEW)), + aViewData(m_aViewDataContainer), PbAccept ( this, SVX_RES(PB_ACCEPT ) ), PbReject ( this, SVX_RES(PB_REJECT ) ), PbAcceptAll ( this, SVX_RES(PB_ACCEPTALL ) ), @@ -590,7 +591,7 @@ String SvxTPView::GetMyName() const void SvxTPView::Resize() { Size aSize=GetOutputSizePixel(); - Point aPos=aViewData.GetPosPixel(); + Point aPos = m_aViewDataContainer.GetPosPixel(); aSize.Height()-=aPos.Y()+nDistance; aSize.Width()-=2*aPos.X(); @@ -614,7 +615,7 @@ void SvxTPView::Resize() aPos.Y()=newY; PbUndo.SetPosPixel(aPos); } - aViewData.SetSizePixel(aSize); + m_aViewDataContainer.SetSizePixel(aSize); } void SvxTPView::InsertWriterHeader() diff --git a/svx/source/dialog/docrecovery.cxx b/svx/source/dialog/docrecovery.cxx index ecdb09c4b8a7..14ffb9233046 100644 --- a/svx/source/dialog/docrecovery.cxx +++ b/svx/source/dialog/docrecovery.cxx @@ -963,19 +963,17 @@ void RecovDocListEntry::Paint(const Point& aPos , } } //=============================================== -RecovDocList::RecovDocList( Window* pParent, - const ResId& rResId ) - : SvxSimpleTable ( pParent, rResId ) - , m_aGreenCheckImg ( ResId(IMG_GREENCHECK,*rResId.GetResMgr() ) ) - , m_aYellowCheckImg ( ResId(IMG_YELLOWCHECK,*rResId.GetResMgr() ) ) - , m_aRedCrossImg ( ResId(IMG_REDCROSS,*rResId.GetResMgr() ) ) - , m_aSuccessRecovStr ( ResId(STR_SUCCESSRECOV,*rResId.GetResMgr() ) ) - , m_aOrigDocRecovStr ( ResId(STR_ORIGDOCRECOV,*rResId.GetResMgr() ) ) - , m_aRecovFailedStr ( ResId(STR_RECOVFAILED,*rResId.GetResMgr() ) ) - , m_aRecovInProgrStr ( ResId(STR_RECOVINPROGR,*rResId.GetResMgr() ) ) - , m_aNotRecovYetStr ( ResId(STR_NOTRECOVYET,*rResId.GetResMgr() ) ) +RecovDocList::RecovDocList(SvxSimpleTableContainer& rParent, ResMgr &rResMgr) + : SvxSimpleTable ( rParent ) + , m_aGreenCheckImg ( ResId(IMG_GREENCHECK, rResMgr ) ) + , m_aYellowCheckImg ( ResId(IMG_YELLOWCHECK, rResMgr ) ) + , m_aRedCrossImg ( ResId(IMG_REDCROSS, rResMgr ) ) + , m_aSuccessRecovStr ( ResId(STR_SUCCESSRECOV, rResMgr ) ) + , m_aOrigDocRecovStr ( ResId(STR_ORIGDOCRECOV, rResMgr ) ) + , m_aRecovFailedStr ( ResId(STR_RECOVFAILED, rResMgr ) ) + , m_aRecovInProgrStr ( ResId(STR_RECOVINPROGR, rResMgr ) ) + , m_aNotRecovYetStr ( ResId(STR_NOTRECOVYET, rResMgr ) ) { - //SetEntryHeight( short( maGreenCheckImg.GetSizePixel().Height() ) ); } //=============================================== @@ -1019,7 +1017,8 @@ RecoveryDialog::RecoveryDialog(Window* pParent, , m_aProgressFT ( this , SVX_RES ( FT_RECOV_PROGR ) ) , m_aProgrParent ( this , SVX_RES ( WIN_RECOV_PROGR ) ) , m_aFileListFT ( this , SVX_RES ( FT_RECOV_FILELIST ) ) - , m_aFileListLB ( this , SVX_RES ( LB_RECOV_FILELIST ) ) + , m_aFileListLBContainer( this , SVX_RES ( LB_RECOV_FILELIST ) ) + , m_aFileListLB (m_aFileListLBContainer, DIALOG_MGR()) , m_aBottomFL ( this , SVX_RES ( FL_RECOV_BOTTOM ) ) , m_aNextBtn ( this , SVX_RES ( BTN_RECOV_NEXT ) ) , m_aCancelBtn ( this , SVX_RES ( BTN_RECOV_CANCEL ) ) diff --git a/svx/source/dialog/simptabl.cxx b/svx/source/dialog/simptabl.cxx index 93444e81a7c3..c9a4d769632c 100644 --- a/svx/source/dialog/simptabl.cxx +++ b/svx/source/dialog/simptabl.cxx @@ -37,30 +37,39 @@ #include <comphelper/processfactory.hxx> #include <unotools/intlwrapper.hxx> -// SvxSimpTblContainer ------------------------------------------------------ +// SvxSimpleTableContainer ------------------------------------------------------ -SvxSimpTblContainer::SvxSimpTblContainer( Window* pParent, WinBits nWinStyle): - Control(pParent,nWinStyle) +SvxSimpleTableContainer::SvxSimpleTableContainer(Window* pParent, WinBits nStyle) + : Control(pParent, nStyle) + , m_pTable(NULL) { - //Do Nothing; + SetBorderStyle(WINDOW_BORDER_NOBORDER); } -SvxSimpTblContainer::SvxSimpTblContainer( Window* pParent, const ResId& rResId): - Control(pParent,rResId) +SvxSimpleTableContainer::SvxSimpleTableContainer( Window* pParent, const ResId& rResId) + : Control(pParent, rResId) + , m_pTable(NULL) { - //Do Nothing; + SetBorderStyle(WINDOW_BORDER_NOBORDER); } -long SvxSimpTblContainer::PreNotify( NotifyEvent& rNEvt ) +void SvxSimpleTableContainer::SetTable(SvxSimpleTable* pTable) +{ + m_pTable = pTable; + if (m_pTable) + SetBackground(m_pTable->GetBackground()); +} + +long SvxSimpleTableContainer::PreNotify( NotifyEvent& rNEvt ) { long nResult = sal_True; if ( rNEvt.GetType() == EVENT_KEYINPUT ) { const KeyCode& aKeyCode = rNEvt.GetKeyEvent()->GetKeyCode(); sal_uInt16 nKey = aKeyCode.GetCode(); - if ( nKey == KEY_TAB ) + if (nKey == KEY_TAB) GetParent()->Notify( rNEvt ); - else if ( m_pTable->IsFocusOnCellEnabled() && ( nKey == KEY_LEFT || nKey == KEY_RIGHT ) ) + else if (m_pTable && m_pTable->IsFocusOnCellEnabled() && ( nKey == KEY_LEFT || nKey == KEY_RIGHT)) return 0; else nResult = Control::PreNotify( rNEvt ); @@ -71,25 +80,29 @@ long SvxSimpTblContainer::PreNotify( NotifyEvent& rNEvt ) return nResult; } +void SvxSimpleTableContainer::SetSizePixel(const Size& rNewSize ) +{ + Control::SetSizePixel(rNewSize); + if (m_pTable) + m_pTable->UpdateViewSize(); +} // SvxSimpleTable ------------------------------------------------------------ -SvxSimpleTable::SvxSimpleTable( Window* pParent,WinBits nBits ): - SvHeaderTabListBox(pParent,WB_CLIPCHILDREN | WB_HSCROLL | WB_TABSTOP), - aPrivContainer(pParent,nBits|WB_DIALOGCONTROL), - aHeaderBar(pParent,WB_BUTTONSTYLE | WB_BORDER | WB_TABSTOP), +SvxSimpleTable::SvxSimpleTable(SvxSimpleTableContainer& rParent, WinBits nBits): + SvHeaderTabListBox(&rParent, nBits | WB_CLIPCHILDREN | WB_HSCROLL | WB_TABSTOP), + m_rParentTableContainer(rParent), + aHeaderBar(&rParent,WB_BUTTONSTYLE | WB_BORDER | WB_TABSTOP), nHeaderItemId(1), bResizeFlag(sal_False), bPaintFlag(sal_True) { + m_rParentTableContainer.SetTable(this); + bSortDirection=sal_True; nSortCol=0xFFFF; nOldPos=0; - SetParent(&aPrivContainer); - aHeaderBar.SetParent(&aPrivContainer); - aPrivContainer.SetTable( this ); - aHeaderBar.SetStartDragHdl(LINK( this, SvxSimpleTable, StartDragHdl)); aHeaderBar.SetDragHdl(LINK( this, SvxSimpleTable, DragHdl)); aHeaderBar.SetEndDragHdl(LINK( this, SvxSimpleTable, EndDragHdl)); @@ -100,51 +113,34 @@ SvxSimpleTable::SvxSimpleTable( Window* pParent,WinBits nBits ): DisableTransientChildren(); InitHeaderBar( &aHeaderBar ); + UpdateViewSize(); + aHeaderBar.Show(); SvHeaderTabListBox::Show(); } - -SvxSimpleTable::SvxSimpleTable( Window* pParent,const ResId& rResId): - SvHeaderTabListBox(pParent,WB_CLIPCHILDREN | WB_HSCROLL | WB_TABSTOP), - aPrivContainer(pParent,rResId), - aHeaderBar(pParent,WB_BUTTONSTYLE | WB_BORDER | WB_TABSTOP), +SvxSimpleTable::SvxSimpleTable(SvxSimpleTableContainer& rParent,const ResId& rResId): + SvHeaderTabListBox(&rParent,rResId), + m_rParentTableContainer(rParent), + aHeaderBar(&rParent,WB_BUTTONSTYLE | WB_BORDER | WB_TABSTOP), nHeaderItemId(1), bResizeFlag(sal_True), bPaintFlag(sal_True) { + SetStyle(GetStyle()|WB_CLIPCHILDREN | WB_HSCROLL | WB_TABSTOP), + m_rParentTableContainer.SetTable(this); bSortDirection=sal_True; nOldPos=0; nSortCol=0xFFFF; - pMyParentWin=pParent; - SetParent(&aPrivContainer); - aHeaderBar.SetParent(&aPrivContainer); - aPrivContainer.SetTable( this ); - - WinBits nBits=aPrivContainer.GetStyle()|WB_DIALOGCONTROL; - aPrivContainer.SetStyle(nBits); - aHeaderBar.SetStartDragHdl(LINK( this, SvxSimpleTable, StartDragHdl)); aHeaderBar.SetDragHdl(LINK( this, SvxSimpleTable, DragHdl)); aHeaderBar.SetEndDragHdl(LINK( this, SvxSimpleTable, EndDragHdl)); aHeaderBar.SetSelectHdl(LINK( this, SvxSimpleTable, HeaderBarClick)); aHeaderBar.SetDoubleClickHdl(LINK( this, SvxSimpleTable, HeaderBarDblClick)); - Size theWinSize=aPrivContainer.GetOutputSizePixel(); - Size HbSize=aHeaderBar.GetSizePixel(); - - HbSize.Width()=theWinSize.Width(); - theWinSize.Height()-=HbSize.Height(); - Point thePos(0,0); - - aHeaderBar.SetPosPixel(thePos); - aHeaderBar.SetSizePixel(HbSize); - - thePos.Y()+=HbSize.Height(); - SvHeaderTabListBox::SetPosPixel(thePos); - SvHeaderTabListBox::SetSizePixel(theWinSize); + UpdateViewSize(); EnableCellFocus(); DisableTransientChildren(); @@ -156,20 +152,16 @@ SvxSimpleTable::SvxSimpleTable( Window* pParent,const ResId& rResId): SvxSimpleTable::~SvxSimpleTable() { - SetParent(pMyParentWin); - aPrivContainer.SetParent(this); - aHeaderBar.SetParent(this); } - void SvxSimpleTable::UpdateViewSize() { - Size theWinSize=aPrivContainer.GetOutputSizePixel(); + Size theWinSize=m_rParentTableContainer.GetSizePixel(); Size HbSize=aHeaderBar.GetSizePixel(); HbSize.Width()=theWinSize.Width(); theWinSize.Height()-=HbSize.Height(); - Point thePos(0,0); + Point thePos(0,0); aHeaderBar.SetPosPixel(thePos); aHeaderBar.SetSizePixel(HbSize); @@ -180,6 +172,13 @@ void SvxSimpleTable::UpdateViewSize() Invalidate(); } +Size SvxSimpleTable::getPreferredContainerSize() const +{ + Size aContainerNewSize(aHeaderBar.GetSizePixel()); + aContainerNewSize.Height()+=GetSizePixel().Height(); + return aContainerNewSize; +} + void SvxSimpleTable::NotifyScrolled() { long nOffset=-GetXOffset(); @@ -281,81 +280,37 @@ void SvxSimpleTable::ClearHeader() void SvxSimpleTable::ShowTable() { - aPrivContainer.Show(); + m_rParentTableContainer.Show(); } void SvxSimpleTable::HideTable() { - aPrivContainer.Hide(); + m_rParentTableContainer.Hide(); } sal_Bool SvxSimpleTable::IsVisible() const { - return aPrivContainer.IsVisible(); + return m_rParentTableContainer.IsVisible(); } void SvxSimpleTable::EnableTable() { - aPrivContainer.Enable(); + m_rParentTableContainer.Enable(); } void SvxSimpleTable::DisableTable() { - aPrivContainer.Disable(); + m_rParentTableContainer.Disable(); } sal_Bool SvxSimpleTable::IsEnabled() const { - return aPrivContainer.IsEnabled(); + return m_rParentTableContainer.IsEnabled(); } void SvxSimpleTable::TableToTop() { - aPrivContainer.ToTop(); -} - -void SvxSimpleTable::SetPosPixel( const Point& rNewPos ) -{ - aPrivContainer.SetPosPixel(rNewPos); -} - -Point SvxSimpleTable::GetPosPixel() const -{ - return aPrivContainer.GetPosPixel(); -} - -void SvxSimpleTable::SetPosSizePixel( const Point& rNewPos, Size& rNewSize ) -{ - aPrivContainer.SetPosPixel(rNewPos); - aPrivContainer.SetSizePixel(rNewSize); -} - -void SvxSimpleTable::SetPosSize( const Point& rNewPos, const Size& rNewSize ) -{ - aPrivContainer.SetPosPixel(rNewPos); - SvHeaderTabListBox::SetPosSizePixel(rNewPos,rNewSize); -} - -Size SvxSimpleTable::GetSizePixel() const -{ - return aPrivContainer.GetSizePixel(); -} - -Size SvxSimpleTable::GetOutputSizePixel() const -{ - return aPrivContainer.GetOutputSizePixel(); -} - -void SvxSimpleTable::SetSizePixel(const Size& rNewSize ) -{ - aPrivContainer.SetSizePixel(rNewSize); - UpdateViewSize(); -} - -void SvxSimpleTable::SetOutputSizePixel(const Size& rNewSize ) -{ - aPrivContainer.SetOutputSizePixel(rNewSize); - UpdateViewSize(); + m_rParentTableContainer.ToTop(); } sal_uInt16 SvxSimpleTable::GetSelectedCol() diff --git a/svx/source/form/datanavi.cxx b/svx/source/form/datanavi.cxx index df4f2448342a..8a89d8185cb6 100644 --- a/svx/source/form/datanavi.cxx +++ b/svx/source/form/datanavi.cxx @@ -3158,7 +3158,8 @@ namespace svxform ModalDialog( _pCondDlg, SVX_RES( RID_SVXDLG_NAMESPACE_ITEM ) ), m_aNamespacesFT ( this, SVX_RES( FT_NAMESPACES ) ), - m_aNamespacesList ( this, SVX_RES( LB_NAMESPACES ) ), + m_aNamespacesListContainer ( this, SVX_RES( LB_NAMESPACES ) ), + m_aNamespacesList ( m_aNamespacesListContainer ), m_aAddNamespaceBtn ( this, SVX_RES( PB_ADD_NAMESPACE ) ), m_aEditNamespaceBtn ( this, SVX_RES( PB_EDIT_NAMESPACE ) ), m_aDeleteNamespaceBtn ( this, SVX_RES( PB_DELETE_NAMESPACE ) ), diff --git a/svx/source/inc/datanavi.hxx b/svx/source/inc/datanavi.hxx index a119b4500e90..0d5acf0de782 100644 --- a/svx/source/inc/datanavi.hxx +++ b/svx/source/inc/datanavi.hxx @@ -417,6 +417,7 @@ namespace svxform typedef std::vector< ::rtl::OUString > PrefixList; FixedText m_aNamespacesFT; + SvxSimpleTableContainer m_aNamespacesListContainer; SvxSimpleTable m_aNamespacesList; PushButton m_aAddNamespaceBtn; PushButton m_aEditNamespaceBtn; diff --git a/svx/source/inc/docrecovery.hxx b/svx/source/inc/docrecovery.hxx index b9ff1f927847..b2a15ee67bc7 100644 --- a/svx/source/inc/docrecovery.hxx +++ b/svx/source/inc/docrecovery.hxx @@ -619,9 +619,7 @@ class RecovDocList : public SvxSimpleTable //--------------------------------------- /** @short TODO */ - RecovDocList( Window* pParent, - const ResId& rResId ); - + RecovDocList(SvxSimpleTableContainer& rParent, ResMgr& rResMgr); //--------------------------------------- /** @short TODO */ virtual ~RecovDocList(); @@ -649,6 +647,7 @@ class RecoveryDialog : public IExtendedTabPage FixedText m_aProgressFT; Window m_aProgrParent; FixedText m_aFileListFT; + SvxSimpleTableContainer m_aFileListLBContainer; RecovDocList m_aFileListLB; FixedLine m_aBottomFL; PushButton m_aNextBtn; |