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,
386 wxID_VIEW_LARGEICONS,
387 wxID_VIEW_SMALLICONS,
448 wxNO_FULL_REPAINT_ON_RESIZE,
479 wxWS_EX_VALIDATE_RECURSIVELY,
480 wxWS_EX_BLOCK_EVENTS,
483 wxWS_EX_THEMED_BACKGROUND,
484 wxWS_EX_PROCESS_IDLE,
485 wxWS_EX_PROCESS_UI_UPDATES,
488 // Mapping modes (as per Windows)
503 // the symbolic names for the mouse buttons
510 // It looks like wxTabCtrl may rise from the dead. Uncomment these if
511 // it gets an implementation for all platforms...
512 // wxTC_RIGHTJUSTIFY,
537 // // Standard error codes
540 // ERR_PARAM = (-4000),
586 wxXOR, // src XOR dst
588 wxOR_REVERSE, // src OR (NOT dst)
589 wxAND_REVERSE,// src AND (NOT dst)
591 wxAND, // src AND dst
592 wxAND_INVERT, // (NOT src) AND dst
594 wxNOR, // (NOT src) AND (NOT dst)
595 wxEQUIV, // (NOT src) XOR dst
596 wxSRC_INVERT, // (NOT src)
597 wxOR_INVERT, // (NOT src) OR dst
598 wxNAND, // (NOT src) OR (NOT dst)
601 // wxSRC_OR, // source _bitmap_ OR destination
602 // wxSRC_AND // source _bitmap_ AND destination
625 WXK_PRIOR, /* Page up */
626 WXK_NEXT, /* Page down */
707 WXK_NUMPAD_SEPARATOR,
722 wxBITMAP_TYPE_INVALID, // should be == 0 for compatibility!
724 wxBITMAP_TYPE_BMP_RESOURCE,
725 wxBITMAP_TYPE_RESOURCE = wxBITMAP_TYPE_BMP_RESOURCE,
727 wxBITMAP_TYPE_ICO_RESOURCE,
729 wxBITMAP_TYPE_CUR_RESOURCE,
731 wxBITMAP_TYPE_XBM_DATA,
733 wxBITMAP_TYPE_XPM_DATA,
735 wxBITMAP_TYPE_TIF_RESOURCE,
737 wxBITMAP_TYPE_GIF_RESOURCE,
739 wxBITMAP_TYPE_PNG_RESOURCE,
741 wxBITMAP_TYPE_JPEG_RESOURCE,
743 wxBITMAP_TYPE_PNM_RESOURCE,
745 wxBITMAP_TYPE_PCX_RESOURCE,
747 wxBITMAP_TYPE_PICT_RESOURCE,
749 wxBITMAP_TYPE_ICON_RESOURCE,
752 wxBITMAP_TYPE_MACCURSOR,
753 wxBITMAP_TYPE_MACCURSOR_RESOURCE,
754 wxBITMAP_TYPE_ANY = 50
765 wxCURSOR_RIGHT_ARROW,
771 wxCURSOR_LEFT_BUTTON,
773 wxCURSOR_MIDDLE_BUTTON,
775 wxCURSOR_PAINT_BRUSH,
778 wxCURSOR_POINT_RIGHT,
779 wxCURSOR_QUESTION_ARROW,
780 wxCURSOR_RIGHT_BUTTON,
798 wxPAPER_NONE, // Use specific dimensions
799 wxPAPER_LETTER, // Letter, 8 1/2 by 11 inches
800 wxPAPER_LEGAL, // Legal, 8 1/2 by 14 inches
801 wxPAPER_A4, // A4 Sheet, 210 by 297 millimeters
802 wxPAPER_CSHEET, // C Sheet, 17 by 22 inches
803 wxPAPER_DSHEET, // D Sheet, 22 by 34 inches
804 wxPAPER_ESHEET, // E Sheet, 34 by 44 inches
805 wxPAPER_LETTERSMALL, // Letter Small, 8 1/2 by 11 inches
806 wxPAPER_TABLOID, // Tabloid, 11 by 17 inches
807 wxPAPER_LEDGER, // Ledger, 17 by 11 inches
808 wxPAPER_STATEMENT, // Statement, 5 1/2 by 8 1/2 inches
809 wxPAPER_EXECUTIVE, // Executive, 7 1/4 by 10 1/2 inches
810 wxPAPER_A3, // A3 sheet, 297 by 420 millimeters
811 wxPAPER_A4SMALL, // A4 small sheet, 210 by 297 millimeters
812 wxPAPER_A5, // A5 sheet, 148 by 210 millimeters
813 wxPAPER_B4, // B4 sheet, 250 by 354 millimeters
814 wxPAPER_B5, // B5 sheet, 182-by-257-millimeter paper
815 wxPAPER_FOLIO, // Folio, 8-1/2-by-13-inch paper
816 wxPAPER_QUARTO, // Quarto, 215-by-275-millimeter paper
817 wxPAPER_10X14, // 10-by-14-inch sheet
818 wxPAPER_11X17, // 11-by-17-inch sheet
819 wxPAPER_NOTE, // Note, 8 1/2 by 11 inches
820 wxPAPER_ENV_9, // #9 Envelope, 3 7/8 by 8 7/8 inches
821 wxPAPER_ENV_10, // #10 Envelope, 4 1/8 by 9 1/2 inches
822 wxPAPER_ENV_11, // #11 Envelope, 4 1/2 by 10 3/8 inches
823 wxPAPER_ENV_12, // #12 Envelope, 4 3/4 by 11 inches
824 wxPAPER_ENV_14, // #14 Envelope, 5 by 11 1/2 inches
825 wxPAPER_ENV_DL, // DL Envelope, 110 by 220 millimeters
826 wxPAPER_ENV_C5, // C5 Envelope, 162 by 229 millimeters
827 wxPAPER_ENV_C3, // C3 Envelope, 324 by 458 millimeters
828 wxPAPER_ENV_C4, // C4 Envelope, 229 by 324 millimeters
829 wxPAPER_ENV_C6, // C6 Envelope, 114 by 162 millimeters
830 wxPAPER_ENV_C65, // C65 Envelope, 114 by 229 millimeters
831 wxPAPER_ENV_B4, // B4 Envelope, 250 by 353 millimeters
832 wxPAPER_ENV_B5, // B5 Envelope, 176 by 250 millimeters
833 wxPAPER_ENV_B6, // B6 Envelope, 176 by 125 millimeters
834 wxPAPER_ENV_ITALY, // Italy Envelope, 110 by 230 millimeters
835 wxPAPER_ENV_MONARCH, // Monarch Envelope, 3 7/8 by 7 1/2 inches
836 wxPAPER_ENV_PERSONAL, // 6 3/4 Envelope, 3 5/8 by 6 1/2 inches
837 wxPAPER_FANFOLD_US, // US Std Fanfold, 14 7/8 by 11 inches
838 wxPAPER_FANFOLD_STD_GERMAN, // German Std Fanfold, 8 1/2 by 12 inches
839 wxPAPER_FANFOLD_LGL_GERMAN, // German Legal Fanfold, 8 1/2 by 13 inches
841 wxPAPER_ISO_B4, // B4 (ISO) 250 x 353 mm
842 wxPAPER_JAPANESE_POSTCARD, // Japanese Postcard 100 x 148 mm
843 wxPAPER_9X11, // 9 x 11 in
844 wxPAPER_10X11, // 10 x 11 in
845 wxPAPER_15X11, // 15 x 11 in
846 wxPAPER_ENV_INVITE, // Envelope Invite 220 x 220 mm
847 wxPAPER_LETTER_EXTRA, // Letter Extra 9 \275 x 12 in
848 wxPAPER_LEGAL_EXTRA, // Legal Extra 9 \275 x 15 in
849 wxPAPER_TABLOID_EXTRA, // Tabloid Extra 11.69 x 18 in
850 wxPAPER_A4_EXTRA, // A4 Extra 9.27 x 12.69 in
851 wxPAPER_LETTER_TRANSVERSE, // Letter Transverse 8 \275 x 11 in
852 wxPAPER_A4_TRANSVERSE, // A4 Transverse 210 x 297 mm
853 wxPAPER_LETTER_EXTRA_TRANSVERSE, // Letter Extra Transverse 9\275 x 12 in
854 wxPAPER_A_PLUS, // SuperA/SuperA/A4 227 x 356 mm
855 wxPAPER_B_PLUS, // SuperB/SuperB/A3 305 x 487 mm
856 wxPAPER_LETTER_PLUS, // Letter Plus 8.5 x 12.69 in
857 wxPAPER_A4_PLUS, // A4 Plus 210 x 330 mm
858 wxPAPER_A5_TRANSVERSE, // A5 Transverse 148 x 210 mm
859 wxPAPER_B5_TRANSVERSE, // B5 (JIS) Transverse 182 x 257 mm
860 wxPAPER_A3_EXTRA, // A3 Extra 322 x 445 mm
861 wxPAPER_A5_EXTRA, // A5 Extra 174 x 235 mm
862 wxPAPER_B5_EXTRA, // B5 (ISO) Extra 201 x 276 mm
863 wxPAPER_A2, // A2 420 x 594 mm
864 wxPAPER_A3_TRANSVERSE, // A3 Transverse 297 x 420 mm
865 wxPAPER_A3_EXTRA_TRANSVERSE // A3 Extra Transverse 322 x 445 mm
870 wxDUPLEX_SIMPLEX, // Non-duplex
877 // menu and toolbar item kinds
880 wxITEM_SEPARATOR = -1,
892 wxHT_SCROLLBAR_FIRST = wxHT_NOWHERE,
893 wxHT_SCROLLBAR_ARROW_LINE_1, // left or upper arrow to scroll by line
894 wxHT_SCROLLBAR_ARROW_LINE_2, // right or down
895 wxHT_SCROLLBAR_ARROW_PAGE_1, // left or upper arrow to scroll by page
896 wxHT_SCROLLBAR_ARROW_PAGE_2, // right or down
897 wxHT_SCROLLBAR_THUMB, // on the thumb
898 wxHT_SCROLLBAR_BAR_1, // bar to the left/above the thumb
899 wxHT_SCROLLBAR_BAR_2, // bar to the right/below the thumb
903 wxHT_WINDOW_OUTSIDE, // not in this window at all
904 wxHT_WINDOW_INSIDE, // in the client area
905 wxHT_WINDOW_VERT_SCROLLBAR, // on the vertical scrollbar
906 wxHT_WINDOW_HORZ_SCROLLBAR, // on the horizontal scrollbar
907 wxHT_WINDOW_CORNER, // on the corner between 2 scrollbars
915 enum wxHotkeyModifier
923 #define wxEVT_HOTKEY 9999
927 enum wxHotkeyModifier
939 wxUPDATE_UI_NONE = 0x0000,
940 wxUPDATE_UI_RECURSE = 0x0001,
941 wxUPDATE_UI_FROMIDLE = 0x0002 // Invoked from On(Internal)Idle
946 //---------------------------------------------------------------------------
947 //---------------------------------------------------------------------------
958 wxEVT_COMMAND_BUTTON_CLICKED,
959 wxEVT_COMMAND_CHECKBOX_CLICKED,
960 wxEVT_COMMAND_CHOICE_SELECTED,
961 wxEVT_COMMAND_LISTBOX_SELECTED,
962 wxEVT_COMMAND_LISTBOX_DOUBLECLICKED,
963 wxEVT_COMMAND_CHECKLISTBOX_TOGGLED,
964 wxEVT_COMMAND_SPINCTRL_UPDATED,
965 wxEVT_COMMAND_TEXT_UPDATED,
966 wxEVT_COMMAND_TEXT_ENTER,
967 wxEVT_COMMAND_TEXT_URL,
968 wxEVT_COMMAND_TEXT_MAXLEN,
969 wxEVT_COMMAND_MENU_SELECTED,
970 wxEVT_COMMAND_SLIDER_UPDATED,
971 wxEVT_COMMAND_RADIOBOX_SELECTED,
972 wxEVT_COMMAND_RADIOBUTTON_SELECTED,
973 // wxEVT_COMMAND_SCROLLBAR_UPDATED is now obsolete since we use wxEVT_SCROLL... events
974 wxEVT_COMMAND_SCROLLBAR_UPDATED,
975 wxEVT_COMMAND_VLBOX_SELECTED,
976 wxEVT_COMMAND_COMBOBOX_SELECTED,
977 wxEVT_COMMAND_TOOL_CLICKED,
978 wxEVT_COMMAND_TOOL_RCLICKED,
979 wxEVT_COMMAND_TOOL_ENTER,
985 /* Mouse event types */
999 wxEVT_MOUSE_CAPTURE_CHANGED,
1001 // Non-client mouse events
1004 wxEVT_NC_MIDDLE_DOWN,
1006 wxEVT_NC_RIGHT_DOWN,
1009 wxEVT_NC_ENTER_WINDOW,
1010 wxEVT_NC_LEAVE_WINDOW,
1011 wxEVT_NC_LEFT_DCLICK,
1012 wxEVT_NC_MIDDLE_DCLICK,
1013 wxEVT_NC_RIGHT_DCLICK,
1017 /* Character input event type */
1025 * Scrollbar event identifiers
1028 wxEVT_SCROLL_BOTTOM,
1029 wxEVT_SCROLL_LINEUP,
1030 wxEVT_SCROLL_LINEDOWN,
1031 wxEVT_SCROLL_PAGEUP,
1032 wxEVT_SCROLL_PAGEDOWN,
1033 wxEVT_SCROLL_THUMBTRACK,
1034 wxEVT_SCROLL_THUMBRELEASE,
1035 wxEVT_SCROLL_ENDSCROLL,
1040 wxEVT_SCROLLWIN_TOP,
1041 wxEVT_SCROLLWIN_BOTTOM,
1042 wxEVT_SCROLLWIN_LINEUP,
1043 wxEVT_SCROLLWIN_LINEDOWN,
1044 wxEVT_SCROLLWIN_PAGEUP,
1045 wxEVT_SCROLLWIN_PAGEDOWN,
1046 wxEVT_SCROLLWIN_THUMBTRACK,
1047 wxEVT_SCROLLWIN_THUMBRELEASE,
1049 wxEVT_SIZE = wxEVT_FIRST + 200,
1055 wxEVT_QUERY_END_SESSION,
1065 wxEVT_ERASE_BACKGROUND,
1070 wxEVT_MENU_HIGHLIGHT,
1072 wxEVT_SYS_COLOUR_CHANGED,
1073 wxEVT_DISPLAY_CHANGED,
1074 wxEVT_SETTING_CHANGED,
1075 wxEVT_QUERY_NEW_PALETTE,
1076 wxEVT_PALETTE_CHANGED,
1077 wxEVT_JOY_BUTTON_DOWN,
1078 wxEVT_JOY_BUTTON_UP,
1090 /* Generic command events */
1091 // Note: a click is a higher-level event
1092 // than button down/up
1093 wxEVT_COMMAND_LEFT_CLICK,
1094 wxEVT_COMMAND_LEFT_DCLICK,
1095 wxEVT_COMMAND_RIGHT_CLICK,
1096 wxEVT_COMMAND_RIGHT_DCLICK,
1097 wxEVT_COMMAND_SET_FOCUS,
1098 wxEVT_COMMAND_KILL_FOCUS,
1099 wxEVT_COMMAND_ENTER,
1101 wxEVT_NAVIGATION_KEY,
1110 //----------------------------------------------------------------------