]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/stockitem.h
Tidy up includes and #if wxUSE statements.
[wxWidgets.git] / include / wx / stockitem.h
index 56847d3fcee79959294dd2526edb7590b903f852..126489afa46139975c804c10a1295ad29d479741 100644 (file)
 #ifndef _WX_STOCKITEM_H_
 #define _WX_STOCKITEM_H_
 
 #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/defs.h"
+#include "wx/wxchar.h"
 #include "wx/string.h"
 #include "wx/string.h"
+#include "wx/accel.h"
 
 // ----------------------------------------------------------------------------
 // Helper functions for stock items handling:
 // ----------------------------------------------------------------------------
 
 // Returns true if the ID is in the list of recognized stock actions
 
 // ----------------------------------------------------------------------------
 // Helper functions for stock items handling:
 // ----------------------------------------------------------------------------
 
 // Returns true if the ID is in the list of recognized stock actions
-bool wxIsStockID(wxWindowID id);
+WXDLLEXPORT bool wxIsStockID(wxWindowID id);
 
 // Returns true of the label is empty or label of a stock button with
 // given ID
 
 // Returns true of the label is empty or label of a stock button with
 // given ID
-bool wxIsStockLabel(wxWindowID id, const wxString& label);
+WXDLLEXPORT bool wxIsStockLabel(wxWindowID id, const wxString& label);
+
+enum wxStockLabelQueryFlag
+{
+    wxSTOCK_NOFLAGS = 0,
+
+    wxSTOCK_WITH_MNEMONIC = 1,
+    wxSTOCK_WITH_ACCELERATOR = 2
+};
 
 // Returns label that should be used for given stock UI element (e.g. "&OK"
 
 // Returns label that should be used for given stock UI element (e.g. "&OK"
-// for wxSTOCK_OK):
-wxString wxGetStockLabel(wxWindowID id);
+// 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
+WXDLLEXPORT 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)
+    WXDLLEXPORT 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".
+WXDLLEXPORT wxString wxGetStockHelpString(wxWindowID id,
+                                          wxStockHelpStringClient client = wxSTOCK_MENU);
+
 
 #ifdef __WXGTK20__
 
 #ifdef __WXGTK20__
+
+#include <gdk/gdktypes.h>
+
 // Translates stock ID to GTK+'s stock item string indentifier:
 // Translates stock ID to GTK+'s stock item string indentifier:
-const char *wxGetStockGtkID(wxWindowID id);
+WXDLLEXPORT const char *wxGetStockGtkID(wxWindowID id);
+
+// Returns stock accelerator modifier and key code for the given ID
+WXDLLEXPORT bool wxGetStockGtkAccelerator(const char *id, GdkModifierType *mod, guint *key);
 #endif
 
 #endif // _WX_STOCKITEM_H_
 #endif
 
 #endif // _WX_STOCKITEM_H_