Kaydet (Commit) 877ad1ec authored tarafından Vladimir Glazounov's avatar Vladimir Glazounov

INTEGRATION: CWS presenterscreen (1.2.4); FILE MERGED

2008/04/23 13:18:58 af 1.2.4.4: #i18486# Made support for window resizing a debug feature.  Replaced by switching slides with mouse clicks.
2008/04/23 12:01:17 af 1.2.4.3: #i18486# Notify layout listeners when window manager is disposed.
2008/04/22 08:26:01 af 1.2.4.2: RESYNC: (1.2-1.3); FILE MERGED
2008/04/16 16:23:20 af 1.2.4.1: #i18486# Changed layouting.
üst b9c913a9
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* $RCSfile: PresenterWindowManager.hxx,v $ * $RCSfile: PresenterWindowManager.hxx,v $
* *
* $Revision: 1.3 $ * $Revision: 1.4 $
* *
* This file is part of OpenOffice.org. * This file is part of OpenOffice.org.
* *
...@@ -33,6 +33,7 @@ ...@@ -33,6 +33,7 @@
#define SDEXT_PRESENTER_PRESENTER_WINDOW_MANAGER_HXX #define SDEXT_PRESENTER_PRESENTER_WINDOW_MANAGER_HXX
#include "PresenterPaneContainer.hxx" #include "PresenterPaneContainer.hxx"
#include "PresenterTheme.hxx"
#include <com/sun/star/awt/Point.hpp> #include <com/sun/star/awt/Point.hpp>
#include <com/sun/star/awt/XFocusListener.hpp> #include <com/sun/star/awt/XFocusListener.hpp>
#include <com/sun/star/awt/XGraphics.hpp> #include <com/sun/star/awt/XGraphics.hpp>
...@@ -41,6 +42,7 @@ ...@@ -41,6 +42,7 @@
#include <com/sun/star/awt/XWindow.hpp> #include <com/sun/star/awt/XWindow.hpp>
#include <com/sun/star/awt/XWindowListener.hpp> #include <com/sun/star/awt/XWindowListener.hpp>
#include <com/sun/star/beans/XPropertySet.hpp> #include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/document/XEventListener.hpp>
#include <com/sun/star/drawing/framework/XPane.hpp> #include <com/sun/star/drawing/framework/XPane.hpp>
#include <com/sun/star/rendering/XBitmap.hpp> #include <com/sun/star/rendering/XBitmap.hpp>
#include <com/sun/star/rendering/XSprite.hpp> #include <com/sun/star/rendering/XSprite.hpp>
...@@ -90,6 +92,7 @@ public: ...@@ -90,6 +92,7 @@ public:
void SAL_CALL disposing (void); void SAL_CALL disposing (void);
void SetParentPane (const css::uno::Reference<css::drawing::framework::XPane>& rxPane); void SetParentPane (const css::uno::Reference<css::drawing::framework::XPane>& rxPane);
css::uno::Reference<css::awt::XWindow> GetParentWidnow (void) const;
void SetTheme (const ::boost::shared_ptr<PresenterTheme>& rpTheme); void SetTheme (const ::boost::shared_ptr<PresenterTheme>& rpTheme);
void NotifyPaneCreation (const PresenterPaneContainer::SharedPaneDescriptor& rpDescriptor); void NotifyPaneCreation (const PresenterPaneContainer::SharedPaneDescriptor& rpDescriptor);
void NotifyViewCreation (const css::uno::Reference<css::drawing::framework::XView>& rxView); void NotifyViewCreation (const css::uno::Reference<css::drawing::framework::XView>& rxView);
...@@ -100,7 +103,7 @@ public: ...@@ -100,7 +103,7 @@ public:
const double nRelativeWidth, const double nRelativeWidth,
const double nRelativeHeight); const double nRelativeHeight);
void SetPanePosSizeAbsolute ( void SetPanePosSizeAbsolute (
const css::uno::Reference<css::drawing::framework::XResourceId>& rxPaneId, const ::rtl::OUString& rsPaneURL,
const double nX, const double nX,
const double nY, const double nY,
const double nWidth, const double nWidth,
...@@ -111,6 +114,21 @@ public: ...@@ -111,6 +114,21 @@ public:
void Update (void); void Update (void);
void Layout (void); void Layout (void);
enum LayoutMode { Standard, Notes, Generic };
void SetLayoutMode (const LayoutMode eMode);
LayoutMode GetLayoutMode (void) const;
void SetSlideSorterState (bool bIsActive);
bool IsSlideSorterActive (void) const;
void SetHelpViewState (bool bIsActive);
bool IsHelpViewActive (void) const;
void AddLayoutListener (
const css::uno::Reference<css::document::XEventListener>& rxListener);
void RemoveLayoutListener (
const css::uno::Reference<css::document::XEventListener>& rxListener);
// XWindowListener // XWindowListener
virtual void SAL_CALL windowResized (const css::awt::WindowEvent& rEvent) virtual void SAL_CALL windowResized (const css::awt::WindowEvent& rEvent)
...@@ -177,14 +195,22 @@ private: ...@@ -177,14 +195,22 @@ private:
*/ */
bool mbIsLayouting; bool mbIsLayouting;
::boost::shared_ptr<PresenterTheme> mpTheme; ::boost::shared_ptr<PresenterTheme> mpTheme;
css::uno::Reference<css::rendering::XBitmap> mxBackgroundBitmap; SharedBitmapDescriptor mpBackgroundBitmap;
css::util::Color maBackgroundColor; css::uno::Reference<css::rendering::XBitmap> mxScaledBackgroundBitmap;
css::util::Color maPaneBackgroundColor; css::util::Color maPaneBackgroundColor;
css::uno::Reference<css::rendering::XPolyPolygon2D> mxClipPolygon; css::uno::Reference<css::rendering::XPolyPolygon2D> mxClipPolygon;
LayoutMode meLayoutMode;
void PaintChildren (const css::awt::PaintEvent& rEvent) const; bool mbIsSlideSorterActive;
bool mbIsHelpViewActive;
typedef ::std::vector<css::uno::Reference<css::document::XEventListener> >
LayoutListenerContainer;
LayoutListenerContainer maLayoutListeners;
bool mbIsMouseClickPending;
bool PaintChildren (const css::awt::PaintEvent& rEvent) const;
void UpdateWindowSize (const css::uno::Reference<css::awt::XWindow>& rxBorderWindow); void UpdateWindowSize (const css::uno::Reference<css::awt::XWindow>& rxBorderWindow);
void PaintBackground (const css::awt::Rectangle& rUpdateBox); void PaintBackground (const css::awt::Rectangle& rUpdateBox);
void ProvideBackgroundBitmap (void);
css::uno::Reference<css::rendering::XPolyPolygon2D> CreateClipPolyPolygon (void) const; css::uno::Reference<css::rendering::XPolyPolygon2D> CreateClipPolyPolygon (void) const;
void ToTop (); void ToTop ();
...@@ -194,6 +220,26 @@ private: ...@@ -194,6 +220,26 @@ private:
void Invalidate (void); void Invalidate (void);
void LayoutStandardMode (void);
void LayoutNotesMode (void);
void LayoutUnknownMode (void);
void LayoutSlideSorterMode (void);
void LayoutHelpMode (void);
/** Layout the tool bar and return its outer bounding box.
*/
css::geometry::RealRectangle2D LayoutToolBar (void);
css::awt::Size CalculatePaneSize (
const double nOuterWidth,
const ::rtl::OUString& rsPaneURL);
/** Notify changes of the layout mode and of the slide sorter state.
*/
void NotifyLayoutModeChange (void);
void NotifyDisposing (void);
void ThrowIfDisposed (void) const throw (::com::sun::star::lang::DisposedException); void ThrowIfDisposed (void) const throw (::com::sun::star::lang::DisposedException);
}; };
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment