wxSizer *wxDialogBase::CreateTextSizer( const wxString& message )
{
bool is_pda = (wxSystemSettings::GetScreenType() <= wxSYS_SCREEN_PDA);
-
+
wxString text = message;
-
+
// I admit that this is complete bogus, but it makes
// message boxes work for pda screens temporarily..
int max_width = -1;
max_width = wxSystemSettings::GetMetric( wxSYS_SCREEN_X ) - 25;
text += wxT('\n');
}
-
-
+
+
wxBoxSizer *box = new wxBoxSizer( wxVERTICAL );
// get line height for empty lines
case wxT('\n'):
if (!line.IsEmpty())
{
- wxStaticText *s = new wxStaticText( this, -1, line );
+ wxStaticText *s = new wxStaticText( this, wxID_ANY, line );
box->Add( s );
line = wxT("");
}
default:
if (text[pos] == wxT(' '))
last_space = pos;
-
+
line += message[pos];
-
+
if (is_pda)
{
int width = 0;
GetTextExtent( line, &width, (int*)NULL, (int*)NULL, (int*)NULL, &font );
-
+
if (width > max_width)
{
// exception if there was no previous space
if (last_space == 0)
last_space = pos;
-
+
int diff = pos-last_space;
int len = line.Len();
line.Remove( len-diff, diff );
-
- wxStaticText *s = new wxStaticText( this, -1, line );
+
+ wxStaticText *s = new wxStaticText( this, wxID_ANY, line );
box->Add( s );
-
+
pos = last_space;
last_space = 0;
line = wxT("");
// remaining text behind last '\n'
if (!line.IsEmpty())
{
- wxStaticText *s2 = new wxStaticText( this, -1, line );
+ wxStaticText *s2 = new wxStaticText( this, wxID_ANY, line );
box->Add( s2 );
}
wxSizer *wxDialogBase::CreateButtonSizer( long flags )
{
bool is_pda = (wxSystemSettings::GetScreenType() <= wxSYS_SCREEN_PDA);
-
- // If we have a PDA screen, put yes/no button over
+
+ // If we have a PDA screen, put yes/no button over
// all other buttons, otherwise on the left side.
wxBoxSizer *box = is_pda ? new wxBoxSizer( wxVERTICAL ) : new wxBoxSizer( wxHORIZONTAL );
-
+
wxBoxSizer *inner_yes_no = NULL;
-
+
// Only create sizer containing yes/no
// if it is actually required
if ( (flags & wxYES_NO) != 0 )
inner_yes_no = new wxBoxSizer( wxHORIZONTAL );
box->Add( inner_yes_no, 0, wxBOTTOM, 10 );
}
-
+
wxBoxSizer *inner_rest = new wxBoxSizer( wxHORIZONTAL );
box->Add( inner_rest, 0, 0, 0 );