avoid infinite recursion for richtooltops, (hopefully) fixes #15070
[wxWidgets.git] / interface / wx / defs.h
index e8ce18bf2302de97e8f2af4954bf57d7fd8097b5..1c7ea5e95d108601aab32ab248523f0356de27fc 100644 (file)
@@ -144,6 +144,28 @@ enum wxBorder
     wxBORDER_MASK   = 0x1f200000
 };
 
+/*  ---------------------------------------------------------------------------- */
+/*  Possible SetSize flags */
+/*  ---------------------------------------------------------------------------- */
+
+/*  Use internally-calculated width if -1 */
+#define wxSIZE_AUTO_WIDTH       0x0001
+/*  Use internally-calculated height if -1 */
+#define wxSIZE_AUTO_HEIGHT      0x0002
+/*  Use internally-calculated width and height if each is -1 */
+#define wxSIZE_AUTO             (wxSIZE_AUTO_WIDTH|wxSIZE_AUTO_HEIGHT)
+/*  Ignore missing (-1) dimensions (use existing). */
+/*  For readability only: test for wxSIZE_AUTO_WIDTH/HEIGHT in code. */
+#define wxSIZE_USE_EXISTING     0x0000
+/*  Allow -1 as a valid position */
+#define wxSIZE_ALLOW_MINUS_ONE  0x0004
+/*  Don't do parent client adjustments (for implementation only) */
+#define wxSIZE_NO_ADJUSTMENTS   0x0008
+/*  Change the window position even if it seems to be already correct */
+#define wxSIZE_FORCE            0x0010
+/*  Emit size event even if size didn't change */
+#define wxSIZE_FORCE_EVENT      0x0020
+
 /*  ---------------------------------------------------------------------------- */
 /*  Window style flags */
 /*  ---------------------------------------------------------------------------- */
@@ -376,14 +398,12 @@ enum wxBorder
 /*  Old names for compatibility */
 #define wxRA_HORIZONTAL     wxHORIZONTAL
 #define wxRA_VERTICAL       wxVERTICAL
-#define wxRA_USE_CHECKBOX   0x0010 /* alternative native subcontrols (wxPalmOS) */
 
 /*
  * wxRadioButton style flag
  */
 #define wxRB_GROUP          0x0004
 #define wxRB_SINGLE         0x0008
-#define wxRB_USE_CHECKBOX   0x0010 /* alternative native control (wxPalmOS) */
 
 /*
  * wxScrollBar flags
@@ -457,18 +477,22 @@ enum wxBorder
 #define wxICON_STOP             wxICON_HAND
 #define wxICON_ASTERISK         wxICON_INFORMATION
 
-#define  wxFORWARD              0x00001000
-#define  wxBACKWARD             0x00002000
-#define  wxRESET                0x00004000
-#define  wxHELP                 0x00008000
-#define  wxMORE                 0x00010000
-#define  wxSETUP                0x00020000
+#define wxHELP                  0x00001000
+#define wxFORWARD               0x00002000
+#define wxBACKWARD              0x00004000
+#define wxRESET                 0x00008000
+#define wxMORE                  0x00010000
+#define wxSETUP                 0x00020000
 #define wxICON_NONE             0x00040000
 
 #define wxICON_MASK \
     (wxICON_EXCLAMATION|wxICON_HAND|wxICON_QUESTION|wxICON_INFORMATION|wxICON_NONE)
 
 
+/*  symbolic constant used by all Find()-like functions returning positive */
+/*  integer on success as failure indicator */
+#define wxNOT_FOUND       (-1)
+
 /**
     Background styles.
 
@@ -517,7 +541,19 @@ enum wxBackgroundStyle
         EVT_ERASE_BACKGROUND event will not be generated at all for windows
         with this style.
      */
-    wxBG_STYLE_PAINT
+    wxBG_STYLE_PAINT,
+    
+    /* this style is deprecated and doesn't do anything, don't use */
+    wxBG_STYLE_COLOUR,
+
+    /**
+        Indicates that the window background is not erased, letting the parent
+        window show through.
+
+        Currently this style is only supported in wxOSX and wxGTK with
+        compositing available, see wxWindow::IsTransparentBackgroundSupported().
+     */
+    wxBG_STYLE_TRANSPARENT,
 };
 
 
@@ -526,9 +562,8 @@ enum wxBackgroundStyle
 
     Notice that some, but @em not all, of these IDs are also stock IDs, i.e.
     you can use them for the button or menu items without specifying the label
-    which will be provided by the underlying platform itself. See @ref "the
-    list of stock items" for the subset of standard IDs which are stock IDs as
-    well.
+    which will be provided by the underlying platform itself. See @ref page_stockitems "the
+    list of stock items" for the subset of standard IDs which are stock IDs as well.
 */
 enum wxStandardID
 {
@@ -831,6 +866,33 @@ enum wxKeyCode
      */
     WXK_NONE    =    0,
 
+    WXK_CONTROL_A = 1,
+    WXK_CONTROL_B,
+    WXK_CONTROL_C,
+    WXK_CONTROL_D,
+    WXK_CONTROL_E,
+    WXK_CONTROL_F,
+    WXK_CONTROL_G,
+    WXK_CONTROL_H,
+    WXK_CONTROL_I,
+    WXK_CONTROL_J,
+    WXK_CONTROL_K,
+    WXK_CONTROL_L,
+    WXK_CONTROL_M,
+    WXK_CONTROL_N,
+    WXK_CONTROL_O,
+    WXK_CONTROL_P,
+    WXK_CONTROL_Q,
+    WXK_CONTROL_R,
+    WXK_CONTROL_S,
+    WXK_CONTROL_T,
+    WXK_CONTROL_U,
+    WXK_CONTROL_V,
+    WXK_CONTROL_W,
+    WXK_CONTROL_X,
+    WXK_CONTROL_Y,
+    WXK_CONTROL_Z,
+    
     WXK_BACK    =    8,     //!< Backspace.
     WXK_TAB     =    9,
     WXK_RETURN  =    13,
@@ -854,7 +916,19 @@ enum wxKeyCode
     WXK_CLEAR,
     WXK_SHIFT,
     WXK_ALT,
+    /** Note that under Mac OS X, to improve compatibility with other
+      * systems, 'WXK_CONTROL' represents the 'Command' key. Use this
+      * constant to work with keyboard shortcuts. See 'WXK_RAW_CONTROL'
+      * to get the state of the actual 'Control' key.
+      */
     WXK_CONTROL,
+    /** Under Mac OS X, where the 'Command' key is mapped to 'Control'
+      * to improve compatibility with other systems, WXK_RAW_CONTROL may
+      * be used to obtain the state of the actual 'Control' key
+      * ('WXK_CONTROL' would obtain the status of the 'Command' key).
+      * Under Windows/Linux/Others, this is equivalent to WXK_CONTROL
+      */
+    WXK_RAW_CONTROL,
     WXK_MENU,
     WXK_PAUSE,
     WXK_CAPITAL,
@@ -945,6 +1019,11 @@ enum wxKeyCode
     WXK_WINDOWS_LEFT,
     WXK_WINDOWS_RIGHT,
     WXK_WINDOWS_MENU ,
+    
+    /** This special key code was used to represent the key used for keyboard shortcuts. Under Mac OS X,
+      * this key maps to the 'Command' (aka logo or 'Apple') key, whereas on Linux/Windows/others
+      * this is the Control key, with the new semantic of WXK_CONTROL, WXK_COMMAND is not needed anymore
+      */
     WXK_COMMAND,
 
     /** Hardware-specific buttons */
@@ -1000,127 +1079,123 @@ enum wxKeyModifier
 */
 enum wxPaperSize
 {
-    wxPAPER_NONE,               ///<  Use specific dimensions
-    wxPAPER_LETTER,             ///<  Letter, 8 1/2 by 11 inches
-    wxPAPER_LEGAL,              ///<  Legal, 8 1/2 by 14 inches
-    wxPAPER_A4,                 ///<  A4 Sheet, 210 by 297 millimeters
-    wxPAPER_CSHEET,             ///<  C Sheet, 17 by 22 inches
-    wxPAPER_DSHEET,             ///<  D Sheet, 22 by 34 inches
-    wxPAPER_ESHEET,             ///<  E Sheet, 34 by 44 inches
-    wxPAPER_LETTERSMALL,        ///<  Letter Small, 8 1/2 by 11 inches
-    wxPAPER_TABLOID,            ///<  Tabloid, 11 by 17 inches
-    wxPAPER_LEDGER,             ///<  Ledger, 17 by 11 inches
-    wxPAPER_STATEMENT,          ///<  Statement, 5 1/2 by 8 1/2 inches
-    wxPAPER_EXECUTIVE,          ///<  Executive, 7 1/4 by 10 1/2 inches
+    wxPAPER_10X11,              ///<  10 x 11 in
+    wxPAPER_10X14,              ///<  10-by-14-inch sheet
+    wxPAPER_11X17,              ///<  11-by-17-inch sheet
+    wxPAPER_12X11,              ///< 12 x 11 in
+    wxPAPER_15X11,              ///<  15 x 11 in
+    wxPAPER_9X11,               ///<  9 x 11 in
+    wxPAPER_A2,                 ///<  A2 420 x 594 mm
     wxPAPER_A3,                 ///<  A3 sheet, 297 by 420 millimeters
+    wxPAPER_A3_EXTRA,           ///<  A3 Extra 322 x 445 mm
+    wxPAPER_A3_EXTRA_TRANSVERSE, ///<  A3 Extra Transverse 322 x 445 mm
+    wxPAPER_A3_ROTATED,         ///< A3 Rotated 420 x 297 mm
+    wxPAPER_A3_TRANSVERSE,      ///<  A3 Transverse 297 x 420 mm
+    wxPAPER_A4,                 ///<  A4 Sheet, 210 by 297 millimeters
     wxPAPER_A4SMALL,            ///<  A4 small sheet, 210 by 297 millimeters
+    wxPAPER_A4_EXTRA,           ///<  A4 Extra 9.27 x 12.69 in
+    wxPAPER_A4_PLUS,            ///<  A4 Plus 210 x 330 mm
+    wxPAPER_A4_ROTATED,         ///< A4 Rotated 297 x 210 mm
+    wxPAPER_A4_TRANSVERSE,      ///<  A4 Transverse 210 x 297 mm
     wxPAPER_A5,                 ///<  A5 sheet, 148 by 210 millimeters
+    wxPAPER_A5_EXTRA,           ///<  A5 Extra 174 x 235 mm
+    wxPAPER_A5_ROTATED,         ///< A5 Rotated 210 x 148 mm
+    wxPAPER_A5_TRANSVERSE,      ///<  A5 Transverse 148 x 210 mm
+    wxPAPER_A6,                 ///< A6 105 x 148 mm
+    wxPAPER_A6_ROTATED,         ///< A6 Rotated 148 x 105 mm
+    wxPAPER_A_PLUS,             ///<  SuperA/SuperA/A4 227 x 356 mm
     wxPAPER_B4,                 ///<  B4 sheet, 250 by 354 millimeters
+    wxPAPER_B4_JIS_ROTATED,     ///< B4 (JIS) Rotated 364 x 257 mm
     wxPAPER_B5,                 ///<  B5 sheet, 182-by-257-millimeter paper
-    wxPAPER_FOLIO,              ///<  Folio, 8-1/2-by-13-inch paper
-    wxPAPER_QUARTO,             ///<  Quarto, 215-by-275-millimeter paper
-    wxPAPER_10X14,              ///<  10-by-14-inch sheet
-    wxPAPER_11X17,              ///<  11-by-17-inch sheet
-    wxPAPER_NOTE,               ///<  Note, 8 1/2 by 11 inches
-    wxPAPER_ENV_9,              ///<  #9 Envelope, 3 7/8 by 8 7/8 inches
+    wxPAPER_B5_EXTRA,           ///<  B5 (ISO) Extra 201 x 276 mm
+    wxPAPER_B5_JIS_ROTATED,     ///< B5 (JIS) Rotated 257 x 182 mm
+    wxPAPER_B5_TRANSVERSE,      ///<  B5 (JIS) Transverse 182 x 257 mm
+    wxPAPER_B6_JIS,             ///< B6 (JIS) 128 x 182 mm
+    wxPAPER_B6_JIS_ROTATED,     ///< B6 (JIS) Rotated 182 x 128 mm
+    wxPAPER_B_PLUS,             ///<  SuperB/SuperB/A3 305 x 487 mm
+    wxPAPER_CSHEET,             ///<  C Sheet, 17 by 22 inches
+    wxPAPER_DBL_JAPANESE_POSTCARD, ///< Japanese Double Postcard 200 x 148 mm
+    wxPAPER_DBL_JAPANESE_POSTCARD_ROTATED, ///< Double Japanese Postcard Rotated 148 x 200 mm
+    wxPAPER_DSHEET,             ///<  D Sheet, 22 by 34 inches
     wxPAPER_ENV_10,             ///<  #10 Envelope, 4 1/8 by 9 1/2 inches
     wxPAPER_ENV_11,             ///<  #11 Envelope, 4 1/2 by 10 3/8 inches
     wxPAPER_ENV_12,             ///<  #12 Envelope, 4 3/4 by 11 inches
     wxPAPER_ENV_14,             ///<  #14 Envelope, 5 by 11 1/2 inches
-    wxPAPER_ENV_DL,             ///<  DL Envelope, 110 by 220 millimeters
-    wxPAPER_ENV_C5,             ///<  C5 Envelope, 162 by 229 millimeters
+    wxPAPER_ENV_9,              ///<  #9 Envelope, 3 7/8 by 8 7/8 inches
+    wxPAPER_ENV_B4,             ///<  B4 Envelope, 250 by 353 millimeters
+    wxPAPER_ENV_B5,             ///<  B5 Envelope, 176 by 250 millimeters
+    wxPAPER_ENV_B6,             ///<  B6 Envelope, 176 by 125 millimeters
     wxPAPER_ENV_C3,             ///<  C3 Envelope, 324 by 458 millimeters
     wxPAPER_ENV_C4,             ///<  C4 Envelope, 229 by 324 millimeters
+    wxPAPER_ENV_C5,             ///<  C5 Envelope, 162 by 229 millimeters
     wxPAPER_ENV_C6,             ///<  C6 Envelope, 114 by 162 millimeters
     wxPAPER_ENV_C65,            ///<  C65 Envelope, 114 by 229 millimeters
-    wxPAPER_ENV_B4,             ///<  B4 Envelope, 250 by 353 millimeters
-    wxPAPER_ENV_B5,             ///<  B5 Envelope, 176 by 250 millimeters
-    wxPAPER_ENV_B6,             ///<  B6 Envelope, 176 by 125 millimeters
+    wxPAPER_ENV_DL,             ///<  DL Envelope, 110 by 220 millimeters
+    wxPAPER_ENV_INVITE,         ///<  Envelope Invite 220 x 220 mm
     wxPAPER_ENV_ITALY,          ///<  Italy Envelope, 110 by 230 millimeters
     wxPAPER_ENV_MONARCH,        ///<  Monarch Envelope, 3 7/8 by 7 1/2 inches
     wxPAPER_ENV_PERSONAL,       ///<  6 3/4 Envelope, 3 5/8 by 6 1/2 inches
-    wxPAPER_FANFOLD_US,         ///<  US Std Fanfold, 14 7/8 by 11 inches
-    wxPAPER_FANFOLD_STD_GERMAN, ///<  German Std Fanfold, 8 1/2 by 12 inches
+    wxPAPER_ESHEET,             ///<  E Sheet, 34 by 44 inches
+    wxPAPER_EXECUTIVE,          ///<  Executive, 7 1/4 by 10 1/2 inches
     wxPAPER_FANFOLD_LGL_GERMAN, ///<  German Legal Fanfold, 8 1/2 by 13 inches
-
-    // wxMSW Only
-
+    wxPAPER_FANFOLD_STD_GERMAN, ///<  German Std Fanfold, 8 1/2 by 12 inches
+    wxPAPER_FANFOLD_US,         ///<  US Std Fanfold, 14 7/8 by 11 inches
+    wxPAPER_FOLIO,              ///<  Folio, 8-1/2-by-13-inch paper
     wxPAPER_ISO_B4,             ///<  B4 (ISO) 250 x 353 mm
     wxPAPER_JAPANESE_POSTCARD,  ///<  Japanese Postcard 100 x 148 mm
-    wxPAPER_9X11,               ///<  9 x 11 in
-    wxPAPER_10X11,              ///<  10 x 11 in
-    wxPAPER_15X11,              ///<  15 x 11 in
-    wxPAPER_ENV_INVITE,         ///<  Envelope Invite 220 x 220 mm
-    wxPAPER_LETTER_EXTRA,       ///<  Letter Extra 9.5 x 12 in
-    wxPAPER_LEGAL_EXTRA,        ///<  Legal Extra 9.5 x 15 in
-    wxPAPER_TABLOID_EXTRA,      ///<  Tabloid Extra 11.69 x 18 in
-    wxPAPER_A4_EXTRA,           ///<  A4 Extra 9.27 x 12.69 in
-    wxPAPER_LETTER_TRANSVERSE,  ///<  Letter Transverse 8.5 x 11 in
-    wxPAPER_A4_TRANSVERSE,      ///<  A4 Transverse 210 x 297 mm
-    wxPAPER_LETTER_EXTRA_TRANSVERSE, ///<  Letter Extra Transverse 9.5 x 12 in
-    wxPAPER_A_PLUS,             ///<  SuperA/SuperA/A4 227 x 356 mm
-    wxPAPER_B_PLUS,             ///<  SuperB/SuperB/A3 305 x 487 mm
-    wxPAPER_LETTER_PLUS,        ///<  Letter Plus 8.5 x 12.69 in
-    wxPAPER_A4_PLUS,            ///<  A4 Plus 210 x 330 mm
-    wxPAPER_A5_TRANSVERSE,      ///<  A5 Transverse 148 x 210 mm
-    wxPAPER_B5_TRANSVERSE,      ///<  B5 (JIS) Transverse 182 x 257 mm
-    wxPAPER_A3_EXTRA,           ///<  A3 Extra 322 x 445 mm
-    wxPAPER_A5_EXTRA,           ///<  A5 Extra 174 x 235 mm
-    wxPAPER_B5_EXTRA,           ///<  B5 (ISO) Extra 201 x 276 mm
-    wxPAPER_A2,                 ///<  A2 420 x 594 mm
-    wxPAPER_A3_TRANSVERSE,      ///<  A3 Transverse 297 x 420 mm
-    wxPAPER_A3_EXTRA_TRANSVERSE, ///<  A3 Extra Transverse 322 x 445 mm
-
-    wxPAPER_DBL_JAPANESE_POSTCARD, ///< Japanese Double Postcard 200 x 148 mm
-    wxPAPER_A6,                 ///< A6 105 x 148 mm
-    wxPAPER_JENV_KAKU2,         ///< Japanese Envelope Kaku #2
-    wxPAPER_JENV_KAKU3,         ///< Japanese Envelope Kaku #3
+    wxPAPER_JAPANESE_POSTCARD_ROTATED, ///< Japanese Postcard Rotated 148 x 100 mm
     wxPAPER_JENV_CHOU3,         ///< Japanese Envelope Chou #3
+    wxPAPER_JENV_CHOU3_ROTATED, ///< Japanese Envelope Chou #3 Rotated
     wxPAPER_JENV_CHOU4,         ///< Japanese Envelope Chou #4
-    wxPAPER_LETTER_ROTATED,     ///< Letter Rotated 11 x 8 1/2 in
-    wxPAPER_A3_ROTATED,         ///< A3 Rotated 420 x 297 mm
-    wxPAPER_A4_ROTATED,         ///< A4 Rotated 297 x 210 mm
-    wxPAPER_A5_ROTATED,         ///< A5 Rotated 210 x 148 mm
-    wxPAPER_B4_JIS_ROTATED,     ///< B4 (JIS) Rotated 364 x 257 mm
-    wxPAPER_B5_JIS_ROTATED,     ///< B5 (JIS) Rotated 257 x 182 mm
-    wxPAPER_JAPANESE_POSTCARD_ROTATED, ///< Japanese Postcard Rotated 148 x 100 mm
-    wxPAPER_DBL_JAPANESE_POSTCARD_ROTATED, ///< Double Japanese Postcard Rotated 148 x 200 mm
-    wxPAPER_A6_ROTATED,         ///< A6 Rotated 148 x 105 mm
+    wxPAPER_JENV_CHOU4_ROTATED, ///< Japanese Envelope Chou #4 Rotated
+    wxPAPER_JENV_KAKU2,         ///< Japanese Envelope Kaku #2
     wxPAPER_JENV_KAKU2_ROTATED, ///< Japanese Envelope Kaku #2 Rotated
+    wxPAPER_JENV_KAKU3,         ///< Japanese Envelope Kaku #3
     wxPAPER_JENV_KAKU3_ROTATED, ///< Japanese Envelope Kaku #3 Rotated
-    wxPAPER_JENV_CHOU3_ROTATED, ///< Japanese Envelope Chou #3 Rotated
-    wxPAPER_JENV_CHOU4_ROTATED, ///< Japanese Envelope Chou #4 Rotated
-    wxPAPER_B6_JIS,             ///< B6 (JIS) 128 x 182 mm
-    wxPAPER_B6_JIS_ROTATED,     ///< B6 (JIS) Rotated 182 x 128 mm
-    wxPAPER_12X11,              ///< 12 x 11 in
     wxPAPER_JENV_YOU4,          ///< Japanese Envelope You #4
     wxPAPER_JENV_YOU4_ROTATED,  ///< Japanese Envelope You #4 Rotated
+    wxPAPER_LEDGER,             ///<  Ledger, 17 by 11 inches
+    wxPAPER_LEGAL,              ///<  Legal, 8 1/2 by 14 inches
+    wxPAPER_LEGAL_EXTRA,        ///<  Legal Extra 9.5 x 15 in
+    wxPAPER_LETTER,             ///<  Letter, 8 1/2 by 11 inches
+    wxPAPER_LETTERSMALL,        ///<  Letter Small, 8 1/2 by 11 inches
+    wxPAPER_LETTER_EXTRA,       ///<  Letter Extra 9.5 x 12 in
+    wxPAPER_LETTER_EXTRA_TRANSVERSE, ///<  Letter Extra Transverse 9.5 x 12 in
+    wxPAPER_LETTER_PLUS,        ///<  Letter Plus 8.5 x 12.69 in
+    wxPAPER_LETTER_ROTATED,     ///< Letter Rotated 11 x 8 1/2 in
+    wxPAPER_LETTER_TRANSVERSE,  ///<  Letter Transverse 8.5 x 11 in
+    wxPAPER_NONE,               ///<  Use specific dimensions
+    wxPAPER_NOTE,               ///<  Note, 8 1/2 by 11 inches
     wxPAPER_P16K,               ///< PRC 16K 146 x 215 mm
+    wxPAPER_P16K_ROTATED,       ///< PRC 16K Rotated
     wxPAPER_P32K,               ///< PRC 32K 97 x 151 mm
     wxPAPER_P32KBIG,            ///< PRC 32K(Big) 97 x 151 mm
+    wxPAPER_P32KBIG_ROTATED,    ///< PRC 32K(Big) Rotated
+    wxPAPER_P32K_ROTATED,       ///< PRC 32K Rotated
     wxPAPER_PENV_1,             ///< PRC Envelope #1 102 x 165 mm
-    wxPAPER_PENV_2,             ///< PRC Envelope #2 102 x 176 mm
-    wxPAPER_PENV_3,             ///< PRC Envelope #3 125 x 176 mm
-    wxPAPER_PENV_4,             ///< PRC Envelope #4 110 x 208 mm
-    wxPAPER_PENV_5,             ///< PRC Envelope #5 110 x 220 mm
-    wxPAPER_PENV_6,             ///< PRC Envelope #6 120 x 230 mm
-    wxPAPER_PENV_7,             ///< PRC Envelope #7 160 x 230 mm
-    wxPAPER_PENV_8,             ///< PRC Envelope #8 120 x 309 mm
-    wxPAPER_PENV_9,             ///< PRC Envelope #9 229 x 324 mm
     wxPAPER_PENV_10,            ///< PRC Envelope #10 324 x 458 mm
-    wxPAPER_P16K_ROTATED,       ///< PRC 16K Rotated
-    wxPAPER_P32K_ROTATED,       ///< PRC 32K Rotated
-    wxPAPER_P32KBIG_ROTATED,    ///< PRC 32K(Big) Rotated
+    wxPAPER_PENV_10_ROTATED,    ///< PRC Envelope #10 Rotated 458 x 324 m
     wxPAPER_PENV_1_ROTATED,     ///< PRC Envelope #1 Rotated 165 x 102 mm
+    wxPAPER_PENV_2,             ///< PRC Envelope #2 102 x 176 mm
     wxPAPER_PENV_2_ROTATED,     ///< PRC Envelope #2 Rotated 176 x 102 mm
+    wxPAPER_PENV_3,             ///< PRC Envelope #3 125 x 176 mm
     wxPAPER_PENV_3_ROTATED,     ///< PRC Envelope #3 Rotated 176 x 125 mm
+    wxPAPER_PENV_4,             ///< PRC Envelope #4 110 x 208 mm
     wxPAPER_PENV_4_ROTATED,     ///< PRC Envelope #4 Rotated 208 x 110 mm
+    wxPAPER_PENV_5,             ///< PRC Envelope #5 110 x 220 mm
     wxPAPER_PENV_5_ROTATED,     ///< PRC Envelope #5 Rotated 220 x 110 mm
+    wxPAPER_PENV_6,             ///< PRC Envelope #6 120 x 230 mm
     wxPAPER_PENV_6_ROTATED,     ///< PRC Envelope #6 Rotated 230 x 120 mm
+    wxPAPER_PENV_7,             ///< PRC Envelope #7 160 x 230 mm
     wxPAPER_PENV_7_ROTATED,     ///< PRC Envelope #7 Rotated 230 x 160 mm
+    wxPAPER_PENV_8,             ///< PRC Envelope #8 120 x 309 mm
     wxPAPER_PENV_8_ROTATED,     ///< PRC Envelope #8 Rotated 309 x 120 mm
+    wxPAPER_PENV_9,             ///< PRC Envelope #9 229 x 324 mm
     wxPAPER_PENV_9_ROTATED,     ///< PRC Envelope #9 Rotated 324 x 229 mm
-    wxPAPER_PENV_10_ROTATED     ///< PRC Envelope #10 Rotated 458 x 324 m
+    wxPAPER_QUARTO,             ///<  Quarto, 215-by-275-millimeter paper
+    wxPAPER_STATEMENT,          ///<  Statement, 5 1/2 by 8 1/2 inches
+    wxPAPER_TABLOID,            ///<  Tabloid, 11 by 17 inches
+    wxPAPER_TABLOID_EXTRA       ///<  Tabloid Extra 11.69 x 18 in
 };
 
 /**
@@ -1143,6 +1218,16 @@ enum wxDuplexMode
     wxDUPLEX_VERTICAL
 };
 
+/**
+    Print quality.
+*/
+#define wxPRINT_QUALITY_HIGH    -1
+#define wxPRINT_QUALITY_MEDIUM  -2
+#define wxPRINT_QUALITY_LOW     -3
+#define wxPRINT_QUALITY_DRAFT   -4
+
+typedef int wxPrintQuality;
+
 /**
     Print mode (currently PostScript only).
 */