/**
@class wxArtProvider
- @wxheader{artprov.h}
wxArtProvider class is used to customize the look of wxWidgets application.
Every bitmap and icon bundle are known to wxArtProvider under an unique ID that
is used when requesting a resource from it. The ID is represented by wxArtID type
and can have one of these predefined values (you can see bitmaps represented by these
- constants in the @ref page_samples_artprovider):
+ constants in the @ref page_samples_artprov):
<table>
<tr><td>
@library{wxcore}
@category{misc,data}
- @see the @ref page_samples_artprovider for an example of wxArtProvider usage.
+ @see the @ref page_samples_artprov for an example of wxArtProvider usage.
*/
class wxArtProvider : public wxObject
{
const wxArtClient& client = wxART_OTHER);
/**
- Register new art provider and add it to the bottom of providers stack
- (i.e. it will be queried as the last one).
+ Returns true if the platform uses native icons provider that should
+ take precedence over any customizations.
- @see Push()
+ This is true for any platform that has user-customizable icon themes,
+ currently only wxGTK.
+
+ A typical use for this method is to decide whether a custom art provider
+ should be plugged in using Push() or PushBack().
+
+ @since 2.9.0
+ */
+ static bool HasNativeProvider();
+
+ /**
+ @deprecated Use PushBack() instead.
*/
static void Insert(wxArtProvider* provider);
Register new art provider and add it to the top of providers stack
(i.e. it will be queried as the first provider).
- @see Insert()
+ @see PushBack()
*/
static void Push(wxArtProvider* provider);
+ /**
+ Register new art provider and add it to the bottom of providers stack.
+ In other words, it will be queried as the last one, after all others,
+ including the default provider.
+
+ @see Push()
+
+ @since 2.9.0
+ */
+ static void PushBack(wxArtProvider* provider);
+
/**
Remove a provider from the stack if it is on it. The provider is not
deleted, unlike when using Delete().