cui/UI_cui.mk | 1 cui/source/dialogs/insdlg.cxx | 36 +++--- cui/source/dialogs/svuidlg.hrc | 7 - cui/source/dialogs/svuidlg.src | 60 ---------- cui/source/inc/insdlg.hxx | 32 ++--- cui/uiconfig/ui/insertplugin.ui | 208 +++++++++++++++++++++++++++++++++++++ oox/inc/oox/ole/axbinaryreader.hxx | 6 - oox/source/ole/axbinaryreader.cxx | 9 - svtools/inc/svtools/svmedit.hxx | 2 svtools/source/edit/svmedit.cxx | 6 - tools/inc/tools/wintypes.hxx | 1 unusedcode.easy | 6 + vcl/inc/vcl/builder.hxx | 3 vcl/inc/vcl/msgbox.hxx | 4 vcl/inc/vcl/vclmedit.hxx | 10 - vcl/inc/vcl/window.hxx | 3 vcl/source/edit/vclmedit.cxx | 112 +++++++++---------- vcl/source/window/builder.cxx | 70 +++++++++++- vcl/source/window/msgbox.cxx | 2 vcl/source/window/window.cxx | 5 vcl/source/window/window2.cxx | 36 +++++- 21 files changed, 428 insertions(+), 191 deletions(-)
New commits: commit d7cdef2c49b9c13f8c726d1067ed5cf3cfd38746 Author: Caolán McNamara <caol...@redhat.com> Date: Wed Oct 10 23:57:22 2012 +0100 VCLMultiLineEdit->VclMultiLineEdit to align with other new widget names Change-Id: I97b7459b9c5c680d624234e8c51a5997a02fd5f7 diff --git a/cui/source/inc/insdlg.hxx b/cui/source/inc/insdlg.hxx index 79d4361..27ebff9 100644 --- a/cui/source/inc/insdlg.hxx +++ b/cui/source/inc/insdlg.hxx @@ -97,7 +97,7 @@ class SvInsertPlugInDialog : public InsertObjectDialog_Impl private: Edit* m_pEdFileurl; PushButton* m_pBtnFileurl; - VCLMultiLineEdit* m_pEdPluginsOptions; + VclMultiLineEdit* m_pEdPluginsOptions; INetURLObject* m_pURL; OUString m_aCommands; diff --git a/svtools/inc/svtools/svmedit.hxx b/svtools/inc/svtools/svmedit.hxx index 9085349..f32e0f4 100644 --- a/svtools/inc/svtools/svmedit.hxx +++ b/svtools/inc/svtools/svmedit.hxx @@ -37,7 +37,7 @@ -class SVT_DLLPUBLIC MultiLineEdit : public VCLMultiLineEdit +class SVT_DLLPUBLIC MultiLineEdit : public VclMultiLineEdit { public: MultiLineEdit( Window* pParent, WinBits nWinStyle = WB_LEFT | WB_BORDER ); diff --git a/svtools/source/edit/svmedit.cxx b/svtools/source/edit/svmedit.cxx index 24e97ec..3e83d7a 100644 --- a/svtools/source/edit/svmedit.cxx +++ b/svtools/source/edit/svmedit.cxx @@ -34,11 +34,11 @@ MultiLineEdit::MultiLineEdit( Window* pParent, WinBits nWinStyle ) - : VCLMultiLineEdit( pParent,nWinStyle ) + : VclMultiLineEdit( pParent,nWinStyle ) { } MultiLineEdit::MultiLineEdit( Window* pParent, const ResId& rResId ) - : VCLMultiLineEdit( pParent,rResId ) + : VclMultiLineEdit( pParent,rResId ) { } @@ -49,7 +49,7 @@ namespace css = ::com::sun::star; MultiLineEdit::GetComponentInterface(sal_Bool bCreate) { ::css::uno::Reference< ::css::awt::XWindowPeer > xPeer( - VCLMultiLineEdit::GetComponentInterface(false)); + VclMultiLineEdit::GetComponentInterface(false)); if (!xPeer.is() && bCreate) { ::std::auto_ptr< VCLXMultiLineEdit > xVCLMEdit(new VCLXMultiLineEdit()); diff --git a/vcl/inc/vcl/builder.hxx b/vcl/inc/vcl/builder.hxx index ef3e85c..8ef3327 100644 --- a/vcl/inc/vcl/builder.hxx +++ b/vcl/inc/vcl/builder.hxx @@ -14,6 +14,7 @@ #include <vcl/window.hxx> #include <xmlreader/xmlreader.hxx> #include <map> +#include <set> #include <stack> #include <vector> @@ -112,6 +113,7 @@ private: std::vector<ButtonImageWidgetMap> m_aButtonImageWidgetMaps; StockMap m_aStockMap; Translations m_aTranslations; + std::set<Window*> m_aRedundantParentWidgets; }; OString getTranslation(const OString &rId, const OString &rProperty) const; diff --git a/vcl/inc/vcl/msgbox.hxx b/vcl/inc/vcl/msgbox.hxx index 2bb73ab..8a3fd1d 100644 --- a/vcl/inc/vcl/msgbox.hxx +++ b/vcl/inc/vcl/msgbox.hxx @@ -34,7 +34,7 @@ #include <vcl/btndlg.hxx> #include <vcl/image.hxx> #include <vcl/bitmap.hxx> -class VCLMultiLineEdit; +class VclMultiLineEdit; class FixedImage; class CheckBox; @@ -67,7 +67,7 @@ class CheckBox; class VCL_DLLPUBLIC MessBox : public ButtonDialog { protected: - VCLMultiLineEdit* mpVCLMultiLineEdit; + VclMultiLineEdit* mpVCLMultiLineEdit; FixedImage* mpFixedImage; XubString maMessText; Image maImage; diff --git a/vcl/inc/vcl/vclmedit.hxx b/vcl/inc/vcl/vclmedit.hxx index 519cb0e..6287419 100644 --- a/vcl/inc/vcl/vclmedit.hxx +++ b/vcl/inc/vcl/vclmedit.hxx @@ -39,7 +39,7 @@ class Timer; class ExtTextEngine; class ExtTextView; -class VCL_DLLPUBLIC VCLMultiLineEdit : public Edit +class VCL_DLLPUBLIC VclMultiLineEdit : public Edit { private: ImpSvMEdit* pImpSvMEdit; @@ -66,9 +66,9 @@ protected: ScrollBar* GetVScrollBar() const; public: - VCLMultiLineEdit( Window* pParent, WinBits nWinStyle = WB_LEFT | WB_BORDER ); - VCLMultiLineEdit( Window* pParent, const ResId& rResId ); - virtual ~VCLMultiLineEdit(); + VclMultiLineEdit( Window* pParent, WinBits nWinStyle = WB_LEFT | WB_BORDER ); + VclMultiLineEdit( Window* pParent, const ResId& rResId ); + virtual ~VclMultiLineEdit(); virtual void Modify(); @@ -139,7 +139,7 @@ public: void SetTextSelectable( sal_Bool bTextSelectable ); }; -inline sal_uLong VCLMultiLineEdit::IsUpdateDataEnabled() const +inline sal_uLong VclMultiLineEdit::IsUpdateDataEnabled() const { return pUpdateDataTimer ? pUpdateDataTimer->GetTimeout() : 0; } diff --git a/vcl/source/edit/vclmedit.cxx b/vcl/source/edit/vclmedit.cxx index 6680eea..696fe8b 100644 --- a/vcl/source/edit/vclmedit.cxx +++ b/vcl/source/edit/vclmedit.cxx @@ -92,7 +92,7 @@ public: class ImpSvMEdit : public SfxListener { private: - VCLMultiLineEdit* pSvVCLMultiLineEdit; + VclMultiLineEdit* pSvVCLMultiLineEdit; TextWindow* mpTextWindow; ScrollBar* mpHScrollBar; @@ -112,7 +112,7 @@ protected: DECL_LINK( ScrollHdl, ScrollBar* ); public: - ImpSvMEdit( VCLMultiLineEdit* pSvVCLMultiLineEdit, WinBits nWinStyle ); + ImpSvMEdit( VclMultiLineEdit* pSvVCLMultiLineEdit, WinBits nWinStyle ); ~ImpSvMEdit(); void SetModified( sal_Bool bMod ); @@ -162,7 +162,7 @@ public: ScrollBar* GetVScrollBar() { return mpVScrollBar; } }; -ImpSvMEdit::ImpSvMEdit( VCLMultiLineEdit* pEdt, WinBits nWinStyle ) +ImpSvMEdit::ImpSvMEdit( VclMultiLineEdit* pEdt, WinBits nWinStyle ) :mpHScrollBar(NULL) ,mpVScrollBar(NULL) ,mpScrollBox(NULL) @@ -264,7 +264,7 @@ void ImpSvMEdit::InitFromStyle( WinBits nWinStyle ) else { mpTextWindow->SetIgnoreTab( sal_False ); - // #103667# VCLMultiLineEdit has the flag, but focusable window also needs this flag + // #103667# VclMultiLineEdit has the flag, but focusable window also needs this flag WinBits nStyle = mpTextWindow->GetStyle(); nStyle |= WINDOW_DLGCTRL_MOD1TAB; mpTextWindow->SetStyle( nStyle ); @@ -938,7 +938,7 @@ void TextWindow::LoseFocus() mpExtTextView->SetPaintSelection( sal_False ); } -VCLMultiLineEdit::VCLMultiLineEdit( Window* pParent, WinBits nWinStyle ) +VclMultiLineEdit::VclMultiLineEdit( Window* pParent, WinBits nWinStyle ) : Edit( pParent, nWinStyle ) { SetType( WINDOW_MULTILINEEDIT ); @@ -950,7 +950,7 @@ VCLMultiLineEdit::VCLMultiLineEdit( Window* pParent, WinBits nWinStyle ) SetStyle( ImplInitStyle( nWinStyle ) ); } -VCLMultiLineEdit::VCLMultiLineEdit( Window* pParent, const ResId& rResId ) +VclMultiLineEdit::VclMultiLineEdit( Window* pParent, const ResId& rResId ) : Edit( pParent, rResId.SetRT( RSC_MULTILINEEDIT ) ) { SetType( WINDOW_MULTILINEEDIT ); @@ -974,13 +974,13 @@ VCLMultiLineEdit::VCLMultiLineEdit( Window* pParent, const ResId& rResId ) // Base Edit ctor could call Show already, but that would cause problems // with accessibility, as Show might (indirectly) trigger a call to virtual // GetComponentInterface, which is the Edit's base version instead of the - // VCLMultiLineEdit's version while in the base Edit ctor: + // VclMultiLineEdit's version while in the base Edit ctor: if ((GetStyle() & WB_HIDE) == 0) Show(); } -VCLMultiLineEdit::~VCLMultiLineEdit() +VclMultiLineEdit::~VclMultiLineEdit() { { ::std::auto_ptr< ImpSvMEdit > pDelete( pImpSvMEdit ); @@ -989,7 +989,7 @@ VCLMultiLineEdit::~VCLMultiLineEdit() delete pUpdateDataTimer; } -WinBits VCLMultiLineEdit::ImplInitStyle( WinBits nStyle ) +WinBits VclMultiLineEdit::ImplInitStyle( WinBits nStyle ) { if ( !(nStyle & WB_NOTABSTOP) ) nStyle |= WB_TABSTOP; @@ -1004,7 +1004,7 @@ WinBits VCLMultiLineEdit::ImplInitStyle( WinBits nStyle ) } -void VCLMultiLineEdit::ImplInitSettings( sal_Bool /*bFont*/, sal_Bool /*bForeground*/, sal_Bool bBackground ) +void VclMultiLineEdit::ImplInitSettings( sal_Bool /*bFont*/, sal_Bool /*bForeground*/, sal_Bool bBackground ) { const StyleSettings& rStyleSettings = GetSettings().GetStyleSettings(); @@ -1048,14 +1048,14 @@ void VCLMultiLineEdit::ImplInitSettings( sal_Bool /*bFont*/, sal_Bool /*bForegro pImpSvMEdit->GetTextWindow()->SetBackground( GetControlBackground() ); else pImpSvMEdit->GetTextWindow()->SetBackground( rStyleSettings.GetFieldColor() ); - // Auch am VCLMultiLineEdit einstellen, weil die TextComponent + // Auch am VclMultiLineEdit einstellen, weil die TextComponent // ggf. die Scrollbars hidet. SetBackground( pImpSvMEdit->GetTextWindow()->GetBackground() ); } } } -void VCLMultiLineEdit::Modify() +void VclMultiLineEdit::Modify() { aModifyHdlLink.Call( this ); @@ -1065,33 +1065,33 @@ void VCLMultiLineEdit::Modify() pUpdateDataTimer->Start(); } -IMPL_LINK_NOARG(VCLMultiLineEdit, ImpUpdateDataHdl) +IMPL_LINK_NOARG(VclMultiLineEdit, ImpUpdateDataHdl) { UpdateData(); return 0; } -void VCLMultiLineEdit::UpdateData() +void VclMultiLineEdit::UpdateData() { aUpdateDataHdlLink.Call( this ); } -void VCLMultiLineEdit::SetModifyFlag() +void VclMultiLineEdit::SetModifyFlag() { pImpSvMEdit->SetModified( sal_True ); } -void VCLMultiLineEdit::ClearModifyFlag() +void VclMultiLineEdit::ClearModifyFlag() { pImpSvMEdit->SetModified( sal_False ); } -sal_Bool VCLMultiLineEdit::IsModified() const +sal_Bool VclMultiLineEdit::IsModified() const { return pImpSvMEdit->IsModified(); } -void VCLMultiLineEdit::EnableUpdateData( sal_uLong nTimeout ) +void VclMultiLineEdit::EnableUpdateData( sal_uLong nTimeout ) { if ( !nTimeout ) DisableUpdateData(); @@ -1100,13 +1100,13 @@ void VCLMultiLineEdit::EnableUpdateData( sal_uLong nTimeout ) if ( !pUpdateDataTimer ) { pUpdateDataTimer = new Timer; - pUpdateDataTimer->SetTimeoutHdl( LINK( this, VCLMultiLineEdit, ImpUpdateDataHdl ) ); + pUpdateDataTimer->SetTimeoutHdl( LINK( this, VclMultiLineEdit, ImpUpdateDataHdl ) ); } pUpdateDataTimer->SetTimeout( nTimeout ); } } -void VCLMultiLineEdit::SetReadOnly( sal_Bool bReadOnly ) +void VclMultiLineEdit::SetReadOnly( sal_Bool bReadOnly ) { pImpSvMEdit->SetReadOnly( bReadOnly ); Edit::SetReadOnly( bReadOnly ); @@ -1120,82 +1120,82 @@ void VCLMultiLineEdit::SetReadOnly( sal_Bool bReadOnly ) SetStyle( nStyle ); } -sal_Bool VCLMultiLineEdit::IsReadOnly() const +sal_Bool VclMultiLineEdit::IsReadOnly() const { return pImpSvMEdit->IsReadOnly(); } -void VCLMultiLineEdit::SetMaxTextLen( xub_StrLen nMaxLen ) +void VclMultiLineEdit::SetMaxTextLen( xub_StrLen nMaxLen ) { pImpSvMEdit->SetMaxTextLen( nMaxLen ); } -xub_StrLen VCLMultiLineEdit::GetMaxTextLen() const +xub_StrLen VclMultiLineEdit::GetMaxTextLen() const { return pImpSvMEdit->GetMaxTextLen(); } -void VCLMultiLineEdit::ReplaceSelected( const String& rStr ) +void VclMultiLineEdit::ReplaceSelected( const String& rStr ) { pImpSvMEdit->InsertText( rStr ); } -void VCLMultiLineEdit::DeleteSelected() +void VclMultiLineEdit::DeleteSelected() { pImpSvMEdit->InsertText( String() ); } -String VCLMultiLineEdit::GetSelected() const +String VclMultiLineEdit::GetSelected() const { return pImpSvMEdit->GetSelected(); } -String VCLMultiLineEdit::GetSelected( LineEnd aSeparator ) const +String VclMultiLineEdit::GetSelected( LineEnd aSeparator ) const { return pImpSvMEdit->GetSelected( aSeparator ); } -void VCLMultiLineEdit::Cut() +void VclMultiLineEdit::Cut() { pImpSvMEdit->Cut(); } -void VCLMultiLineEdit::Copy() +void VclMultiLineEdit::Copy() { pImpSvMEdit->Copy(); } -void VCLMultiLineEdit::Paste() +void VclMultiLineEdit::Paste() { pImpSvMEdit->Paste(); } -void VCLMultiLineEdit::SetText( const String& rStr ) +void VclMultiLineEdit::SetText( const String& rStr ) { pImpSvMEdit->SetText( rStr ); } -String VCLMultiLineEdit::GetText() const +String VclMultiLineEdit::GetText() const { return pImpSvMEdit->GetText(); } -String VCLMultiLineEdit::GetText( LineEnd aSeparator ) const +String VclMultiLineEdit::GetText( LineEnd aSeparator ) const { return pImpSvMEdit->GetText( aSeparator ); } -String VCLMultiLineEdit::GetTextLines( LineEnd aSeparator ) const +String VclMultiLineEdit::GetTextLines( LineEnd aSeparator ) const { return pImpSvMEdit->GetTextLines( aSeparator ); } -void VCLMultiLineEdit::Resize() +void VclMultiLineEdit::Resize() { pImpSvMEdit->Resize(); } -void VCLMultiLineEdit::GetFocus() +void VclMultiLineEdit::GetFocus() { if ( !pImpSvMEdit ) // might be called from within the dtor, when pImpSvMEdit == NULL is a valid state return; @@ -1204,17 +1204,17 @@ void VCLMultiLineEdit::GetFocus() pImpSvMEdit->GetFocus(); } -void VCLMultiLineEdit::SetSelection( const Selection& rSelection ) +void VclMultiLineEdit::SetSelection( const Selection& rSelection ) { pImpSvMEdit->SetSelection( rSelection ); } -const Selection& VCLMultiLineEdit::GetSelection() const +const Selection& VclMultiLineEdit::GetSelection() const { return pImpSvMEdit->GetSelection(); } -Size VCLMultiLineEdit::CalcMinimumSize() const +Size VclMultiLineEdit::CalcMinimumSize() const { Size aSz = pImpSvMEdit->CalcMinimumSize(); @@ -1226,7 +1226,7 @@ Size VCLMultiLineEdit::CalcMinimumSize() const return aSz; } -Size VCLMultiLineEdit::CalcAdjustedSize( const Size& rPrefSize ) const +Size VclMultiLineEdit::CalcAdjustedSize( const Size& rPrefSize ) const { Size aSz = rPrefSize; sal_Int32 nLeft, nTop, nRight, nBottom; @@ -1246,7 +1246,7 @@ Size VCLMultiLineEdit::CalcAdjustedSize( const Size& rPrefSize ) const return aSz; } -Size VCLMultiLineEdit::CalcSize( sal_uInt16 nColumns, sal_uInt16 nLines ) const +Size VclMultiLineEdit::CalcSize( sal_uInt16 nColumns, sal_uInt16 nLines ) const { Size aSz = pImpSvMEdit->CalcSize( nColumns, nLines ); @@ -1257,12 +1257,12 @@ Size VCLMultiLineEdit::CalcSize( sal_uInt16 nColumns, sal_uInt16 nLines ) const return aSz; } -void VCLMultiLineEdit::GetMaxVisColumnsAndLines( sal_uInt16& rnCols, sal_uInt16& rnLines ) const +void VclMultiLineEdit::GetMaxVisColumnsAndLines( sal_uInt16& rnCols, sal_uInt16& rnLines ) const { pImpSvMEdit->GetMaxVisColumnsAndLines( rnCols, rnLines ); } -void VCLMultiLineEdit::StateChanged( StateChangedType nType ) +void VclMultiLineEdit::StateChanged( StateChangedType nType ) { if( nType == STATE_CHANGE_ENABLE ) { @@ -1315,7 +1315,7 @@ void VCLMultiLineEdit::StateChanged( StateChangedType nType ) Control::StateChanged( nType ); } -void VCLMultiLineEdit::DataChanged( const DataChangedEvent& rDCEvt ) +void VclMultiLineEdit::DataChanged( const DataChangedEvent& rDCEvt ) { if ( (rDCEvt.GetType() == DATACHANGED_SETTINGS) && (rDCEvt.GetFlags() & SETTINGS_STYLE) ) @@ -1328,7 +1328,7 @@ void VCLMultiLineEdit::DataChanged( const DataChangedEvent& rDCEvt ) Control::DataChanged( rDCEvt ); } -void VCLMultiLineEdit::Draw( OutputDevice* pDev, const Point& rPos, const Size& rSize, sal_uLong nFlags ) +void VclMultiLineEdit::Draw( OutputDevice* pDev, const Point& rPos, const Size& rSize, sal_uLong nFlags ) { ImplInitSettings( sal_True, sal_True, sal_True ); @@ -1408,7 +1408,7 @@ void VCLMultiLineEdit::Draw( OutputDevice* pDev, const Point& rPos, const Size& pDev->Pop(); } -long VCLMultiLineEdit::Notify( NotifyEvent& rNEvt ) +long VclMultiLineEdit::Notify( NotifyEvent& rNEvt ) { long nDone = 0; if( rNEvt.GetType() == EVENT_COMMAND ) @@ -1418,7 +1418,7 @@ long VCLMultiLineEdit::Notify( NotifyEvent& rNEvt ) return nDone ? nDone : Edit::Notify( rNEvt ); } -long VCLMultiLineEdit::PreNotify( NotifyEvent& rNEvt ) +long VclMultiLineEdit::PreNotify( NotifyEvent& rNEvt ) { long nDone = 0; @@ -1514,33 +1514,33 @@ long VCLMultiLineEdit::PreNotify( NotifyEvent& rNEvt ) // // Internas fuer abgeleitete Klassen, z.B. TextComponent -ExtTextEngine* VCLMultiLineEdit::GetTextEngine() const +ExtTextEngine* VclMultiLineEdit::GetTextEngine() const { return pImpSvMEdit->GetTextWindow()->GetTextEngine(); } -ExtTextView* VCLMultiLineEdit::GetTextView() const +ExtTextView* VclMultiLineEdit::GetTextView() const { return pImpSvMEdit->GetTextWindow()->GetTextView(); } -ScrollBar* VCLMultiLineEdit::GetVScrollBar() const +ScrollBar* VclMultiLineEdit::GetVScrollBar() const { return pImpSvMEdit->GetVScrollBar(); } -void VCLMultiLineEdit::EnableFocusSelectionHide( sal_Bool bHide ) +void VclMultiLineEdit::EnableFocusSelectionHide( sal_Bool bHide ) { pImpSvMEdit->GetTextWindow()->SetAutoFocusHide( bHide ); } -void VCLMultiLineEdit::SetLeftMargin( sal_uInt16 n ) +void VclMultiLineEdit::SetLeftMargin( sal_uInt16 n ) { if ( GetTextEngine() ) GetTextEngine()->SetLeftMargin( n ); } -void VCLMultiLineEdit::SetRightToLeft( sal_Bool bRightToLeft ) +void VclMultiLineEdit::SetRightToLeft( sal_Bool bRightToLeft ) { if ( GetTextEngine() ) { @@ -1549,7 +1549,7 @@ void VCLMultiLineEdit::SetRightToLeft( sal_Bool bRightToLeft ) } } -sal_Bool VCLMultiLineEdit::IsRightToLeft() const +sal_Bool VclMultiLineEdit::IsRightToLeft() const { sal_Bool bRightToLeft = sal_False; @@ -1559,12 +1559,12 @@ sal_Bool VCLMultiLineEdit::IsRightToLeft() const return bRightToLeft; } -void VCLMultiLineEdit::DisableSelectionOnFocus() +void VclMultiLineEdit::DisableSelectionOnFocus() { pImpSvMEdit->GetTextWindow()->DisableSelectionOnFocus(); } -void VCLMultiLineEdit::SetTextSelectable( sal_Bool bTextSelectable ) +void VclMultiLineEdit::SetTextSelectable( sal_Bool bTextSelectable ) { pImpSvMEdit->GetTextWindow()->SetTextSelectable( bTextSelectable ); } diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx index 5b60280..53ffa37 100644 --- a/vcl/source/window/builder.cxx +++ b/vcl/source/window/builder.cxx @@ -179,6 +179,14 @@ VclBuilder::VclBuilder(Window *pParent, OUString sUIDir, OUString sUIFile, OStri delete_by_name(*aI); } + //Remove ScrollWindow parent widgets whose children in vcl implement scrolling + //internally. + for (std::set<Window*>::iterator aI = m_pParserState->m_aRedundantParentWidgets.begin(), + aEnd = m_pParserState->m_aRedundantParentWidgets.end(); aI != aEnd; ++aI) + { + delete_by_window(*aI); + } + //drop maps, etc. that we don't need again delete m_pParserState; } @@ -721,7 +729,7 @@ Window *VclBuilder::makeObject(Window *pParent, const OString &name, const OStri else if (name == "GtkTextView") { WinBits nWinStyle = WB_LEFT | WB_BORDER; - //VCLMultiLineEdit manage their own scrolling, + //VclMultiLineEdit manage their own scrolling, //so if it appears as a child of a scrolling window //shoehorn that scrolling settings to this //widget and remove the parent @@ -739,9 +747,9 @@ Window *VclBuilder::makeObject(Window *pParent, const OString &name, const OStri sal_Int32 nHeightReq = pScrollParent->get_height_request(); rMap[OString("height-request")] = OString::valueOf(nHeightReq); - delete_by_window(pScrollParent); + m_pParserState->m_aRedundantParentWidgets.insert(pScrollParent); } - pWindow = new VCLMultiLineEdit(pParent, nWinStyle); + pWindow = new VclMultiLineEdit(pParent, nWinStyle); } else { diff --git a/vcl/source/window/msgbox.cxx b/vcl/source/window/msgbox.cxx index 8f82b27..41c1505 100644 --- a/vcl/source/window/msgbox.cxx +++ b/vcl/source/window/msgbox.cxx @@ -398,7 +398,7 @@ void MessBox::ImplPosControls() mpCheckBox->Show(); } - mpVCLMultiLineEdit = new VCLMultiLineEdit( this, nWinStyle ); + mpVCLMultiLineEdit = new VclMultiLineEdit( this, nWinStyle ); mpVCLMultiLineEdit->SetText( aMessText ); mpVCLMultiLineEdit->SetPosSizePixel( aTextPos, aMEditSize ); mpVCLMultiLineEdit->Show(); commit 258483a58e49733b80745ffd97ba5b27a125da19 Author: Caolán McNamara <caol...@redhat.com> Date: Wed Oct 10 22:27:52 2012 +0100 convert insert plugin to .ui Change-Id: I229b152ba132329ca20cff0afd4f84e1c052b97f diff --git a/cui/UI_cui.mk b/cui/UI_cui.mk index eb1217c..4a282f9 100644 --- a/cui/UI_cui.mk +++ b/cui/UI_cui.mk @@ -13,6 +13,7 @@ $(eval $(call gb_UI_add_uifiles,cui,\ cui/uiconfig/ui/charnamepage \ cui/uiconfig/ui/effectspage \ cui/uiconfig/ui/hyphenate \ + cui/uiconfig/ui/insertplugin \ cui/uiconfig/ui/positionpage \ cui/uiconfig/ui/specialcharacters \ cui/uiconfig/ui/thesaurus \ diff --git a/cui/source/dialogs/insdlg.cxx b/cui/source/dialogs/insdlg.cxx index b221f4e..43786ca 100644 --- a/cui/source/dialogs/insdlg.cxx +++ b/cui/source/dialogs/insdlg.cxx @@ -39,13 +39,13 @@ #include <tools/urlobj.hxx> #include <tools/debug.hxx> #include <svl/urihelper.hxx> -#include <svtools/svmedit.hxx> #include <vcl/button.hxx> #include <vcl/fixed.hxx> #include <vcl/group.hxx> #include <vcl/lstbox.hxx> #include <vcl/msgbox.hxx> #include <vcl/svapp.hxx> +#include <vcl/vclmedit.hxx> #include <sot/clsids.hxx> #include <sfx2/frmdescr.hxx> #include <sfx2/viewsh.hxx> @@ -98,6 +98,15 @@ InsertObjectDialog_Impl::InsertObjectDialog_Impl( Window * pParent, const ResId { } +InsertObjectDialog_Impl::InsertObjectDialog_Impl(Window * pParent, const OString& rID, + const OUString& rUIXMLDescription, + const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage) + : ModalDialog(pParent, rID, rUIXMLDescription) + , m_xStorage( xStorage ) + , aCnt( m_xStorage ) +{ +} + // ----------------------------------------------------------------------- IMPL_LINK_NOARG_INLINE_START(SvInsertOleDlg, DoubleClickHdl) @@ -411,7 +420,7 @@ IMPL_LINK_NOARG(SvInsertPlugInDialog, BrowseHdl) { Sequence< OUString > aPathSeq( xFilePicker->getFiles() ); INetURLObject aObj( aPathSeq[0] ); - aEdFileurl.SetText( aObj.PathToFileName() ); + m_pEdFileurl->SetText(aObj.PathToFileName()); } } } @@ -421,20 +430,15 @@ IMPL_LINK_NOARG(SvInsertPlugInDialog, BrowseHdl) // ----------------------------------------------------------------------- -SvInsertPlugInDialog::SvInsertPlugInDialog( Window* pParent, const uno::Reference < embed::XStorage >& xStorage ) - : InsertObjectDialog_Impl( pParent, CUI_RES( MD_INSERT_OBJECT_PLUGIN ), xStorage ), - aGbFileurl( this, CUI_RES( GB_FILEURL ) ), - aEdFileurl( this, CUI_RES( ED_FILEURL ) ), - aBtnFileurl( this, CUI_RES( BTN_FILEURL ) ), - aGbPluginsOptions( this, CUI_RES( GB_PLUGINS_OPTIONS ) ), - aEdPluginsOptions( this, CUI_RES( ED_PLUGINS_OPTIONS ) ), - aOKButton1( this, CUI_RES( 1 ) ), - aCancelButton1( this, CUI_RES( 1 ) ), - aHelpButton1( this, CUI_RES( 1 ) ), - m_pURL(0) +SvInsertPlugInDialog::SvInsertPlugInDialog(Window* pParent, + const uno::Reference < embed::XStorage >& xStorage) + : InsertObjectDialog_Impl(pParent, "InsertPluginDialog", "cui/ui/insertplugin.ui", xStorage) + , m_pURL(0) { - FreeResource(); - aBtnFileurl.SetClickHdl( LINK( this, SvInsertPlugInDialog, BrowseHdl ) ); + get(m_pEdFileurl, "urled"); + get(m_pBtnFileurl, "urlbtn"); + get(m_pEdPluginsOptions, "pluginoptions"); + m_pBtnFileurl->SetClickHdl(LINK(this, SvInsertPlugInDialog, BrowseHdl)); } SvInsertPlugInDialog::~SvInsertPlugInDialog() @@ -464,7 +468,7 @@ static void Plugin_ImplFillCommandSequence( const String& aCommands, uno::Sequen short SvInsertPlugInDialog::Execute() { short nRet = RET_OK; - m_aCommands.Erase(); + m_aCommands = OUString(); DBG_ASSERT( m_xStorage.is(), "No storage!"); if ( m_xStorage.is() && ( nRet = Dialog::Execute() ) == RET_OK ) { diff --git a/cui/source/dialogs/svuidlg.hrc b/cui/source/dialogs/svuidlg.hrc index a41e842..17e3ad4 100644 --- a/cui/source/dialogs/svuidlg.hrc +++ b/cui/source/dialogs/svuidlg.hrc @@ -73,13 +73,6 @@ #define BTN_FILEPATH 11 #define CB_FILELINK 12 -#define MD_INSERT_OBJECT_PLUGIN 32008 -#define ED_FILEURL 10 -#define BTN_FILEURL 11 -#define GB_FILEURL 12 -#define ED_PLUGINS_OPTIONS 20 -#define GB_PLUGINS_OPTIONS 21 - #define MD_INSERT_OBJECT_APPLET 32009 #define FT_CLASSFILE 10 #define ED_CLASSFILE 11 diff --git a/cui/source/dialogs/svuidlg.src b/cui/source/dialogs/svuidlg.src index f1f9703..af30d3a 100644 --- a/cui/source/dialogs/svuidlg.src +++ b/cui/source/dialogs/svuidlg.src @@ -385,66 +385,6 @@ ModalDialog MD_INSERT_OLEOBJECT }; Text [ en-US ] = "Insert OLE Object" ; }; -ModalDialog MD_INSERT_OBJECT_PLUGIN -{ - HelpID = "cui:ModalDialog:MD_INSERT_OBJECT_PLUGIN"; - OutputSize = TRUE ; - SVLook = TRUE ; - Size = MAP_APPFONT ( 284 , 123 ) ; - Moveable = TRUE ; - Edit ED_FILEURL - { - HelpID = "cui:Edit:MD_INSERT_OBJECT_PLUGIN:ED_FILEURL"; - Border = TRUE ; - Pos = MAP_APPFONT ( 12 , 14 ) ; - Size = MAP_APPFONT ( 204 , 12 ) ; - }; - PushButton BTN_FILEURL - { - HelpID = "cui:PushButton:MD_INSERT_OBJECT_PLUGIN:BTN_FILEURL"; - Pos = MAP_APPFONT ( 166 , 29 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - Text [ en-US ] = "~Browse..." ; - }; - FixedLine GB_FILEURL - { - Pos = MAP_APPFONT ( 6 , 3 ) ; - Size = MAP_APPFONT ( 216 , 8 ) ; - Text [ en-US ] = "File / URL" ; - }; - MultiLineEdit ED_PLUGINS_OPTIONS - { - HelpID = "cui:MultiLineEdit:MD_INSERT_OBJECT_PLUGIN:ED_PLUGINS_OPTIONS"; - Border = TRUE ; - Pos = MAP_APPFONT ( 12 , 66 ) ; - Size = MAP_APPFONT ( 204 , 45 ) ; - VScroll = TRUE ; - IgnoreTab = TRUE; - }; - FixedLine GB_PLUGINS_OPTIONS - { - Pos = MAP_APPFONT ( 6 , 55 ) ; - Size = MAP_APPFONT ( 216 , 8 ) ; - Text [ en-US ] = "Options" ; - }; - OKButton 1 - { - Pos = MAP_APPFONT ( 228 , 6 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - DefButton = TRUE ; - }; - CancelButton 1 - { - Pos = MAP_APPFONT ( 228 , 23 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - }; - HelpButton 1 - { - Pos = MAP_APPFONT ( 228 , 43 ) ; - Size = MAP_APPFONT ( 50 , 14 ) ; - }; - Text [ en-US ] = "Insert Plug-in" ; -}; ModalDialog MD_INSERT_OBJECT_APPLET { HelpID = "cui:ModalDialog:MD_INSERT_OBJECT_APPLET"; diff --git a/cui/source/inc/insdlg.hxx b/cui/source/inc/insdlg.hxx index 24d0032..79d4361 100644 --- a/cui/source/inc/insdlg.hxx +++ b/cui/source/inc/insdlg.hxx @@ -43,6 +43,9 @@ protected: comphelper::EmbeddedObjectContainer aCnt; InsertObjectDialog_Impl( Window * pParent, const ResId & rResId, const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage ); + InsertObjectDialog_Impl(Window * pParent, const OString& rID, + const OUString& rUIXMLDescription, + const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage); public: com::sun::star::uno::Reference < com::sun::star::embed::XEmbeddedObject > GetObject() { return m_xObj; } @@ -92,28 +95,21 @@ public: class SvInsertPlugInDialog : public InsertObjectDialog_Impl { private: - FixedLine aGbFileurl; - Edit aEdFileurl; - PushButton aBtnFileurl; - FixedLine aGbPluginsOptions; - MultiLineEdit aEdPluginsOptions; - OKButton aOKButton1; - CancelButton aCancelButton1; - HelpButton aHelpButton1; - INetURLObject* m_pURL; - String m_aCommands; + Edit* m_pEdFileurl; + PushButton* m_pBtnFileurl; + VCLMultiLineEdit* m_pEdPluginsOptions; + INetURLObject* m_pURL; + OUString m_aCommands; DECL_LINK(BrowseHdl, void *); - String GetPlugInFile() const { return aEdFileurl.GetText(); } - String GetPlugInOptions() const { return aEdPluginsOptions.GetText(); } + OUString GetPlugInFile() const { return m_pEdFileurl->GetText(); } + OUString GetPlugInOptions() const { return m_pEdPluginsOptions->GetText(); } public: - SvInsertPlugInDialog( Window* pParent, - const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage ); - - ~SvInsertPlugInDialog(); - - virtual short Execute(); + SvInsertPlugInDialog(Window* pParent, + const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage); + ~SvInsertPlugInDialog(); + virtual short Execute(); }; class SfxInsertFloatingFrameDialog : public InsertObjectDialog_Impl diff --git a/cui/uiconfig/ui/insertplugin.ui b/cui/uiconfig/ui/insertplugin.ui index 7973387..8ebae26 100644 --- a/cui/uiconfig/ui/insertplugin.ui +++ b/cui/uiconfig/ui/insertplugin.ui @@ -27,24 +27,26 @@ <property name="can_focus">False</property> <property name="left_padding">12</property> <child> - <object class="GtkBox" id="box1"> + <object class="GtkGrid" id="grid1"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="spacing">6</property> <child> - <object class="GtkEntry" id="entry1"> + <object class="GtkEntry" id="urled"> <property name="visible">True</property> <property name="can_focus">True</property> + <property name="hexpand">True</property> <property name="invisible_char">â¢</property> + <property name="invisible_char_set">True</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> + <property name="left_attach">0</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> <child> - <object class="GtkButton" id="button1"> + <object class="GtkButton" id="urlbtn"> <property name="label" translatable="yes">Browse...</property> <property name="use_action_appearance">False</property> <property name="visible">True</property> @@ -53,9 +55,10 @@ <property name="use_action_appearance">False</property> </object> <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> + <property name="left_attach">1</property> + <property name="top_attach">0</property> + <property name="width">1</property> + <property name="height">1</property> </packing> </child> </object> @@ -90,14 +93,17 @@ <property name="left_padding">12</property> <child> <object class="GtkScrolledWindow" id="scrolledwindow1"> + <property name="width_request">400</property> <property name="height_request">80</property> <property name="visible">True</property> <property name="can_focus">True</property> + <property name="hexpand">True</property> + <property name="vexpand">True</property> <property name="hscrollbar_policy">never</property> <property name="vscrollbar_policy">always</property> <property name="shadow_type">in</property> <child> - <object class="GtkTextView" id="textview1"> + <object class="GtkTextView" id="pluginoptions"> <property name="visible">True</property> <property name="can_focus">True</property> <property name="wrap_mode">char</property> commit f9775fcbe8454539ddb0e0576159c2e609b03b0c Author: Jack Leigh <leigh...@gmx.se> Date: Wed Oct 10 21:37:48 2012 +0100 add insert plugin .ui Change-Id: Ic84e65debd25fef68cd1e2b1b801da68fa79219b diff --git a/cui/uiconfig/ui/insertplugin.ui b/cui/uiconfig/ui/insertplugin.ui new file mode 100644 index 0000000..7973387 --- /dev/null +++ b/cui/uiconfig/ui/insertplugin.ui @@ -0,0 +1,202 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <!-- interface-requires gtk+ 3.0 --> + <object class="GtkDialog" id="InsertPluginDialog"> + <property name="can_focus">False</property> + <property name="border_width">5</property> + <property name="title" translatable="yes">Insert Plug-in</property> + <property name="type_hint">dialog</property> + <child internal-child="vbox"> + <object class="GtkBox" id="dialog-vbox1"> + <property name="can_focus">False</property> + <child> + <object class="GtkBox" id="box3"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">10</property> + <child> + <object class="GtkFrame" id="frame1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="left_padding">12</property> + <child> + <object class="GtkBox" id="box1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="spacing">6</property> + <child> + <object class="GtkEntry" id="entry1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="invisible_char">â¢</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="button1"> + <property name="label" translatable="yes">Browse...</property> + <property name="use_action_appearance">False</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_action_appearance">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label1"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">File/URL</property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkFrame" id="frame2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label_xalign">0</property> + <property name="shadow_type">none</property> + <child> + <object class="GtkAlignment" id="alignment2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="left_padding">12</property> + <child> + <object class="GtkScrolledWindow" id="scrolledwindow1"> + <property name="height_request">80</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="hscrollbar_policy">never</property> + <property name="vscrollbar_policy">always</property> + <property name="shadow_type">in</property> + <child> + <object class="GtkTextView" id="textview1"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="wrap_mode">char</property> + </object> + </child> + </object> + </child> + </object> + </child> + <child type="label"> + <object class="GtkLabel" id="label2"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Options</property> + <property name="use_markup">True</property> + </object> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">0</property> + </packing> + </child> + <child internal-child="action_area"> + <object class="GtkButtonBox" id="dialog-action_area1"> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="layout_style">start</property> + <child> + <object class="GtkButton" id="ok"> + <property name="label">gtk-ok</property> + <property name="use_action_appearance">False</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="has_default">True</property> + <property name="receives_default">True</property> + <property name="use_action_appearance">False</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="use_action_appearance">False</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_action_appearance">False</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="use_action_appearance">False</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="receives_default">True</property> + <property name="use_action_appearance">False</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> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="pack_type">end</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-widgets> + </object> +</interface> commit e38d9aa925c85efb924666c55dd2533c7d34788b Author: Caolán McNamara <caol...@redhat.com> Date: Wed Oct 10 21:30:15 2012 +0100 add a stub ScrolledWindow to store scroll properties e.g. VclMultiLineEdit manages its own scrolling, so just store that info in a dummy ScrolledWindow for now and set the scroll window settings onto the VCLMultiLineEdit if it has a scrolledwindow parent Change-Id: I8f7282e1348aa4e9ff77cce384dcc367b17bd3b0 diff --git a/tools/inc/tools/wintypes.hxx b/tools/inc/tools/wintypes.hxx index 2a99ab7..60f9236 100644 --- a/tools/inc/tools/wintypes.hxx +++ b/tools/inc/tools/wintypes.hxx @@ -90,6 +90,7 @@ typedef sal_uInt16 WindowType; #define WINDOW_TIMEBOX (WINDOW_FIRST + 0x3d) #define WINDOW_LONGCURRENCYFIELD (WINDOW_FIRST + 0x3e) #define WINDOW_LONGCURRENCYBOX (WINDOW_FIRST + 0x3f) +#define WINDOW_SCROLLWINDOW (WINDOW_FIRST + 0x40) #define WINDOW_TOOLBOX (WINDOW_FIRST + 0x41) #define WINDOW_DOCKINGWINDOW (WINDOW_FIRST + 0x42) #define WINDOW_STATUSBAR (WINDOW_FIRST + 0x43) diff --git a/vcl/inc/vcl/builder.hxx b/vcl/inc/vcl/builder.hxx index 83b1139..ef3e85c 100644 --- a/vcl/inc/vcl/builder.hxx +++ b/vcl/inc/vcl/builder.hxx @@ -156,6 +156,7 @@ public: return static_cast<T*>(w); } OString get_by_window(const Window *pWindow) const; + void delete_by_window(const Window *pWindow); //for the purposes of retrofitting this to the existing code //look up sID, clone its properties into replacement and //splice replacement into the tree instead of it, without diff --git a/vcl/inc/vcl/window.hxx b/vcl/inc/vcl/window.hxx index 80ce5fd..5b83760 100644 --- a/vcl/inc/vcl/window.hxx +++ b/vcl/inc/vcl/window.hxx @@ -595,6 +595,9 @@ protected: */ SAL_DLLPRIVATE void queue_resize(); + sal_Int32 get_height_request() const; + sal_Int32 get_width_request() const; + // FIXME: this is a hack to workaround missing layout functionality SAL_DLLPRIVATE void ImplAdjustNWFSizes(); public: diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx index 40c0b71..5b60280 100644 --- a/vcl/source/window/builder.cxx +++ b/vcl/source/window/builder.cxx @@ -504,6 +504,21 @@ bool VclBuilder::extractImage(const OString &id, stringmap &rMap) return false; } +//This doesn't actually do anything yet, so hide it down here in builder.cxx as +//merely a temporary storage for scrolling information for vcl controls which +//actually manage their own scrolling. If you want to put something inside +//a scrolled window that doesn't handle its own scrolling, then you +//need to implement this fully and move into a top-level header +class VclScrolledWindow : public Window +{ +public: + VclScrolledWindow(Window *pParent) + : Window(WINDOW_SCROLLWINDOW) + { + ImplInit(pParent, WB_HIDE, NULL); + } +}; + #ifndef DISABLE_DYNLOADING extern "C" { static void SAL_CALL thisModule() {} } #endif @@ -690,6 +705,10 @@ Window *VclBuilder::makeObject(Window *pParent, const OString &name, const OStri else pWindow = new ScrollBar(pParent, WB_HORZ); } + else if (name == "GtkScrolledWindow") + { + pWindow = new VclScrolledWindow(pParent); + } else if (name == "GtkEntry") { pWindow = new Edit(pParent, WB_LEFT|WB_VCENTER|WB_BORDER|WB_3DLOOK); @@ -700,7 +719,30 @@ Window *VclBuilder::makeObject(Window *pParent, const OString &name, const OStri else if (name == "GtkDrawingArea") pWindow = new Window(pParent); else if (name == "GtkTextView") - pWindow = new VCLMultiLineEdit(pParent); + { + WinBits nWinStyle = WB_LEFT | WB_BORDER; + //VCLMultiLineEdit manage their own scrolling, + //so if it appears as a child of a scrolling window + //shoehorn that scrolling settings to this + //widget and remove the parent + if (pParent && pParent->GetType() == WINDOW_SCROLLWINDOW) + { + WinBits nScrollBits = pParent->GetStyle(); + nScrollBits &= (WB_AUTOHSCROLL|WB_HSCROLL|WB_AUTOVSCROLL|WB_VSCROLL); + nWinStyle |= nScrollBits; + + Window *pScrollParent = pParent; + pParent = pParent->GetParent(); + + sal_Int32 nWidthReq = pScrollParent->get_width_request(); + rMap[OString("width-request")] = OString::valueOf(nWidthReq); + sal_Int32 nHeightReq = pScrollParent->get_height_request(); + rMap[OString("height-request")] = OString::valueOf(nHeightReq); + + delete_by_window(pScrollParent); + } + pWindow = new VCLMultiLineEdit(pParent, nWinStyle); + } else { sal_Int32 nDelim = name.indexOf(':'); @@ -747,7 +789,7 @@ namespace { //return true for window types which exist in vcl but are not themselves //represented in the .ui format, i.e. only their children exist. - bool isConsideredPseudo(Window *pWindow) + bool isConsideredGtkPseudo(Window *pWindow) { return pWindow->GetType() == WINDOW_TABPAGE; } @@ -757,7 +799,7 @@ Window *VclBuilder::insertObject(Window *pParent, const OString &rClass, const O { Window *pCurrentChild = NULL; - if (m_pParent && !isConsideredPseudo(m_pParent) && !m_sID.isEmpty() && rID.equals(m_sID)) + if (m_pParent && !isConsideredGtkPseudo(m_pParent) && !m_sID.isEmpty() && rID.equals(m_sID)) { pCurrentChild = m_pParent; //toplevels default to resizable @@ -1419,6 +1461,20 @@ void VclBuilder::delete_by_name(OString sID) } } +void VclBuilder::delete_by_window(const Window *pWindow) +{ + for (std::vector<WinAndId>::iterator aI = m_aChildren.begin(), + aEnd = m_aChildren.end(); aI != aEnd; ++aI) + { + if (aI->m_pWindow == pWindow) + { + delete aI->m_pWindow; + m_aChildren.erase(aI); + break; + } + } +} + OString VclBuilder::get_by_window(const Window *pWindow) const { for (std::vector<WinAndId>::const_iterator aI = m_aChildren.begin(), diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index 7d21da6..9efcedf 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -8885,7 +8885,10 @@ sal_uInt16 Window::GetAccessibleRole() const case WINDOW_HELPTEXTWINDOW: nRole = accessibility::AccessibleRole::TOOL_TIP; break; - case WINDOW_RULER: nRole = accessibility::AccessibleRole::RULER; break; + case WINDOW_RULER: nRole = accessibility::AccessibleRole::RULER; break; + + case WINDOW_SCROLLWINDOW: nRole = accessibility::AccessibleRole::SCROLL_PANE; break; + case WINDOW_WINDOW: case WINDOW_CONTROL: case WINDOW_BORDERWINDOW: diff --git a/vcl/source/window/window2.cxx b/vcl/source/window/window2.cxx index 5bd02d9..4c0b330 100644 --- a/vcl/source/window/window2.cxx +++ b/vcl/source/window/window2.cxx @@ -2037,6 +2037,26 @@ bool Window::set_property(const rtl::OString &rKey, const rtl::OString &rValue) set_margin_top(rValue.toInt32()); else if (rKey.equalsL(RTL_CONSTASCII_STRINGPARAM("margin-bottom"))) set_margin_bottom(rValue.toInt32()); + else if (rKey.equalsL(RTL_CONSTASCII_STRINGPARAM("hscrollbar-policy"))) + { + WinBits nBits = GetStyle(); + nBits &= ~(WB_AUTOHSCROLL|WB_HSCROLL); + if (rValue == "always") + nBits |= WB_HSCROLL; + else if (rValue == "automatic") + nBits |= WB_AUTOHSCROLL; + SetStyle(nBits); + } + else if (rKey.equalsL(RTL_CONSTASCII_STRINGPARAM("vscrollbar-policy"))) + { + WinBits nBits = GetStyle(); + nBits &= ~(WB_AUTOVSCROLL|WB_VSCROLL); + if (rValue == "always") + nBits |= WB_VSCROLL; + else if (rValue == "automatic") + nBits |= WB_AUTOVSCROLL; + SetStyle(nBits); + } else { SAL_INFO("vcl.layout", "unhandled property: " << rKey.getStr()); @@ -2073,9 +2093,7 @@ void Window::set_width_request(sal_Int32 nWidthRequest) Size Window::get_preferred_size() const { - WindowImpl *pWindowImpl = mpWindowImpl->mpBorderWindow ? mpWindowImpl->mpBorderWindow->mpWindowImpl : mpWindowImpl; - - Size aRet(pWindowImpl->mnWidthRequest, pWindowImpl->mnHeightRequest); + Size aRet(get_width_request(), get_height_request()); if (aRet.Width() == -1 || aRet.Height() == -1) { Size aOptimal = GetOptimalSize(WINDOWSIZE_PREFERRED); @@ -2291,4 +2309,16 @@ sal_Int32 Window::get_margin_bottom() const return pWindowImpl->mnMarginBottom; } +sal_Int32 Window::get_height_request() const +{ + WindowImpl *pWindowImpl = mpWindowImpl->mpBorderWindow ? mpWindowImpl->mpBorderWindow->mpWindowImpl : mpWindowImpl; + return pWindowImpl->mnHeightRequest; +} + +sal_Int32 Window::get_width_request() const +{ + WindowImpl *pWindowImpl = mpWindowImpl->mpBorderWindow ? mpWindowImpl->mpBorderWindow->mpWindowImpl : mpWindowImpl; + return pWindowImpl->mnWidthRequest; +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ commit e70cec4a4264987720f9b42a72a13fa1f84fde6d Author: Caolán McNamara <caol...@redhat.com> Date: Wed Oct 10 20:11:33 2012 +0100 callcatcher: update unused code list Change-Id: Ie903e37cccf98f1b91c05e87f067f2986b746590 diff --git a/oox/inc/oox/ole/axbinaryreader.hxx b/oox/inc/oox/ole/axbinaryreader.hxx index d88ea80..d63ccb1 100644 --- a/oox/inc/oox/ole/axbinaryreader.hxx +++ b/oox/inc/oox/ole/axbinaryreader.hxx @@ -112,9 +112,6 @@ public: /** Reads the next string property from the stream, if the respective flag in the property mask is set. */ void readStringProperty( ::rtl::OUString& orValue ); - /** Reads a string array property from the stream, if the respective flag - in the property mask is set. */ - void readStringArrayProperty( AxStringArray& orArray ); /** Reads the next GUID property from the stream, if the respective flag in the property mask is set. The GUID will be enclosed in braces. */ void readGuidProperty( ::rtl::OUString& orGuid ); @@ -138,9 +135,6 @@ public: /** Skips the next string property in the stream, if the respective flag in the property mask is set. */ inline void skipStringProperty() { readStringProperty( maDummyString ); } - /** Skips the next string array property in the stream, if the respective - flag in the property mask is set. */ - inline void skipStringArrayProperty() { readStringArrayProperty( maDummyStringArray ); } /** Skips the next GUID property in the stream, if the respective flag in the property mask is set. */ inline void skipGuidProperty() { readGuidProperty( maDummyString ); } diff --git a/oox/source/ole/axbinaryreader.cxx b/oox/source/ole/axbinaryreader.cxx index 70ba363..9b660c0 100644 --- a/oox/source/ole/axbinaryreader.cxx +++ b/oox/source/ole/axbinaryreader.cxx @@ -218,15 +218,6 @@ void AxBinaryPropertyReader::readStringProperty( OUString& orValue ) } } -void AxBinaryPropertyReader::readStringArrayProperty( AxStringArray& orArray ) -{ - if( startNextProperty() ) - { - sal_uInt32 nSize = maInStrm.readAligned< sal_uInt32 >(); - maLargeProps.push_back( ComplexPropVector::value_type( new StringArrayProperty( orArray, nSize ) ) ); - } -} - void AxBinaryPropertyReader::readGuidProperty( ::rtl::OUString& orGuid ) { if( startNextProperty() ) diff --git a/unusedcode.easy b/unusedcode.easy index 91d2995..9b9df27 100755 --- a/unusedcode.easy +++ b/unusedcode.easy @@ -1,7 +1,12 @@ FontSelectPattern::FontSelectPattern(PhysicalFontFace const&, Size const&, float, int, bool) +MorkParser::getRecordKeys4List(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__debug::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&) RelatedMultipart::getIds() SanExtensionImpl::setCertExtn(unsigned char*, unsigned int, unsigned char*, unsigned int, unsigned char) +ScCTB::ScCTB() +ScCondFormatHelper::GetExpression(ScCondFormatEntryType, int) +ScCondFormatItem::ScCondFormatItem(unsigned int) ScConditionalFormat::dumpInfo(rtl::OUStringBuffer&) const +ScDataBarSettingsDlg::ScDataBarSettingsDlg(Window*, ScDocument*, ScAddress const&) ScMenuFloatingWindow::getDoc() ScVbaFormat<ooo::vba::excel::XRange>::setNumberFormat(com::sun::star::lang::Locale, rtl::OUString const&) ScVbaFormat<ooo::vba::excel::XStyle>::getAddIndent() @@ -68,6 +73,7 @@ comphelper::detail::ConfigurationWrapper::setLocalizedPropertyValue(boost::share connectivity::file::OStatement_Base::reset() connectivity::mork::MQueryHelper::next() connectivity::mork::MQueryHelperResultEntry::insert(rtl::OString const&, rtl::OUString&) +connectivity::mork::OColumnAlias::OColumnAlias() connectivity::mozab::MQueryHelper::next() connectivity::sdbcx::OGroup::OGroup(rtl::OUString const&, unsigned char) connectivity::sdbcx::OGroup::OGroup(unsigned char)
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits