diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2003-03-27 16:59:30 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2003-03-27 16:59:30 +0000 |
commit | 2f382d6c2579a25c68dbd121af7f1f5dc7ec9852 (patch) | |
tree | 8c6c555a872e6812cd3f76de570b06683526ad14 /vcl/unx/inc | |
parent | f7a0cc83bb59efd6abd820bd78acc75e8313ea4e (diff) |
MWS_SRX644: migrate branch mws_srx644 -> HEAD
Diffstat (limited to 'vcl/unx/inc')
-rw-r--r-- | vcl/unx/inc/dtint.hxx | 8 | ||||
-rw-r--r-- | vcl/unx/inc/saldata.hxx | 6 | ||||
-rw-r--r-- | vcl/unx/inc/saldisp.hxx | 17 | ||||
-rw-r--r-- | vcl/unx/inc/salframe.h | 20 | ||||
-rw-r--r-- | vcl/unx/inc/salgdi.h | 6 | ||||
-rw-r--r-- | vcl/unx/inc/strhelper.hxx | 77 | ||||
-rw-r--r-- | vcl/unx/inc/wmadaptor.hxx | 34 | ||||
-rw-r--r-- | vcl/unx/inc/xfont.hxx | 6 |
8 files changed, 147 insertions, 27 deletions
diff --git a/vcl/unx/inc/dtint.hxx b/vcl/unx/inc/dtint.hxx index 2835a50f6a4a..493e416b4e58 100644 --- a/vcl/unx/inc/dtint.hxx +++ b/vcl/unx/inc/dtint.hxx @@ -2,9 +2,9 @@ * * $RCSfile: dtint.hxx,v $ * - * $Revision: 1.5 $ + * $Revision: 1.6 $ * - * last change: $Author: pl $ $Date: 2002-06-10 17:27:27 $ + * last change: $Author: hr $ $Date: 2003-03-27 17:58:30 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -73,6 +73,7 @@ #include <tools/string.hxx> #endif #include <tools/color.hxx> +#include <font.hxx> class SalFrame; class SalBitmap; @@ -124,6 +125,9 @@ protected: void GetSystemLook( const char* pCommand, AllSettings& rSettings ); bool StartSystemLookProcess( const char* pCommand ); + Color parseColor( const ByteString& ); + Font parseFont( const ByteString& ); + public: static DtIntegrator* CreateDtIntegrator( SalFrame* ); diff --git a/vcl/unx/inc/saldata.hxx b/vcl/unx/inc/saldata.hxx index 831a308c4129..31b85770fb5c 100644 --- a/vcl/unx/inc/saldata.hxx +++ b/vcl/unx/inc/saldata.hxx @@ -2,9 +2,9 @@ * * $RCSfile: saldata.hxx,v $ * - * $Revision: 1.3 $ + * $Revision: 1.4 $ * - * last change: $Author: svesik $ $Date: 2002-03-18 01:23:42 $ + * last change: $Author: hr $ $Date: 2003-03-27 17:58:31 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -94,7 +94,7 @@ typedef SIG_FUNC_TYP *SIG_TYP; DECLARE_LIST( SalDisplays, SalDisplay* ) -#if defined SCO || defined LINUX || defined NETBSD || defined AIX || defined HPUX || defined FREEBSD || defined IRIX +#if defined SCO || defined LINUX || defined NETBSD || defined AIX || defined HPUX || defined FREEBSD #include <pthread.h> #else typedef unsigned int pthread_t; diff --git a/vcl/unx/inc/saldisp.hxx b/vcl/unx/inc/saldisp.hxx index 6ba5f39ef32f..9deb3362224c 100644 --- a/vcl/unx/inc/saldisp.hxx +++ b/vcl/unx/inc/saldisp.hxx @@ -2,9 +2,9 @@ * * $RCSfile: saldisp.hxx,v $ * - * $Revision: 1.14 $ + * $Revision: 1.15 $ * - * last change: $Author: pl $ $Date: 2002-09-18 14:24:03 $ + * last change: $Author: hr $ $Date: 2003-03-27 17:58:31 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -263,22 +263,24 @@ class SalXLib timeval Timeout_; ULONG nTimeoutMS_; + int pTimeoutFDS_[2]; + int nStateOfYield_; BOOL bWasXError_; BOOL bIgnoreXErrors_; + int nFDs_; - fd_set *pReadFDS_; - fd_set *pExceptionFDS_; + fd_set aReadFDS_; + fd_set aExceptionFDS_; YieldEntry *pYieldEntries_; - void CheckTimeout(); - public: SalXLib(); ~SalXLib(); void Init( int *pArgc, char *ppArgv[] ); void Yield( BOOL bWait ); + void Wakeup(); void Insert( int fd, void* data, YieldFunc pending, @@ -294,6 +296,8 @@ public: inline void StartTimer( ULONG nMS ); inline void StopTimer(); + + bool CheckTimeout( bool bExecuteTimers = true ); }; // -=-= SalXEvent =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= @@ -478,6 +482,7 @@ public: ULONG GetImageDepths() const { return nImageDepths_; } ULONG SupportsShm() const { return nSharedImages_; } void DisableShm() { nSharedImages_ /= 2; } // = 0 + void GetScreenFontResolution( long& rDPIX, long& rDPIY ) const; BOOL MouseCaptured( const SalFrameData *pFrameData ) const { return pCapture_ == pFrameData; } diff --git a/vcl/unx/inc/salframe.h b/vcl/unx/inc/salframe.h index 0f760b428ccb..4792a62aa60f 100644 --- a/vcl/unx/inc/salframe.h +++ b/vcl/unx/inc/salframe.h @@ -2,9 +2,9 @@ * * $RCSfile: salframe.h,v $ * - * $Revision: 1.27 $ + * $Revision: 1.28 $ * - * last change: $Author: sb $ $Date: 2002-11-18 11:56:57 $ + * last change: $Author: hr $ $Date: 2003-03-27 17:58:31 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -131,6 +131,8 @@ class SalFrameData static Bool checkKeyReleaseForRepeat( Display*, XEvent*, XPointer pSalFrameData ); STDAPI( SalFrameData ); + static SalFrame* s_pSaveYourselfFrame; + SalFrame *pNextFrame_; // pointer to next frame SalFrame *pFrame_; @@ -160,13 +162,14 @@ class SalFrameData USHORT nKeyCode_; // last key code USHORT nKeyState_; // last key state int nCompose_; // compose state + bool mbKeyMenu; + bool mbSendExtKeyModChange; + USHORT mnExtKeyMod; int nShowState_; // show state - int nMaxWidth_; // client max width - int nMaxHeight_; // client max height int nWidth_; // client width int nHeight_; // client height - Rectangle aRestoreFullScreen_; + Rectangle maRestorePosSize; ULONG nStyle_; BOOL bAlwaysOnTop_; BOOL bViewable_; @@ -177,7 +180,8 @@ class SalFrameData int nScreenSaversTimeout_; Timer maResizeTimer; - Rectangle maResizeBuffer; + bool mbMoved; + bool mbSized; Rectangle maPaintRegion; Timer maAlwaysOnTopRaiseTimer; @@ -187,6 +191,8 @@ class SalFrameData int mnDecorationFlags; bool mbMaximizedVert; bool mbMaximizedHorz; + bool mbShaded; + bool mbFullScreen; // icon id int mnIconID; @@ -210,7 +216,7 @@ class SalFrameData void Minimize(); void Maximize(); void Restore(); - void SetWindowGravity (int nGravity, const Point& rPosition) const; + void SetWindowGravity (int nGravity ) const; void RestackChildren( XLIB_Window* pTopLevelWindows, int nTopLevelWindows ); void RestackChildren(); diff --git a/vcl/unx/inc/salgdi.h b/vcl/unx/inc/salgdi.h index cb2bfcf221eb..3f2cddc451ce 100644 --- a/vcl/unx/inc/salgdi.h +++ b/vcl/unx/inc/salgdi.h @@ -2,9 +2,9 @@ * * $RCSfile: salgdi.h,v $ * - * $Revision: 1.21 $ + * $Revision: 1.22 $ * - * last change: $Author: pl $ $Date: 2002-11-14 15:57:28 $ + * last change: $Author: hr $ $Date: 2003-03-27 17:58:32 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -244,7 +244,7 @@ protected: void DrawServerAAFontString( const ServerFontLayout& ); bool DrawServerAAForcedString( const ServerFontLayout& ); - SalLayout* LayoutText( ImplLayoutArgs&, int nFallbackLevel ); + SalLayout* GetTextLayout( ImplLayoutArgs&, int nFallbackLevel ); public: SalGraphicsData(); ~SalGraphicsData(); diff --git a/vcl/unx/inc/strhelper.hxx b/vcl/unx/inc/strhelper.hxx new file mode 100644 index 000000000000..59aaf8e04ed8 --- /dev/null +++ b/vcl/unx/inc/strhelper.hxx @@ -0,0 +1,77 @@ +/************************************************************************* + * + * $RCSfile: strhelper.hxx,v $ + * + * $Revision: 1.3 $ + * + * last change: $Author: hr $ $Date: 2003-03-27 17:58:32 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SV_STRHELPER_HXX +#define _SV_STRHELPER_HXX +#ifndef _STRING_HXX +#include <tools/string.hxx> +#endif + +String GetCommandLineToken( int, const String& ); +// gets one token of a unix command line style string +// doublequote, singlequote and singleleftquote protect their respective +// contents + +int GetCommandLineTokenCount( const String& ); +// returns number of tokens (zero if empty or whitespace only) + +String WhitespaceToSpace( const String&, BOOL bProtect = TRUE ); + +#endif diff --git a/vcl/unx/inc/wmadaptor.hxx b/vcl/unx/inc/wmadaptor.hxx index d925aa50ee1f..ffa1461f5ea4 100644 --- a/vcl/unx/inc/wmadaptor.hxx +++ b/vcl/unx/inc/wmadaptor.hxx @@ -2,9 +2,9 @@ * * $RCSfile: wmadaptor.hxx,v $ * - * $Revision: 1.15 $ + * $Revision: 1.16 $ * - * last change: $Author: pl $ $Date: 2002-06-10 17:27:27 $ + * last change: $Author: hr $ $Date: 2003-03-27 17:58:32 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -101,6 +101,7 @@ public: NET_WM_STATE_SKIP_TASKBAR, NET_WM_STATE_STAYS_ON_TOP, NET_WM_STATE_STICKY, + NET_WM_STATE_FULLSCREEN, NET_WM_WINDOW_TYPE, NET_WM_WINDOW_TYPE_DESKTOP, NET_WM_WINDOW_TYPE_DIALOG, @@ -108,6 +109,8 @@ public: NET_WM_WINDOW_TYPE_MENU, NET_WM_WINDOW_TYPE_NORMAL, NET_WM_WINDOW_TYPE_TOOLBAR, + NET_WM_WINDOW_TYPE_SPLASH, + NET_WM_WINDOW_TYPE_UTILITY, NET_NUMBER_OF_DESKTOPS, NET_CURRENT_DESKTOP, NET_WORKAREA, @@ -165,7 +168,8 @@ public: windowType_Normal, windowType_ModalDialogue, windowType_ModelessDialogue, - windowType_OverrideRedirect + windowType_OverrideRedirect, + windowType_Splash }; protected: @@ -230,6 +234,20 @@ public: * use maximizeFrame( pFrame, false, false ) */ virtual void maximizeFrame( SalFrame* pFrame, bool bHorizontal = true, bool bVertical = true ) const; + /* + * start/stop fullscreen mode on a frame + */ + virtual void showFullScreen( SalFrame* pFrame, bool bFullScreen ) const; + + /* + * tells whether fullscreen mode is supported by WM + */ + bool supportsFullScreen() const { return m_aWMAtoms[ NET_WM_STATE_FULLSCREEN ] != 0; } + + /* + * shade/unshade frame + */ + virtual void shade( SalFrame* pFrame, bool bToShaded ) const; /* * set hints what decoration is needed; @@ -238,6 +256,11 @@ public: virtual void setFrameTypeAndDecoration( SalFrame* pFrame, WMWindowType eType, int nDecorationFlags, SalFrame* pTransientFrame = NULL ) const; /* + * tells whether there is WM support for splash screens + */ + bool supportsSplash() const { return m_aWMAtoms[ NET_WM_WINDOW_TYPE_SPLASH ] != 0; } + + /* * enables always on top or equivalent if possible */ virtual void enableAlwaysOnTop( SalFrame* pFrame, bool bEnable ) const; @@ -248,6 +271,11 @@ public: bool isAlwaysOnTopOK() const { return m_bEnableAlwaysOnTopWorks; } /* + * handle WM messages (especially WM state changes) + */ + virtual int handlePropertyNotify( SalFrame* pFrame, XPropertyEvent* pEvent ) const; + + /* * gets a WM atom */ Atom getAtom( WMAtom eAtom ) const diff --git a/vcl/unx/inc/xfont.hxx b/vcl/unx/inc/xfont.hxx index 1d866ce3aa51..0cb9f5a432a7 100644 --- a/vcl/unx/inc/xfont.hxx +++ b/vcl/unx/inc/xfont.hxx @@ -2,9 +2,9 @@ * * $RCSfile: xfont.hxx,v $ * - * $Revision: 1.10 $ + * $Revision: 1.11 $ * - * last change: $Author: hdu $ $Date: 2002-10-29 13:15:24 $ + * last change: $Author: hr $ $Date: 2003-03-27 17:58:33 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -185,7 +185,7 @@ SV_DECL_IMPL_REF( ExtendedFontStruct ); class X11FontLayout : public GenericSalLayout { public: - X11FontLayout( ImplLayoutArgs&, ExtendedFontStruct& ); + X11FontLayout( ExtendedFontStruct& ); virtual bool LayoutText( ImplLayoutArgs& ); virtual void DrawText( SalGraphics& ) const; |