1. added code to dyntbar to allow bitmap loading from windows resources
2. modified fl_demo sample to use bitmaps in windows resource to allow run-from-anywhere behaviour under windows. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -22,6 +22,10 @@ trivial to adapt this for other systems that use a configure build.
|
|||||||
YOU NEED TO RUN THE SAMPLES FROM THIS BITMAP DIR otherwise the binaries
|
YOU NEED TO RUN THE SAMPLES FROM THIS BITMAP DIR otherwise the binaries
|
||||||
can't find their pics and horrible things will ensue.
|
can't find their pics and horrible things will ensue.
|
||||||
|
|
||||||
|
<03-12-99 Russell>
|
||||||
|
/samples/demo/fl_demo no longer needs to be run from the bitmap dir under
|
||||||
|
windows, it now uses windows resources.
|
||||||
|
|
||||||
-----------------------------------------------------------------------------
|
-----------------------------------------------------------------------------
|
||||||
BUILDING
|
BUILDING
|
||||||
-----------------------------------------------------------------------------
|
-----------------------------------------------------------------------------
|
||||||
|
@@ -192,14 +192,26 @@ void StartButton95::OnPaint( wxPaintEvent& event )
|
|||||||
|
|
||||||
if ( mPressed )
|
if ( mPressed )
|
||||||
{
|
{
|
||||||
|
#ifdef __WXMSW__
|
||||||
|
if ( !mPBmp.Ok() )
|
||||||
|
|
||||||
|
mPBmp.LoadFile( "start95_pr_icon", wxBITMAP_TYPE_BMP_RESOURCE );
|
||||||
|
#else
|
||||||
if ( !mPBmp.Ok() && wxFileExists( "start95_pr.bmp" ) )
|
if ( !mPBmp.Ok() && wxFileExists( "start95_pr.bmp" ) )
|
||||||
|
|
||||||
mPBmp.LoadFile( "start95_pr.bmp", wxBITMAP_TYPE_BMP );
|
mPBmp.LoadFile( "start95_pr.bmp", wxBITMAP_TYPE_BMP );
|
||||||
|
#endif
|
||||||
|
|
||||||
pBmp = &mPBmp;
|
pBmp = &mPBmp;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
#ifdef __WXMSW__
|
||||||
|
if ( !mDBmp.Ok() )
|
||||||
|
|
||||||
|
mDBmp.LoadFile( "start95_dp_icon", wxBITMAP_TYPE_BMP_RESOURCE );
|
||||||
|
|
||||||
|
#endif
|
||||||
if ( !mDBmp.Ok() && wxFileExists( "start95_dp.bmp" ) )
|
if ( !mDBmp.Ok() && wxFileExists( "start95_dp.bmp" ) )
|
||||||
|
|
||||||
mDBmp.LoadFile( "start95_dp.bmp", wxBITMAP_TYPE_BMP );
|
mDBmp.LoadFile( "start95_dp.bmp", wxBITMAP_TYPE_BMP );
|
||||||
@@ -278,13 +290,16 @@ MyFrame::MyFrame(wxFrame *frame, char *title, int x, int y, int w, int h)
|
|||||||
// and use it as initial reference (IR)
|
// and use it as initial reference (IR)
|
||||||
|
|
||||||
wxBitmap bmp1,bmp2;
|
wxBitmap bmp1,bmp2;
|
||||||
|
#ifdef __WXMSW__
|
||||||
|
bmp1.LoadFile( "folder_icon", wxBITMAP_TYPE_BMP_RESOURCE );
|
||||||
|
bmp2.LoadFile( "class_icon1", wxBITMAP_TYPE_BMP_RESOURCE );
|
||||||
|
#else
|
||||||
if ( wxFileExists( "folder_icon.bmp" ) )
|
if ( wxFileExists( "folder_icon.bmp" ) )
|
||||||
bmp1.LoadFile( "folder_icon.bmp", wxBITMAP_TYPE_BMP );
|
bmp1.LoadFile( "folder_icon.bmp", wxBITMAP_TYPE_BMP );
|
||||||
|
|
||||||
if ( wxFileExists( "class_icon1.bmp" ) )
|
if ( wxFileExists( "class_icon1.bmp" ) )
|
||||||
bmp2.LoadFile( "class_icon1.bmp", wxBITMAP_TYPE_BMP );
|
bmp2.LoadFile( "class_icon1.bmp", wxBITMAP_TYPE_BMP );
|
||||||
|
#endif
|
||||||
int idx1 = mImageList.Add( bmp1 );
|
int idx1 = mImageList.Add( bmp1 );
|
||||||
int idx2 = mImageList.Add( bmp2 );
|
int idx2 = mImageList.Add( bmp2 );
|
||||||
|
|
||||||
@@ -749,12 +764,45 @@ void MyFrame::AddSearchToolbars( wxFrameLayout& layout, wxWindow* pParent )
|
|||||||
wxChoice* pChoice = new wxChoice( pTBar2, -1, wxDefaultPosition, wxSize( 140,25 ) );
|
wxChoice* pChoice = new wxChoice( pTBar2, -1, wxDefaultPosition, wxSize( 140,25 ) );
|
||||||
|
|
||||||
pTBar2->AddTool( 1, pChoice );
|
pTBar2->AddTool( 1, pChoice );
|
||||||
|
#ifdef __WXMSW__
|
||||||
|
pTBar2->AddTool( 2, wxBitmap("search_icon") );
|
||||||
|
//pTBar2->AddSeparator();
|
||||||
|
pTBar2->AddTool( 3, wxBitmap("bookmarks_icon") );
|
||||||
|
pTBar2->AddTool( 4, wxBitmap("nextmark_icon") );
|
||||||
|
pTBar2->AddTool( 5, wxBitmap("prevmark_icon") );
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
wxDynamicToolBar* pTBar3 = new wxDynamicToolBar( mpInternalFrm, -1 );
|
||||||
|
|
||||||
|
pTBar3->AddTool( 1, wxBitmap("open_icon"), " Open " );
|
||||||
|
pTBar3->AddTool( 2, wxBitmap("save_icon"), " Save " );
|
||||||
|
pTBar3->AddTool( 3, wxBitmap("saveall_icon"), " Save All " );
|
||||||
|
//pTBar3->AddSeparator();
|
||||||
|
pTBar3->AddTool( 4, wxBitmap("cut_icon"), " Open " );
|
||||||
|
pTBar3->AddTool( 5, wxBitmap("copy_icon"), " Copy " );
|
||||||
|
pTBar3->AddTool( 6, wxBitmap("paste_icon")," Paste " );
|
||||||
|
|
||||||
|
pTBar3->EnableTool( 2, FALSE );
|
||||||
|
|
||||||
|
wxDynamicToolBar* pTBar4 = new wxDynamicToolBar( mpInternalFrm, -1 );
|
||||||
|
|
||||||
|
pTBar4->AddTool( 1, wxBitmap("bookmarks_icon"), "Bookmarks ", TRUE );
|
||||||
|
pTBar4->AddTool( 2, wxBitmap("nextmark_icon"), "Next bookmark ", TRUE );
|
||||||
|
pTBar4->AddTool( 3, wxBitmap("prevmark_icon"), "Prev bookmark ", TRUE );
|
||||||
|
//pTBar4->AddSeparator();
|
||||||
|
pTBar4->AddTool( 4, wxBitmap("search_icon"),"Search ", TRUE );
|
||||||
|
|
||||||
|
pTBar4->EnableTool( 4, FALSE );
|
||||||
|
|
||||||
|
#else
|
||||||
pTBar2->AddTool( 2, "search.bmp" );
|
pTBar2->AddTool( 2, "search.bmp" );
|
||||||
//pTBar2->AddSeparator();
|
//pTBar2->AddSeparator();
|
||||||
pTBar2->AddTool( 3, "bookmarks.bmp" );
|
pTBar2->AddTool( 3, "bookmarks.bmp" );
|
||||||
pTBar2->AddTool( 4, "nextmark.bmp" );
|
pTBar2->AddTool( 4, "nextmark.bmp" );
|
||||||
pTBar2->AddTool( 5, "prevmark.bmp" );
|
pTBar2->AddTool( 5, "prevmark.bmp" );
|
||||||
|
|
||||||
|
|
||||||
wxDynamicToolBar* pTBar3 = new wxDynamicToolBar( mpInternalFrm, -1 );
|
wxDynamicToolBar* pTBar3 = new wxDynamicToolBar( mpInternalFrm, -1 );
|
||||||
|
|
||||||
pTBar3->AddTool( 1, "open.bmp", wxBITMAP_TYPE_BMP, " Open " );
|
pTBar3->AddTool( 1, "open.bmp", wxBITMAP_TYPE_BMP, " Open " );
|
||||||
@@ -765,10 +813,6 @@ void MyFrame::AddSearchToolbars( wxFrameLayout& layout, wxWindow* pParent )
|
|||||||
pTBar3->AddTool( 5, "copy.bmp", wxBITMAP_TYPE_BMP, " Copy " );
|
pTBar3->AddTool( 5, "copy.bmp", wxBITMAP_TYPE_BMP, " Copy " );
|
||||||
pTBar3->AddTool( 6, "paste.bmp", wxBITMAP_TYPE_BMP, " Paste " );
|
pTBar3->AddTool( 6, "paste.bmp", wxBITMAP_TYPE_BMP, " Paste " );
|
||||||
|
|
||||||
#ifdef __WXMSW__
|
|
||||||
pTBar3->EnableTool( 2, FALSE );
|
|
||||||
#endif
|
|
||||||
|
|
||||||
wxDynamicToolBar* pTBar4 = new wxDynamicToolBar( mpInternalFrm, -1 );
|
wxDynamicToolBar* pTBar4 = new wxDynamicToolBar( mpInternalFrm, -1 );
|
||||||
|
|
||||||
pTBar4->AddTool( 1, "bookmarks.bmp", wxBITMAP_TYPE_BMP, "Bookmarks ", TRUE );
|
pTBar4->AddTool( 1, "bookmarks.bmp", wxBITMAP_TYPE_BMP, "Bookmarks ", TRUE );
|
||||||
@@ -776,9 +820,6 @@ void MyFrame::AddSearchToolbars( wxFrameLayout& layout, wxWindow* pParent )
|
|||||||
pTBar4->AddTool( 3, "prevmark.bmp", wxBITMAP_TYPE_BMP, "Prev bookmark ", TRUE );
|
pTBar4->AddTool( 3, "prevmark.bmp", wxBITMAP_TYPE_BMP, "Prev bookmark ", TRUE );
|
||||||
//pTBar4->AddSeparator();
|
//pTBar4->AddSeparator();
|
||||||
pTBar4->AddTool( 4, "search.bmp", wxBITMAP_TYPE_BMP, "Search ", TRUE );
|
pTBar4->AddTool( 4, "search.bmp", wxBITMAP_TYPE_BMP, "Search ", TRUE );
|
||||||
|
|
||||||
#ifdef __WXMSW__
|
|
||||||
pTBar4->EnableTool( 4, FALSE );
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
layout.AddBar( pTBar2,
|
layout.AddBar( pTBar2,
|
||||||
@@ -865,13 +906,22 @@ wxWindow* MyFrame::CreateDevLayout( wxFrameLayout& layout, wxWindow* pParent )
|
|||||||
::wxCreateClassInfoTree( pClassView, cinfId, 1 );
|
::wxCreateClassInfoTree( pClassView, cinfId, 1 );
|
||||||
::wxCreateSerializerInfoTree( pClassView, serId, 1 );
|
::wxCreateSerializerInfoTree( pClassView, serId, 1 );
|
||||||
|
|
||||||
// (default arg anyway)
|
#ifdef __WXMSW__
|
||||||
|
// (default arg anyway)
|
||||||
|
pMiniTabArea->AddTab( pClassView, "ClassView", &wxBitmap("class_icon"));
|
||||||
|
pMiniTabArea->AddTab( new wxPanel(), "ResourceView",&wxBitmap("res_icon") );
|
||||||
|
pMiniTabArea->AddTab( new wxPanel(), "FileView", &wxBitmap("file_icon") );
|
||||||
|
pMiniTabArea->AddTab( new wxPanel(), "InfoView", &wxBitmap("help_icon") );
|
||||||
|
pMiniTabArea->AddTab( CreateTxtCtrl( helloworld_src,
|
||||||
|
pMiniTabArea), "HelloWorld", &wxBitmap("help_icon") );
|
||||||
|
#else
|
||||||
pMiniTabArea->AddTab( pClassView, "ClassView", "class_icon.bmp", wxBITMAP_TYPE_BMP );
|
pMiniTabArea->AddTab( pClassView, "ClassView", "class_icon.bmp", wxBITMAP_TYPE_BMP );
|
||||||
pMiniTabArea->AddTab( new wxPanel(), "ResourceView","res_icon.bmp" );
|
pMiniTabArea->AddTab( new wxPanel(), "ResourceView","res_icon.bmp" );
|
||||||
pMiniTabArea->AddTab( new wxPanel(), "FileView", "file_icon.bmp" );
|
pMiniTabArea->AddTab( new wxPanel(), "FileView", "file_icon.bmp" );
|
||||||
pMiniTabArea->AddTab( new wxPanel(), "InfoView", "help_icon.bmp" );
|
pMiniTabArea->AddTab( new wxPanel(), "InfoView", "help_icon.bmp" );
|
||||||
pMiniTabArea->AddTab( CreateTxtCtrl( helloworld_src,
|
pMiniTabArea->AddTab( CreateTxtCtrl( helloworld_src,
|
||||||
pMiniTabArea), "HelloWorld", "help_icon.bmp" );
|
pMiniTabArea), "HelloWorld", "help_icon.bmp" );
|
||||||
|
#endif
|
||||||
// now create "output" window
|
// now create "output" window
|
||||||
|
|
||||||
wxPaggedWindow* pTabbedArea = new wxPaggedWindow();
|
wxPaggedWindow* pTabbedArea = new wxPaggedWindow();
|
||||||
@@ -884,7 +934,7 @@ wxWindow* MyFrame::CreateDevLayout( wxFrameLayout& layout, wxWindow* pParent )
|
|||||||
|
|
||||||
pTabbedArea->AddTab( CreateTxtCtrl("build", pTabbedArea), "Build", "" );
|
pTabbedArea->AddTab( CreateTxtCtrl("build", pTabbedArea), "Build", "" );
|
||||||
pTabbedArea->AddTab( CreateTxtCtrl("debug", pTabbedArea), "Debug", "" );
|
pTabbedArea->AddTab( CreateTxtCtrl("debug", pTabbedArea), "Debug", "" );
|
||||||
pTabbedArea->AddTab( pSheet3, "Find in Files!", "file_icon.bmp" );
|
pTabbedArea->AddTab( pSheet3, "Find in Files!", &wxBitmap("file_icon") );
|
||||||
pTabbedArea->AddTab( CreateTxtCtrl("profile", pTabbedArea), "Profile", "" );
|
pTabbedArea->AddTab( CreateTxtCtrl("profile", pTabbedArea), "Profile", "" );
|
||||||
|
|
||||||
layout.AddBar( new StartButton95(pParent), sizes5, wxTOP, 0, 0, "Start..." );
|
layout.AddBar( new StartButton95(pParent), sizes5, wxTOP, 0, 0, "Start..." );
|
||||||
@@ -1008,7 +1058,15 @@ void MyFrame::DropInSomeBars( int layoutNo )
|
|||||||
pToolBar->Create( mpInternalFrm, -1 );
|
pToolBar->Create( mpInternalFrm, -1 );
|
||||||
|
|
||||||
// 1001-1006 ids of command events fired by added tool-buttons
|
// 1001-1006 ids of command events fired by added tool-buttons
|
||||||
|
#ifdef __WXMSW__
|
||||||
|
pToolBar->AddTool( 1001, wxBitmap("new_icon") );
|
||||||
|
pToolBar->AddTool( 1002, wxBitmap("open_icon") );
|
||||||
|
pToolBar->AddTool( 1003, wxBitmap("save_icon") );
|
||||||
|
|
||||||
|
pToolBar->AddTool( 1004, wxBitmap("cut_icon") );
|
||||||
|
pToolBar->AddTool( 1005, wxBitmap("copy_icon") );
|
||||||
|
pToolBar->AddTool( 1006, wxBitmap("paste_icon") );
|
||||||
|
#else
|
||||||
pToolBar->AddTool( 1001, "new.bmp" );
|
pToolBar->AddTool( 1001, "new.bmp" );
|
||||||
pToolBar->AddTool( 1002, "open.bmp" );
|
pToolBar->AddTool( 1002, "open.bmp" );
|
||||||
pToolBar->AddTool( 1003, "save.bmp" );
|
pToolBar->AddTool( 1003, "save.bmp" );
|
||||||
@@ -1016,7 +1074,7 @@ void MyFrame::DropInSomeBars( int layoutNo )
|
|||||||
pToolBar->AddTool( 1004, "cut.bmp" );
|
pToolBar->AddTool( 1004, "cut.bmp" );
|
||||||
pToolBar->AddTool( 1005, "copy.bmp" );
|
pToolBar->AddTool( 1005, "copy.bmp" );
|
||||||
pToolBar->AddTool( 1006, "paste.bmp" );
|
pToolBar->AddTool( 1006, "paste.bmp" );
|
||||||
|
#endif
|
||||||
layout.AddBar( pToolBar, // bar window (can be NULL)
|
layout.AddBar( pToolBar, // bar window (can be NULL)
|
||||||
sizes10, wxTOP, // alignment ( 0-top,1-bottom, etc)
|
sizes10, wxTOP, // alignment ( 0-top,1-bottom, etc)
|
||||||
0, // insert into 0th row (vert. position)
|
0, // insert into 0th row (vert. position)
|
||||||
|
@@ -1,2 +1,20 @@
|
|||||||
#include "wx/msw/wx.rc"
|
#include "wx/msw/wx.rc"
|
||||||
|
start95_pr_icon BITMAP "../bitmaps/start95_pr.bmp"
|
||||||
|
start95_dp_icon BITMAP "../bitmaps/start95_dp.bmp"
|
||||||
|
folder_icon BITMAP "../bitmaps/folder_icon.bmp"
|
||||||
|
class_icon1 BITMAP "../bitmaps/class_icon1.bmp"
|
||||||
|
class_icon BITMAP "../bitmaps/class_icon.bmp"
|
||||||
|
res_icon BITMAP "../bitmaps/res_icon.bmp"
|
||||||
|
file_icon BITMAP "../bitmaps/file_icon.bmp"
|
||||||
|
help_icon BITMAP "../bitmaps/help_icon.bmp"
|
||||||
|
search_icon BITMAP "../bitmaps/search.bmp"
|
||||||
|
bookmarks_icon BITMAP "../bitmaps/bookmarks.bmp"
|
||||||
|
nextmark_icon BITMAP "../bitmaps/nextmark.bmp"
|
||||||
|
prevmark_icon BITMAP "../bitmaps/prevmark.bmp"
|
||||||
|
open_icon BITMAP "../bitmaps/open.bmp"
|
||||||
|
save_icon BITMAP "../bitmaps/save.bmp"
|
||||||
|
saveall_icon BITMAP "../bitmaps/saveall.bmp"
|
||||||
|
cut_icon BITMAP "../bitmaps/cut.bmp"
|
||||||
|
copy_icon BITMAP "../bitmaps/copy.bmp"
|
||||||
|
paste_icon BITMAP "../bitmaps/paste.bmp"
|
||||||
|
|
||||||
|
@@ -145,6 +145,26 @@ void wxDynamicToolBar::AddTool( int toolIndex,
|
|||||||
|
|
||||||
AddTool( toolIndex, pBtn );
|
AddTool( toolIndex, pBtn );
|
||||||
}
|
}
|
||||||
|
void wxDynamicToolBar::AddTool( int toolIndex, wxBitmap labelBmp,
|
||||||
|
const wxString& labelText, bool alignTextRight,
|
||||||
|
bool isFlat )
|
||||||
|
{
|
||||||
|
wxNewBitmapButton* pBtn =
|
||||||
|
|
||||||
|
new wxNewBitmapButton( labelBmp,
|
||||||
|
labelText,
|
||||||
|
( alignTextRight )
|
||||||
|
? NB_ALIGN_TEXT_RIGHT
|
||||||
|
: NB_ALIGN_TEXT_BOTTOM,
|
||||||
|
isFlat
|
||||||
|
);
|
||||||
|
|
||||||
|
pBtn->Create( this, toolIndex );
|
||||||
|
|
||||||
|
pBtn->Reshape();
|
||||||
|
|
||||||
|
AddTool( toolIndex, pBtn );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
wxToolBarTool*
|
wxToolBarTool*
|
||||||
|
@@ -120,6 +120,9 @@ public:
|
|||||||
int imageFileType = wxBITMAP_TYPE_BMP,
|
int imageFileType = wxBITMAP_TYPE_BMP,
|
||||||
const wxString& labelText = "", bool alignTextRight = FALSE,
|
const wxString& labelText = "", bool alignTextRight = FALSE,
|
||||||
bool isFlat = TRUE );
|
bool isFlat = TRUE );
|
||||||
|
virtual void AddTool( int toolIndex, wxBitmap labelBmp,
|
||||||
|
const wxString& labelText = "", bool alignTextRight = FALSE,
|
||||||
|
bool isFlat = TRUE );
|
||||||
|
|
||||||
// method from wxToolBarBase (for compatibility), only
|
// method from wxToolBarBase (for compatibility), only
|
||||||
// first two arguments are valid
|
// first two arguments are valid
|
||||||
|
Reference in New Issue
Block a user