diff options
author | RĂ¼diger Timm <rt@openoffice.org> | 2008-12-16 16:42:03 +0000 |
---|---|---|
committer | RĂ¼diger Timm <rt@openoffice.org> | 2008-12-16 16:42:03 +0000 |
commit | 55793925843be0fdb248aff23e28e02c6e20b833 (patch) | |
tree | c64606f5245460509c396800394ccfcdbad06ee1 /sfx2/inc | |
parent | 5ce69216375b2ab068124a8dbb785e91e820460e (diff) |
CWS-TOOLING: integrate CWS alf01
2008-12-10 09:35:35 +0100 as r265152 : #158798# hide internal service
2008-12-09 15:29:11 +0100 cd r265098 : #158857# Check index correctly, must be zero
2008-12-09 12:06:21 +0100 mhu r265075 : #158857# Fixed compiler warning(s).
2008-12-09 11:09:34 +0100 cd r265064 : #158857# Added access to the window state configuration to support setting title of internal docking windows via <Module>WindowState.xcu files
2008-12-09 10:43:53 +0100 as r265063 : #158798# make resizes working better
2008-12-08 17:08:05 +0100 mhu r265010 : #158857# Fixed compiler warning(s).
2008-12-08 15:19:04 +0100 as r264999 : #158857# make WindowContentFactories.xcs part of installation set
2008-12-08 13:23:37 +0100 as r264993 : #158857# actualize size on child window
2008-12-08 10:14:05 +0100 cd r264977 : #158857# More helper functions and support to show/hide internal docking windows
2008-12-08 10:13:08 +0100 cd r264976 : #158857# SfxTitleDockingWindow now uses a factory for content window. Additional documentation for special IDs
2008-12-05 07:58:07 +0100 as r264885 : remove obsolete code (not referenced inside makefile any longer)
2008-12-04 18:57:08 +0100 mhu r264871 : #158857# Fixed compiler warning.
2008-12-04 16:13:12 +0100 mhu r264851 : #158857# Fixed compiler warning.
2008-12-04 15:46:45 +0100 as r264849 : solve merge conflicts right
2008-12-04 09:20:26 +0100 cd r264818 : 2008-12-04 09:19:32 +0100 cd r264817 : 2008-12-04 09:19:07 +0100 cd r264816 : Resolved conflicts
2008-12-04 09:13:27 +0100 cd r264815 : New window content factory manager with configuration support added.
2008-12-03 15:15:50 +0100 as r264791 : #158798# make sure tab window will show its content the first time its made visible
2008-12-03 10:59:30 +0100 as r264752 : #158798# new helper service for a dockable tab control window
2008-12-02 15:39:48 +0100 as r264707 : #158798# fix crash in MouseButtonDown for TabControl
2008-12-02 10:28:20 +0100 cd r264665 : #158857# Resolved conflicts on merge
2008-12-02 09:58:36 +0100 cd r264662 : #158857# Added predefined slots for the internal docking windows. Currently only ten predefined docking windows are possible
2008-12-01 09:44:49 +0100 cd r264586 : #158857# Fix problem with close the floated docking window with closer
2008-11-28 13:42:34 +0100 cd r264550 : #158857# First additional code to create a docking window. Very preliminary and not near to final code
2008-11-28 11:53:51 +0100 cd r264538 : #158857# First additional code to create a docking window. Very preliminary and not near to final code
2008-11-28 11:32:38 +0100 cd r264534 : #158857# First version of docking window factory and additional helper classes
2008-11-21 09:46:36 +0100 jsc r264110 : #158798# remove warnings
2008-11-20 17:59:07 +0100 pb r264090 : fix: #158798# tabcontainerwindow.obj and tabdialog.obj added
2008-11-20 17:55:57 +0100 pb r264089 : fix: #i158798# implementation of service TabContainerWindow
2008-11-20 17:52:52 +0100 pb r264088 : fix: #158798# implementation of the TabDialog and its Pages for the TabContainerWindow service
2008-11-20 17:51:26 +0100 pb r264087 : fix: #i158798# TabContainerWindow added
2008-11-20 17:50:11 +0100 pb r264086 : fix: #158798# tabcontainerwindow.obj and tabdialog.obj added
2008-11-20 17:47:16 +0100 pb r264085 : fix: #158798# new resource: TabDialog DLG_TABCONTAINER
2008-11-20 17:46:06 +0100 pb r264084 : fix: #i158798# added ids for TABCONTAINER...
2008-11-20 17:43:19 +0100 pb r264082 : fix: #158798# IMPLEMENTATION/SERVICENAME_TABCONTAINERWINDOW added
2008-11-20 17:43:00 +0100 pb r264081 : fix: #i158798# implementation of service TabContainerWindow
2008-11-20 17:40:42 +0100 pb r264080 : fix: #158798# TabContainerWindow.idl added
2008-11-20 17:36:57 +0100 pb r264079 : fix: #158798# new service TabContainerWindow
2008-11-20 17:33:05 +0100 pb r264077 : fix: #158798# show tooltip if only a image is shown
2008-11-18 15:10:08 +0100 jsc r263770 : CWS-TOOLING: rebase CWS alf01 to trunk@263288 (milestone: DEV300:m35)
2008-11-18 09:55:21 +0100 jsc r263749 : merge from trunk
2008-11-18 09:54:30 +0100 jsc r263748 : merge from trunk
2008-11-13 17:01:17 +0100 pl r263655 : fix some warnings
2008-10-21 15:38:37 +0200 pl r262572 : #i95201# add: EnablePage
2008-10-20 18:57:53 +0200 pl r262335 : #i95201# add: images for tab items
2008-10-20 17:26:50 +0200 pl r262330 : #i95201# remove old tools list
Diffstat (limited to 'sfx2/inc')
-rw-r--r-- | sfx2/inc/sfx2/cntids.hrc | 4 | ||||
-rw-r--r-- | sfx2/inc/sfx2/dockwin.hxx | 274 | ||||
-rw-r--r-- | sfx2/inc/sfx2/sfxsids.hrc | 39 |
3 files changed, 187 insertions, 130 deletions
diff --git a/sfx2/inc/sfx2/cntids.hrc b/sfx2/inc/sfx2/cntids.hrc index 169b6c3cb2..e73b65afc1 100644 --- a/sfx2/inc/sfx2/cntids.hrc +++ b/sfx2/inc/sfx2/cntids.hrc @@ -51,8 +51,10 @@ #define SID_DELETE (SID_SFX_START + 713) #define SID_INTERNET_ONLINE (SID_SFX_START + 1370) +// Don't let SID_CHAOS_END grow. Internal docking windows use the range between +// SID_CHAOS_END and SID_LIB_START!! Look into sfxsids.hrc for more information! #define SID_CHAOS_START 9000 -#define SID_CHAOS_END 9999 +#define SID_CHAOS_END 9799 #define SID_BCC (SID_CHAOS_START + 2) #define SID_CC (SID_CHAOS_START + 3) diff --git a/sfx2/inc/sfx2/dockwin.hxx b/sfx2/inc/sfx2/dockwin.hxx index 0e28542017..6437f2c725 100644 --- a/sfx2/inc/sfx2/dockwin.hxx +++ b/sfx2/inc/sfx2/dockwin.hxx @@ -1,129 +1,145 @@ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2008 by Sun Microsystems, Inc. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * $RCSfile: dockwin.hxx,v $ - * $Revision: 1.4 $ - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ -#ifndef _SFXDOCKWIN_HXX -#define _SFXDOCKWIN_HXX - -#include "sal/config.h" -#include "sfx2/dllapi.h" -#include "sal/types.h" -#ifndef _DOCKWIN_HXX //autogen -#include <vcl/dockwin.hxx> -#endif -#include <sfx2/childwin.hxx> - -class SfxSplitWindow; -class SfxDockingWindow_Impl; - -class SFX2_DLLPUBLIC SfxDockingWindow : public DockingWindow -{ -private: - Rectangle aInnerRect; - Rectangle aOuterRect; - SfxBindings* pBindings; - Size aFloatSize; - SfxChildWindow* pMgr; - SfxDockingWindow_Impl* pImp; - - SAL_DLLPRIVATE SfxDockingWindow(SfxDockingWindow &); // not defined - SAL_DLLPRIVATE void operator =(SfxDockingWindow &); // not defined - -protected: - SfxChildAlignment CalcAlignment(const Point& rPos, Rectangle& rRect ); - void CalcSplitPosition(const Point rPos, Rectangle& rRect, - SfxChildAlignment eAlign); - virtual Size CalcDockingSize(SfxChildAlignment); - virtual SfxChildAlignment - CheckAlignment(SfxChildAlignment,SfxChildAlignment); - - virtual void Resize(); - virtual BOOL PrepareToggleFloatingMode(); - virtual void ToggleFloatingMode(); - virtual void StartDocking(); - virtual BOOL Docking( const Point& rPos, Rectangle& rRect ); - virtual void EndDocking( const Rectangle& rRect, BOOL bFloatMode ); - virtual void Resizing( Size& rSize ); - virtual void Paint( const Rectangle& rRect ); - virtual BOOL Close(); - virtual void Move(); - -//#if 0 // _SOLAR__PRIVATE - SAL_DLLPRIVATE SfxChildWindow* GetChildWindow_Impl() { return pMgr; } -//#endif - -public: - SfxDockingWindow( SfxBindings *pBindings, - SfxChildWindow *pCW, - Window* pParent, - WinBits nWinBits=0); - SfxDockingWindow( SfxBindings *pBindings, - SfxChildWindow *pCW, - Window* pParent, - const ResId& rResId); - ~SfxDockingWindow(); - - void Initialize (SfxChildWinInfo* pInfo); - virtual void FillInfo(SfxChildWinInfo&) const; - virtual void StateChanged( StateChangedType nStateChange ); - - void SetDockingRects(const Rectangle& rOuter, const Rectangle& rInner) - { aInnerRect = rInner; aOuterRect = rOuter; } - const Rectangle& GetInnerRect() const { return aInnerRect; } - const Rectangle& GetOuterRect() const { return aOuterRect; } - SfxBindings& GetBindings() const { return *pBindings; } - USHORT GetType() const { return pMgr->GetType(); } - SfxChildAlignment GetAlignment() const { return pMgr->GetAlignment(); } - void SetAlignment(SfxChildAlignment eAlign) { pMgr->SetAlignment(eAlign); } - Size GetFloatingSize() const { return aFloatSize; } - void SetFloatingSize(const Size& rSize) { aFloatSize=rSize; } - - void SetMinOutputSizePixel( const Size& rSize ); - Size GetMinOutputSizePixel() const; - virtual long Notify( NotifyEvent& rNEvt ); - virtual void FadeIn( BOOL ); - void AutoShow( BOOL bShow = TRUE ); - DECL_LINK( TimerHdl, Timer* ); - -//#if 0 // _SOLAR__PRIVATE - SAL_DLLPRIVATE void Initialize_Impl(); - SAL_DLLPRIVATE USHORT GetWinBits_Impl() const; - SAL_DLLPRIVATE void SetItemSize_Impl( const Size& rSize ); - SAL_DLLPRIVATE void Disappear_Impl(); - SAL_DLLPRIVATE void Reappear_Impl(); - SAL_DLLPRIVATE BOOL IsAutoHide_Impl() const; - SAL_DLLPRIVATE BOOL IsPinned_Impl() const; - SAL_DLLPRIVATE void AutoShow_Impl( BOOL bShow = TRUE ); - SAL_DLLPRIVATE void Pin_Impl( BOOL bPinned ); - SAL_DLLPRIVATE SfxSplitWindow* GetSplitWindow_Impl() const; - SAL_DLLPRIVATE void ReleaseChildWindow_Impl(); -//#endif -}; - -#endif // #ifndef _SFXDOCKWIN_HXX - +/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: dockwin.hxx,v $
+ * $Revision: 1.4 $
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef _SFXDOCKWIN_HXX
+#define _SFXDOCKWIN_HXX
+
+#include "sal/config.h"
+#include "sal/types.h"
+#include <vcl/dockwin.hxx>
+
+#include <com/sun/star/uno/Reference.hxx>
+#include <com/sun/star/awt/XWindow.hpp>
+#include <com/sun/star/frame/XFrame.hpp>
+
+#include "sfx2/dllapi.h"
+#include <sfx2/childwin.hxx>
+
+class SfxSplitWindow;
+class SfxDockingWindow_Impl;
+
+void SFX2_DLLPUBLIC SAL_CALL SfxDockingWindowFactory( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& rFrame, const rtl::OUString& rDockingWindowName );
+bool SFX2_DLLPUBLIC SAL_CALL IsDockingWindowVisible( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& rFrame, const rtl::OUString& rDockingWindowName );
+
+class SFX2_DLLPUBLIC SfxDockingWindow : public DockingWindow
+{
+private:
+ Rectangle aInnerRect;
+ Rectangle aOuterRect;
+ SfxBindings* pBindings;
+ Size aFloatSize;
+ SfxChildWindow* pMgr;
+ SfxDockingWindow_Impl* pImp;
+
+ SAL_DLLPRIVATE SfxDockingWindow(SfxDockingWindow &); // not defined
+ SAL_DLLPRIVATE void operator =(SfxDockingWindow &); // not defined
+
+protected:
+ SfxChildAlignment CalcAlignment(const Point& rPos, Rectangle& rRect );
+ void CalcSplitPosition(const Point rPos, Rectangle& rRect,
+ SfxChildAlignment eAlign);
+ virtual Size CalcDockingSize(SfxChildAlignment);
+ virtual SfxChildAlignment
+ CheckAlignment(SfxChildAlignment,SfxChildAlignment);
+
+ virtual void Resize();
+ virtual BOOL PrepareToggleFloatingMode();
+ virtual void ToggleFloatingMode();
+ virtual void StartDocking();
+ virtual BOOL Docking( const Point& rPos, Rectangle& rRect );
+ virtual void EndDocking( const Rectangle& rRect, BOOL bFloatMode );
+ virtual void Resizing( Size& rSize );
+ virtual void Paint( const Rectangle& rRect );
+ virtual BOOL Close();
+ virtual void Move();
+
+//#if 0 // _SOLAR__PRIVATE
+ SAL_DLLPRIVATE SfxChildWindow* GetChildWindow_Impl() { return pMgr; }
+//#endif
+
+public:
+ SfxDockingWindow( SfxBindings *pBindings,
+ SfxChildWindow *pCW,
+ Window* pParent,
+ WinBits nWinBits=0);
+ SfxDockingWindow( SfxBindings *pBindings,
+ SfxChildWindow *pCW,
+ Window* pParent,
+ const ResId& rResId);
+ ~SfxDockingWindow();
+
+ void Initialize (SfxChildWinInfo* pInfo);
+ virtual void FillInfo(SfxChildWinInfo&) const;
+ virtual void StateChanged( StateChangedType nStateChange );
+
+ void SetDockingRects(const Rectangle& rOuter, const Rectangle& rInner)
+ { aInnerRect = rInner; aOuterRect = rOuter; }
+ const Rectangle& GetInnerRect() const { return aInnerRect; }
+ const Rectangle& GetOuterRect() const { return aOuterRect; }
+ SfxBindings& GetBindings() const { return *pBindings; }
+ USHORT GetType() const { return pMgr->GetType(); }
+ SfxChildAlignment GetAlignment() const { return pMgr->GetAlignment(); }
+ void SetAlignment(SfxChildAlignment eAlign) { pMgr->SetAlignment(eAlign); }
+ Size GetFloatingSize() const { return aFloatSize; }
+ void SetFloatingSize(const Size& rSize) { aFloatSize=rSize; }
+
+ void SetMinOutputSizePixel( const Size& rSize );
+ Size GetMinOutputSizePixel() const;
+ virtual long Notify( NotifyEvent& rNEvt );
+ virtual void FadeIn( BOOL );
+ void AutoShow( BOOL bShow = TRUE );
+ DECL_LINK( TimerHdl, Timer* );
+
+//#if 0 // _SOLAR__PRIVATE
+ SAL_DLLPRIVATE void Initialize_Impl();
+ SAL_DLLPRIVATE USHORT GetWinBits_Impl() const;
+ SAL_DLLPRIVATE void SetItemSize_Impl( const Size& rSize );
+ SAL_DLLPRIVATE void Disappear_Impl();
+ SAL_DLLPRIVATE void Reappear_Impl();
+ SAL_DLLPRIVATE BOOL IsAutoHide_Impl() const;
+ SAL_DLLPRIVATE BOOL IsPinned_Impl() const;
+ SAL_DLLPRIVATE void AutoShow_Impl( BOOL bShow = TRUE );
+ SAL_DLLPRIVATE void Pin_Impl( BOOL bPinned );
+ SAL_DLLPRIVATE SfxSplitWindow* GetSplitWindow_Impl() const;
+ SAL_DLLPRIVATE void ReleaseChildWindow_Impl();
+//#endif
+};
+
+class SfxDockingWrapper : public SfxChildWindow
+{
+ public:
+ SfxDockingWrapper( Window* pParent ,
+ USHORT nId ,
+ SfxBindings* pBindings ,
+ SfxChildWinInfo* pInfo );
+
+ SFX_DECL_CHILDWINDOW(SfxDockingWrapper);
+};
+
+#endif // #ifndef _SFXDOCKWIN_HXX
diff --git a/sfx2/inc/sfx2/sfxsids.hrc b/sfx2/inc/sfx2/sfxsids.hrc index 38960191ac..cb55b87dc1 100644 --- a/sfx2/inc/sfx2/sfxsids.hrc +++ b/sfx2/inc/sfx2/sfxsids.hrc @@ -43,6 +43,45 @@ #include <sfx2/cntids.hrc> #endif +// Please be careful: +// Changing just one part here doesn't add new +// docking windows automatically! +// +#define SID_DOCKWIN_START 9800 +#define SID_DOCKWIN_0 9800 +#define SID_DOCKWIN_1 9801 +#define SID_DOCKWIN_2 9802 +#define SID_DOCKWIN_3 9803 +#define SID_DOCKWIN_4 9804 +#define SID_DOCKWIN_5 9805 +#define SID_DOCKWIN_6 9806 +#define SID_DOCKWIN_7 9807 +#define SID_DOCKWIN_8 9808 +#define SID_DOCKWIN_9 9809 +/* +#define SID_DOCKWIN_10 9810 +#define SID_DOCKWIN_11 9811 +#define SID_DOCKWIN_12 9812 +#define SID_DOCKWIN_13 9813 +#define SID_DOCKWIN_14 9814 +#define SID_DOCKWIN_15 9815 +#define SID_DOCKWIN_16 9816 +#define SID_DOCKWIN_17 9817 +#define SID_DOCKWIN_18 9818 +#define SID_DOCKWIN_19 9819 +#define SID_DOCKWIN_20 9820 +#define SID_DOCKWIN_21 9821 +#define SID_DOCKWIN_22 9822 +#define SID_DOCKWIN_23 9823 +#define SID_DOCKWIN_24 9824 +#define SID_DOCKWIN_25 9825 +#define SID_DOCKWIN_26 9826 +#define SID_DOCKWIN_27 9827 +#define SID_DOCKWIN_28 9828 +#define SID_DOCKWIN_29 9829 +*/ +#define SID_DOCKWIN_END 9999 + #define SID_LIB_START 10000 #define SID_LIB_END 19999 |