resources.hpp
/*
Automatic generated header by:
wxInclude by Kim De Deyn, use --help for more information.
Version 1.0, compiled at Jun 6 2008 01:24:38
Header: resources
Macros: yes
Const: yes
*/
#ifndef _WXINCLUDE_RESOURCES_H_
#define _WXINCLUDE_RESOURCES_H_
#include "wx/wx.h"
#include "wx/mstream.h"
#define wxMEMORY_IMAGE( name ) _wxConvertMemoryToImage( name, sizeof( name ) )
#define wxMEMORY_IMAGEEX( name, type ) _wxConvertMemoryToImage( name, sizeof( name ), type )
#define wxMEMORY_BITMAP( name ) _wxConvertMemoryToBitmap( name, sizeof( name ) )
#define wxMEMORY_BITMAPEX( name, type ) _wxConvertMemoryToBitmap( name, sizeof( name ), type )
inline wxImage _wxConvertMemoryToImage(const unsigned char* data, int length, long type = wxBITMAP_TYPE_ANY )
{
wxMemoryInputStream stream( data, length );
return wxImage( stream, type, -1 );
}
inline wxBitmap _wxConvertMemoryToBitmap(const unsigned char* data, int length, long type = wxBITMAP_TYPE_ANY )
{
wxMemoryInputStream stream( data, length );
return wxBitmap( wxImage( stream, type, -1 ), -1 );
}
void initResource(void);
extern wxBitmap appicon;
static const unsigned char appicon_data[] = {
0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00,
...........................
...........................
...........................
0xB9, 0x69, 0x5A, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4E,
0x44, 0xAE, 0x42, 0x60, 0x82
};
resourсes.cpp
#include "resources.hpp"
wxBitmap appicon;
wxBitmap test_icon_37_disable;
wxBitmap test_icon_37_enable;
void initResource(void)
{
appicon = wxMEMORY_BITMAPEX(appicon_data, wxBITMAP_TYPE_PNG);
test_icon_37_disable = wxMEMORY_BITMAPEX(test_icon_37_disable_data, wxBITMAP_TYPE_PNG);
test_icon_37_enable = wxMEMORY_BITMAPEX(test_icon_37_enable_data, wxBITMAP_TYPE_PNG);
}
wxInclude в них автоматом заносит все PNG картинки которые находит в папке...
после чего в проге можно подключить
#include "resources.hpp"
и писать сразу что-нибудь вроде
tool = GetToolBar()->AddTool(5, _T("Tool"), test_icon_37_enable, test_icon_37_disable, wxITEM_NORMAL, _T("Выбор полигонов"), _T("Выделение полигонов на карте"));
т.е. все картинки автоматом видны в исходниках как wxBitmap по имени файл, только без png
Проблема заключается в том, что я хочу получить wxIcon для иконки окна, но для этого мне нужно либо колдовать с моим wxInclude.exe, либо сконвертировать wxBitmap в wxIcon как-нибудь.
Гуглил по этому вопросу довольно много, но мало что попалось.
вобщем как правильно установить иконку окну имея wxBitmap?
Спасибо!