X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b737ad10dec946cd7d5e38c43c666e8efe89f0ae..412a5c570d18aa64f0077a3278ca232776f3f259:/include/wx/artprov.h diff --git a/include/wx/artprov.h b/include/wx/artprov.h index 3576b4bad5..535d6767fa 100644 --- a/include/wx/artprov.h +++ b/include/wx/artprov.h @@ -12,10 +12,6 @@ #ifndef _WX_ARTPROV_H_ #define _WX_ARTPROV_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "artprov.h" -#endif - #include "wx/string.h" #include "wx/bitmap.h" #include "wx/icon.h" @@ -98,6 +94,7 @@ typedef wxString wxArtID; #define wxART_CUT wxART_MAKE_ART_ID(wxART_CUT) #define wxART_PASTE wxART_MAKE_ART_ID(wxART_PASTE) #define wxART_DELETE wxART_MAKE_ART_ID(wxART_DELETE) +#define wxART_NEW wxART_MAKE_ART_ID(wxART_NEW) #define wxART_UNDO wxART_MAKE_ART_ID(wxART_UNDO) #define wxART_REDO wxART_MAKE_ART_ID(wxART_REDO) @@ -115,9 +112,14 @@ typedef wxString wxArtID; class WXDLLEXPORT wxArtProvider : public wxObject { public: - // Add new provider to the top of providers stack. + // Add new provider to the top of providers stack (i.e. the provider will + // be querier first of all). static void PushProvider(wxArtProvider *provider); + // Add new provider to the bottom of providers stack (i.e. the provider + // will be queried as the last one). + static void InsertProvider(wxArtProvider *provider); + // Remove latest added provider and delete it. static bool PopProvider(); @@ -137,9 +139,9 @@ public: const wxArtClient& client = wxART_OTHER, const wxSize& size = wxDefaultSize); - // Get the size of an icon from a specific wxArtClient, queries + // Get the size hint of an icon from a specific wxArtClient, queries // the topmost provider if platform_dependent = false - static wxSize GetSize(const wxArtClient& client, bool platform_dependent = false); + static wxSize GetSizeHint(const wxArtClient& client, bool platform_dependent = false); protected: friend class wxArtProviderModule; @@ -151,11 +153,11 @@ protected: static void CleanUpProviders(); // Get the default size of an icon for a specific client - virtual wxSize DoGetSize(const wxArtClient& client) + virtual wxSize DoGetSizeHint(const wxArtClient& client) { - return GetSize(client, true); + return GetSizeHint(client, true); } - + // Derived classes must override this method to create requested // art resource. This method is called only once per instance's // lifetime for each requested wxArtID. @@ -163,6 +165,9 @@ protected: const wxArtClient& WXUNUSED(client), const wxSize& WXUNUSED(size)) = 0; +private: + static void CommonAddingProvider(); + private: // list of providers: static wxArtProvidersList *sm_providers;