wxBookCtrl->wxBookCtrlBase. wxBookCtrl is now most suitable book for given platform. Samples adjustement.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Włodzimierz Skiba
2004-11-23 11:45:07 +00:00
parent 13e175eafc
commit 61c083e781
27 changed files with 240 additions and 210 deletions

View File

@@ -77,7 +77,7 @@ enum
class ButtonWidgetsPage : public WidgetsPage
{
public:
ButtonWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
ButtonWidgetsPage(wxBookCtrl *book, wxImageList *imaglist);
virtual ~ButtonWidgetsPage(){};
virtual wxControl *GetWidget() const { return m_button; }
@@ -139,9 +139,9 @@ END_EVENT_TABLE()
IMPLEMENT_WIDGETS_PAGE(ButtonWidgetsPage, _T("Button"));
ButtonWidgetsPage::ButtonWidgetsPage(wxNotebook *notebook,
wxImageList *imaglist)
: WidgetsPage(notebook)
ButtonWidgetsPage::ButtonWidgetsPage(wxBookCtrl *book,
wxImageList *imaglist)
: WidgetsPage(book)
{
imaglist->Add(wxBitmap(button_xpm));

View File

@@ -73,7 +73,7 @@ enum
class CheckBoxWidgetsPage : public WidgetsPage
{
public:
CheckBoxWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
CheckBoxWidgetsPage(wxBookCtrl *book, wxImageList *imaglist);
virtual ~CheckBoxWidgetsPage(){};
virtual wxControl *GetWidget() const { return m_checkbox; }
@@ -149,9 +149,9 @@ END_EVENT_TABLE()
IMPLEMENT_WIDGETS_PAGE(CheckBoxWidgetsPage, wxT("CheckBox"));
CheckBoxWidgetsPage::CheckBoxWidgetsPage(wxNotebook *notebook,
wxImageList *imaglist)
: WidgetsPage(notebook)
CheckBoxWidgetsPage::CheckBoxWidgetsPage(wxBookCtrl *book,
wxImageList *imaglist)
: WidgetsPage(book)
{
imaglist->Add(wxBitmap(checkbox_xpm));

View File

@@ -84,7 +84,7 @@ enum
class ComboboxWidgetsPage : public WidgetsPage
{
public:
ComboboxWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
ComboboxWidgetsPage(wxBookCtrl *book, wxImageList *imaglist);
virtual wxControl *GetWidget() const { return m_combobox; }
@@ -190,9 +190,9 @@ END_EVENT_TABLE()
IMPLEMENT_WIDGETS_PAGE(ComboboxWidgetsPage, _T("Combobox"));
ComboboxWidgetsPage::ComboboxWidgetsPage(wxNotebook *notebook,
wxImageList *imaglist)
: WidgetsPage(notebook)
ComboboxWidgetsPage::ComboboxWidgetsPage(wxBookCtrl *book,
wxImageList *imaglist)
: WidgetsPage(book)
{
// init everything
m_chkSort =

View File

@@ -71,7 +71,7 @@ enum
class GaugeWidgetsPage : public WidgetsPage
{
public:
GaugeWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
GaugeWidgetsPage(wxBookCtrl *book, wxImageList *imaglist);
virtual ~GaugeWidgetsPage();
virtual wxControl *GetWidget() const { return m_gauge; }
@@ -158,9 +158,9 @@ END_EVENT_TABLE()
IMPLEMENT_WIDGETS_PAGE(GaugeWidgetsPage, _T("Gauge"));
GaugeWidgetsPage::GaugeWidgetsPage(wxNotebook *notebook,
wxImageList *imaglist)
: WidgetsPage(notebook)
GaugeWidgetsPage::GaugeWidgetsPage(wxBookCtrl *book,
wxImageList *imaglist)
:WidgetsPage(book)
{
imaglist->Add(wxBitmap(gauge_xpm));

View File

@@ -76,7 +76,7 @@ enum
class ListboxWidgetsPage : public WidgetsPage
{
public:
ListboxWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
ListboxWidgetsPage(wxBookCtrl *book, wxImageList *imaglist);
virtual wxControl *GetWidget() const { return m_lbox; }
@@ -193,9 +193,9 @@ END_EVENT_TABLE()
IMPLEMENT_WIDGETS_PAGE(ListboxWidgetsPage, _T("Listbox"));
ListboxWidgetsPage::ListboxWidgetsPage(wxNotebook *notebook,
ListboxWidgetsPage::ListboxWidgetsPage(wxBookCtrl *book,
wxImageList *imaglist)
: WidgetsPage(notebook)
: WidgetsPage(book)
{
imaglist->Add(wxBitmap(listbox_xpm));

View File

@@ -24,6 +24,8 @@
#pragma hdrstop
#endif
#if wxUSE_NOTEBOOK
// for all others, include the necessary headers
#ifndef WX_PRECOMP
#include "wx/app.h"
@@ -44,7 +46,6 @@
#include "wx/artprov.h"
#include "widgets.h"
#if 1
#include "icons/notebook.xpm"
// ----------------------------------------------------------------------------
@@ -78,11 +79,6 @@ enum Orient
Orient_Max
};
// old versions of wxWidgets don't define this style
#ifndef wxNB_TOP
#define wxNB_TOP (0)
#endif
// ----------------------------------------------------------------------------
// NotebookWidgetsPage
// ----------------------------------------------------------------------------
@@ -395,7 +391,7 @@ void NotebookWidgetsPage::CreateNotebook()
m_notebook->AddPage(CreateNewPage(),
old_note->GetPageText(n),
false,
m_chkImages->GetValue() ?
m_chkImages->GetValue() ?
GetIconIndex() : -1);
}
@@ -548,4 +544,4 @@ void NotebookWidgetsPage::OnPageChanged(wxNotebookEvent& event)
event.Skip();
}
#endif
#endif // wxUSE_NOTEBOOK

View File

@@ -24,6 +24,8 @@
#pragma hdrstop
#endif
#if wxUSE_RADIOBOX
// for all others, include the necessary headers
#ifndef WX_PRECOMP
#include "wx/log.h"
@@ -39,7 +41,7 @@
#include "wx/sizer.h"
#include "widgets.h"
#if 1
#include "icons/radiobox.xpm"
// ----------------------------------------------------------------------------
@@ -76,7 +78,7 @@ static const unsigned int DEFAULT_MAJOR_DIM = 3;
class RadioWidgetsPage : public WidgetsPage
{
public:
RadioWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
RadioWidgetsPage(wxBookCtrl *book, wxImageList *imaglist);
virtual ~RadioWidgetsPage(){};
virtual wxControl *GetWidget() const { return m_radio; }
@@ -154,9 +156,9 @@ END_EVENT_TABLE()
IMPLEMENT_WIDGETS_PAGE(RadioWidgetsPage, _T("Radio"));
RadioWidgetsPage::RadioWidgetsPage(wxNotebook *notebook,
wxImageList *imaglist)
: WidgetsPage(notebook)
RadioWidgetsPage::RadioWidgetsPage(wxBookCtrl *book,
wxImageList *imaglist)
: WidgetsPage(book)
{
imaglist->Add(wxBitmap(radio_xpm));
@@ -455,4 +457,4 @@ void RadioWidgetsPage::OnUpdateUIReset(wxUpdateUIEvent& event)
event.Enable(enable);
}
#endif
#endif // wxUSE_RADIOBOX

View File

@@ -24,6 +24,8 @@
#pragma hdrstop
#endif
#if wxUSE_SLIDER
// for all others, include the necessary headers
#ifndef WX_PRECOMP
#include "wx/log.h"
@@ -44,7 +46,7 @@
#include "wx/sizer.h"
#include "widgets.h"
#if wxUSE_SLIDER
#include "icons/slider.xpm"
// ----------------------------------------------------------------------------
@@ -87,7 +89,7 @@ enum
class SliderWidgetsPage : public WidgetsPage
{
public:
SliderWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
SliderWidgetsPage(wxBookCtrl *book, wxImageList *imaglist);
virtual ~SliderWidgetsPage(){};
virtual wxControl *GetWidget() const { return m_slider; }
@@ -197,9 +199,9 @@ END_EVENT_TABLE()
IMPLEMENT_WIDGETS_PAGE(SliderWidgetsPage, _T("Slider"));
SliderWidgetsPage::SliderWidgetsPage(wxNotebook *notebook,
wxImageList *imaglist)
: WidgetsPage(notebook)
SliderWidgetsPage::SliderWidgetsPage(wxBookCtrl *book,
wxImageList *imaglist)
: WidgetsPage(book)
{
imaglist->Add(wxBitmap(slider_xpm));
@@ -600,5 +602,4 @@ void SliderWidgetsPage::OnSlider(wxScrollEvent& event)
event.GetPosition());
}
#endif
// wxUSE_SLIDER
#endif // wxUSE_SLIDER

View File

@@ -24,6 +24,8 @@
#pragma hdrstop
#endif
#if wxUSE_SPINBTN
// for all others, include the necessary headers
#ifndef WX_PRECOMP
#include "wx/log.h"
@@ -42,7 +44,7 @@
#include "wx/sizer.h"
#include "widgets.h"
#if wxUSE_SPINBTN
#include "icons/spinbtn.xpm"
// ----------------------------------------------------------------------------
@@ -71,7 +73,7 @@ enum
class SpinBtnWidgetsPage : public WidgetsPage
{
public:
SpinBtnWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
SpinBtnWidgetsPage(wxBookCtrl *book, wxImageList *imaglist);
virtual ~SpinBtnWidgetsPage(){};
virtual wxControl *GetWidget() const { return m_spinbtn; }
@@ -164,9 +166,9 @@ END_EVENT_TABLE()
IMPLEMENT_WIDGETS_PAGE(SpinBtnWidgetsPage, _T("Spin"));
SpinBtnWidgetsPage::SpinBtnWidgetsPage(wxNotebook *notebook,
SpinBtnWidgetsPage::SpinBtnWidgetsPage(wxBookCtrl *book,
wxImageList *imaglist)
: WidgetsPage(notebook)
: WidgetsPage(book)
{
m_chkVert = NULL;
m_chkWrap = NULL;

View File

@@ -139,7 +139,7 @@ END_EVENT_TABLE()
class StaticWidgetsPage : public WidgetsPage
{
public:
StaticWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
StaticWidgetsPage(wxBookCtrl *book, wxImageList *imaglist);
virtual ~StaticWidgetsPage(){};
virtual wxControl *GetWidget() const { return m_statText; }
@@ -205,9 +205,9 @@ END_EVENT_TABLE()
IMPLEMENT_WIDGETS_PAGE(StaticWidgetsPage, _T("Static"));
StaticWidgetsPage::StaticWidgetsPage(wxNotebook *notebook,
wxImageList *imaglist)
: WidgetsPage(notebook)
StaticWidgetsPage::StaticWidgetsPage(wxBookCtrl *book,
wxImageList *imaglist)
: WidgetsPage(book)
{
imaglist->Add(wxBitmap(statbox_xpm));

View File

@@ -113,7 +113,7 @@ class TextWidgetsPage : public WidgetsPage
{
public:
// ctor(s) and dtor
TextWidgetsPage(wxNotebook *notebook, wxImageList *imaglist);
TextWidgetsPage(wxBookCtrl *book, wxImageList *imaglist);
virtual ~TextWidgetsPage(){};
virtual wxControl *GetWidget() const { return m_text; }
@@ -310,8 +310,8 @@ IMPLEMENT_WIDGETS_PAGE(TextWidgetsPage, _T("Text"));
// TextWidgetsPage creation
// ----------------------------------------------------------------------------
TextWidgetsPage::TextWidgetsPage(wxNotebook *notebook, wxImageList *imaglist)
: WidgetsPage(notebook)
TextWidgetsPage::TextWidgetsPage(wxBookCtrl *book, wxImageList *imaglist)
: WidgetsPage(book)
{
imaglist->Add(wxBitmap(text_xpm));

View File

@@ -39,7 +39,7 @@
#include "wx/textctrl.h"
#endif
#include "wx/notebook.h"
#include "wx/bookctrl.h"
#include "wx/sizer.h"
#include "wx/colordlg.h"
@@ -94,8 +94,8 @@ protected:
void OnSetBgCol(wxCommandEvent& event);
#endif // wxUSE_MENUS
// initialize the notebook: add all pages to it
void InitNotebook();
// initialize the book: add all pages to it
void InitBook();
private:
// the panel containing everything
@@ -109,8 +109,8 @@ private:
wxLog *m_logTarget;
#endif // wxUSE_LOG
// the notebook containing the test pages
wxNotebook *m_notebook;
// the book containing the test pages
wxBookCtrl *m_book;
// and the image list for it
wxImageList *m_imaglist;
@@ -267,7 +267,7 @@ WidgetsFrame::WidgetsFrame(const wxString& title)
m_lboxLog = (wxListBox *)NULL;
m_logTarget = (wxLog *)NULL;
#endif // wxUSE_LOG
m_notebook = (wxNotebook *)NULL;
m_book = (wxBookCtrl *)NULL;
m_imaglist = (wxImageList *)NULL;
#if wxUSE_MENUS
@@ -288,12 +288,12 @@ WidgetsFrame::WidgetsFrame(const wxString& title)
wxSizer *sizerTop = new wxBoxSizer(wxVERTICAL);
// we have 2 panes: notebook which pages demonstrating the controls in the
// we have 2 panes: book which pages demonstrating the controls in the
// upper one and the log window with some buttons in the lower
m_notebook = new wxNotebook(m_panel, wxID_ANY, wxDefaultPosition,
wxDefaultSize, wxNO_FULL_REPAINT_ON_RESIZE|wxCLIP_CHILDREN);
InitNotebook();
m_book = new wxBookCtrl(m_panel, wxID_ANY, wxDefaultPosition,
wxDefaultSize, wxNO_FULL_REPAINT_ON_RESIZE|wxCLIP_CHILDREN|wxBC_DEFAULT);
InitBook();
// the lower one only has the log listbox and a button to clear it
#if wxUSE_LOG
@@ -320,7 +320,7 @@ WidgetsFrame::WidgetsFrame(const wxString& title)
sizerDown->Add(sizerBtns, 0, wxALL | wxALIGN_RIGHT, 5);
// put everything together
sizerTop->Add(m_notebook, 1, wxGROW | (wxALL & ~(wxTOP | wxBOTTOM)), 10);
sizerTop->Add(m_book, 1, wxGROW | (wxALL & ~(wxTOP | wxBOTTOM)), 10);
sizerTop->Add(0, 5, 0, wxGROW); // spacer in between
sizerTop->Add(sizerDown, 0, wxGROW | (wxALL & ~wxTOP), 10);
@@ -338,19 +338,19 @@ WidgetsFrame::WidgetsFrame(const wxString& title)
#endif
}
void WidgetsFrame::InitNotebook()
void WidgetsFrame::InitBook()
{
m_imaglist = new wxImageList(32, 32);
ArrayWidgetsPage pages;
wxArrayString labels;
// we need to first create all pages and only then add them to the notebook
// we need to first create all pages and only then add them to the book
// as we need the image list first
WidgetsPageInfo *info = WidgetsPage::ms_widgetPages;
while ( info )
{
WidgetsPage *page = (*info->GetCtor())(m_notebook, m_imaglist);
WidgetsPage *page = (*info->GetCtor())(m_book, m_imaglist);
pages.Add(page);
labels.Add(info->GetLabel());
@@ -358,18 +358,18 @@ void WidgetsFrame::InitNotebook()
info = info->GetNext();
}
m_notebook->SetImageList(m_imaglist);
m_book->SetImageList(m_imaglist);
// now do add them
size_t count = pages.GetCount();
for ( size_t n = 0; n < count; n++ )
{
m_notebook->AddPage(
pages[n],
labels[n],
false, // don't select
n // image id
);
m_book->AddPage(
pages[n],
labels[n],
false, // don't select
n // image id
);
}
}
@@ -407,7 +407,7 @@ void WidgetsFrame::OnSetFgCol(wxCommandEvent& WXUNUSED(event))
m_colFg = col;
WidgetsPage *page = wxStaticCast(m_notebook->GetCurrentPage(), WidgetsPage);
WidgetsPage *page = wxStaticCast(m_book->GetCurrentPage(), WidgetsPage);
page->GetWidget()->SetForegroundColour(m_colFg);
page->GetWidget()->Refresh();
}
@@ -420,7 +420,7 @@ void WidgetsFrame::OnSetBgCol(wxCommandEvent& WXUNUSED(event))
m_colBg = col;
WidgetsPage *page = wxStaticCast(m_notebook->GetCurrentPage(), WidgetsPage);
WidgetsPage *page = wxStaticCast(m_book->GetCurrentPage(), WidgetsPage);
page->GetWidget()->SetBackgroundColour(m_colBg);
page->GetWidget()->Refresh();
}
@@ -492,8 +492,8 @@ WidgetsPageInfo::WidgetsPageInfo(Constructor ctor, const wxChar *label)
// WidgetsPage
// ----------------------------------------------------------------------------
WidgetsPage::WidgetsPage(wxNotebook *notebook)
: wxPanel(notebook, wxID_ANY,
WidgetsPage::WidgetsPage(wxBookCtrl *book)
: wxPanel(book, wxID_ANY,
wxDefaultPosition, wxDefaultSize,
wxNO_FULL_REPAINT_ON_RESIZE |
wxCLIP_CHILDREN |

View File

@@ -13,7 +13,7 @@
#define _WX_SAMPLE_WIDGETS_H_
class WXDLLEXPORT wxCheckBox;
class WXDLLEXPORT wxNotebook;
class WXDLLEXPORT wxBookCtrl;
class WXDLLEXPORT wxSizer;
class WXDLLEXPORT wxTextCtrl;
@@ -25,13 +25,13 @@ class WidgetsPageInfo;
#include "wx/imaglist.h"
// ----------------------------------------------------------------------------
// WidgetsPage: a notebook page demonstrating some widget
// WidgetsPage: a book page demonstrating some widget
// ----------------------------------------------------------------------------
class WidgetsPage : public wxPanel
{
public:
WidgetsPage(wxNotebook *notebook);
WidgetsPage(wxBookCtrl *book);
// return the control shown by this page
virtual wxControl *GetWidget() const = 0;
@@ -74,7 +74,7 @@ public:
class WidgetsPageInfo
{
public:
typedef WidgetsPage *(*Constructor)(wxNotebook *notebook,
typedef WidgetsPage *(*Constructor)(wxBookCtrl *book,
wxImageList *imaglist);
// our ctor
@@ -108,9 +108,9 @@ private:
// and this one must be inserted somewhere in the source file
#define IMPLEMENT_WIDGETS_PAGE(classname, label) \
WidgetsPage *wxCtorFor##classname(wxNotebook *notebook, \
WidgetsPage *wxCtorFor##classname(wxBookCtrl *book, \
wxImageList *imaglist) \
{ return new classname(notebook, imaglist); } \
{ return new classname(book, imaglist); } \
WidgetsPageInfo classname:: \
ms_info##classname(wxCtorFor##classname, label)