#include "wx/msgdlg.h"
#endif
+#include "wx/sizer.h"
#include "wx/calctrl.h"
// ----------------------------------------------------------------------------
MyFrame *frame = new MyFrame(_T("Calendar wxWindows sample"),
wxPoint(50, 50), wxSize(450, 340));
- frame->Show(TRUE);
+ frame->Show(true);
// success: wxApp::OnRun() will be called which will enter the main message
// loop and the application will run. If we returned FALSE here, the
// application would exit immediately.
- return TRUE;
+ return true;
}
// ----------------------------------------------------------------------------
// frame constructor
MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size)
- : wxFrame((wxFrame *)NULL, -1, title, pos, size)
+ : wxFrame((wxFrame *)NULL, wxID_ANY, title, pos, size)
{
// create a menu bar
wxMenu *menuFile = new wxMenu;
menuCal->Append(Calendar_Cal_Monday,
_T("Monday &first weekday\tCtrl-F"),
_T("Toggle between Mon and Sun as the first week day"),
- TRUE);
+ true);
menuCal->Append(Calendar_Cal_Holidays, _T("Show &holidays\tCtrl-H"),
_T("Toggle highlighting the holidays"),
- TRUE);
+ true);
menuCal->Append(Calendar_Cal_Special, _T("Highlight &special dates\tCtrl-S"),
_T("Test custom highlighting"),
- TRUE);
+ true);
menuCal->Append(Calendar_Cal_SurroundWeeks,
_T("Show s&urrounding weeks\tCtrl-W"),
_T("Show the neighbouring weeks in the prev/next month"),
- TRUE);
+ true);
menuCal->AppendSeparator();
menuCal->Append(Calendar_Cal_SeqMonth,
_T("To&ggle month selector style\tCtrl-G"),
_T("Use another style for the calendar controls"),
- TRUE);
+ true);
menuCal->Append(Calendar_Cal_Month, _T("&Month can be changed\tCtrl-M"),
_T("Allow changing the month in the calendar"),
- TRUE);
+ true);
menuCal->Append(Calendar_Cal_Year, _T("&Year can be changed\tCtrl-Y"),
_T("Allow changing the year in the calendar"),
- TRUE);
+ true);
menuCal->AppendSeparator();
menuCal->Append(Calendar_Cal_SetDate, _T("SetDate()"), _T("Set date to 2005-12-24."));
menuCal->Append(Calendar_Cal_Today, _T("Today()"), _T("Set the current date."));
menuBar->Append(menuFile, _T("&File"));
menuBar->Append(menuCal, _T("&Calendar"));
- menuBar->Check(Calendar_Cal_Monday, TRUE);
- menuBar->Check(Calendar_Cal_Holidays, TRUE);
- menuBar->Check(Calendar_Cal_Month, TRUE);
- menuBar->Check(Calendar_Cal_Year, TRUE);
+ menuBar->Check(Calendar_Cal_Monday, true);
+ menuBar->Check(Calendar_Cal_Holidays, true);
+ menuBar->Check(Calendar_Cal_Month, true);
+ menuBar->Check(Calendar_Cal_Year, true);
// ... and attach this menu bar to the frame
SetMenuBar(menuBar);
void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
{
// TRUE is to force the frame to close
- Close(TRUE);
+ Close(true);
}
void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event))
// ----------------------------------------------------------------------------
MyPanel::MyPanel(wxFrame *frame)
- : wxPanel(frame, -1)
+ : wxPanel(frame, wxID_ANY)
{
- SetAutoLayout(TRUE);
-
wxString date;
date.Printf(wxT("Selected date: %s"),
wxDateTime::Today().FormatISODate().c_str());
- m_date = new wxStaticText(this, -1, date);
+ m_date = new wxStaticText(this, wxID_ANY, date);
m_calendar = new wxCalendarCtrl(this, Calendar_CalCtrl,
wxDefaultDateTime,
wxDefaultPosition,
wxCAL_SHOW_HOLIDAYS |
wxRAISED_BORDER);
- wxLayoutConstraints *c = new wxLayoutConstraints;
- c->left.SameAs(this, wxLeft, 10);
- c->centreY.SameAs(this, wxCentreY);
- c->height.AsIs();
- c->width.AsIs();
-
- m_date->SetConstraints(c);
+ wxBoxSizer *m_sizer = new wxBoxSizer( wxHORIZONTAL );
- c = new wxLayoutConstraints;
- c->left.SameAs(m_date, wxRight, 20);
- c->centreY.SameAs(this, wxCentreY);
- c->height.AsIs();
- c->width.AsIs();
+ m_sizer->Add(m_date, 0, wxALIGN_CENTER | wxALL, 10 );
+ m_sizer->Add(m_calendar, 0, wxALIGN_CENTER | wxALIGN_LEFT);
- m_calendar->SetConstraints(c);
+ SetSizer( m_sizer );
+ m_sizer->SetSizeHints( this );
}
void MyPanel::OnCalendar(wxCalendarEvent& event)
{
// use standard command line handling:
if ( !wxApp::OnInit() )
- return FALSE;
+ return false;
// parse the cmd line
int x = 50,
// Create the main frame window
MyFrame *frame = new MyFrame(_T("Controls wxWindows App"), x, y);
- frame->Show(TRUE);
+ frame->Show(true);
- return TRUE;
+ return true;
}
//----------------------------------------------------------------------
// ============================================================================
MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h )
- : wxPanel( frame, -1, wxPoint(x, y), wxSize(w, h) )
+ : wxPanel( frame, wxID_ANY, wxPoint(x, y), wxSize(w, h) )
{
m_listbox = NULL;
m_listboxSorted = NULL;
m_notebook = NULL;
m_label = NULL;
- m_text = new wxTextCtrl(this, -1, _T("This is the log window.\n"),
+ m_text = new wxTextCtrl(this, wxID_ANY, _T("This is the log window.\n"),
wxPoint(0, 250), wxSize(100, 50), wxTE_MULTILINE);
m_text->SetBackgroundColour(wxT("wheat"));
{
Image_List, Image_Choice, Image_Combo, Image_Text, Image_Radio, Image_Gauge, Image_Max
};
- wxImageList *imagelist = new wxImageList(16, 16, FALSE, Image_Max);
+ wxImageList *imagelist = new wxImageList(16, 16, false, Image_Max);
static const wxChar *s_iconNames[Image_Max] =
{
#endif // wxUSE_TOOLTIPS
m_checkbox = new wxCheckBox( panel, ID_LISTBOX_ENABLE, _T("&Disable"), wxPoint(20,170) );
- m_checkbox->SetValue(FALSE);
+ m_checkbox->SetValue(false);
#if wxUSE_TOOLTIPS
m_checkbox->SetToolTip( _T("Click here to disable the listbox") );
#endif // wxUSE_TOOLTIPS
(void)new wxCheckBox( panel, ID_CHANGE_COLOUR, _T("&Toggle colour"),
wxPoint(110,170) );
panel->SetCursor(wxCursor(wxCURSOR_HAND));
- m_notebook->AddPage(panel, _T("wxListBox"), TRUE, Image_List);
+ m_notebook->AddPage(panel, _T("wxListBox"), true, Image_List);
#if wxUSE_CHOICE
panel = new wxPanel(m_notebook);
(void)new wxButton( panel, ID_CHOICE_FONT, _T("Set &Italic font"), wxPoint(340,130), wxSize(140,30) );
(void)new wxCheckBox( panel, ID_CHOICE_ENABLE, _T("&Disable"), wxPoint(20,130), wxSize(140,30) );
- m_notebook->AddPage(panel, _T("wxChoice"), FALSE, Image_Choice);
+ m_notebook->AddPage(panel, _T("wxChoice"), false, Image_Choice);
#endif // wxUSE_CHOICE
panel = new wxPanel(m_notebook);
- (void)new wxStaticBox( panel, -1, _T("&Box around combobox"),
+ (void)new wxStaticBox( panel, wxID_ANY, _T("&Box around combobox"),
wxPoint(5, 5), wxSize(150, 100));
m_combo = new MyComboBox( panel, ID_COMBO, _T("This"),
wxPoint(20,25), wxSize(120, -1),
(void)new wxButton( panel, ID_COMBO_DELETE, _T("D&elete selected item"), wxPoint(180,130), wxSize(140,30) );
(void)new wxButton( panel, ID_COMBO_FONT, _T("Set &Italic font"), wxPoint(340,130), wxSize(140,30) );
(void)new wxCheckBox( panel, ID_COMBO_ENABLE, _T("&Disable"), wxPoint(20,130), wxSize(140,30) );
- m_notebook->AddPage(panel, _T("wxComboBox"), FALSE, Image_Combo);
+ m_notebook->AddPage(panel, _T("wxComboBox"), false, Image_Combo);
wxString choices2[] =
{
};
panel = new wxPanel(m_notebook);
- (void)new MyRadioBox( panel, ID_RADIOBOX, _T("&That"), wxPoint(10,160), wxSize(-1,-1), WXSIZEOF(choices2), choices2, 1, wxRA_SPECIFY_ROWS );
- m_radio = new wxRadioBox( panel, ID_RADIOBOX, _T("T&his"), wxPoint(10,10), wxSize(-1,-1), WXSIZEOF(choices), choices, 1, wxRA_SPECIFY_COLS );
+ (void)new MyRadioBox( panel, ID_RADIOBOX, _T("&That"), wxPoint(10,160), wxDefaultSize, WXSIZEOF(choices2), choices2, 1, wxRA_SPECIFY_ROWS );
+ m_radio = new wxRadioBox( panel, ID_RADIOBOX, _T("T&his"), wxPoint(10,10), wxDefaultSize, WXSIZEOF(choices), choices, 1, wxRA_SPECIFY_COLS );
m_radio->SetForegroundColour(*wxRED);
#if wxUSE_TOOLTIPS
(void)new wxButton( panel, ID_RADIOBOX_FONT, _T("Set &Italic font"), wxPoint(340,80), wxSize(140,30) );
(void)new wxCheckBox( panel, ID_RADIOBOX_ENABLE, _T("&Disable"), wxPoint(340,130), wxDefaultSize );
wxRadioButton *rb = new wxRadioButton( panel, ID_RADIOBUTTON_1, _T("Radiobutton1"), wxPoint(210,170), wxDefaultSize, wxRB_GROUP );
- rb->SetValue( FALSE );
+ rb->SetValue( false );
(void)new wxRadioButton( panel, ID_RADIOBUTTON_2, _T("&Radiobutton2"), wxPoint(340,170), wxDefaultSize );
- m_notebook->AddPage(panel, _T("wxRadioBox"), FALSE, Image_Radio);
+ m_notebook->AddPage(panel, _T("wxRadioBox"), false, Image_Radio);
panel = new wxPanel(m_notebook);
- (void)new wxStaticBox( panel, -1, _T("&wxGauge and wxSlider"), wxPoint(10,10), wxSize(222,130) );
- m_gauge = new wxGauge( panel, -1, 200, wxPoint(18,50), wxSize(155, 30), wxGA_HORIZONTAL|wxNO_BORDER );
+ (void)new wxStaticBox( panel, wxID_ANY, _T("&wxGauge and wxSlider"), wxPoint(10,10), wxSize(222,130) );
+ m_gauge = new wxGauge( panel, wxID_ANY, 200, wxPoint(18,50), wxSize(155, 30), wxGA_HORIZONTAL|wxNO_BORDER );
m_gauge->SetBackgroundColour(*wxGREEN);
m_gauge->SetForegroundColour(*wxRED);
- m_gaugeVert = new wxGauge( panel, -1, 100,
+ m_gaugeVert = new wxGauge( panel, wxID_ANY, 100,
wxPoint(195,35), wxSize(30, 90),
wxGA_VERTICAL | wxGA_SMOOTH | wxNO_BORDER );
m_slider = new wxSlider( panel, ID_SLIDER, 0, 0, 200, wxPoint(18,90), wxSize(155,-1),
m_slider->SetToolTip(_T("This is a sliding slider"));
#endif // wxUSE_TOOLTIPS
- (void)new wxStaticBox( panel, -1, _T("&Explanation"),
+ (void)new wxStaticBox( panel, wxID_ANY, _T("&Explanation"),
wxPoint(230,10), wxSize(270,130),
wxALIGN_CENTER );
#ifdef __WXMOTIF__
// No wrapping text in wxStaticText yet :-(
- (void)new wxStaticText( panel, -1,
+ (void)new wxStaticText( panel, wxID_ANY,
_T("Drag the slider!"),
wxPoint(250,30),
wxSize(240, -1)
);
#else
- (void)new wxStaticText( panel, -1,
+ (void)new wxStaticText( panel, wxID_ANY,
_T("In order see the gauge (aka progress bar)\n")
_T("control do something you have to drag the\n")
_T("handle of the slider to the right.\n")
int initialSpinValue = -5;
wxString s;
s << initialSpinValue;
- m_spintext = new wxTextCtrl( panel, -1, s, wxPoint(20,160), wxSize(80,-1) );
+ m_spintext = new wxTextCtrl( panel, wxID_ANY, s, wxPoint(20,160), wxSize(80,-1) );
#if wxUSE_SPINBTN
m_spinbutton = new wxSpinButton( panel, ID_SPIN, wxPoint(103,160), wxSize(80, -1) );
m_spinbutton->SetRange(-40,30);
m_spinctrl->SetValue(15);
#endif // wxUSE_SPINCTRL
- m_notebook->AddPage(panel, _T("wxGauge"), FALSE, Image_Gauge);
+ m_notebook->AddPage(panel, _T("wxGauge"), false, Image_Gauge);
panel = new wxPanel(m_notebook);
#if !defined(__WXMOTIF__) && !defined(__WIN16__) // wxStaticBitmap not working under Motif yet; and icons not allowed under WIN16.
wxIcon icon = wxArtProvider::GetIcon(wxART_INFORMATION);
- (void) new wxStaticBitmap( panel, -1, icon, wxPoint(10, 10) );
+ (void) new wxStaticBitmap( panel, wxID_ANY, icon, wxPoint(10, 10) );
// VZ: don't leak memory
- // bmpStatic = new wxStaticBitmap(panel, -1, wxNullIcon, wxPoint(50, 10));
+ // bmpStatic = new wxStaticBitmap(panel, wxID_ANY, wxNullIcon, wxPoint(50, 10));
// bmpStatic->SetIcon(wxArtProvider::GetIcon(wxART_QUESTION));
#endif // !Motif
{
bitmap.SetMask(new wxMask(bitmap, *wxBLUE));
- (void)new wxStaticBitmap /* wxBitmapButton */ (panel, -1, bitmap, wxPoint(300, 120));
+ (void)new wxStaticBitmap /* wxBitmapButton */ (panel, wxID_ANY, bitmap, wxPoint(300, 120));
}
#endif
bmp3(wxArtProvider::GetBitmap(wxART_QUESTION));
wxBitmapButton *bmpBtn = new wxBitmapButton
(
- panel, -1,
+ panel, wxID_ANY,
bmp1,
wxPoint(30, 70)
);
_T("&Toggle label"), wxPoint(250, 20));
#endif // wxUSE_TOGGLEBTN
- m_label = new wxStaticText(panel, -1, _T("Label with some long text"),
+ m_label = new wxStaticText(panel, wxID_ANY, _T("Label with some long text"),
wxPoint(250, 60), wxDefaultSize,
wxALIGN_RIGHT /*| wxST_NO_AUTORESIZE*/);
m_label->SetForegroundColour( *wxBLUE );
m_notebook->AddPage(panel, _T("wxBitmapXXX"));
- // layout constraints
-#if wxUSE_CONSTRAINTS
- wxLayoutConstraints *c;
-
- panel = new wxPanel(m_notebook);
- panel->SetAutoLayout( TRUE );
-
- c = new wxLayoutConstraints;
- c->top.SameAs( panel, wxTop, 10 );
- c->height.AsIs( );
- c->left.SameAs( panel, wxLeft, 10 );
- c->width.PercentOf( panel, wxWidth, 40 );
-
- wxButton *pMyButton = new wxButton(panel, ID_BUTTON_TEST1, _T("Test Button &1") );
- pMyButton->SetConstraints( c );
-
- c = new wxLayoutConstraints;
- c->top.SameAs( panel, wxTop, 10 );
- c->bottom.SameAs( panel, wxBottom, 10 );
- c->right.SameAs( panel, wxRight, 10 );
- c->width.PercentOf( panel, wxWidth, 40 );
-
- wxButton *pMyButton2 = new wxButton(panel, ID_BUTTON_TEST2, _T("Test Button &2") );
- pMyButton2->SetConstraints( c );
-
- m_notebook->AddPage(panel, _T("wxLayoutConstraint"));
-#endif
-
// sizer
panel = new wxPanel(m_notebook);
- panel->SetAutoLayout( TRUE );
+ panel->SetAutoLayout( true );
wxBoxSizer *sizer = new wxBoxSizer( wxVERTICAL );
wxStaticBoxSizer *csizer =
- new wxStaticBoxSizer (new wxStaticBox (panel, -1, _T("Show Buttons")),
+ new wxStaticBoxSizer (new wxStaticBox (panel, wxID_ANY, _T("Show Buttons")),
wxHORIZONTAL );
wxCheckBox *check1, *check2, *check3, *check4, *check14, *checkBig;
check1 = new wxCheckBox (panel, ID_SIZER_CHECK1, _T("1"));
- check1->SetValue (TRUE);
+ check1->SetValue (true);
csizer->Add (check1);
check2 = new wxCheckBox (panel, ID_SIZER_CHECK2, _T("2"));
- check2->SetValue (TRUE);
+ check2->SetValue (true);
csizer->Add (check2);
check3 = new wxCheckBox (panel, ID_SIZER_CHECK3, _T("3"));
- check3->SetValue (TRUE);
+ check3->SetValue (true);
csizer->Add (check3);
check4 = new wxCheckBox (panel, ID_SIZER_CHECK4, _T("4"));
- check4->SetValue (TRUE);
+ check4->SetValue (true);
csizer->Add (check4);
check14 = new wxCheckBox (panel, ID_SIZER_CHECK14, _T("1-4"));
- check14->SetValue (TRUE);
+ check14->SetValue (true);
csizer->Add (check14);
checkBig = new wxCheckBox (panel, ID_SIZER_CHECKBIG, _T("Big"));
- checkBig->SetValue (TRUE);
+ checkBig->SetValue (true);
csizer->Add (checkBig);
sizer->Add (csizer);
m_buttonSizer = new wxBoxSizer (wxVERTICAL);
- m_sizerBtn1 = new wxButton(panel, -1, _T("Test Button &1") );
+ m_sizerBtn1 = new wxButton(panel, wxID_ANY, _T("Test Button &1") );
m_buttonSizer->Add( m_sizerBtn1, 0, wxALL, 10 );
- m_sizerBtn2 = new wxButton(panel, -1, _T("Test Button &2") );
+ m_sizerBtn2 = new wxButton(panel, wxID_ANY, _T("Test Button &2") );
m_buttonSizer->Add( m_sizerBtn2, 0, wxALL, 10 );
- m_sizerBtn3 = new wxButton(panel, -1, _T("Test Button &3") );
+ m_sizerBtn3 = new wxButton(panel, wxID_ANY, _T("Test Button &3") );
m_buttonSizer->Add( m_sizerBtn3, 0, wxALL, 10 );
- m_sizerBtn4 = new wxButton(panel, -1, _T("Test Button &4") );
+ m_sizerBtn4 = new wxButton(panel, wxID_ANY, _T("Test Button &4") );
m_buttonSizer->Add( m_sizerBtn4, 0, wxALL, 10 );
m_hsizer->Add (m_buttonSizer);
m_hsizer->Add( 20,20, 1 );
- m_bigBtn = new wxButton(panel, -1, _T("Multiline\nbutton") );
+ m_bigBtn = new wxButton(panel, wxID_ANY, _T("Multiline\nbutton") );
m_hsizer->Add( m_bigBtn , 3, wxGROW|wxALL, 10 );
sizer->Add (m_hsizer, 1, wxGROW);
wxPD_REMAINING_TIME);
- bool cont = TRUE;
+ bool cont = true;
for ( int i = 0; i <= max && cont; i++ )
{
wxSleep(1);
END_EVENT_TABLE()
MyFrame::MyFrame(const wxChar *title, int x, int y)
- : wxFrame(NULL, -1, title, wxPoint(x, y), wxSize(500, 430))
+ : wxFrame(NULL, wxID_ANY, title, wxPoint(x, y), wxSize(500, 430))
{
// Give it an icon
// The wxICON() macros loads an icon from a resource under Windows
tooltip_menu->Append(CONTROLS_SET_TOOLTIP_DELAY, _T("Set &delay\tCtrl-D"));
tooltip_menu->AppendSeparator();
tooltip_menu->Append(CONTROLS_ENABLE_TOOLTIPS, _T("&Toggle tooltips\tCtrl-T"),
- _T("enable/disable tooltips"), TRUE);
- tooltip_menu->Check(CONTROLS_ENABLE_TOOLTIPS, TRUE);
+ _T("enable/disable tooltips"), true);
+ tooltip_menu->Check(CONTROLS_ENABLE_TOOLTIPS, true);
menu_bar->Append(tooltip_menu, _T("&Tooltips"));
#endif // wxUSE_TOOLTIPS
wxMenu *panel_menu = new wxMenu;
panel_menu->Append(CONTROLS_ENABLE_ALL, _T("&Disable all\tCtrl-E"),
- _T("Enable/disable all panel controls"), TRUE);
+ _T("Enable/disable all panel controls"), true);
menu_bar->Append(panel_menu, _T("&Panel"));
SetMenuBar(menu_bar);
void MyFrame::OnQuit (wxCommandEvent& WXUNUSED(event) )
{
- Close(TRUE);
+ Close(true);
}
void MyFrame::OnAbout( wxCommandEvent& WXUNUSED(event) )
void MyFrame::OnToggleTooltips(wxCommandEvent& WXUNUSED(event))
{
- static bool s_enabled = TRUE;
+ static bool s_enabled = true;
s_enabled = !s_enabled;
void MyFrame::OnEnableAll(wxCommandEvent& WXUNUSED(event))
{
- static bool s_enable = TRUE;
+ static bool s_enable = true;
s_enable = !s_enable;
m_panel->Enable(s_enable);
// we don't draw the shape to a bitmap until it's really needed (i.e.
// we're asked to do so)
- m_hasBitmap = FALSE;
+ m_hasBitmap = false;
#if wxUSE_METAFILES
- m_hasMetaFile = FALSE;
+ m_hasMetaFile = false;
#endif // wxUSE_METAFILES
}
DnDShape *shape = m_shape;
m_shape = (DnDShape *)NULL;
- m_hasBitmap = FALSE;
+ m_hasBitmap = false;
#if wxUSE_METAFILES
- m_hasMetaFile = FALSE;
+ m_hasMetaFile = false;
#endif // wxUSE_METAFILES
return shape;
{
m_shape->GetDataHere(pBuf);
- return TRUE;
+ return true;
}
#if wxUSE_METAFILES
else if ( m_dobjMetaFile.IsSupported(format) )
virtual bool SetData(const wxDataFormat& format,
size_t len, const void *buf)
{
- wxCHECK_MSG( format == m_formatShape, FALSE,
+ wxCHECK_MSG( format == m_formatShape, false,
wxT( "unsupported format") );
delete m_shape;
m_shape = DnDShape::New(buf);
// the shape has changed
- m_hasBitmap = FALSE;
+ m_hasBitmap = false;
#if wxUSE_METAFILES
- m_hasMetaFile = FALSE;
+ m_hasMetaFile = false;
#endif // wxUSE_METAFILES
- return TRUE;
+ return true;
}
private:
10, 100, 650, 340);
// activate it
- frame->Show(TRUE);
+ frame->Show(true);
SetTopWindow(frame);
- return TRUE;
+ return true;
#else
wxMessageBox( _T("This sample has to be compiled with wxUSE_DRAG_AND_DROP"), _T("Building error"), wxOK);
- return FALSE;
+ return false;
#endif // wxUSE_DRAG_AND_DROP
}
#if wxUSE_DRAG_AND_DROP
DnDFrame::DnDFrame(wxFrame *frame, wxChar *title, int x, int y, int w, int h)
- : wxFrame(frame, -1, title, wxPoint(x, y), wxSize(w, h)),
+ : wxFrame(frame, wxID_ANY, title, wxPoint(x, y), wxSize(w, h)),
m_strText(_T("wxWindows drag & drop works :-)"))
{
SetMenuBar(menu_bar);
// make a panel with 3 subwindows
- wxPoint pos(0, 0);
- wxSize size(400, 200);
-
wxString strFile(_T("Drop files here!")), strText(_T("Drop text on me"));
- m_ctrlFile = new wxListBox(this, -1, pos, size, 1, &strFile,
+ m_ctrlFile = new wxListBox(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 1, &strFile,
wxLB_HSCROLL | wxLB_ALWAYS_SB );
- m_ctrlText = new wxListBox(this, -1, pos, size, 1, &strText,
+ m_ctrlText = new wxListBox(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 1, &strText,
wxLB_HSCROLL | wxLB_ALWAYS_SB );
- m_ctrlLog = new wxTextCtrl(this, -1, _T(""), pos, size,
+ m_ctrlLog = new wxTextCtrl(this, wxID_ANY, _T(""), wxDefaultPosition, wxDefaultSize,
wxTE_MULTILINE | wxTE_READONLY |
wxSUNKEN_BORDER );
m_ctrlText->SetDropTarget(new DnDText(m_ctrlText));
m_ctrlLog->SetDropTarget(new URLDropTarget);
- wxLayoutConstraints *c;
-
- // Top-left listbox
- c = new wxLayoutConstraints;
- c->left.SameAs(this, wxLeft);
- c->top.SameAs(this, wxTop);
- c->right.PercentOf(this, wxRight, 50);
- c->height.PercentOf(this, wxHeight, 30);
- m_ctrlFile->SetConstraints(c);
-
- // Top-right listbox
- c = new wxLayoutConstraints;
- c->left.SameAs (m_ctrlFile, wxRight);
- c->top.SameAs (this, wxTop);
- c->right.SameAs (this, wxRight);
- c->height.PercentOf(this, wxHeight, 30);
- m_ctrlText->SetConstraints(c);
-
- // Lower text control
- c = new wxLayoutConstraints;
- c->left.SameAs (this, wxLeft);
- c->right.SameAs (this, wxRight);
- c->height.PercentOf(this, wxHeight, 50);
- c->top.SameAs(m_ctrlText, wxBottom);
- m_ctrlLog->SetConstraints(c);
-
- SetAutoLayout(TRUE);
+ wxBoxSizer *m_sizer_top = new wxBoxSizer( wxHORIZONTAL );
+ m_sizer_top->Add(m_ctrlFile, 1, wxEXPAND );
+ m_sizer_top->Add(m_ctrlText, 1, wxEXPAND );
+
+ wxBoxSizer *m_sizer = new wxBoxSizer( wxVERTICAL );
+ m_sizer->Add(m_sizer_top, 1, wxEXPAND );
+ m_sizer->Add(m_ctrlLog, 1, wxEXPAND | wxBOTTOM, 50);
+
+ SetSizer( m_sizer );
+ m_sizer->SetSizeHints( this );
// copy data by default but allow moving it as well
- m_moveByDefault = FALSE;
- m_moveAllow = TRUE;
- menu_bar->Check(Menu_DragMoveAllow, TRUE);
+ m_moveByDefault = false;
+ m_moveAllow = true;
+ menu_bar->Check(Menu_DragMoveAllow, true);
}
void DnDFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
{
- Close(TRUE);
+ Close(true);
}
void DnDFrame::OnSize(wxSizeEvent& event)
wxPaintDC dc(this);
// dc.Clear(); -- this kills wxGTK
- dc.SetFont( wxFont( 24, wxDECORATIVE, wxNORMAL, wxNORMAL, FALSE, _T("charter") ) );
+ dc.SetFont( wxFont( 24, wxDECORATIVE, wxNORMAL, wxNORMAL, false, _T("charter") ) );
dc.DrawText( _T("Drag text from here!"), 100, h-50 );
}
void DnDFrame::OnNewFrame(wxCommandEvent& WXUNUSED(event))
{
- (new DnDShapeFrame(this))->Show(TRUE);
+ (new DnDShapeFrame(this))->Show(true);
wxLogStatus(this, wxT("Double click the new frame to select a shape for it"));
}
{
m_pOwner->Append(text);
- return TRUE;
+ return true;
}
bool DnDFile::OnDropFiles(wxCoord, wxCoord, const wxArrayString& filenames)
m_pOwner->Append(filenames[n]);
}
- return TRUE;
+ return true;
}
// ----------------------------------------------------------------------------
const wxString choices[] = { wxT("None"), wxT("Triangle"),
wxT("Rectangle"), wxT("Ellipse") };
- m_radio = new wxRadioBox( this, -1, wxT("&Shape"),
+ m_radio = new wxRadioBox( this, wxID_ANY, wxT("&Shape"),
wxDefaultPosition, wxDefaultSize, 4, choices, 4,
wxRA_SPECIFY_COLS );
shapesSizer->Add( m_radio, 0, wxGROW|wxALL, 5 );
topSizer->Add( shapesSizer, 0, wxALL, 2 );
// attributes
- wxStaticBox* box = new wxStaticBox( this, -1, wxT("&Attributes") );
+ wxStaticBox* box = new wxStaticBox( this, wxID_ANY, wxT("&Attributes") );
wxStaticBoxSizer* attrSizer = new wxStaticBoxSizer( box, wxHORIZONTAL );
wxFlexGridSizer* xywhSizer = new wxFlexGridSizer( 4, 2 );
wxStaticText* st;
- st = new wxStaticText( this, -1, wxT("Position &X:") );
- m_textX = new wxTextCtrl( this, -1, wxEmptyString, wxDefaultPosition,
+ st = new wxStaticText( this, wxID_ANY, wxT("Position &X:") );
+ m_textX = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition,
wxSize( 30, 20 ) );
xywhSizer->Add( st, 1, wxGROW|wxALL, 2 );
xywhSizer->Add( m_textX, 1, wxGROW|wxALL, 2 );
- st = new wxStaticText( this, -1, wxT("Size &width:") );
- m_textW = new wxTextCtrl( this, -1, wxEmptyString, wxDefaultPosition,
+ st = new wxStaticText( this, wxID_ANY, wxT("Size &width:") );
+ m_textW = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition,
wxSize( 30, 20 ) );
xywhSizer->Add( st, 1, wxGROW|wxALL, 2 );
xywhSizer->Add( m_textW, 1, wxGROW|wxALL, 2 );
- st = new wxStaticText( this, -1, wxT("&Y:") );
- m_textY = new wxTextCtrl( this, -1, wxEmptyString, wxDefaultPosition,
+ st = new wxStaticText( this, wxID_ANY, wxT("&Y:") );
+ m_textY = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition,
wxSize( 30, 20 ) );
xywhSizer->Add( st, 1, wxALL|wxALIGN_RIGHT, 2 );
xywhSizer->Add( m_textY, 1, wxGROW|wxALL, 2 );
- st = new wxStaticText( this, -1, wxT("&height:") );
- m_textH = new wxTextCtrl( this, -1, wxEmptyString, wxDefaultPosition,
+ st = new wxStaticText( this, wxID_ANY, wxT("&height:") );
+ m_textH = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition,
wxSize( 30, 20 ) );
xywhSizer->Add( st, 1, wxALL|wxALIGN_RIGHT, 2 );
xywhSizer->Add( m_textH, 1, wxGROW|wxALL, 2 );
buttonSizer->Add( bt, 0, wxALL, 2 );
topSizer->Add( buttonSizer, 0, wxALL|wxALIGN_RIGHT, 2 );
- SetAutoLayout( TRUE );
SetSizer( topSizer );
topSizer->Fit( this );
}
m_textW->SetValue(wxString() << m_size.x);
m_textH->SetValue(wxString() << m_size.y);
- return TRUE;
+ return true;
}
bool DnDShapeDialog::TransferDataFromWindow()
wxMessageBox(_T("All sizes and positions should be non null!"),
_T("Invalid shape"), wxICON_HAND | wxOK, this);
- return FALSE;
+ return false;
}
- return TRUE;
+ return true;
}
void DnDShapeDialog::OnColour(wxCommandEvent& WXUNUSED(event))
{
wxColourData data;
- data.SetChooseFull(TRUE);
+ data.SetChooseFull(true);
for (int i = 0; i < 16; i++)
{
wxColour colour(i*16, i*16, i*16);
DnDShapeFrame *DnDShapeFrame::ms_lastDropTarget = NULL;
DnDShapeFrame::DnDShapeFrame(wxFrame *parent)
- : wxFrame(parent, -1, _T("Shape Frame"),
+ : wxFrame(parent, wxID_ANY, _T("Shape Frame"),
wxDefaultPosition, wxSize(250, 150))
{
CreateStatusBar();
wxDropSource source(shapeData, this);
const wxChar *pc = NULL;
- switch ( source.DoDragDrop(TRUE) )
+ switch ( source.DoDragDrop(true) )
{
default:
case wxDragError:
DnDShapeDataObject *self = (DnDShapeDataObject *)this; // const_cast
self->m_dobjMetaFile.SetMetafile(*mf);
- self->m_hasMetaFile = TRUE;
+ self->m_hasMetaFile = true;
delete mf;
}
DnDShapeDataObject *self = (DnDShapeDataObject *)this; // const_cast
self->m_dobjBitmap.SetBitmap(bitmap);
- self->m_hasBitmap = TRUE;
+ self->m_hasBitmap = true;
}
// ----------------------------------------------------------------------------
static void ShowBitmap(const wxBitmap& bitmap)
{
- wxFrame *frame = new wxFrame(NULL, -1, _T("Bitmap view"));
+ wxFrame *frame = new wxFrame(NULL, wxID_ANY, _T("Bitmap view"));
frame->CreateStatusBar();
DnDCanvasBitmap *canvas = new DnDCanvasBitmap(frame);
canvas->SetBitmap(bitmap);
frame->SetStatusText(wxString::Format(_T("%dx%d"), w, h));
frame->SetClientSize(w > 100 ? 100 : w, h > 100 ? 100 : h);
- frame->Show(TRUE);
+ frame->Show(true);
}
#if wxUSE_METAFILES
static void ShowMetaFile(const wxMetaFile& metafile)
{
- wxFrame *frame = new wxFrame(NULL, -1, _T("Metafile view"));
+ wxFrame *frame = new wxFrame(NULL, wxID_ANY, _T("Metafile view"));
frame->CreateStatusBar();
DnDCanvasMetafile *canvas = new DnDCanvasMetafile(frame);
canvas->SetMetafile(metafile);
#include "wx/wx.h"
#endif
-#if !wxUSE_CONSTRAINTS
-#error You must set wxUSE_CONSTRAINTS to 1 in setup.h!
-#endif
-
#include "wx/sizer.h"
#include "wx/gbsizer.h"
#include "wx/statline.h"
// Create the main frame window
MyFrame *frame = new MyFrame;
- frame->Show(TRUE);
+ frame->Show(true);
- return TRUE;
+ return true;
}
// ----------------------------------------------------------------------------
EVT_MENU(LAYOUT_ABOUT, MyFrame::OnAbout)
EVT_MENU(LAYOUT_QUIT, MyFrame::OnQuit)
- EVT_MENU(LAYOUT_TEST_CONSTRAINTS, MyFrame::TestConstraints)
EVT_MENU(LAYOUT_TEST_SIZER, MyFrame::TestFlexSizers)
EVT_MENU(LAYOUT_TEST_NB_SIZER, MyFrame::TestNotebookSizers)
EVT_MENU(LAYOUT_TEST_GB_SIZER, MyFrame::TestGridBagSizer)
// Define my frame constructor
MyFrame::MyFrame()
- : wxFrame(NULL, -1, _T("wxWindows Layout Demo"),
+ : wxFrame(NULL, wxID_ANY, _T("wxWindows Layout Demo"),
wxDefaultPosition, wxDefaultSize,
wxDEFAULT_FRAME_STYLE | wxNO_FULL_REPAINT_ON_RESIZE)
{
// Make a menubar
wxMenu *file_menu = new wxMenu;
- file_menu->Append(LAYOUT_TEST_CONSTRAINTS, _T("Test &constraints"));
file_menu->Append(LAYOUT_TEST_SIZER, _T("Test wx&FlexSizer"));
file_menu->Append(LAYOUT_TEST_NB_SIZER, _T("&Test notebook sizers"));
file_menu->Append(LAYOUT_TEST_GB_SIZER, _T("Test &gridbag sizer"));
// 1) top: create wxStaticText with minimum size equal to its default size
topsizer->Add(
- new wxStaticText( this, -1, _T("An explanation (wxALIGN_RIGHT).") ),
+ new wxStaticText( this, wxID_ANY, _T("An explanation (wxALIGN_RIGHT).") ),
0, // make vertically unstretchable
wxALIGN_RIGHT | // right align text
wxTOP | wxLEFT | wxRIGHT, // make border all around except wxBOTTOM
// 2) top: create wxTextCtrl with minimum size (100x60)
topsizer->Add(
- new wxTextCtrl( this, -1, _T("My text (wxEXPAND)."), wxDefaultPosition, wxSize(100,60), wxTE_MULTILINE),
+ new wxTextCtrl( this, wxID_ANY, _T("My text (wxEXPAND)."), wxDefaultPosition, wxSize(100,60), wxTE_MULTILINE),
1, // make vertically stretchable
wxEXPAND | // make horizontally stretchable
wxALL, // and make border all around
// 2.5) Gratuitous test of wxStaticBoxSizers
wxBoxSizer *statsizer = new wxStaticBoxSizer(
- new wxStaticBox(this, -1, _T("A wxStaticBoxSizer")),
+ new wxStaticBox(this, wxID_ANY, _T("A wxStaticBoxSizer")),
wxVERTICAL );
statsizer->Add(
- new wxStaticText(this, -1, _T("And some TEXT inside it")),
+ new wxStaticText(this, wxID_ANY, _T("And some TEXT inside it")),
0,
wxCENTER |
wxALL,
// 2.7) And a test of wxGridSizer
wxGridSizer *gridsizer = new wxGridSizer(2, 5, 5);
- gridsizer->Add(new wxStaticText(this, -1, _T("Label")), 0,
+ gridsizer->Add(new wxStaticText(this, wxID_ANY, _T("Label")), 0,
wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL);
- gridsizer->Add(new wxTextCtrl(this, -1, _T("Grid sizer demo")), 1,
+ gridsizer->Add(new wxTextCtrl(this, wxID_ANY, _T("Grid sizer demo")), 1,
wxGROW | wxALIGN_CENTER_VERTICAL);
- gridsizer->Add(new wxStaticText(this, -1, _T("Another label")), 0,
+ gridsizer->Add(new wxStaticText(this, wxID_ANY, _T("Another label")), 0,
wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL);
- gridsizer->Add(new wxTextCtrl(this, -1, _T("More text")), 1,
+ gridsizer->Add(new wxTextCtrl(this, wxID_ANY, _T("More text")), 1,
wxGROW | wxALIGN_CENTER_VERTICAL);
- gridsizer->Add(new wxStaticText(this, -1, _T("Final label")), 0,
+ gridsizer->Add(new wxStaticText(this, wxID_ANY, _T("Final label")), 0,
wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL);
- gridsizer->Add(new wxTextCtrl(this, -1, _T("And yet more text")), 1,
+ gridsizer->Add(new wxTextCtrl(this, wxID_ANY, _T("And yet more text")), 1,
wxGROW | wxALIGN_CENTER_VERTICAL);
topsizer->Add(gridsizer, 1, wxGROW | wxALL, 10);
// 3) middle: create wxStaticLine with minimum size (3x3)
topsizer->Add(
- new wxStaticLine( this, -1, wxDefaultPosition, wxSize(3,3), wxHORIZONTAL),
+ new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxSize(3,3), wxHORIZONTAL),
0, // make vertically unstretchable
wxEXPAND | // make horizontally stretchable
wxALL, // and make border all around
// 4) bottom: create two centred wxButtons
wxBoxSizer *button_box = new wxBoxSizer( wxHORIZONTAL );
button_box->Add(
- new wxButton( this, -1, _T("Two buttons in a box") ),
+ new wxButton( this, wxID_ANY, _T("Two buttons in a box") ),
0, // make horizontally unstretchable
wxALL, // make border all around
7 ); // set border width to 7
button_box->Add(
- new wxButton( this, -1, _T("(wxCENTER)") ),
+ new wxButton( this, wxID_ANY, _T("(wxCENTER)") ),
0, // make horizontally unstretchable
wxALL, // make border all around
7 ); // set border width to 7
void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event) )
{
- Close(TRUE);
-}
-
-void MyFrame::TestConstraints(wxCommandEvent& WXUNUSED(event) )
-{
- MyConstraintsFrame *
- newFrame = new MyConstraintsFrame(_T("Constraints Test Frame"), 100, 100);
- newFrame->Show(TRUE);
+ Close(true);
}
void MyFrame::TestFlexSizers(wxCommandEvent& WXUNUSED(event) )
{
MyFlexSizerFrame *newFrame = new MyFlexSizerFrame(_T("Flex Sizer Test Frame"), 50, 50);
- newFrame->Show(TRUE);
+ newFrame->Show(true);
}
void MyFrame::TestNotebookSizers(wxCommandEvent& WXUNUSED(event) )
{
MyGridBagSizerFrame *newFrame = new
MyGridBagSizerFrame(_T("wxGridBagSizer Test Frame"), 50, 50);
- newFrame->Show(TRUE);
+ newFrame->Show(true);
}
-// ----------------------------------------------------------------------------
-// MyConstraintsFrame
-// ----------------------------------------------------------------------------
-
-MyConstraintsFrame::MyConstraintsFrame(const wxChar *title, int x, int y)
- : wxFrame(NULL, -1, title, wxPoint(x, y) )
-{
- // Make a panel
- wxPanel *panel = new wxPanel(this);
-
- // Create some panel items
- wxButton *btn1 = new wxButton(panel, -1, _T("A button (1)")) ;
-
- wxLayoutConstraints *b1 = new wxLayoutConstraints;
- b1->centreX.SameAs (panel, wxCentreX);
- b1->top.SameAs (panel, wxTop, 5);
- b1->width.PercentOf (panel, wxWidth, 80);
- b1->height.AsIs ();
- btn1->SetConstraints(b1);
-
- wxListBox *list = new wxListBox(panel, -1,
- wxPoint(-1, -1), wxSize(200, 100));
- list->Append(_T("Apple"));
- list->Append(_T("Pear"));
- list->Append(_T("Orange"));
- list->Append(_T("Banana"));
- list->Append(_T("Fruit"));
-
- wxLayoutConstraints *b2 = new wxLayoutConstraints;
- b2->top.Below (btn1, 5);
- b2->left.SameAs (panel, wxLeft, 5);
- b2->width.PercentOf (panel, wxWidth, 40);
- b2->bottom.SameAs (panel, wxBottom, 5);
- list->SetConstraints(b2);
-
- wxTextCtrl *mtext = new wxTextCtrl(panel, -1,
- _T("This frame is laid out using\nconstraints, but the preferred\nlayout mechanism now are sizers."),
- wxDefaultPosition,
- wxDefaultSize,
- wxTE_MULTILINE);
-
- wxLayoutConstraints *b3 = new wxLayoutConstraints;
- b3->top.Below (btn1, 5);
- b3->left.RightOf (list, 5);
- b3->right.SameAs (panel, wxRight, 5);
- b3->bottom.SameAs (panel, wxBottom, 5);
- mtext->SetConstraints(b3);
-
- wxTextCtrl *canvas = new wxTextCtrl(this, -1, _T("yet another window"));
-
- // Make a text window
- wxTextCtrl *text_window = new wxTextCtrl(this, -1, _T(""),
- wxDefaultPosition,
- wxDefaultSize,
- wxTE_MULTILINE);
-
- // Set constraints for panel subwindow
- wxLayoutConstraints *c1 = new wxLayoutConstraints;
-
- c1->left.SameAs (this, wxLeft);
- c1->top.SameAs (this, wxTop);
- c1->right.PercentOf (this, wxWidth, 50);
- c1->height.PercentOf (this, wxHeight, 50);
-
- panel->SetConstraints(c1);
-
- // Set constraints for canvas subwindow
- wxLayoutConstraints *c2 = new wxLayoutConstraints;
-
- c2->left.SameAs (panel, wxRight);
- c2->top.SameAs (this, wxTop);
- c2->right.SameAs (this, wxRight);
- c2->height.PercentOf (this, wxHeight, 50);
-
- canvas->SetConstraints(c2);
-
- // Set constraints for text subwindow
- wxLayoutConstraints *c3 = new wxLayoutConstraints;
- c3->left.SameAs (this, wxLeft);
- c3->top.Below (panel);
- c3->right.SameAs (this, wxRight);
- c3->bottom.SameAs (this, wxBottom);
-
- text_window->SetConstraints(c3);
-
- SetAutoLayout(TRUE);
-}
-
// ----------------------------------------------------------------------------
// MyFlexSizerFrame
// ----------------------------------------------------------------------------
sizer->Add(new wxStaticText
(
this,
- -1,
+ wxID_ANY,
wxString::Format(_T("(%d, %d)"), i + 1, j + 1),
wxDefaultPosition,
wxDefaultSize,
}
MyFlexSizerFrame::MyFlexSizerFrame(const wxChar *title, int x, int y )
- : wxFrame(NULL, -1, title, wxPoint(x, y) )
+ : wxFrame(NULL, wxID_ANY, title, wxPoint(x, y) )
{
wxFlexGridSizer *sizerFlex;
// consttuct the first column
wxSizer *sizerCol1 = new wxBoxSizer(wxVERTICAL);
- sizerCol1->Add(new wxStaticText(this, -1, _T("Ungrowable:")), 0, wxCENTER | wxTOP, 20);
+ sizerCol1->Add(new wxStaticText(this, wxID_ANY, _T("Ungrowable:")), 0, wxCENTER | wxTOP, 20);
sizerFlex = new wxFlexGridSizer(3, 3);
InitFlexSizer(sizerFlex);
sizerCol1->Add(sizerFlex, 1, wxALL | wxEXPAND, 10);
- sizerCol1->Add(new wxStaticText(this, -1, _T("Growable middle column:")), 0, wxCENTER | wxTOP, 20);
+ sizerCol1->Add(new wxStaticText(this, wxID_ANY, _T("Growable middle column:")), 0, wxCENTER | wxTOP, 20);
sizerFlex = new wxFlexGridSizer(3, 3);
InitFlexSizer(sizerFlex);
sizerFlex->AddGrowableCol(1);
sizerCol1->Add(sizerFlex, 1, wxALL | wxEXPAND, 10);
- sizerCol1->Add(new wxStaticText(this, -1, _T("Growable middle row:")), 0, wxCENTER | wxTOP, 20);
+ sizerCol1->Add(new wxStaticText(this, wxID_ANY, _T("Growable middle row:")), 0, wxCENTER | wxTOP, 20);
sizerFlex = new wxFlexGridSizer(3, 3);
InitFlexSizer(sizerFlex);
sizerFlex->AddGrowableRow(1);
sizerCol1->Add(sizerFlex, 1, wxALL | wxEXPAND, 10);
- sizerCol1->Add(new wxStaticText(this, -1, _T("All growable columns:")), 0, wxCENTER | wxTOP, 20);
+ sizerCol1->Add(new wxStaticText(this, wxID_ANY, _T("All growable columns:")), 0, wxCENTER | wxTOP, 20);
sizerFlex = new wxFlexGridSizer(3, 3);
InitFlexSizer(sizerFlex);
sizerFlex->AddGrowableCol(0, 1);
// the second one
wxSizer *sizerCol2 = new wxBoxSizer(wxVERTICAL);
- sizerCol2->Add(new wxStaticText(this, -1, _T("Growable middle row and column:")), 0, wxCENTER | wxTOP, 20);
+ sizerCol2->Add(new wxStaticText(this, wxID_ANY, _T("Growable middle row and column:")), 0, wxCENTER | wxTOP, 20);
sizerFlex = new wxFlexGridSizer(3, 3);
InitFlexSizer(sizerFlex);
sizerFlex->AddGrowableCol(1);
sizerFlex->AddGrowableRow(1);
sizerCol2->Add(sizerFlex, 1, wxALL | wxEXPAND, 10);
- sizerCol2->Add(new wxStaticText(this, -1, _T("Same with horz flex direction")), 0, wxCENTER | wxTOP, 20);
+ sizerCol2->Add(new wxStaticText(this, wxID_ANY, _T("Same with horz flex direction")), 0, wxCENTER | wxTOP, 20);
sizerFlex = new wxFlexGridSizer(3, 3);
InitFlexSizer(sizerFlex);
sizerFlex->AddGrowableCol(1);
sizerFlex->SetFlexibleDirection(wxHORIZONTAL);
sizerCol2->Add(sizerFlex, 1, wxALL | wxEXPAND, 10);
- sizerCol2->Add(new wxStaticText(this, -1, _T("Same with grow mode == \"none\"")), 0, wxCENTER | wxTOP, 20);
+ sizerCol2->Add(new wxStaticText(this, wxID_ANY, _T("Same with grow mode == \"none\"")), 0, wxCENTER | wxTOP, 20);
sizerFlex = new wxFlexGridSizer(3, 3);
InitFlexSizer(sizerFlex);
sizerFlex->AddGrowableCol(1);
sizerFlex->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_NONE);
sizerCol2->Add(sizerFlex, 1, wxALL | wxEXPAND, 10);
- sizerCol2->Add(new wxStaticText(this, -1, _T("Same with grow mode == \"all\"")), 0, wxCENTER | wxTOP, 20);
+ sizerCol2->Add(new wxStaticText(this, wxID_ANY, _T("Same with grow mode == \"all\"")), 0, wxCENTER | wxTOP, 20);
sizerFlex = new wxFlexGridSizer(3, 3);
InitFlexSizer(sizerFlex);
sizerFlex->AddGrowableCol(1);
// ----------------------------------------------------------------------------
MySizerDialog::MySizerDialog(wxWindow *parent, const wxChar *title)
- : wxDialog(parent, -1, wxString(title))
+ : wxDialog(parent, wxID_ANY, wxString(title))
{
// Begin with first hierarchy: a notebook at the top and
// and OK button at the bottom.
wxBoxSizer *topsizer = new wxBoxSizer( wxVERTICAL );
- wxNotebook *notebook = new wxNotebook( this, -1 );
+ wxNotebook *notebook = new wxNotebook( this, wxID_ANY );
wxNotebookSizer *nbs = new wxNotebookSizer( notebook );
topsizer->Add( nbs, 1, wxGROW );
topsizer->Add( button, 0, wxALIGN_RIGHT | wxALL, 10 );
// First page: one big text ctrl
- wxTextCtrl *multi = new wxTextCtrl( notebook, -1, _T("TextCtrl."), wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE );
+ wxTextCtrl *multi = new wxTextCtrl( notebook, wxID_ANY, _T("TextCtrl."), wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE );
notebook->AddPage( multi, _T("Page One") );
// Second page: a text ctrl and a button
- wxPanel *panel = new wxPanel( notebook, -1 );
+ wxPanel *panel = new wxPanel( notebook, wxID_ANY );
notebook->AddPage( panel, _T("Page Two") );
wxSizer *panelsizer = new wxBoxSizer( wxVERTICAL );
- wxTextCtrl *text = new wxTextCtrl( panel, -1, _T("TextLine 1."), wxDefaultPosition, wxSize(250,-1) );
+ wxTextCtrl *text = new wxTextCtrl( panel, wxID_ANY, _T("TextLine 1."), wxDefaultPosition, wxSize(250,-1) );
panelsizer->Add( text, 0, wxGROW|wxALL, 30 );
- text = new wxTextCtrl( panel, -1, _T("TextLine 2."), wxDefaultPosition, wxSize(250,-1) );
+ text = new wxTextCtrl( panel, wxID_ANY, _T("TextLine 2."), wxDefaultPosition, wxSize(250,-1) );
panelsizer->Add( text, 0, wxGROW|wxALL, 30 );
- wxButton *button2 = new wxButton( panel, -1, _T("Hallo") );
+ wxButton *button2 = new wxButton( panel, wxID_ANY, _T("Hallo") );
panelsizer->Add( button2, 0, wxALIGN_RIGHT | wxLEFT|wxRIGHT|wxBOTTOM, 30 );
- panel->SetAutoLayout( TRUE );
+ panel->SetAutoLayout( true );
panel->SetSizer( panelsizer );
// Tell dialog to use sizer
// ----------------------------------------------------------------------------
// some simple macros to help make the sample code below more clear
-#define TEXTCTRL(text) new wxTextCtrl(p, -1, _T(text))
-#define MLTEXTCTRL(text) new wxTextCtrl(p, -1, _T(text), wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE)
+#define TEXTCTRL(text) new wxTextCtrl(p, wxID_ANY, _T(text))
+#define MLTEXTCTRL(text) new wxTextCtrl(p, wxID_ANY, _T(text), wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE)
#define POS(r, c) wxGBPosition(r,c)
#define SPAN(r, c) wxGBSpan(r,c)
MyGridBagSizerFrame::MyGridBagSizerFrame(const wxChar *title, int x, int y )
- : wxFrame( NULL, -1, title, wxPoint(x, y) )
+ : wxFrame( NULL, wxID_ANY, title, wxPoint(x, y) )
{
- wxPanel* p = new wxPanel(this, -1);
+ wxPanel* p = new wxPanel(this, wxID_ANY);
m_panel = p;
m_gbs = new wxGridBagSizer();
- m_gbs->Add( new wxStaticText(p, -1, gbsDescription),
+ m_gbs->Add( new wxStaticText(p, wxID_ANY, gbsDescription),
POS(0,0), SPAN(1, 7),
wxALIGN_CENTER | wxALL, 5);
m_hideBtn = new wxButton(p, GBS_HIDE_BTN, _T("Hide this item -->"));
m_gbs->Add(m_hideBtn, POS(12, 3));
- m_hideTxt = new wxTextCtrl(p, -1, _T("pos(12,4), size(150, -1)"),
+ m_hideTxt = new wxTextCtrl(p, wxID_ANY, _T("pos(12,4), size(150, -1)"),
wxDefaultPosition, wxSize(150,-1));
m_gbs->Add( m_hideTxt, POS(12,4) );
public:
MyFrame();
- void TestConstraints(wxCommandEvent& event);
void TestFlexSizers(wxCommandEvent& event);
void TestNotebookSizers(wxCommandEvent& event);
void TestGridBagSizer(wxCommandEvent& event);
DECLARE_EVENT_TABLE()
};
-// a frame using constraints for layout
-class MyConstraintsFrame : public wxFrame
-{
-public:
- MyConstraintsFrame(const wxChar *title, int x, int y );
-};
-
// a frame using flex sizers for layout
class MyFlexSizerFrame : public wxFrame
{
{
LAYOUT_QUIT = 100,
LAYOUT_ABOUT,
- LAYOUT_TEST_CONSTRAINTS,
LAYOUT_TEST_SIZER,
LAYOUT_TEST_NB_SIZER,
LAYOUT_TEST_GB_SIZER