diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2004-05-10 14:55:02 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2004-05-10 14:55:02 +0000 |
commit | b296c410a7e781800ab5c074f3e4846d0210741a (patch) | |
tree | a904ab152807ccd6d2ade50df54d617b4447eb9b /vcl | |
parent | 9ecdf21d16578d9b100edaa6b284f444e52d51f0 (diff) |
INTEGRATION: CWS nwf (1.2.2); FILE MERGED
2004/04/26 14:09:53 pl 1.2.2.5: #116502# move for child frames did not work correctly
2004/03/15 17:08:26 pl 1.2.2.4: improve initial frame size
2004/03/10 16:41:08 pl 1.2.2.3: add: visibility notify
2004/03/04 15:44:26 pl 1.2.2.2: #115278# make plugged mode work
2004/02/27 15:46:29 pl 1.2.2.1: #i25181# send simple ExtText input as keyinput/release
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/unx/inc/plugins/gtk/gtkframe.hxx | 35 |
1 files changed, 29 insertions, 6 deletions
diff --git a/vcl/unx/inc/plugins/gtk/gtkframe.hxx b/vcl/unx/inc/plugins/gtk/gtkframe.hxx index 51049cc84fe9..e9ad2dca7846 100644 --- a/vcl/unx/inc/plugins/gtk/gtkframe.hxx +++ b/vcl/unx/inc/plugins/gtk/gtkframe.hxx @@ -2,9 +2,9 @@ * * $RCSfile: gtkframe.hxx,v $ * - * $Revision: 1.2 $ + * $Revision: 1.3 $ * - * last change: $Author: obo $ $Date: 2004-02-20 08:57:22 $ + * last change: $Author: hr $ $Date: 2004-05-10 15:55:02 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -64,6 +64,7 @@ #include <prex.h> #include <gtk/gtk.h> +#include <gdk/gdk.h> #include <gdk/gdkx.h> #include <gdk/gdkkeysyms.h> #include <postx.h> @@ -94,6 +95,8 @@ class GtkSalFrame : public SalFrame }; GtkWindow* m_pWindow; + GdkWindow* m_pForeignParent; + GdkWindow* m_pForeignTopLevel; ULONG m_nStyle; GtkFixed* m_pFixedContainer; GtkSalFrame* m_pParent; @@ -103,12 +106,14 @@ class GtkSalFrame : public SalFrame GraphicsHolder m_aGraphics[ nMaxGraphics ]; USHORT m_nKeyModifiers; GdkCursor *m_pCurrentCursor; + GdkVisibilityState m_nVisibility; int m_nSavedScreenSaverTimeout; bool m_bResizeable; bool m_bSingleAltPress; bool m_bDefaultPos; bool m_bDefaultSize; bool m_bSendModChangeOnRelease; + bool m_bWasPreedit; void Init( SalFrame* pParent, ULONG nStyle ); void Init( SystemParentData* pSysData ); @@ -128,6 +133,7 @@ class GtkSalFrame : public SalFrame static gboolean signalState( GtkWidget*, GdkEvent*, gpointer ); static gboolean signalScroll( GtkWidget*, GdkEvent*, gpointer ); static gboolean signalCrossing( GtkWidget*, GdkEventCrossing*, gpointer ); + static gboolean signalVisibility( GtkWidget*, GdkEventVisibility*, gpointer ); static void signalIMCommit( GtkIMContext*, gchar*, gpointer ); static gboolean signalIMDeleteSurrounding( GtkIMContext*, gint, gint, gpointer ); static void signalIMPreeditChanged( GtkIMContext*, gpointer ); @@ -143,6 +149,19 @@ class GtkSalFrame : public SalFrame void setAutoLock( bool bLock ); void setScreenSaverTimeout( int nTimeout ); + GdkNativeWindow findTopLevelSystemWindow( GdkNativeWindow aWindow ); + + static int m_nFloats; + + bool isFloatGrabWindow() const + { + return + (m_nStyle & SAL_FRAME_STYLE_FLOAT) && // only a float can be floatgrab + !(m_nStyle & SAL_FRAME_STYLE_TOOLTIP); // tool tips are not + } + + Size calcDefaultSize(); + public: GtkSalFrame( SalFrame* pParent, ULONG nStyle ); GtkSalFrame( SystemParentData* pSysData ); @@ -151,10 +170,14 @@ public: // and false else; if true was returned the event should // be swallowed bool Dispatch( const XEvent* pEvent ); - void grabPointer( BOOL bGrab ); - - GtkWindow* getWindow() const { return m_pWindow; } - GtkFixed* getFixedContainer() const { return m_pFixedContainer; } + void grabPointer( BOOL bGrab, BOOL bOwnerEvents = FALSE ); + + GtkWindow* getWindow() const { return m_pWindow; } + GtkFixed* getFixedContainer() const { return m_pFixedContainer; } + GdkWindow* getForeignParent() const { return m_pForeignParent; } + GdkWindow* getForeignTopLevel() const { return m_pForeignTopLevel; } + GdkVisibilityState getVisibilityState() const + { return m_nVisibility; } virtual ~GtkSalFrame(); |