1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: Definitions and stuff
9 // Copyright: (c) 1998 by Total Control Software
10 // Licence: wxWindows license
11 /////////////////////////////////////////////////////////////////////////////
15 //---------------------------------------------------------------------------
16 // Forward declares...
18 class wxAcceleratorEntry;
19 class wxAcceleratorTable;
20 class wxActivateEvent;
25 class wxCalculateLayoutEvent;
43 class wxDropFilesEvent;
61 class wxIndividualLayoutConstraint;
62 class wxInitDialogEvent;
63 class wxJoystickEvent;
65 class wxLayoutAlgorithm;
66 class wxLayoutConstraints;
71 class wxMDIChildFrame;
72 class wxMDIClientWindow;
73 class wxMDIParentFrame;
75 class wxMaximizeEvent;
81 class wxMessageDialog;
86 class wxNotebookEvent;
88 class wxPageSetupData;
89 class wxPageSetupDialog;
100 class wxQueryLayoutInfoEvent;
105 class wxRegionIterator;
108 class wxSashLayoutWindow;
113 class wxScrollWinEvent;
114 class wxScrolledWindow;
116 class wxSingleChoiceDialog;
122 class wxSplitterWindow;
123 class wxStaticBitmap;
127 class wxSysColourChangedEvent;
130 class wxTextEntryDialog;
137 class wxTreeItemData;
139 class wxUpdateUIEvent;
144 class wxStaticBoxSizer;
151 //---------------------------------------------------------------------------
153 // some definitions for SWIG only
154 typedef unsigned char byte;
155 typedef short int WXTYPE;
156 typedef int wxWindowID;
157 typedef unsigned int uint;
158 typedef signed int EBool;
159 typedef unsigned int size_t
160 typedef unsigned int time_t
161 typedef int wxPrintQuality;
166 //---------------------------------------------------------------------------
168 // General numeric #define's and etc. Making them all enums makes SWIG use the
169 // real macro when making the Python Int
187 wxTRANSPARENT_WINDOW,
211 wxTINY_CAPTION_HORIZ,
218 wxDEFAULT_FRAME_STYLE,
219 wxDEFAULT_DIALOG_STYLE,
222 wxFRAME_FLOAT_ON_PARENT,
223 wxFRAME_NO_WINDOW_MENU,
242 wxALIGN_CENTER_HORIZONTAL,
243 wxALIGN_CENTRE_HORIZONTAL,
246 wxALIGN_CENTER_VERTICAL,
247 wxALIGN_CENTRE_VERTICAL,
341 wxSIZE_ALLOW_MINUS_ONE,
344 wxPRINT_QUALITY_HIGH,
345 wxPRINT_QUALITY_MEDIUM,
347 wxPRINT_QUALITY_DRAFT,
368 wxID_HELP_PROCEDURES,
387 wxID_VIEW_LARGEICONS,
388 wxID_VIEW_SMALLICONS,
449 wxNO_FULL_REPAINT_ON_RESIZE,
450 wxFULL_REPAINT_ON_RESIZE,
481 wxWS_EX_VALIDATE_RECURSIVELY,
482 wxWS_EX_BLOCK_EVENTS,
485 wxWS_EX_THEMED_BACKGROUND,
486 wxWS_EX_PROCESS_IDLE,
487 wxWS_EX_PROCESS_UI_UPDATES,
490 // Mapping modes (as per Windows)
505 // the symbolic names for the mouse buttons
512 // It looks like wxTabCtrl may rise from the dead. Uncomment these if
513 // it gets an implementation for all platforms...
514 // wxTC_RIGHTJUSTIFY,
539 // // Standard error codes
542 // ERR_PARAM = (-4000),
588 wxXOR, // src XOR dst
590 wxOR_REVERSE, // src OR (NOT dst)
591 wxAND_REVERSE,// src AND (NOT dst)
593 wxAND, // src AND dst
594 wxAND_INVERT, // (NOT src) AND dst
596 wxNOR, // (NOT src) AND (NOT dst)
597 wxEQUIV, // (NOT src) XOR dst
598 wxSRC_INVERT, // (NOT src)
599 wxOR_INVERT, // (NOT src) OR dst
600 wxNAND, // (NOT src) OR (NOT dst)
603 // wxSRC_OR, // source _bitmap_ OR destination
604 // wxSRC_AND // source _bitmap_ AND destination
627 WXK_PRIOR, /* Page up */
628 WXK_NEXT, /* Page down */
709 WXK_NUMPAD_SEPARATOR,
724 wxBITMAP_TYPE_INVALID, // should be == 0 for compatibility!
726 wxBITMAP_TYPE_BMP_RESOURCE,
727 wxBITMAP_TYPE_RESOURCE = wxBITMAP_TYPE_BMP_RESOURCE,
729 wxBITMAP_TYPE_ICO_RESOURCE,
731 wxBITMAP_TYPE_CUR_RESOURCE,
733 wxBITMAP_TYPE_XBM_DATA,
735 wxBITMAP_TYPE_XPM_DATA,
737 wxBITMAP_TYPE_TIF_RESOURCE,
739 wxBITMAP_TYPE_GIF_RESOURCE,
741 wxBITMAP_TYPE_PNG_RESOURCE,
743 wxBITMAP_TYPE_JPEG_RESOURCE,
745 wxBITMAP_TYPE_PNM_RESOURCE,
747 wxBITMAP_TYPE_PCX_RESOURCE,
749 wxBITMAP_TYPE_PICT_RESOURCE,
751 wxBITMAP_TYPE_ICON_RESOURCE,
754 wxBITMAP_TYPE_MACCURSOR,
755 wxBITMAP_TYPE_MACCURSOR_RESOURCE,
756 wxBITMAP_TYPE_ANY = 50
767 wxCURSOR_RIGHT_ARROW,
773 wxCURSOR_LEFT_BUTTON,
775 wxCURSOR_MIDDLE_BUTTON,
777 wxCURSOR_PAINT_BRUSH,
780 wxCURSOR_POINT_RIGHT,
781 wxCURSOR_QUESTION_ARROW,
782 wxCURSOR_RIGHT_BUTTON,
800 wxPAPER_NONE, // Use specific dimensions
801 wxPAPER_LETTER, // Letter, 8 1/2 by 11 inches
802 wxPAPER_LEGAL, // Legal, 8 1/2 by 14 inches
803 wxPAPER_A4, // A4 Sheet, 210 by 297 millimeters
804 wxPAPER_CSHEET, // C Sheet, 17 by 22 inches
805 wxPAPER_DSHEET, // D Sheet, 22 by 34 inches
806 wxPAPER_ESHEET, // E Sheet, 34 by 44 inches
807 wxPAPER_LETTERSMALL, // Letter Small, 8 1/2 by 11 inches
808 wxPAPER_TABLOID, // Tabloid, 11 by 17 inches
809 wxPAPER_LEDGER, // Ledger, 17 by 11 inches
810 wxPAPER_STATEMENT, // Statement, 5 1/2 by 8 1/2 inches
811 wxPAPER_EXECUTIVE, // Executive, 7 1/4 by 10 1/2 inches
812 wxPAPER_A3, // A3 sheet, 297 by 420 millimeters
813 wxPAPER_A4SMALL, // A4 small sheet, 210 by 297 millimeters
814 wxPAPER_A5, // A5 sheet, 148 by 210 millimeters
815 wxPAPER_B4, // B4 sheet, 250 by 354 millimeters
816 wxPAPER_B5, // B5 sheet, 182-by-257-millimeter paper
817 wxPAPER_FOLIO, // Folio, 8-1/2-by-13-inch paper
818 wxPAPER_QUARTO, // Quarto, 215-by-275-millimeter paper
819 wxPAPER_10X14, // 10-by-14-inch sheet
820 wxPAPER_11X17, // 11-by-17-inch sheet
821 wxPAPER_NOTE, // Note, 8 1/2 by 11 inches
822 wxPAPER_ENV_9, // #9 Envelope, 3 7/8 by 8 7/8 inches
823 wxPAPER_ENV_10, // #10 Envelope, 4 1/8 by 9 1/2 inches
824 wxPAPER_ENV_11, // #11 Envelope, 4 1/2 by 10 3/8 inches
825 wxPAPER_ENV_12, // #12 Envelope, 4 3/4 by 11 inches
826 wxPAPER_ENV_14, // #14 Envelope, 5 by 11 1/2 inches
827 wxPAPER_ENV_DL, // DL Envelope, 110 by 220 millimeters
828 wxPAPER_ENV_C5, // C5 Envelope, 162 by 229 millimeters
829 wxPAPER_ENV_C3, // C3 Envelope, 324 by 458 millimeters
830 wxPAPER_ENV_C4, // C4 Envelope, 229 by 324 millimeters
831 wxPAPER_ENV_C6, // C6 Envelope, 114 by 162 millimeters
832 wxPAPER_ENV_C65, // C65 Envelope, 114 by 229 millimeters
833 wxPAPER_ENV_B4, // B4 Envelope, 250 by 353 millimeters
834 wxPAPER_ENV_B5, // B5 Envelope, 176 by 250 millimeters
835 wxPAPER_ENV_B6, // B6 Envelope, 176 by 125 millimeters
836 wxPAPER_ENV_ITALY, // Italy Envelope, 110 by 230 millimeters
837 wxPAPER_ENV_MONARCH, // Monarch Envelope, 3 7/8 by 7 1/2 inches
838 wxPAPER_ENV_PERSONAL, // 6 3/4 Envelope, 3 5/8 by 6 1/2 inches
839 wxPAPER_FANFOLD_US, // US Std Fanfold, 14 7/8 by 11 inches
840 wxPAPER_FANFOLD_STD_GERMAN, // German Std Fanfold, 8 1/2 by 12 inches
841 wxPAPER_FANFOLD_LGL_GERMAN, // German Legal Fanfold, 8 1/2 by 13 inches
843 wxPAPER_ISO_B4, // B4 (ISO) 250 x 353 mm
844 wxPAPER_JAPANESE_POSTCARD, // Japanese Postcard 100 x 148 mm
845 wxPAPER_9X11, // 9 x 11 in
846 wxPAPER_10X11, // 10 x 11 in
847 wxPAPER_15X11, // 15 x 11 in
848 wxPAPER_ENV_INVITE, // Envelope Invite 220 x 220 mm
849 wxPAPER_LETTER_EXTRA, // Letter Extra 9 \275 x 12 in
850 wxPAPER_LEGAL_EXTRA, // Legal Extra 9 \275 x 15 in
851 wxPAPER_TABLOID_EXTRA, // Tabloid Extra 11.69 x 18 in
852 wxPAPER_A4_EXTRA, // A4 Extra 9.27 x 12.69 in
853 wxPAPER_LETTER_TRANSVERSE, // Letter Transverse 8 \275 x 11 in
854 wxPAPER_A4_TRANSVERSE, // A4 Transverse 210 x 297 mm
855 wxPAPER_LETTER_EXTRA_TRANSVERSE, // Letter Extra Transverse 9\275 x 12 in
856 wxPAPER_A_PLUS, // SuperA/SuperA/A4 227 x 356 mm
857 wxPAPER_B_PLUS, // SuperB/SuperB/A3 305 x 487 mm
858 wxPAPER_LETTER_PLUS, // Letter Plus 8.5 x 12.69 in
859 wxPAPER_A4_PLUS, // A4 Plus 210 x 330 mm
860 wxPAPER_A5_TRANSVERSE, // A5 Transverse 148 x 210 mm
861 wxPAPER_B5_TRANSVERSE, // B5 (JIS) Transverse 182 x 257 mm
862 wxPAPER_A3_EXTRA, // A3 Extra 322 x 445 mm
863 wxPAPER_A5_EXTRA, // A5 Extra 174 x 235 mm
864 wxPAPER_B5_EXTRA, // B5 (ISO) Extra 201 x 276 mm
865 wxPAPER_A2, // A2 420 x 594 mm
866 wxPAPER_A3_TRANSVERSE, // A3 Transverse 297 x 420 mm
867 wxPAPER_A3_EXTRA_TRANSVERSE // A3 Extra Transverse 322 x 445 mm
872 wxDUPLEX_SIMPLEX, // Non-duplex
879 // menu and toolbar item kinds
882 wxITEM_SEPARATOR = -1,
894 wxHT_SCROLLBAR_FIRST = wxHT_NOWHERE,
895 wxHT_SCROLLBAR_ARROW_LINE_1, // left or upper arrow to scroll by line
896 wxHT_SCROLLBAR_ARROW_LINE_2, // right or down
897 wxHT_SCROLLBAR_ARROW_PAGE_1, // left or upper arrow to scroll by page
898 wxHT_SCROLLBAR_ARROW_PAGE_2, // right or down
899 wxHT_SCROLLBAR_THUMB, // on the thumb
900 wxHT_SCROLLBAR_BAR_1, // bar to the left/above the thumb
901 wxHT_SCROLLBAR_BAR_2, // bar to the right/below the thumb
905 wxHT_WINDOW_OUTSIDE, // not in this window at all
906 wxHT_WINDOW_INSIDE, // in the client area
907 wxHT_WINDOW_VERT_SCROLLBAR, // on the vertical scrollbar
908 wxHT_WINDOW_HORZ_SCROLLBAR, // on the horizontal scrollbar
909 wxHT_WINDOW_CORNER, // on the corner between 2 scrollbars
917 enum wxHotkeyModifier
925 #define wxEVT_HOTKEY 9999
929 enum wxHotkeyModifier
941 wxUPDATE_UI_NONE = 0x0000,
942 wxUPDATE_UI_RECURSE = 0x0001,
943 wxUPDATE_UI_FROMIDLE = 0x0002 // Invoked from On(Internal)Idle
948 //---------------------------------------------------------------------------
949 //---------------------------------------------------------------------------
960 wxEVT_COMMAND_BUTTON_CLICKED,
961 wxEVT_COMMAND_CHECKBOX_CLICKED,
962 wxEVT_COMMAND_CHOICE_SELECTED,
963 wxEVT_COMMAND_LISTBOX_SELECTED,
964 wxEVT_COMMAND_LISTBOX_DOUBLECLICKED,
965 wxEVT_COMMAND_CHECKLISTBOX_TOGGLED,
966 wxEVT_COMMAND_SPINCTRL_UPDATED,
967 wxEVT_COMMAND_TEXT_UPDATED,
968 wxEVT_COMMAND_TEXT_ENTER,
969 wxEVT_COMMAND_TEXT_URL,
970 wxEVT_COMMAND_TEXT_MAXLEN,
971 wxEVT_COMMAND_MENU_SELECTED,
972 wxEVT_COMMAND_SLIDER_UPDATED,
973 wxEVT_COMMAND_RADIOBOX_SELECTED,
974 wxEVT_COMMAND_RADIOBUTTON_SELECTED,
975 // wxEVT_COMMAND_SCROLLBAR_UPDATED is now obsolete since we use wxEVT_SCROLL... events
976 wxEVT_COMMAND_SCROLLBAR_UPDATED,
977 wxEVT_COMMAND_VLBOX_SELECTED,
978 wxEVT_COMMAND_COMBOBOX_SELECTED,
979 wxEVT_COMMAND_TOOL_CLICKED,
980 wxEVT_COMMAND_TOOL_RCLICKED,
981 wxEVT_COMMAND_TOOL_ENTER,
987 /* Mouse event types */
1001 wxEVT_MOUSE_CAPTURE_CHANGED,
1003 // Non-client mouse events
1006 wxEVT_NC_MIDDLE_DOWN,
1008 wxEVT_NC_RIGHT_DOWN,
1011 wxEVT_NC_ENTER_WINDOW,
1012 wxEVT_NC_LEAVE_WINDOW,
1013 wxEVT_NC_LEFT_DCLICK,
1014 wxEVT_NC_MIDDLE_DCLICK,
1015 wxEVT_NC_RIGHT_DCLICK,
1019 /* Character input event type */
1027 * Scrollbar event identifiers
1030 wxEVT_SCROLL_BOTTOM,
1031 wxEVT_SCROLL_LINEUP,
1032 wxEVT_SCROLL_LINEDOWN,
1033 wxEVT_SCROLL_PAGEUP,
1034 wxEVT_SCROLL_PAGEDOWN,
1035 wxEVT_SCROLL_THUMBTRACK,
1036 wxEVT_SCROLL_THUMBRELEASE,
1037 wxEVT_SCROLL_ENDSCROLL,
1042 wxEVT_SCROLLWIN_TOP,
1043 wxEVT_SCROLLWIN_BOTTOM,
1044 wxEVT_SCROLLWIN_LINEUP,
1045 wxEVT_SCROLLWIN_LINEDOWN,
1046 wxEVT_SCROLLWIN_PAGEUP,
1047 wxEVT_SCROLLWIN_PAGEDOWN,
1048 wxEVT_SCROLLWIN_THUMBTRACK,
1049 wxEVT_SCROLLWIN_THUMBRELEASE,
1051 wxEVT_SIZE = wxEVT_FIRST + 200,
1057 wxEVT_QUERY_END_SESSION,
1067 wxEVT_ERASE_BACKGROUND,
1072 wxEVT_MENU_HIGHLIGHT,
1074 wxEVT_SYS_COLOUR_CHANGED,
1075 wxEVT_DISPLAY_CHANGED,
1076 wxEVT_SETTING_CHANGED,
1077 wxEVT_QUERY_NEW_PALETTE,
1078 wxEVT_PALETTE_CHANGED,
1079 wxEVT_JOY_BUTTON_DOWN,
1080 wxEVT_JOY_BUTTON_UP,
1092 /* Generic command events */
1093 // Note: a click is a higher-level event
1094 // than button down/up
1095 wxEVT_COMMAND_LEFT_CLICK,
1096 wxEVT_COMMAND_LEFT_DCLICK,
1097 wxEVT_COMMAND_RIGHT_CLICK,
1098 wxEVT_COMMAND_RIGHT_DCLICK,
1099 wxEVT_COMMAND_SET_FOCUS,
1100 wxEVT_COMMAND_KILL_FOCUS,
1101 wxEVT_COMMAND_ENTER,
1103 wxEVT_NAVIGATION_KEY,
1112 //----------------------------------------------------------------------