diff options
author | Caolán McNamara <caolanm@redhat.com> | 2014-12-16 14:07:08 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2014-12-17 12:35:54 +0000 |
commit | 48c15285c52f6554f1aadab6068c076c2139ef89 (patch) | |
tree | 35360eb56a9177528d0de813e20bc5bdc1454a79 /include/vcl/dockwin.hxx | |
parent | f4804a6cf1fa2a1941f43829a9801638bd456e2c (diff) |
implement loading docking windows from .ui format
Change-Id: I90375232aefbe40412614ca0f30ba467cf393f2e
Diffstat (limited to 'include/vcl/dockwin.hxx')
-rw-r--r-- | include/vcl/dockwin.hxx | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/include/vcl/dockwin.hxx b/include/vcl/dockwin.hxx index f683cc83dda2..caf25cd9a782 100644 --- a/include/vcl/dockwin.hxx +++ b/include/vcl/dockwin.hxx @@ -22,6 +22,7 @@ #include <tools/solar.h> #include <vcl/dllapi.h> +#include <vcl/builder.hxx> #include <vcl/floatwin.hxx> #include <vector> @@ -222,7 +223,9 @@ public: // - DockingWindow - -class VCL_DLLPUBLIC DockingWindow : public vcl::Window +class VCL_DLLPUBLIC DockingWindow + : public vcl::Window + , public VclBuilderContainer { class ImplData; private: @@ -256,9 +259,15 @@ private: mbPinned:1, mbRollUp:1, mbDockBtn:1, - mbHideBtn:1; + mbHideBtn:1, + mbIsDefferedInit:1, + mbIsCalculatingInitialLayoutSize:1, + mbInitialLayoutDone:1; + + vcl::Window* mpDialogParent; SAL_DLLPRIVATE void ImplInitDockingWindowData(); + SAL_DLLPRIVATE void setPosSizeOnContainee(Size aSize, Window &rBox); // Copy assignment is forbidden and not implemented. SAL_DLLPRIVATE DockingWindow (const DockingWindow &); @@ -270,16 +279,26 @@ protected: SAL_DLLPRIVATE void ImplInitSettings(); SAL_DLLPRIVATE void ImplLoadRes( const ResId& rResId ); + SAL_DLLPRIVATE void DoInitialLayout(); + + void loadUI(vcl::Window* pParent, const OString& rID, const OUString& rUIXMLDescription); + public: - SAL_DLLPRIVATE bool ImplStartDocking( const Point& rPos ); + bool isLayoutEnabled() const; + void setOptimalLayoutSize(); + bool isCalculatingInitialLayoutSize() const { return mbIsCalculatingInitialLayoutSize; } + SAL_DLLPRIVATE bool ImplStartDocking( const Point& rPos ); + SAL_DLLPRIVATE bool isDeferredInit() const { return mbIsDefferedInit; } + void doDeferredInit(WinBits nBits); protected: DockingWindow( WindowType nType ); public: - DockingWindow( vcl::Window* pParent, WinBits nStyle = WB_STDDOCKWIN ); - DockingWindow( vcl::Window* pParent, const ResId& rResId ); - virtual ~DockingWindow(); + DockingWindow(vcl::Window* pParent, WinBits nStyle = WB_STDDOCKWIN); + DockingWindow(vcl::Window* pParent, const ResId& rResId); + DockingWindow(vcl::Window* pParent, const OUString& rID, const OUString& rUIXMLDescription); + virtual ~DockingWindow(); virtual void StartDocking(); virtual bool Docking( const Point& rPos, Rectangle& rRect ); @@ -339,6 +358,9 @@ public: Size GetSizePixel() const SAL_OVERRIDE; void SetOutputSizePixel( const Size& rNewSize ) SAL_OVERRIDE; Size GetOutputSizePixel() const; + + virtual void SetText( const OUString& rStr ) SAL_OVERRIDE; + virtual OUString GetText() const SAL_OVERRIDE; }; inline void DockingWindow::SetPin( bool bPin ) |