| 1 | ///////////////////////////////////////////////////////////////////////////// |
| 2 | // Name: wx/stockitem.h |
| 3 | // Purpose: stock items helpers (privateh header) |
| 4 | // Author: Vaclav Slavik |
| 5 | // Modified by: |
| 6 | // Created: 2004-08-15 |
| 7 | // RCS-ID: $Id$ |
| 8 | // Copyright: (c) Vaclav Slavik, 2004 |
| 9 | // Licence: wxWindows licence |
| 10 | ///////////////////////////////////////////////////////////////////////////// |
| 11 | |
| 12 | #ifndef _WX_STOCKITEM_H_ |
| 13 | #define _WX_STOCKITEM_H_ |
| 14 | |
| 15 | #include "wx/defs.h" |
| 16 | #include "wx/chartype.h" |
| 17 | #include "wx/string.h" |
| 18 | #include "wx/accel.h" |
| 19 | |
| 20 | // ---------------------------------------------------------------------------- |
| 21 | // Helper functions for stock items handling: |
| 22 | // ---------------------------------------------------------------------------- |
| 23 | |
| 24 | // Returns true if the ID is in the list of recognized stock actions |
| 25 | WXDLLIMPEXP_CORE bool wxIsStockID(wxWindowID id); |
| 26 | |
| 27 | // Returns true of the label is empty or label of a stock button with |
| 28 | // given ID |
| 29 | WXDLLIMPEXP_CORE bool wxIsStockLabel(wxWindowID id, const wxString& label); |
| 30 | |
| 31 | enum wxStockLabelQueryFlag |
| 32 | { |
| 33 | wxSTOCK_NOFLAGS = 0, |
| 34 | |
| 35 | wxSTOCK_WITH_MNEMONIC = 1, |
| 36 | wxSTOCK_WITH_ACCELERATOR = 2 |
| 37 | }; |
| 38 | |
| 39 | // Returns label that should be used for given stock UI element (e.g. "&OK" |
| 40 | // for wxSTOCK_OK); if wxSTOCK_WITH_MNEMONIC is given, the & character |
| 41 | // is included; if wxSTOCK_WITH_ACCELERATOR is given, the stock accelerator |
| 42 | // for given ID is concatenated to the label using \t as separator |
| 43 | WXDLLIMPEXP_CORE wxString wxGetStockLabel(wxWindowID id, |
| 44 | long flags = wxSTOCK_WITH_MNEMONIC); |
| 45 | |
| 46 | #if wxUSE_ACCEL |
| 47 | |
| 48 | // Returns the accelerator that should be used for given stock UI element |
| 49 | // (e.g. "Ctrl+x" for wxSTOCK_EXIT) |
| 50 | WXDLLIMPEXP_CORE wxAcceleratorEntry wxGetStockAccelerator(wxWindowID id); |
| 51 | |
| 52 | #endif |
| 53 | |
| 54 | // wxStockHelpStringClient conceptually works like wxArtClient: it gives a hint to |
| 55 | // wxGetStockHelpString() about the context where the help string is to be used |
| 56 | enum wxStockHelpStringClient |
| 57 | { |
| 58 | wxSTOCK_MENU // help string to use for menu items |
| 59 | }; |
| 60 | |
| 61 | // Returns an help string for the given stock UI element and for the given "context". |
| 62 | WXDLLIMPEXP_CORE wxString wxGetStockHelpString(wxWindowID id, |
| 63 | wxStockHelpStringClient client = wxSTOCK_MENU); |
| 64 | |
| 65 | |
| 66 | #ifdef __WXGTK20__ |
| 67 | |
| 68 | // Translates stock ID to GTK+'s stock item string indentifier: |
| 69 | WXDLLIMPEXP_CORE const char *wxGetStockGtkID(wxWindowID id); |
| 70 | |
| 71 | #endif |
| 72 | |
| 73 | #endif // _WX_STOCKITEM_H_ |