Corrected close button bitmap in wxAUIMultiNotebook.

Added test for wxAUIMultiNotebook to aui sample.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robert Roebling
2006-08-28 09:38:14 +00:00
parent 1d4758e142
commit df00bdf773
2 changed files with 61 additions and 2 deletions

View File

@@ -61,6 +61,7 @@ class MyFrame : public wxFrame
ID_TextContent,
ID_TreeContent,
ID_HTMLContent,
ID_NotebookContent,
ID_SizeReportContent,
ID_CreatePerspective,
ID_CopyPerspectiveCode,
@@ -96,6 +97,7 @@ private:
wxSizeReportCtrl* CreateSizeReportCtrl(int width = 80, int height = 80);
wxPoint GetStartPosition();
wxHtmlWindow* CreateHTMLCtrl();
wxAuiMultiNotebook* CreateNotebook();
wxString GetIntroText();
@@ -107,6 +109,7 @@ private:
void OnCreateTree(wxCommandEvent& evt);
void OnCreateGrid(wxCommandEvent& evt);
void OnCreateHTML(wxCommandEvent& evt);
void OnCreateNotebook(wxCommandEvent& evt);
void OnCreateText(wxCommandEvent& evt);
void OnCreateSizeReport(wxCommandEvent& evt);
void OnChangeContentPane(wxCommandEvent& evt);
@@ -564,6 +567,7 @@ BEGIN_EVENT_TABLE(MyFrame, wxFrame)
EVT_MENU(ID_TextContent, MyFrame::OnChangeContentPane)
EVT_MENU(ID_SizeReportContent, MyFrame::OnChangeContentPane)
EVT_MENU(ID_HTMLContent, MyFrame::OnChangeContentPane)
EVT_MENU(ID_NotebookContent, MyFrame::OnChangeContentPane)
EVT_MENU(wxID_EXIT, MyFrame::OnExit)
EVT_MENU(wxID_ABOUT, MyFrame::OnAbout)
EVT_UPDATE_UI(ID_AllowFloating, MyFrame::OnUpdateUI)
@@ -611,6 +615,7 @@ MyFrame::MyFrame(wxWindow* parent,
view_menu->Append(ID_TextContent, _("Use a Text Control for the Content Pane"));
view_menu->Append(ID_HTMLContent, _("Use an HTML Control for the Content Pane"));
view_menu->Append(ID_TreeContent, _("Use a Tree Control for the Content Pane"));
view_menu->Append(ID_NotebookContent, _("Use a AUI wxMultiNotebook control for the Content Pane"));
view_menu->Append(ID_SizeReportContent, _("Use a Size Reporter for the Content Pane"));
wxMenu* options_menu = new wxMenu;
@@ -799,6 +804,9 @@ MyFrame::MyFrame(wxWindow* parent,
m_mgr.AddPane(CreateHTMLCtrl(), wxPaneInfo().Name(wxT("html_content")).
CenterPane());
m_mgr.AddPane(CreateNotebook(), wxPaneInfo().Name(wxT("notebook_content")).
CenterPane());
// add the toolbars to the manager
m_mgr.AddPane(tb1, wxPaneInfo().
@@ -1052,6 +1060,15 @@ void MyFrame::OnCreateHTML(wxCommandEvent& WXUNUSED(event))
m_mgr.Update();
}
void MyFrame::OnCreateNotebook(wxCommandEvent& WXUNUSED(event))
{
m_mgr.AddPane(CreateNotebook(), wxPaneInfo().
Name(wxT("Test")).Caption(wxT("Notebook")).
Float().FloatingPosition(GetStartPosition()).
FloatingSize(wxSize(300,200)));
m_mgr.Update();
}
void MyFrame::OnCreateText(wxCommandEvent& WXUNUSED(event))
{
m_mgr.AddPane(CreateTextCtrl(), wxPaneInfo().
@@ -1075,6 +1092,7 @@ void MyFrame::OnChangeContentPane(wxCommandEvent& event)
m_mgr.GetPane(wxT("tree_content")).Show(event.GetId() == ID_TreeContent ? true:false);
m_mgr.GetPane(wxT("sizereport_content")).Show(event.GetId() == ID_SizeReportContent ? true:false);
m_mgr.GetPane(wxT("html_content")).Show(event.GetId() == ID_HTMLContent ? true:false);
m_mgr.GetPane(wxT("notebook_content")).Show(event.GetId() == ID_NotebookContent ? true:false);
m_mgr.Update();
}
@@ -1170,6 +1188,35 @@ wxHtmlWindow* MyFrame::CreateHTMLCtrl()
return ctrl;
}
wxAuiMultiNotebook* MyFrame::CreateNotebook()
{
wxAuiMultiNotebook* ctrl = new wxAuiMultiNotebook( this, wxID_ANY,
wxDefaultPosition, wxSize(400,300) );
wxPanel *panel = new wxPanel( ctrl, wxID_ANY );
wxFlexGridSizer *flex = new wxFlexGridSizer( 2 );
flex->AddGrowableRow( 0 );
flex->AddGrowableRow( 3 );
flex->AddGrowableCol( 1 );
flex->Add( 5,5 ); flex->Add( 5,5 );
flex->Add( new wxStaticText( panel, -1, wxT("wxTextCtrl:") ), 0, wxALL|wxALIGN_CENTRE, 5 );
flex->Add( new wxTextCtrl( panel, -1, wxT(""), wxDefaultPosition, wxSize(100,-1) ),
1, wxALL|wxALIGN_CENTRE, 5 );
flex->Add( new wxStaticText( panel, -1, wxT("wxSpinCtrl:") ), 0, wxALL|wxALIGN_CENTRE, 5 );
flex->Add( new wxSpinCtrl( panel, -1, wxT("5"), wxDefaultPosition, wxSize(100,-1),
wxSP_ARROW_KEYS, 5, 50, 5 ), 0, wxALL|wxALIGN_CENTRE, 5 );
flex->Add( 5,5 ); flex->Add( 5,5 );
panel->SetSizer( flex );
ctrl->AddPage( panel, wxT("wxPanel") );
ctrl->AddPage( new wxTextCtrl( ctrl, wxID_ANY, wxT("Some text"),
wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE) , wxT("wxTextCtrl I") );
ctrl->AddPage( new wxTextCtrl( ctrl, wxID_ANY, wxT("Some more text"),
wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE) , wxT("wxTextCtrl II") );
return ctrl;
}
wxString MyFrame::GetIntroText()
{

View File

@@ -74,8 +74,8 @@ static wxBitmap BitmapFromBits(const unsigned char bits[], int w, int h,
const wxColour& color)
{
wxImage img = wxBitmap((const char*)bits, w, h).ConvertToImage();
img.Replace(255,255,255,123,123,123);
img.Replace(0,0,0,color.Red(),color.Green(),color.Blue());
img.Replace(0,0,0,123,123,123);
img.Replace(255,255,255,color.Red(),color.Green(),color.Blue());
img.SetMaskColour(123,123,123);
return wxBitmap(img);
}
@@ -618,10 +618,22 @@ wxAuiTabCtrl::wxAuiTabCtrl(wxWindow* parent,
m_hover_button = NULL;
// FIXME: copied from dockart-- needs to put in a common place
#if defined( __WXMAC__ )
static unsigned char close_bits[]={
0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xFE, 0x03, 0xF8, 0x01, 0xF0, 0x19, 0xF3,
0xB8, 0xE3, 0xF0, 0xE1, 0xE0, 0xE0, 0xF0, 0xE1, 0xB8, 0xE3, 0x19, 0xF3,
0x01, 0xF0, 0x03, 0xF8, 0x0F, 0xFE, 0xFF, 0xFF };
#elif defined( __WXGTK__)
static unsigned char close_bits[]={
0xff, 0xff, 0xff, 0xff, 0x07, 0xf0, 0xfb, 0xef, 0xdb, 0xed, 0x8b, 0xe8,
0x1b, 0xec, 0x3b, 0xee, 0x1b, 0xec, 0x8b, 0xe8, 0xdb, 0xed, 0xfb, 0xef,
0x07, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
#else
static unsigned char close_bits[]={
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xfb,0xcf,0xf9,
0x9f,0xfc,0x3f,0xfe,0x3f,0xfe,0x9f,0xfc,0xcf,0xf9,0xef,0xfb,
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
#endif
AddButton(101, BitmapFromBits(close_bits, 16, 16, *wxBLACK));
}