X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/401e3b6e5f50f15571b86297b5d1e3f55c473f6f..46b8d15a67701e1a2594b0eca820f166645e1b31:/include/wx/stockitem.h diff --git a/include/wx/stockitem.h b/include/wx/stockitem.h index 0b157887dc..05814e8905 100644 --- a/include/wx/stockitem.h +++ b/include/wx/stockitem.h @@ -1,6 +1,6 @@ ///////////////////////////////////////////////////////////////////////////// // Name: wx/stockitem.h -// Purpose: wxStockItemID enum +// Purpose: stock items helpers (privateh header) // Author: Vaclav Slavik // Modified by: // Created: 2004-08-15 @@ -12,85 +12,66 @@ #ifndef _WX_STOCKITEM_H_ #define _WX_STOCKITEM_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma interface "stockitem.h" -#endif - #include "wx/defs.h" +#include "wx/chartype.h" #include "wx/string.h" +#include "wx/accel.h" // ---------------------------------------------------------------------------- -// Stock item IDs for use with wxButton, wxMenu and wxToolBar: +// Helper functions for stock items handling: // ---------------------------------------------------------------------------- -enum wxStockItemID +// Returns true if the ID is in the list of recognized stock actions +WXDLLIMPEXP_CORE bool wxIsStockID(wxWindowID id); + +// Returns true of the label is empty or label of a stock button with +// given ID +WXDLLIMPEXP_CORE bool wxIsStockLabel(wxWindowID id, const wxString& label); + +enum wxStockLabelQueryFlag { - wxSTOCK_NONE = 0, - wxSTOCK_ADD, - wxSTOCK_APPLY, - wxSTOCK_BOLD, - wxSTOCK_CANCEL, - wxSTOCK_CLEAR, - wxSTOCK_CLOSE, - wxSTOCK_COPY, - wxSTOCK_CUT, - wxSTOCK_DELETE, - wxSTOCK_FIND, - wxSTOCK_FIND_AND_REPLACE, - wxSTOCK_GO_BACK, - wxSTOCK_GO_DOWN, - wxSTOCK_GO_FORWARD, - wxSTOCK_GO_UP, - wxSTOCK_HELP, - wxSTOCK_HOME, - wxSTOCK_INDENT, - wxSTOCK_INDEX, - wxSTOCK_ITALIC, - wxSTOCK_JUSTIFY_CENTER, - wxSTOCK_JUSTIFY_FILL, - wxSTOCK_JUSTIFY_LEFT, - wxSTOCK_JUSTIFY_RIGHT, - wxSTOCK_NEW, - wxSTOCK_NO, - wxSTOCK_OK, - wxSTOCK_OPEN, - wxSTOCK_PASTE, - wxSTOCK_PREFERENCES, - wxSTOCK_PRINT, - wxSTOCK_PRINT_PREVIEW, - wxSTOCK_PROPERTIES, - wxSTOCK_QUIT, - wxSTOCK_REDO, - wxSTOCK_REFRESH, - wxSTOCK_REMOVE, - wxSTOCK_REVERT_TO_SAVED, - wxSTOCK_SAVE, - wxSTOCK_SAVE_AS, - wxSTOCK_STOP, - wxSTOCK_UNDELETE, - wxSTOCK_UNDERLINE, - wxSTOCK_UNDO, - wxSTOCK_UNINDENT, - wxSTOCK_YES, - wxSTOCK_ZOOM_100, - wxSTOCK_ZOOM_FIT, - wxSTOCK_ZOOM_IN, - wxSTOCK_ZOOM_OUT - // NB: when you add new item here, add it to stockitem.cpp and - // documentation as well -}; + wxSTOCK_NOFLAGS = 0, -// ---------------------------------------------------------------------------- -// Helper functions: -// ---------------------------------------------------------------------------- + wxSTOCK_WITH_MNEMONIC = 1, + wxSTOCK_WITH_ACCELERATOR = 2, + + // return label for button, not menu item: notice that this always included + // wxSTOCK_WITH_MNEMONIC as buttons should use mnemonics + wxSTOCK_FOR_BUTTON = 5 +}; // Returns label that should be used for given stock UI element (e.g. "&OK" -// for wxSTOCK_OK): -wxString wxGetStockItemLabel(wxStockItemID item); +// for wxSTOCK_OK); if wxSTOCK_WITH_MNEMONIC is given, the & character +// is included; if wxSTOCK_WITH_ACCELERATOR is given, the stock accelerator +// for given ID is concatenated to the label using \t as separator +WXDLLIMPEXP_CORE wxString wxGetStockLabel(wxWindowID id, + long flags = wxSTOCK_WITH_MNEMONIC); + +#if wxUSE_ACCEL + + // Returns the accelerator that should be used for given stock UI element + // (e.g. "Ctrl+x" for wxSTOCK_EXIT) + WXDLLIMPEXP_CORE wxAcceleratorEntry wxGetStockAccelerator(wxWindowID id); + +#endif + +// wxStockHelpStringClient conceptually works like wxArtClient: it gives a hint to +// wxGetStockHelpString() about the context where the help string is to be used +enum wxStockHelpStringClient +{ + wxSTOCK_MENU // help string to use for menu items +}; + +// Returns an help string for the given stock UI element and for the given "context". +WXDLLIMPEXP_CORE wxString wxGetStockHelpString(wxWindowID id, + wxStockHelpStringClient client = wxSTOCK_MENU); + #ifdef __WXGTK20__ + // Translates stock ID to GTK+'s stock item string indentifier: -const char *wxStockItemToGTK(wxStockItemID item); +WXDLLIMPEXP_CORE const char *wxGetStockGtkID(wxWindowID id); + #endif #endif // _WX_STOCKITEM_H_