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,
 
 191 //wxOVERRIDE_KEY_TRANSLATIONS,
 
 209     wxTINY_CAPTION_HORIZ,
 
 215     wxDEFAULT_FRAME_STYLE,
 
 216     wxDEFAULT_DIALOG_STYLE,
 
 219     wxFRAME_FLOAT_ON_PARENT,
 
 220     wxFRAME_NO_WINDOW_MENU,
 
 239     wxALIGN_CENTER_HORIZONTAL,
 
 240     wxALIGN_CENTRE_HORIZONTAL,
 
 243     wxALIGN_CENTER_VERTICAL,
 
 244     wxALIGN_CENTRE_VERTICAL,
 
 301     wxTR_HAS_VARIABLE_ROW_HEIGHT,
 
 315     wxLC_SORT_DESCENDING,
 
 366     wxSIZE_ALLOW_MINUS_ONE,
 
 369     wxPRINT_QUALITY_HIGH,
 
 370     wxPRINT_QUALITY_MEDIUM,
 
 372     wxPRINT_QUALITY_DRAFT,
 
 389     wxID_HELP_PROCEDURES,
 
 414     wxBITMAP_TYPE_BMP_RESOURCE,
 
 416     wxBITMAP_TYPE_ICO_RESOURCE,
 
 418     wxBITMAP_TYPE_CUR_RESOURCE,
 
 420     wxBITMAP_TYPE_XBM_DATA,
 
 422     wxBITMAP_TYPE_XPM_DATA,
 
 424     wxBITMAP_TYPE_TIF_RESOURCE,
 
 426     wxBITMAP_TYPE_GIF_RESOURCE,
 
 428     wxBITMAP_TYPE_PNG_RESOURCE,
 
 430     wxBITMAP_TYPE_RESOURCE,
 
 455     wxNO_FULL_REPAINT_ON_RESIZE,
 
 483     wxHW_SCROLLBAR_NEVER,
 
 497 //  // Standard error codes
 
 500 //    ERR_PARAM = (-4000),
 
 546   wxXOR,        // src XOR dst
 
 548   wxOR_REVERSE, // src OR (NOT dst)
 
 549   wxAND_REVERSE,// src AND (NOT dst)
 
 551   wxAND,        // src AND dst
 
 552   wxAND_INVERT, // (NOT src) AND dst
 
 554   wxNOR,        // (NOT src) AND (NOT dst)
 
 555   wxEQUIV,      // (NOT src) XOR dst
 
 556   wxSRC_INVERT, // (NOT src)
 
 557   wxOR_INVERT,  // (NOT src) OR dst
 
 558   wxNAND,       // (NOT src) OR (NOT dst)
 
 561 //  wxSRC_OR,     // source _bitmap_ OR destination
 
 562 //  wxSRC_AND     // source _bitmap_ AND destination
 
 565 enum _Virtual_keycodes {
 
 584  WXK_PRIOR,  // Page up
 
 585  WXK_NEXT,   // Page down
 
 652  wxCURSOR_LEFT_BUTTON,
 
 654  wxCURSOR_MIDDLE_BUTTON,
 
 656  wxCURSOR_PAINT_BRUSH,
 
 659  wxCURSOR_POINT_RIGHT,
 
 660  wxCURSOR_QUESTION_ARROW,
 
 661  wxCURSOR_RIGHT_BUTTON,
 
 672 //    /* Not yet implemented for Windows */
 
 673 //    , wxCURSOR_CROSS_REVERSE,
 
 674 //    wxCURSOR_DOUBLE_ARROW,
 
 675 //    wxCURSOR_BASED_ARROW_UP,
 
 676 //    wxCURSOR_BASED_ARROW_DOWN
 
 678 } _standard_cursors_t;
 
 683     wxPAPER_NONE,               // Use specific dimensions
 
 684     wxPAPER_LETTER,             // Letter, 8 1/2 by 11 inches
 
 685     wxPAPER_LEGAL,              // Legal, 8 1/2 by 14 inches
 
 686     wxPAPER_A4,                 // A4 Sheet, 210 by 297 millimeters
 
 687     wxPAPER_CSHEET,             // C Sheet, 17 by 22 inches
 
 688     wxPAPER_DSHEET,             // D Sheet, 22 by 34 inches
 
 689     wxPAPER_ESHEET,             // E Sheet, 34 by 44 inches
 
 690     wxPAPER_LETTERSMALL,        // Letter Small, 8 1/2 by 11 inches
 
 691     wxPAPER_TABLOID,            // Tabloid, 11 by 17 inches
 
 692     wxPAPER_LEDGER,             // Ledger, 17 by 11 inches
 
 693     wxPAPER_STATEMENT,          // Statement, 5 1/2 by 8 1/2 inches
 
 694     wxPAPER_EXECUTIVE,          // Executive, 7 1/4 by 10 1/2 inches
 
 695     wxPAPER_A3,                 // A3 sheet, 297 by 420 millimeters
 
 696     wxPAPER_A4SMALL,            // A4 small sheet, 210 by 297 millimeters
 
 697     wxPAPER_A5,                 // A5 sheet, 148 by 210 millimeters
 
 698     wxPAPER_B4,                 // B4 sheet, 250 by 354 millimeters
 
 699     wxPAPER_B5,                 // B5 sheet, 182-by-257-millimeter paper
 
 700     wxPAPER_FOLIO,              // Folio, 8-1/2-by-13-inch paper
 
 701     wxPAPER_QUARTO,             // Quarto, 215-by-275-millimeter paper
 
 702     wxPAPER_10X14,              // 10-by-14-inch sheet
 
 703     wxPAPER_11X17,              // 11-by-17-inch sheet
 
 704     wxPAPER_NOTE,               // Note, 8 1/2 by 11 inches
 
 705     wxPAPER_ENV_9,              // #9 Envelope, 3 7/8 by 8 7/8 inches
 
 706     wxPAPER_ENV_10,             // #10 Envelope, 4 1/8 by 9 1/2 inches
 
 707     wxPAPER_ENV_11,             // #11 Envelope, 4 1/2 by 10 3/8 inches
 
 708     wxPAPER_ENV_12,             // #12 Envelope, 4 3/4 by 11 inches
 
 709     wxPAPER_ENV_14,             // #14 Envelope, 5 by 11 1/2 inches
 
 710     wxPAPER_ENV_DL,             // DL Envelope, 110 by 220 millimeters
 
 711     wxPAPER_ENV_C5,             // C5 Envelope, 162 by 229 millimeters
 
 712     wxPAPER_ENV_C3,             // C3 Envelope, 324 by 458 millimeters
 
 713     wxPAPER_ENV_C4,             // C4 Envelope, 229 by 324 millimeters
 
 714     wxPAPER_ENV_C6,             // C6 Envelope, 114 by 162 millimeters
 
 715     wxPAPER_ENV_C65,            // C65 Envelope, 114 by 229 millimeters
 
 716     wxPAPER_ENV_B4,             // B4 Envelope, 250 by 353 millimeters
 
 717     wxPAPER_ENV_B5,             // B5 Envelope, 176 by 250 millimeters
 
 718     wxPAPER_ENV_B6,             // B6 Envelope, 176 by 125 millimeters
 
 719     wxPAPER_ENV_ITALY,          // Italy Envelope, 110 by 230 millimeters
 
 720     wxPAPER_ENV_MONARCH,        // Monarch Envelope, 3 7/8 by 7 1/2 inches
 
 721     wxPAPER_ENV_PERSONAL,       // 6 3/4 Envelope, 3 5/8 by 6 1/2 inches
 
 722     wxPAPER_FANFOLD_US,         // US Std Fanfold, 14 7/8 by 11 inches
 
 723     wxPAPER_FANFOLD_STD_GERMAN, // German Std Fanfold, 8 1/2 by 12 inches
 
 724     wxPAPER_FANFOLD_LGL_GERMAN, // German Legal Fanfold, 8 1/2 by 13 inches
 
 726     wxPAPER_ISO_B4,             // B4 (ISO) 250 x 353 mm
 
 727     wxPAPER_JAPANESE_POSTCARD,  // Japanese Postcard 100 x 148 mm
 
 728     wxPAPER_9X11,               // 9 x 11 in
 
 729     wxPAPER_10X11,              // 10 x 11 in
 
 730     wxPAPER_15X11,              // 15 x 11 in
 
 731     wxPAPER_ENV_INVITE,         // Envelope Invite 220 x 220 mm
 
 732     wxPAPER_LETTER_EXTRA,       // Letter Extra 9 \275 x 12 in
 
 733     wxPAPER_LEGAL_EXTRA,        // Legal Extra 9 \275 x 15 in
 
 734     wxPAPER_TABLOID_EXTRA,      // Tabloid Extra 11.69 x 18 in
 
 735     wxPAPER_A4_EXTRA,           // A4 Extra 9.27 x 12.69 in
 
 736     wxPAPER_LETTER_TRANSVERSE,  // Letter Transverse 8 \275 x 11 in
 
 737     wxPAPER_A4_TRANSVERSE,      // A4 Transverse 210 x 297 mm
 
 738     wxPAPER_LETTER_EXTRA_TRANSVERSE, // Letter Extra Transverse 9\275 x 12 in
 
 739     wxPAPER_A_PLUS,             // SuperA/SuperA/A4 227 x 356 mm
 
 740     wxPAPER_B_PLUS,             // SuperB/SuperB/A3 305 x 487 mm
 
 741     wxPAPER_LETTER_PLUS,        // Letter Plus 8.5 x 12.69 in
 
 742     wxPAPER_A4_PLUS,            // A4 Plus 210 x 330 mm
 
 743     wxPAPER_A5_TRANSVERSE,      // A5 Transverse 148 x 210 mm
 
 744     wxPAPER_B5_TRANSVERSE,      // B5 (JIS) Transverse 182 x 257 mm
 
 745     wxPAPER_A3_EXTRA,           // A3 Extra 322 x 445 mm
 
 746     wxPAPER_A5_EXTRA,           // A5 Extra 174 x 235 mm
 
 747     wxPAPER_B5_EXTRA,           // B5 (ISO) Extra 201 x 276 mm
 
 748     wxPAPER_A2,                 // A2 420 x 594 mm
 
 749     wxPAPER_A3_TRANSVERSE,      // A3 Transverse 297 x 420 mm
 
 750     wxPAPER_A3_EXTRA_TRANSVERSE // A3 Extra Transverse 322 x 445 mm
 
 755     wxDUPLEX_SIMPLEX, // Non-duplex
 
 767 const char* wxVERSION_STRING;
 
 769 //---------------------------------------------------------------------------
 
 770 //---------------------------------------------------------------------------
 
 781  wxEVT_COMMAND_BUTTON_CLICKED,
 
 782  wxEVT_COMMAND_CHECKBOX_CLICKED,
 
 783  wxEVT_COMMAND_CHOICE_SELECTED,
 
 784  wxEVT_COMMAND_LISTBOX_SELECTED,
 
 785  wxEVT_COMMAND_LISTBOX_DOUBLECLICKED,
 
 786  wxEVT_COMMAND_CHECKLISTBOX_TOGGLED,
 
 787  wxEVT_COMMAND_SPINCTRL_UPDATED,
 
 788  wxEVT_COMMAND_TEXT_UPDATED,
 
 789  wxEVT_COMMAND_TEXT_ENTER,
 
 790  wxEVT_COMMAND_MENU_SELECTED,
 
 791  wxEVT_COMMAND_SLIDER_UPDATED,
 
 792  wxEVT_COMMAND_RADIOBOX_SELECTED,
 
 793  wxEVT_COMMAND_RADIOBUTTON_SELECTED,
 
 794 // wxEVT_COMMAND_SCROLLBAR_UPDATED is now obsolete since we use wxEVT_SCROLL... events
 
 795  wxEVT_COMMAND_SCROLLBAR_UPDATED,
 
 796  wxEVT_COMMAND_VLBOX_SELECTED,
 
 797  wxEVT_COMMAND_COMBOBOX_SELECTED,
 
 798  wxEVT_COMMAND_TOOL_CLICKED,
 
 799  wxEVT_COMMAND_TOOL_RCLICKED,
 
 800  wxEVT_COMMAND_TOOL_ENTER,
 
 804 /* Mouse event types */
 
 818  // Non-client mouse events
 
 819  wxEVT_NC_LEFT_DOWN = wxEVT_FIRST + 100,
 
 821  wxEVT_NC_MIDDLE_DOWN,
 
 826  wxEVT_NC_ENTER_WINDOW,
 
 827  wxEVT_NC_LEAVE_WINDOW,
 
 828  wxEVT_NC_LEFT_DCLICK,
 
 829  wxEVT_NC_MIDDLE_DCLICK,
 
 830  wxEVT_NC_RIGHT_DCLICK,
 
 832 /* Character input event type  */
 
 839   * Scrollbar event identifiers
 
 844  wxEVT_SCROLL_LINEDOWN,
 
 846  wxEVT_SCROLL_PAGEDOWN,
 
 847  wxEVT_SCROLL_THUMBTRACK,
 
 848  wxEVT_SCROLL_THUMBRELEASE,
 
 854  wxEVT_SCROLLWIN_BOTTOM,
 
 855  wxEVT_SCROLLWIN_LINEUP,
 
 856  wxEVT_SCROLLWIN_LINEDOWN,
 
 857  wxEVT_SCROLLWIN_PAGEUP,
 
 858  wxEVT_SCROLLWIN_PAGEDOWN,
 
 859  wxEVT_SCROLLWIN_THUMBTRACK,
 
 860  wxEVT_SCROLLWIN_THUMBRELEASE,
 
 862  wxEVT_SIZE = wxEVT_FIRST + 200,
 
 866  wxEVT_QUERY_END_SESSION,
 
 875  wxEVT_MOUSE_CAPTURE_CHANGED,
 
 877  wxEVT_ERASE_BACKGROUND,
 
 882  wxEVT_MENU_HIGHLIGHT,
 
 883  wxEVT_POPUP_MENU_INIT,
 
 885  wxEVT_SYS_COLOUR_CHANGED,
 
 886  wxEVT_SETTING_CHANGED,
 
 887  wxEVT_QUERY_NEW_PALETTE,
 
 888  wxEVT_PALETTE_CHANGED,
 
 889  wxEVT_JOY_BUTTON_DOWN,
 
 902  /* Generic command events */
 
 903  // Note: a click is a higher-level event
 
 904  // than button down/up
 
 905  wxEVT_COMMAND_LEFT_CLICK,
 
 906  wxEVT_COMMAND_LEFT_DCLICK,
 
 907  wxEVT_COMMAND_RIGHT_CLICK,
 
 908  wxEVT_COMMAND_RIGHT_DCLICK,
 
 909  wxEVT_COMMAND_SET_FOCUS,
 
 910  wxEVT_COMMAND_KILL_FOCUS,
 
 913  /* Tree control event types */
 
 914  wxEVT_COMMAND_TREE_BEGIN_DRAG,
 
 915  wxEVT_COMMAND_TREE_BEGIN_RDRAG,
 
 916  wxEVT_COMMAND_TREE_BEGIN_LABEL_EDIT,
 
 917  wxEVT_COMMAND_TREE_END_LABEL_EDIT,
 
 918  wxEVT_COMMAND_TREE_DELETE_ITEM,
 
 919  wxEVT_COMMAND_TREE_GET_INFO,
 
 920  wxEVT_COMMAND_TREE_SET_INFO,
 
 921  wxEVT_COMMAND_TREE_ITEM_EXPANDED,
 
 922  wxEVT_COMMAND_TREE_ITEM_EXPANDING,
 
 923  wxEVT_COMMAND_TREE_ITEM_COLLAPSED,
 
 924  wxEVT_COMMAND_TREE_ITEM_COLLAPSING,
 
 925  wxEVT_COMMAND_TREE_SEL_CHANGED,
 
 926  wxEVT_COMMAND_TREE_SEL_CHANGING,
 
 927  wxEVT_COMMAND_TREE_KEY_DOWN,
 
 928  wxEVT_COMMAND_TREE_ITEM_ACTIVATED,
 
 929  wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK,
 
 930  wxEVT_COMMAND_TREE_ITEM_MIDDLE_CLICK,
 
 932  /* List control event types */
 
 933  wxEVT_COMMAND_LIST_BEGIN_DRAG,
 
 934  wxEVT_COMMAND_LIST_BEGIN_RDRAG,
 
 935  wxEVT_COMMAND_LIST_BEGIN_LABEL_EDIT,
 
 936  wxEVT_COMMAND_LIST_END_LABEL_EDIT,
 
 937  wxEVT_COMMAND_LIST_DELETE_ITEM,
 
 938  wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS,
 
 939  wxEVT_COMMAND_LIST_GET_INFO,
 
 940  wxEVT_COMMAND_LIST_SET_INFO,
 
 941  wxEVT_COMMAND_LIST_ITEM_SELECTED,
 
 942  wxEVT_COMMAND_LIST_ITEM_DESELECTED,
 
 943  wxEVT_COMMAND_LIST_KEY_DOWN,
 
 944  wxEVT_COMMAND_LIST_INSERT_ITEM,
 
 945  wxEVT_COMMAND_LIST_COL_CLICK,
 
 946  wxEVT_COMMAND_LIST_ITEM_ACTIVATED,
 
 947  wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK,
 
 948  wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK,
 
 951  /* Tab and notebook control event types */
 
 952  wxEVT_COMMAND_TAB_SEL_CHANGED,
 
 953  wxEVT_COMMAND_TAB_SEL_CHANGING,
 
 954  wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED,
 
 955  wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING,
 
 957  /* splitter window */
 
 958  wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING,
 
 959  wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED,
 
 960  wxEVT_COMMAND_SPLITTER_UNSPLIT,
 
 961  wxEVT_COMMAND_SPLITTER_DOUBLECLICKED,
 
 963  wxEVT_NAVIGATION_KEY,
 
 974 //----------------------------------------------------------------------