#include "wx/menu.h"
#include "wx/layout.h"
#include "wx/msgdlg.h"
+ #include "wx/icon.h"
#endif
#include "wx/sizer.h"
#include "wx/textctrl.h"
#include "wx/calctrl.h"
+#include "wx/settings.h"
#if wxUSE_DATEPICKCTRL
#include "wx/datectrl.h"
#endif // wxUSE_DATEPICKCTRL_GENERIC
#endif // wxUSE_DATEPICKCTRL
-// the application icon (under Windows and OS/2 it is in resources and even
-// though we could still include the XPM here it would be unused)
-#if !defined(__WXMSW__) && !defined(__WXPM__)
- #include "../sample.xpm"
-#endif
+#include "../sample.xpm"
+
+#define USE_SIZABLE_CALENDAR 0
// ----------------------------------------------------------------------------
// private classes
{
public:
// ctor(s)
- MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size);
+ MyFrame(const wxString& title, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize);
// event handlers (these functions should _not_ be virtual)
void OnQuit(wxCommandEvent& event);
bool MyApp::OnInit()
{
// Create the main application window
- MyFrame *frame = new MyFrame(_T("Calendar wxWidgets sample"),
- wxPoint(50, 50), wxSize(450, 340));
+ MyFrame *frame = new MyFrame(_T("Calendar wxWidgets sample")
+#ifndef __WXWINCE__
+ ,wxPoint(50, 50), wxSize(450, 340)
+#endif
+ );
frame->Show(true);
: wxFrame((wxFrame *)NULL, wxID_ANY, title, pos, size)
{
// set the frame icon
- SetIcon(wxICON(sample));
+ SetIcon(wxIcon(sample_xpm));
// create a menu bar
wxMenu *menuFile = new wxMenu;
wxCAL_SHOW_HOLIDAYS |
wxRAISED_BORDER);
- wxBoxSizer *m_sizer = new wxBoxSizer( wxHORIZONTAL );
+#if USE_SIZABLE_CALENDAR
+ wxCalendarCtrl *sizableCalendar = new wxCalendarCtrl(this, wxID_ANY);
+#endif
+
+ // adjust to vertical/horizontal display, check mostly dedicated to WinCE
+ bool horizontal = ( wxSystemSettings::GetMetric(wxSYS_SCREEN_X) > wxSystemSettings::GetMetric(wxSYS_SCREEN_Y) );
+ wxBoxSizer *m_sizer = new wxBoxSizer( horizontal ? wxHORIZONTAL : wxVERTICAL );
m_sizer->Add(m_date, 0, wxALIGN_CENTER | wxALL, 10 );
m_sizer->Add(m_calendar, 0, wxALIGN_CENTER | wxALIGN_LEFT);
+#if USE_SIZABLE_CALENDAR
+ m_sizer->Add(sizableCalendar, 1, wxEXPAND);
+#endif
+
SetSizer( m_sizer );
m_sizer->SetSizeHints( this );
}
}
#endif // wxUSE_DATEPICKCTRL
-