blob: 0d4662bae344be938072c5f308f3406bdfb3a804 [file] [log] [blame]
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
#ifndef _TOOLS_WINTYPES_HXX
#define _TOOLS_WINTYPES_HXX
#include <tools/solar.h>
#include <sal/types.h>
// ----------------
// - Window-Types -
// ----------------
typedef sal_uInt16 WindowType;
#define WINDOW_BASE 0x0100
#define WINDOW_FIRST (WINDOW_BASE + 0x30)
#define WINDOW_MESSBOX (WINDOW_FIRST)
#define WINDOW_INFOBOX (WINDOW_FIRST + 0x01)
#define WINDOW_WARNINGBOX (WINDOW_FIRST + 0x02)
#define WINDOW_ERRORBOX (WINDOW_FIRST + 0x03)
#define WINDOW_QUERYBOX (WINDOW_FIRST + 0x04)
#define WINDOW_WINDOW (WINDOW_FIRST + 0x05)
#define WINDOW_SYSWINDOW (WINDOW_FIRST + 0x06)
#define WINDOW_WORKWINDOW (WINDOW_FIRST + 0x07)
// #define WINDOW_MDIWINDOW (WINDOW_FIRST + 0x08)
#define WINDOW_FLOATINGWINDOW (WINDOW_FIRST + 0x09)
#define WINDOW_DIALOG (WINDOW_FIRST + 0x0a)
#define WINDOW_MODELESSDIALOG (WINDOW_FIRST + 0x0b)
#define WINDOW_MODALDIALOG (WINDOW_FIRST + 0x0c)
#define WINDOW_SYSTEMDIALOG (WINDOW_FIRST + 0x0d)
#define WINDOW_PATHDIALOG (WINDOW_FIRST + 0x0e)
#define WINDOW_FILEDIALOG (WINDOW_FIRST + 0x0f)
#define WINDOW_PRINTERSETUPDIALOG (WINDOW_FIRST + 0x10)
#define WINDOW_PRINTDIALOG (WINDOW_FIRST + 0x11)
#define WINDOW_COLORDIALOG (WINDOW_FIRST + 0x12)
#define WINDOW_FONTDIALOG (WINDOW_FIRST + 0x13)
#define WINDOW_CONTROL (WINDOW_FIRST + 0x14)
#define WINDOW_BUTTON (WINDOW_FIRST + 0x15)
#define WINDOW_PUSHBUTTON (WINDOW_FIRST + 0x16)
#define WINDOW_OKBUTTON (WINDOW_FIRST + 0x17)
#define WINDOW_CANCELBUTTON (WINDOW_FIRST + 0x18)
#define WINDOW_HELPBUTTON (WINDOW_FIRST + 0x19)
#define WINDOW_IMAGEBUTTON (WINDOW_FIRST + 0x1a)
#define WINDOW_MENUBUTTON (WINDOW_FIRST + 0x1b)
#define WINDOW_MOREBUTTON (WINDOW_FIRST + 0x1c)
#define WINDOW_SPINBUTTON (WINDOW_FIRST + 0x1d)
#define WINDOW_RADIOBUTTON (WINDOW_FIRST + 0x1e)
#define WINDOW_IMAGERADIOBUTTON (WINDOW_FIRST + 0x1f)
#define WINDOW_CHECKBOX (WINDOW_FIRST + 0x20)
#define WINDOW_TRISTATEBOX (WINDOW_FIRST + 0x21)
#define WINDOW_EDIT (WINDOW_FIRST + 0x22)
#define WINDOW_MULTILINEEDIT (WINDOW_FIRST + 0x23)
#define WINDOW_COMBOBOX (WINDOW_FIRST + 0x24)
#define WINDOW_LISTBOX (WINDOW_FIRST + 0x25)
#define WINDOW_MULTILISTBOX (WINDOW_FIRST + 0x26)
#define WINDOW_FIXEDTEXT (WINDOW_FIRST + 0x27)
#define WINDOW_FIXEDLINE (WINDOW_FIRST + 0x28)
#define WINDOW_FIXEDBITMAP (WINDOW_FIRST + 0x29)
#define WINDOW_FIXEDIMAGE (WINDOW_FIRST + 0x2a)
#define WINDOW_GROUPBOX (WINDOW_FIRST + 0x2c)
#define WINDOW_SCROLLBAR (WINDOW_FIRST + 0x2d)
#define WINDOW_SCROLLBARBOX (WINDOW_FIRST + 0x2e)
#define WINDOW_SPLITTER (WINDOW_FIRST + 0x2f)
#define WINDOW_SPLITWINDOW (WINDOW_FIRST + 0x30)
#define WINDOW_SPINFIELD (WINDOW_FIRST + 0x31)
#define WINDOW_PATTERNFIELD (WINDOW_FIRST + 0x32)
#define WINDOW_NUMERICFIELD (WINDOW_FIRST + 0x33)
#define WINDOW_METRICFIELD (WINDOW_FIRST + 0x34)
#define WINDOW_CURRENCYFIELD (WINDOW_FIRST + 0x35)
#define WINDOW_DATEFIELD (WINDOW_FIRST + 0x36)
#define WINDOW_TIMEFIELD (WINDOW_FIRST + 0x37)
#define WINDOW_PATTERNBOX (WINDOW_FIRST + 0x38)
#define WINDOW_NUMERICBOX (WINDOW_FIRST + 0x39)
#define WINDOW_METRICBOX (WINDOW_FIRST + 0x3a)
#define WINDOW_CURRENCYBOX (WINDOW_FIRST + 0x3b)
#define WINDOW_DATEBOX (WINDOW_FIRST + 0x3c)
#define WINDOW_TIMEBOX (WINDOW_FIRST + 0x3d)
#define WINDOW_LONGCURRENCYFIELD (WINDOW_FIRST + 0x3e)
#define WINDOW_LONGCURRENCYBOX (WINDOW_FIRST + 0x3f)
#define WINDOW_TOOLBOX (WINDOW_FIRST + 0x41)
#define WINDOW_DOCKINGWINDOW (WINDOW_FIRST + 0x42)
#define WINDOW_STATUSBAR (WINDOW_FIRST + 0x43)
#define WINDOW_TABPAGE (WINDOW_FIRST + 0x44)
#define WINDOW_TABCONTROL (WINDOW_FIRST + 0x45)
#define WINDOW_TABDIALOG (WINDOW_FIRST + 0x46)
#define WINDOW_BORDERWINDOW (WINDOW_FIRST + 0x47)
#define WINDOW_BUTTONDIALOG (WINDOW_FIRST + 0x48)
#define WINDOW_SYSTEMCHILDWINDOW (WINDOW_FIRST + 0x49)
#define WINDOW_FIXEDBORDER (WINDOW_FIRST + 0x4a)
#define WINDOW_SLIDER (WINDOW_FIRST + 0x4b)
#define WINDOW_MENUBARWINDOW (WINDOW_FIRST + 0x4c)
#define WINDOW_TREELISTBOX (WINDOW_FIRST + 0x4d)
#define WINDOW_HELPTEXTWINDOW (WINDOW_FIRST + 0x4e)
#define WINDOW_INTROWINDOW (WINDOW_FIRST + 0x4f)
#define WINDOW_LISTBOXWINDOW (WINDOW_FIRST + 0x50)
#define WINDOW_DOCKINGAREA (WINDOW_FIRST + 0x51)
#define WINDOW_RULER (WINDOW_FIRST + 0x52)
#define WINDOW_LAST (WINDOW_RULER)
// ---------------
// - Window-Bits -
// ---------------
typedef sal_Int64 WinBits;
// Window-Bits fuer Window
#define WB_CLIPCHILDREN ((WinBits)0x00000001)
#define WB_DIALOGCONTROL ((WinBits)0x00000002)
#define WB_NODIALOGCONTROL ((WinBits)0x00000004)
#define WB_BORDER ((WinBits)0x00000008)
#define WB_NOBORDER ((WinBits)0x00000010)
#define WB_SIZEABLE ((WinBits)0x00000020)
#define WB_3DLOOK ((WinBits)0x00000040)
#define WB_AUTOSIZE ((WinBits)0x00000080)
// Window-Bits fuer SystemWindows
#define WB_MOVEABLE ((WinBits)0x00000100)
#define WB_ROLLABLE ((WinBits)0x00000200)
#define WB_CLOSEABLE ((WinBits)0x00000400)
#define WB_STANDALONE ((WinBits)0x00000800)
#define WB_APP ((WinBits)0x00001000)
#define WB_PINABLE ((WinBits)0x00002000)
#define WB_SYSTEMWINDOW ((WinBits)SAL_CONST_INT64(0x40000000))
// warning: do not confuse WB_SYSTEMCHILDWINDOW with the SystemChildWindow class
// the SystemChildWindow class was there first and is a very specialized
// sytem child window type for plugged applications. The SystemChildWindow class
// explicitly should never use the WB_SYSTEMCHILDWINDOW WinBit
// WB_SYSTEMCHILDWINDOW on the other hand is to be used on system windows
// which should be created as system child windows with (more or less)
// normal event handling
#define WB_SYSTEMCHILDWINDOW ((WinBits)SAL_CONST_INT64(0x8000000000))
#define WB_SIZEMOVE (WB_SIZEABLE | WB_MOVEABLE)
// Standard-Window-Bits fuer ChildWindows
#define WB_TABSTOP ((WinBits)0x00000100)
#define WB_NOTABSTOP ((WinBits)0x00000200)
#define WB_GROUP ((WinBits)0x00000400)
#define WB_NOGROUP ((WinBits)0x00000800)
#define WB_HORZ ((WinBits)0x00001000)
#define WB_VERT ((WinBits)0x00002000)
#define WB_LEFT ((WinBits)0x00004000)
#define WB_CENTER ((WinBits)0x00008000)
#define WB_RIGHT ((WinBits)0x00010000)
#define WB_TOP ((WinBits)0x00020000)
#define WB_VCENTER ((WinBits)0x00040000)
#define WB_BOTTOM ((WinBits)0x00080000)
#define WB_DRAG ((WinBits)0x00100000)
#define WB_SPIN ((WinBits)0x00200000)
#define WB_REPEAT ((WinBits)0x00400000)
#define WB_NOPOINTERFOCUS ((WinBits)0x00800000)
#define WB_WORDBREAK ((WinBits)0x01000000)
#define WB_NOLABEL ((WinBits)0x02000000)
#define WB_SORT ((WinBits)0x04000000)
#define WB_DROPDOWN ((WinBits)0x08000000)
#define WB_HIDE ((WinBits)SAL_CONST_INT64(0x80000000))
#define WB_AUTOHSCROLL ((WinBits)SAL_CONST_INT64(0x10000000))
#define WB_DOCKABLE ((WinBits)SAL_CONST_INT64(0x20000000))
#define WB_AUTOVSCROLL ((WinBits)SAL_CONST_INT64(0x40000000))
#define WB_HYPHENATION (((WinBits)SAL_CONST_INT64(0x800000000)) | WB_WORDBREAK)
#define WB_CHILDDLGCTRL ((WinBits)SAL_CONST_INT64(0x100000000000))
// system floating window
#define WB_SYSTEMFLOATWIN ((WinBits)SAL_CONST_INT64(0x100000000))
#define WB_INTROWIN ((WinBits)SAL_CONST_INT64(0x200000000))
#define WB_NOSHADOW ((WinBits)SAL_CONST_INT64(0x400000000))
#define WB_TOOLTIPWIN ((WinBits)SAL_CONST_INT64(0x800000000))
#define WB_OWNERDRAWDECORATION ((WinBits)SAL_CONST_INT64(0x2000000000))
#define WB_DEFAULTWIN ((WinBits)SAL_CONST_INT64(0x4000000000))
#define WB_NEEDSFOCUS ((WinBits)SAL_CONST_INT64(0x1000000000))
#define WB_HSCROLL WB_HORZ
#define WB_VSCROLL WB_VERT
#define WB_TOPIMAGE WB_TOP
// Window-Bits for PushButtons
#define WB_DEFBUTTON ((WinBits)0x10000000)
#define WB_NOLIGHTBORDER ((WinBits)0x20000000)
#define WB_RECTSTYLE ((WinBits)0x08000000)
#define WB_SMALLSTYLE ((WinBits)0x04000000)
#define WB_TOGGLE ((WinBits)SAL_CONST_INT64(0x1000000000))
#define WB_BEVELBUTTON ((WinBits)SAL_CONST_INT64(0x2000000000))
#define WB_FLATBUTTON ((WinBits)SAL_CONST_INT64(0x4000000000))
// Window-Bits for FixedText
#define WB_PATHELLIPSIS ((WinBits)0x00100000)
#define WB_EXTRAOFFSET ((WinBits)0x02000000)
#define WB_NOMULTILINE ((WinBits)0x10000000)
#define WB_INFO ((WinBits)0x20000000)
// Window-Bits for CheckBox
#define WB_CBLINESTYLE ((WinBits)SAL_CONST_INT64(0x2000000000))
#define WB_EARLYTOGGLE ((WinBits)SAL_CONST_INT64(0x4000000000))
// Window-Bits for Edit
#define WB_PASSWORD ((WinBits)0x01000000)
#define WB_READONLY ((WinBits)0x02000000)
#define WB_NOHIDESELECTION ((WinBits)SAL_CONST_INT64(0x1000000000))
#define WB_FORCECTRLBACKGROUND ((WinBits)0x80000000)
// Window-Bits for MultiLineEdit
#define WB_IGNORETAB ((WinBits)0x20000000)
// Window-Bits for ListBox and MultiListBox
#define WB_SIMPLEMODE ((WinBits)0x20000000)
// Window-Bits for FixedBitmap
#define WB_FAST ((WinBits)0x04000000)
#define WB_SCALE ((WinBits)0x08000000)
#define WB_TOPLEFTVISIBLE ((WinBits)0x10000000)
// Window-Bits for ToolBox
#define WB_LINESPACING ((WinBits)0x01000000)
#define WB_SCROLL ((WinBits)0x02000000)
#define WB_FORCETABCYCLE ((WinBits)0x04000000)
// Window-Bits for DockingWindows
#define WB_DOCKBORDER ((WinBits)0x00001000)
// Window-Bits for SplitWindow
#define WB_NOSPLITDRAW ((WinBits)0x01000000)
#define WB_FLATSPLITDRAW ((WinBits)0x02000000)
// Window-Bits for MessageBoxen
#define WB_OK ((WinBits)0x00100000)
#define WB_OK_CANCEL ((WinBits)0x00200000)
#define WB_YES_NO ((WinBits)0x00400000)
#define WB_YES_NO_CANCEL ((WinBits)0x00800000)
#define WB_RETRY_CANCEL ((WinBits)0x01000000)
#define WB_DEF_OK ((WinBits)0x02000000)
#define WB_DEF_CANCEL ((WinBits)0x04000000)
#define WB_DEF_RETRY ((WinBits)0x08000000)
#define WB_DEF_YES ((WinBits)SAL_CONST_INT64(0x10000000))
#define WB_DEF_NO ((WinBits)SAL_CONST_INT64(0x20000000))
#define WB_ABORT_RETRY_IGNORE ((WinBits)SAL_CONST_INT64(0x1000000000))
#define WB_DEF_IGNORE ((WinBits)SAL_CONST_INT64(0x2000000000))
// Standard-WinBits
#define WB_STDWORK (WB_SIZEMOVE | WB_CLOSEABLE)
#define WB_STDDOCKWIN (WB_DOCKABLE | WB_MOVEABLE | WB_CLOSEABLE)
#define WB_STDFLOATWIN (WB_SIZEMOVE | WB_CLOSEABLE | WB_ROLLABLE)
#define WB_STDDIALOG (WB_MOVEABLE | WB_CLOSEABLE)
#define WB_STDMODELESS (WB_STDDIALOG)
#define WB_STDMODAL (WB_STDDIALOG)
#define WB_STDTABDIALOG (WB_STDDIALOG)
#define WB_STDTABCONTROL 0
// For TreeListBox
#define WB_HASBUTTONS ((WinBits)SAL_CONST_INT64(0x000100000000))
#define WB_HASLINES ((WinBits)SAL_CONST_INT64(0x000200000000))
#define WB_HASLINESATROOT ((WinBits)SAL_CONST_INT64(0x000400000000))
#define WB_HASBUTTONSATROOT ((WinBits)SAL_CONST_INT64(0x000800000000))
#define WB_NOINITIALSELECTION ((WinBits)SAL_CONST_INT64(0x001000000000))
#define WB_HIDESELECTION ((WinBits)SAL_CONST_INT64(0x002000000000))
#define WB_FORCE_MAKEVISIBLE ((WinBits)SAL_CONST_INT64(0x004000000000))
// DO NOT USE: 0x008000000000, that's WB_SYSTEMCHILDWINDOW
#define WB_QUICK_SEARCH ((WinBits)SAL_CONST_INT64(0x010000000000))
// For FileOpen Dialog
#define WB_PATH ((WinBits)0x00100000)
#define WB_OPEN ((WinBits)0x00200000)
#define WB_SAVEAS ((WinBits)0x00400000)
// For Slider
// Window-Bits for TabControl
#define WB_SLIDERSET ((WinBits)0x02000000)
// --------------------
// - extended WinBits -
// --------------------
#define WB_EXT_DOCUMENT ((WinBits)0x00000001)
#define WB_EXT_DOCMODIFIED ((WinBits)0x00000002)
// ---------------
// - WindowAlign -
// ---------------
enum WindowAlign { WINDOWALIGN_LEFT, WINDOWALIGN_TOP, WINDOWALIGN_RIGHT, WINDOWALIGN_BOTTOM };
enum ImageAlign { IMAGEALIGN_LEFT, IMAGEALIGN_TOP, IMAGEALIGN_RIGHT, IMAGEALIGN_BOTTOM,
IMAGEALIGN_LEFT_TOP, IMAGEALIGN_LEFT_BOTTOM, IMAGEALIGN_TOP_LEFT,
IMAGEALIGN_TOP_RIGHT, IMAGEALIGN_RIGHT_TOP, IMAGEALIGN_RIGHT_BOTTOM,
IMAGEALIGN_BOTTOM_LEFT, IMAGEALIGN_BOTTOM_RIGHT, IMAGEALIGN_CENTER };
enum SymbolAlign { SYMBOLALIGN_LEFT, SYMBOLALIGN_RIGHT };
// ------------
// - TriState -
// ------------
enum TriState { STATE_NOCHECK, STATE_CHECK, STATE_DONTKNOW };
// ----------------------
// - ButtonDialog-Types -
// ----------------------
typedef sal_uInt16 StandardButtonType;
#define BUTTON_OK ((StandardButtonType)0)
#define BUTTON_CANCEL ((StandardButtonType)1)
#define BUTTON_YES ((StandardButtonType)2)
#define BUTTON_NO ((StandardButtonType)3)
#define BUTTON_RETRY ((StandardButtonType)4)
#define BUTTON_HELP ((StandardButtonType)5)
#define BUTTON_CLOSE ((StandardButtonType)6)
#define BUTTON_MORE ((StandardButtonType)7)
#define BUTTON_IGNORE ((StandardButtonType)8)
#define BUTTON_ABORT ((StandardButtonType)9)
#define BUTTON_LESS ((StandardButtonType)10)
#define BUTTON_COUNT 11
// --------------------------------------------
// - prominent place for ListBox window types -
// --------------------------------------------
enum ProminentEntry { PROMINENT_TOP, PROMINENT_MIDDLE };
#endif // _TOOLS_WINTYPES_HXX