Merge branch 'art-ids-literals'

Revert art ids changes and make them `char*` literals again.

See https://github.com/wxWidgets/wxWidgets/pull/2031
This commit is contained in:
Vadim Zeitlin
2020-08-31 14:51:52 +02:00
18 changed files with 200 additions and 231 deletions

View File

@@ -3820,7 +3820,6 @@ COND_USE_GUI_1_ALL_GUI_HEADERS = \
wx/anidecod.h \
wx/animdecod.h \
wx/appprogress.h \
wx/artids.h \
wx/artprov.h \
wx/bitmap.h \
wx/bookctrl.h \

View File

@@ -1131,7 +1131,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
wx/anidecod.h
wx/animdecod.h
wx/appprogress.h
wx/artids.h
wx/artprov.h
wx/bitmap.h
wx/bookctrl.h

View File

@@ -1039,7 +1039,6 @@ set(GUI_CMN_HDR
wx/anidecod.h
wx/animdecod.h
wx/appprogress.h
wx/artids.h
wx/artprov.h
wx/bitmap.h
wx/bookctrl.h

View File

@@ -936,7 +936,6 @@ GUI_CMN_HDR =
wx/animdecod.h
wx/anybutton.h
wx/appprogress.h
wx/artids.h
wx/artprov.h
wx/bannerwindow.h
wx/bitmap.h

View File

@@ -1502,7 +1502,6 @@
<ClInclude Include="..\..\include\wx\richtooltip.h" />
<ClInclude Include="..\..\include\wx\generic\gridsel.h" />
<ClInclude Include="..\..\include\wx\dcbuffer.h" />
<ClInclude Include="..\..\include\wx\artids.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">

View File

@@ -1108,9 +1108,6 @@
<ClInclude Include="..\..\include\wx\appprogress.h">
<Filter>Common Headers</Filter>
</ClInclude>
<ClInclude Include="..\..\include\wx\artids.h">
<Filter>Common Headers</Filter>
</ClInclude>
<ClInclude Include="..\..\include\wx\artprov.h">
<Filter>Common Headers</Filter>
</ClInclude>

View File

@@ -2081,9 +2081,6 @@
<File
RelativePath="..\..\include\wx\ribbon\art_internal.h">
</File>
<File
RelativePath="..\..\include\wx\artids.h">
</File>
<File
RelativePath="..\..\include\wx\artprov.h">
</File>

View File

@@ -3276,10 +3276,6 @@
RelativePath="..\..\include\wx\ribbon\art_internal.h"
>
</File>
<File
RelativePath="..\..\include\wx\artids.h"
>
</File>
<File
RelativePath="..\..\include\wx\artprov.h"
>

View File

@@ -3272,10 +3272,6 @@
RelativePath="..\..\include\wx\ribbon\art_internal.h"
>
</File>
<File
RelativePath="..\..\include\wx\artids.h"
>
</File>
<File
RelativePath="..\..\include\wx\artprov.h"
>

View File

@@ -1,94 +0,0 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/artids.h
// Purpose: wxArtProvider client and art IDs
// Author: Stefan Brüns
// Created: 2020-07-31 (extracted from artprov.h)
// Copyright: (c) Stefan Brüns
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// This file deliberately omits include guards so it can
// be included and processed multiple times
// ----------------------------------------------------------------------------
// Art clients
// ----------------------------------------------------------------------------
wxART_MAKE_CLIENT_ID(wxART_TOOLBAR)
wxART_MAKE_CLIENT_ID(wxART_MENU)
wxART_MAKE_CLIENT_ID(wxART_FRAME_ICON)
wxART_MAKE_CLIENT_ID(wxART_CMN_DIALOG)
wxART_MAKE_CLIENT_ID(wxART_HELP_BROWSER)
wxART_MAKE_CLIENT_ID(wxART_MESSAGE_BOX)
wxART_MAKE_CLIENT_ID(wxART_BUTTON)
wxART_MAKE_CLIENT_ID(wxART_LIST)
wxART_MAKE_CLIENT_ID(wxART_OTHER)
// ----------------------------------------------------------------------------
// Art IDs
// ----------------------------------------------------------------------------
wxART_MAKE_ART_ID(wxART_ADD_BOOKMARK)
wxART_MAKE_ART_ID(wxART_DEL_BOOKMARK)
wxART_MAKE_ART_ID(wxART_HELP_SIDE_PANEL)
wxART_MAKE_ART_ID(wxART_HELP_SETTINGS)
wxART_MAKE_ART_ID(wxART_HELP_BOOK)
wxART_MAKE_ART_ID(wxART_HELP_FOLDER)
wxART_MAKE_ART_ID(wxART_HELP_PAGE)
wxART_MAKE_ART_ID(wxART_GO_BACK)
wxART_MAKE_ART_ID(wxART_GO_FORWARD)
wxART_MAKE_ART_ID(wxART_GO_UP)
wxART_MAKE_ART_ID(wxART_GO_DOWN)
wxART_MAKE_ART_ID(wxART_GO_TO_PARENT)
wxART_MAKE_ART_ID(wxART_GO_HOME)
wxART_MAKE_ART_ID(wxART_GOTO_FIRST)
wxART_MAKE_ART_ID(wxART_GOTO_LAST)
wxART_MAKE_ART_ID(wxART_FILE_OPEN)
wxART_MAKE_ART_ID(wxART_FILE_SAVE)
wxART_MAKE_ART_ID(wxART_FILE_SAVE_AS)
wxART_MAKE_ART_ID(wxART_PRINT)
wxART_MAKE_ART_ID(wxART_HELP)
wxART_MAKE_ART_ID(wxART_TIP)
wxART_MAKE_ART_ID(wxART_REPORT_VIEW)
wxART_MAKE_ART_ID(wxART_LIST_VIEW)
wxART_MAKE_ART_ID(wxART_NEW_DIR)
wxART_MAKE_ART_ID(wxART_HARDDISK)
wxART_MAKE_ART_ID(wxART_FLOPPY)
wxART_MAKE_ART_ID(wxART_CDROM)
wxART_MAKE_ART_ID(wxART_REMOVABLE)
wxART_MAKE_ART_ID(wxART_FOLDER)
wxART_MAKE_ART_ID(wxART_FOLDER_OPEN)
wxART_MAKE_ART_ID(wxART_GO_DIR_UP)
wxART_MAKE_ART_ID(wxART_EXECUTABLE_FILE)
wxART_MAKE_ART_ID(wxART_NORMAL_FILE)
wxART_MAKE_ART_ID(wxART_TICK_MARK)
wxART_MAKE_ART_ID(wxART_CROSS_MARK)
wxART_MAKE_ART_ID(wxART_ERROR)
wxART_MAKE_ART_ID(wxART_QUESTION)
wxART_MAKE_ART_ID(wxART_WARNING)
wxART_MAKE_ART_ID(wxART_INFORMATION)
wxART_MAKE_ART_ID(wxART_MISSING_IMAGE)
wxART_MAKE_ART_ID(wxART_COPY)
wxART_MAKE_ART_ID(wxART_CUT)
wxART_MAKE_ART_ID(wxART_PASTE)
wxART_MAKE_ART_ID(wxART_DELETE)
wxART_MAKE_ART_ID(wxART_NEW)
wxART_MAKE_ART_ID(wxART_UNDO)
wxART_MAKE_ART_ID(wxART_REDO)
wxART_MAKE_ART_ID(wxART_PLUS)
wxART_MAKE_ART_ID(wxART_MINUS)
wxART_MAKE_ART_ID(wxART_CLOSE)
wxART_MAKE_ART_ID(wxART_QUIT)
wxART_MAKE_ART_ID(wxART_FIND)
wxART_MAKE_ART_ID(wxART_FIND_AND_REPLACE)
wxART_MAKE_ART_ID(wxART_FULL_SCREEN)
wxART_MAKE_ART_ID(wxART_EDIT)

View File

@@ -28,16 +28,92 @@ typedef wxString wxArtClient;
typedef wxString wxArtID;
#define wxART_MAKE_CLIENT_ID_FROM_STR(id) ((id) + wxASCII_STR("_C"))
#define wxART_MAKE_CLIENT_ID(id) (#id "_C")
#define wxART_MAKE_ART_ID_FROM_STR(id) (id)
#define wxART_MAKE_ART_ID(id) (#id)
#define wxART_MAKE_CLIENT_ID(id) \
extern WXDLLIMPEXP_DATA_CORE(const wxArtClient) id;
#define wxART_MAKE_ART_ID(id) \
extern WXDLLIMPEXP_DATA_CORE(const wxArtID) id;
// ----------------------------------------------------------------------------
// Art clients
// ----------------------------------------------------------------------------
#include "wx/artids.h"
#undef wxART_MAKE_ART_ID
#undef wxART_MAKE_CLIENT_ID
#define wxART_TOOLBAR wxART_MAKE_CLIENT_ID(wxART_TOOLBAR)
#define wxART_MENU wxART_MAKE_CLIENT_ID(wxART_MENU)
#define wxART_FRAME_ICON wxART_MAKE_CLIENT_ID(wxART_FRAME_ICON)
#define wxART_CMN_DIALOG wxART_MAKE_CLIENT_ID(wxART_CMN_DIALOG)
#define wxART_HELP_BROWSER wxART_MAKE_CLIENT_ID(wxART_HELP_BROWSER)
#define wxART_MESSAGE_BOX wxART_MAKE_CLIENT_ID(wxART_MESSAGE_BOX)
#define wxART_BUTTON wxART_MAKE_CLIENT_ID(wxART_BUTTON)
#define wxART_LIST wxART_MAKE_CLIENT_ID(wxART_LIST)
#define wxART_OTHER wxART_MAKE_CLIENT_ID(wxART_OTHER)
// ----------------------------------------------------------------------------
// Art IDs
// ----------------------------------------------------------------------------
#define wxART_ADD_BOOKMARK wxART_MAKE_ART_ID(wxART_ADD_BOOKMARK)
#define wxART_DEL_BOOKMARK wxART_MAKE_ART_ID(wxART_DEL_BOOKMARK)
#define wxART_HELP_SIDE_PANEL wxART_MAKE_ART_ID(wxART_HELP_SIDE_PANEL)
#define wxART_HELP_SETTINGS wxART_MAKE_ART_ID(wxART_HELP_SETTINGS)
#define wxART_HELP_BOOK wxART_MAKE_ART_ID(wxART_HELP_BOOK)
#define wxART_HELP_FOLDER wxART_MAKE_ART_ID(wxART_HELP_FOLDER)
#define wxART_HELP_PAGE wxART_MAKE_ART_ID(wxART_HELP_PAGE)
#define wxART_GO_BACK wxART_MAKE_ART_ID(wxART_GO_BACK)
#define wxART_GO_FORWARD wxART_MAKE_ART_ID(wxART_GO_FORWARD)
#define wxART_GO_UP wxART_MAKE_ART_ID(wxART_GO_UP)
#define wxART_GO_DOWN wxART_MAKE_ART_ID(wxART_GO_DOWN)
#define wxART_GO_TO_PARENT wxART_MAKE_ART_ID(wxART_GO_TO_PARENT)
#define wxART_GO_HOME wxART_MAKE_ART_ID(wxART_GO_HOME)
#define wxART_GOTO_FIRST wxART_MAKE_ART_ID(wxART_GOTO_FIRST)
#define wxART_GOTO_LAST wxART_MAKE_ART_ID(wxART_GOTO_LAST)
#define wxART_FILE_OPEN wxART_MAKE_ART_ID(wxART_FILE_OPEN)
#define wxART_FILE_SAVE wxART_MAKE_ART_ID(wxART_FILE_SAVE)
#define wxART_FILE_SAVE_AS wxART_MAKE_ART_ID(wxART_FILE_SAVE_AS)
#define wxART_PRINT wxART_MAKE_ART_ID(wxART_PRINT)
#define wxART_HELP wxART_MAKE_ART_ID(wxART_HELP)
#define wxART_TIP wxART_MAKE_ART_ID(wxART_TIP)
#define wxART_REPORT_VIEW wxART_MAKE_ART_ID(wxART_REPORT_VIEW)
#define wxART_LIST_VIEW wxART_MAKE_ART_ID(wxART_LIST_VIEW)
#define wxART_NEW_DIR wxART_MAKE_ART_ID(wxART_NEW_DIR)
#define wxART_HARDDISK wxART_MAKE_ART_ID(wxART_HARDDISK)
#define wxART_FLOPPY wxART_MAKE_ART_ID(wxART_FLOPPY)
#define wxART_CDROM wxART_MAKE_ART_ID(wxART_CDROM)
#define wxART_REMOVABLE wxART_MAKE_ART_ID(wxART_REMOVABLE)
#define wxART_FOLDER wxART_MAKE_ART_ID(wxART_FOLDER)
#define wxART_FOLDER_OPEN wxART_MAKE_ART_ID(wxART_FOLDER_OPEN)
#define wxART_GO_DIR_UP wxART_MAKE_ART_ID(wxART_GO_DIR_UP)
#define wxART_EXECUTABLE_FILE wxART_MAKE_ART_ID(wxART_EXECUTABLE_FILE)
#define wxART_NORMAL_FILE wxART_MAKE_ART_ID(wxART_NORMAL_FILE)
#define wxART_TICK_MARK wxART_MAKE_ART_ID(wxART_TICK_MARK)
#define wxART_CROSS_MARK wxART_MAKE_ART_ID(wxART_CROSS_MARK)
#define wxART_ERROR wxART_MAKE_ART_ID(wxART_ERROR)
#define wxART_QUESTION wxART_MAKE_ART_ID(wxART_QUESTION)
#define wxART_WARNING wxART_MAKE_ART_ID(wxART_WARNING)
#define wxART_INFORMATION wxART_MAKE_ART_ID(wxART_INFORMATION)
#define wxART_MISSING_IMAGE wxART_MAKE_ART_ID(wxART_MISSING_IMAGE)
#define wxART_COPY wxART_MAKE_ART_ID(wxART_COPY)
#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)
#define wxART_PLUS wxART_MAKE_ART_ID(wxART_PLUS)
#define wxART_MINUS wxART_MAKE_ART_ID(wxART_MINUS)
#define wxART_CLOSE wxART_MAKE_ART_ID(wxART_CLOSE)
#define wxART_QUIT wxART_MAKE_ART_ID(wxART_QUIT)
#define wxART_FIND wxART_MAKE_ART_ID(wxART_FIND)
#define wxART_FIND_AND_REPLACE wxART_MAKE_ART_ID(wxART_FIND_AND_REPLACE)
#define wxART_FULL_SCREEN wxART_MAKE_ART_ID(wxART_FULL_SCREEN)
#define wxART_EDIT wxART_MAKE_ART_ID(wxART_EDIT)
// ----------------------------------------------------------------------------
// wxArtProvider class
@@ -78,13 +154,13 @@ public:
// Query the providers for bitmap with given ID and return it. Return
// wxNullBitmap if no provider provides it.
static wxBitmap GetBitmap(const wxArtID& id,
const wxArtClient& client = wxART_OTHER,
const wxArtClient& client = wxASCII_STR(wxART_OTHER),
const wxSize& size = wxDefaultSize);
// Query the providers for icon with given ID and return it. Return
// wxNullIcon if no provider provides it.
static wxIcon GetIcon(const wxArtID& id,
const wxArtClient& client = wxART_OTHER,
const wxArtClient& client = wxASCII_STR(wxART_OTHER),
const wxSize& size = wxDefaultSize);
// Helper used by GetMessageBoxIcon(): return the art id corresponding to
@@ -97,13 +173,13 @@ public:
// can be set)
static wxIcon GetMessageBoxIcon(int flags)
{
return GetIcon(GetMessageBoxIconId(flags), wxART_MESSAGE_BOX);
return GetIcon(GetMessageBoxIconId(flags), wxASCII_STR(wxART_MESSAGE_BOX));
}
// Query the providers for iconbundle with given ID and return it. Return
// wxNullIconBundle if no provider provides it.
static wxIconBundle GetIconBundle(const wxArtID& id,
const wxArtClient& client = wxART_OTHER);
const wxArtClient& client = wxASCII_STR(wxART_OTHER));
// Gets native size for given 'client' or wxDefaultSize if it doesn't
// have native equivalent

View File

@@ -565,27 +565,27 @@ public:
// Gets a bitmap.
wxBitmap GetBitmap(const wxString& param = wxT("bitmap"),
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) wxOVERRIDE;
// Gets a bitmap from an XmlNode.
wxBitmap GetBitmap(const wxXmlNode* node,
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) wxOVERRIDE;
// Gets an icon.
wxIcon GetIcon(const wxString& param = wxT("icon"),
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) wxOVERRIDE;
// Gets an icon from an XmlNode.
wxIcon GetIcon(const wxXmlNode* node,
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) wxOVERRIDE;
// Gets an icon bundle.
wxIconBundle GetIconBundle(const wxString& param,
const wxArtClient& defaultArtClient = wxART_OTHER) wxOVERRIDE;
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER)) wxOVERRIDE;
// Gets an image list.
wxImageList *GetImageList(const wxString& param = wxT("imagelist")) wxOVERRIDE;

View File

@@ -85,19 +85,19 @@ public:
virtual wxSize GetPairInts(const wxString& param) = 0;
virtual wxDirection GetDirection(const wxString& param, wxDirection dir = wxLEFT) = 0;
virtual wxBitmap GetBitmap(const wxString& param = wxT("bitmap"),
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) = 0;
virtual wxBitmap GetBitmap(const wxXmlNode* node,
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) = 0;
virtual wxIcon GetIcon(const wxString& param = wxT("icon"),
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) = 0;
virtual wxIcon GetIcon(const wxXmlNode* node,
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) = 0;
virtual wxIconBundle GetIconBundle(const wxString& param,
const wxArtClient& defaultArtClient = wxART_OTHER) = 0;
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER)) = 0;
virtual wxImageList *GetImageList(const wxString& param = wxT("imagelist")) = 0;
#if wxUSE_ANIMATIONCTRL
@@ -321,31 +321,31 @@ protected:
return GetImpl()->GetDirection(param, dir);
}
wxBitmap GetBitmap(const wxString& param = wxT("bitmap"),
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize)
{
return GetImpl()->GetBitmap(param, defaultArtClient, size);
}
wxBitmap GetBitmap(const wxXmlNode* node,
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize)
{
return GetImpl()->GetBitmap(node, defaultArtClient, size);
}
wxIcon GetIcon(const wxString& param = wxT("icon"),
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize)
{
return GetImpl()->GetIcon(param, defaultArtClient, size);
}
wxIcon GetIcon(const wxXmlNode* node,
const wxArtClient& defaultArtClient = wxART_OTHER,
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize)
{
return GetImpl()->GetIcon(node, defaultArtClient, size);
}
wxIconBundle GetIconBundle(const wxString& param,
const wxArtClient& defaultArtClient = wxART_OTHER)
const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER))
{
return GetImpl()->GetIconBundle(param, defaultArtClient);
}

View File

@@ -16,80 +16,80 @@ typedef wxString wxArtClient;
typedef wxString wxArtID;
const wxArtClient wxART_TOOLBAR;
const wxArtClient wxART_MENU;
const wxArtClient wxART_FRAME_ICON;
const char* wxART_TOOLBAR;
const char* wxART_MENU;
const char* wxART_FRAME_ICON;
const wxArtClient wxART_CMN_DIALOG;
const wxArtClient wxART_HELP_BROWSER;
const wxArtClient wxART_MESSAGE_BOX;
const wxArtClient wxART_BUTTON;
const wxArtClient wxART_LIST;
const char* wxART_CMN_DIALOG;
const char* wxART_HELP_BROWSER;
const char* wxART_MESSAGE_BOX;
const char* wxART_BUTTON;
const char* wxART_LIST;
const wxArtClient wxART_OTHER;
const char* wxART_OTHER;
const wxArtID wxART_ADD_BOOKMARK;
const wxArtID wxART_DEL_BOOKMARK;
const wxArtID wxART_HELP_SIDE_PANEL;
const wxArtID wxART_HELP_SETTINGS;
const wxArtID wxART_HELP_BOOK;
const wxArtID wxART_HELP_FOLDER;
const wxArtID wxART_HELP_PAGE;
const wxArtID wxART_GO_BACK;
const wxArtID wxART_GO_FORWARD;
const wxArtID wxART_GO_UP;
const wxArtID wxART_GO_DOWN;
const wxArtID wxART_GO_TO_PARENT;
const wxArtID wxART_GO_HOME;
const wxArtID wxART_GOTO_FIRST;
const wxArtID wxART_GOTO_LAST;
const wxArtID wxART_FILE_OPEN;
const wxArtID wxART_FILE_SAVE;
const wxArtID wxART_FILE_SAVE_AS;
const wxArtID wxART_PRINT;
const wxArtID wxART_HELP;
const wxArtID wxART_TIP;
const wxArtID wxART_REPORT_VIEW;
const wxArtID wxART_LIST_VIEW;
const wxArtID wxART_NEW_DIR;
const wxArtID wxART_HARDDISK;
const wxArtID wxART_FLOPPY;
const wxArtID wxART_CDROM;
const wxArtID wxART_REMOVABLE;
const wxArtID wxART_FOLDER;
const wxArtID wxART_FOLDER_OPEN;
const wxArtID wxART_GO_DIR_UP;
const wxArtID wxART_EXECUTABLE_FILE;
const wxArtID wxART_NORMAL_FILE;
const wxArtID wxART_TICK_MARK;
const wxArtID wxART_CROSS_MARK;
const wxArtID wxART_ERROR;
const wxArtID wxART_QUESTION;
const wxArtID wxART_WARNING;
const wxArtID wxART_INFORMATION;
const wxArtID wxART_MISSING_IMAGE;
const char* wxART_ADD_BOOKMARK;
const char* wxART_DEL_BOOKMARK;
const char* wxART_HELP_SIDE_PANEL;
const char* wxART_HELP_SETTINGS;
const char* wxART_HELP_BOOK;
const char* wxART_HELP_FOLDER;
const char* wxART_HELP_PAGE;
const char* wxART_GO_BACK;
const char* wxART_GO_FORWARD;
const char* wxART_GO_UP;
const char* wxART_GO_DOWN;
const char* wxART_GO_TO_PARENT;
const char* wxART_GO_HOME;
const char* wxART_GOTO_FIRST;
const char* wxART_GOTO_LAST;
const char* wxART_FILE_OPEN;
const char* wxART_FILE_SAVE;
const char* wxART_FILE_SAVE_AS;
const char* wxART_PRINT;
const char* wxART_HELP;
const char* wxART_TIP;
const char* wxART_REPORT_VIEW;
const char* wxART_LIST_VIEW;
const char* wxART_NEW_DIR;
const char* wxART_HARDDISK;
const char* wxART_FLOPPY;
const char* wxART_CDROM;
const char* wxART_REMOVABLE;
const char* wxART_FOLDER;
const char* wxART_FOLDER_OPEN;
const char* wxART_GO_DIR_UP;
const char* wxART_EXECUTABLE_FILE;
const char* wxART_NORMAL_FILE;
const char* wxART_TICK_MARK;
const char* wxART_CROSS_MARK;
const char* wxART_ERROR;
const char* wxART_QUESTION;
const char* wxART_WARNING;
const char* wxART_INFORMATION;
const char* wxART_MISSING_IMAGE;
const wxArtID wxART_COPY;
const wxArtID wxART_CUT;
const wxArtID wxART_PASTE;
const wxArtID wxART_DELETE;
const wxArtID wxART_NEW;
const char* wxART_COPY;
const char* wxART_CUT;
const char* wxART_PASTE;
const char* wxART_DELETE;
const char* wxART_NEW;
const wxArtID wxART_UNDO;
const wxArtID wxART_REDO;
const char* wxART_UNDO;
const char* wxART_REDO;
const wxArtID wxART_PLUS;
const wxArtID wxART_MINUS;
const char* wxART_PLUS;
const char* wxART_MINUS;
const wxArtID wxART_CLOSE;
const wxArtID wxART_QUIT;
const char* wxART_CLOSE;
const char* wxART_QUIT;
const wxArtID wxART_FIND;
const wxArtID wxART_FIND_AND_REPLACE;
const char* wxART_FIND;
const char* wxART_FIND_AND_REPLACE;
const wxArtID wxART_FULL_SCREEN;
const wxArtID wxART_EDIT;
const char* wxART_FULL_SCREEN;
const char* wxART_EDIT;
/**
@@ -200,6 +200,10 @@ const wxArtID wxART_EDIT;
</td></tr>
</table>
@note When building with @c wxNO_IMPLICIT_WXSTRING_ENCODING defined (see
@ref overview_string for more details), you need to explicitly use
wxASCII_STR() around these constants.
Additionally, any string recognized by custom art providers registered using
wxArtProvider::Push may be used.

View File

@@ -1776,6 +1776,12 @@ public:
/**
Converts the string or character from an ASCII, 7-bit form
to the native wxString representation.
Input must consist only of 7-bit (i.e. less than 128) ASCII characters,
the behaviour in presence of non-ASCII characters is undefined but will
result in assert failures.
@see wxASCII_STR()
*/
static wxString FromAscii(const char* s);
static wxString FromAscii(const unsigned char* s);
@@ -2069,4 +2075,14 @@ public:
template<bool (T)(const wxUniChar& c)>
inline bool wxStringCheck(const wxString& val);
/**
Convenience macro for explicitly constructing wxString from ASCII strings.
This macro simply expands to a call to wxString::FromAscii() but is
slightly shorter.
@since 3.1.4
*/
wxString wxASCII_STR(const char* s);
//@}

View File

@@ -21,12 +21,6 @@
#include "wx/artprov.h"
#define wxART_MAKE_CLIENT_ID(id) \
extern WXDLLIMPEXP_DATA_CORE(const wxArtClient) id = wxASCII_STR(#id "_C");
#define wxART_MAKE_ART_ID(id) \
extern WXDLLIMPEXP_DATA_CORE(const wxArtID) id = wxASCII_STR(#id);
#include "wx/artids.h"
#ifndef WX_PRECOMP
#include "wx/list.h"
#include "wx/log.h"

View File

@@ -52,27 +52,13 @@ protected:
namespace
{
wxString wxArtIDToStock(const wxArtID& id)
{
struct wxArtStockMapping
{
wxArtStockMapping(const wxArtID& artId, const wxString& stockId)
: m_artId(artId), m_stockId(stockId)
{
}
wxArtID m_artId;
wxString m_stockId;
};
#ifdef __WXGTK3__
#define ART(wxId, unused, themeId) wxArtStockMapping(wxId, themeId),
#define ART(wxId, unused, themeId) wxId, themeId,
#else
#define ART(wxId, stockId, unused) wxArtStockMapping(wxId, stockId),
#define ART(wxId, stockId, unused) wxId, stockId,
#endif
static const wxArtStockMapping wxId2GtkMap[] =
{
const wxString wxId2Gtk[] = {
ART(wxART_ERROR, GTK_STOCK_DIALOG_ERROR, "dialog-error")
ART(wxART_INFORMATION, GTK_STOCK_DIALOG_INFO, "dialog-information")
ART(wxART_WARNING, GTK_STOCK_DIALOG_WARNING, "dialog-warning")
@@ -137,20 +123,25 @@ wxString wxArtIDToStock(const wxArtID& id)
ART(wxART_FULL_SCREEN, GTK_STOCK_FULLSCREEN, "view-fullscreen")
ART(wxART_EDIT, "accessories-text-editor", "accessories-text-editor")
};
#undef ART
wxString wxArtIDToStock(const wxArtID& id)
{
// allow passing GTK+ stock IDs to wxArtProvider -- if a recognized wx
// ID wasn't found, pass it to GTK+ in the hope it is a GTK+ or theme
// icon name:
wxString ret(id);
for (unsigned i = 0; i < WXSIZEOF(wxId2GtkMap); i++)
for (unsigned i = 0; i < WXSIZEOF(wxId2Gtk); i += 2)
{
if (id == wxId2GtkMap[i].m_artId)
if (id == wxId2Gtk[i])
{
return wxId2GtkMap[i].m_stockId;
ret = wxId2Gtk[i + 1];
break;
}
}
return id;
return ret;
}
GtkIconSize ArtClientToIconSize(const wxArtClient& client)

View File

@@ -397,6 +397,7 @@
#include <wx/wxprec.h>
#include <wx/xlocale.h>
#include <wx/xpmdecod.h>
#include <wx/xrc/xmlres.h>
#include <wx/xti2.h>
#include <wx/xtictor.h>
#include <wx/xti.h>