+ // default width and height of the page
+ int DEFAULT_PAGE_WIDTH,
+ DEFAULT_PAGE_HEIGHT;
+ if ( wxSystemSettings::GetScreenType() <= wxSYS_SCREEN_PDA )
+ {
+ // Make the default page size small enough to fit on screen
+ DEFAULT_PAGE_WIDTH = wxSystemSettings::GetMetric(wxSYS_SCREEN_X) / 2;
+ DEFAULT_PAGE_HEIGHT = wxSystemSettings::GetMetric(wxSYS_SCREEN_Y) / 2;
+ }
+ else // !PDA
+ {
+ DEFAULT_PAGE_WIDTH =
+ DEFAULT_PAGE_HEIGHT = 270;
+ }
+
+ // start with default minimal size
+ wxSize pageSize(DEFAULT_PAGE_WIDTH, DEFAULT_PAGE_HEIGHT);
+
+ // make the page at least as big as specified by user
+ pageSize.IncTo(m_sizePage);
+
+ if ( m_statbmp )
+ {
+ // make the page at least as tall as the bitmap
+ pageSize.IncTo(wxSize(0, m_bitmap.GetHeight()));
+ }
+
+ if ( m_usingSizer )
+ {
+ // make it big enough to contain all pages added to the sizer
+ pageSize.IncTo(m_sizerPage->GetMaxChildSize());
+ }
+