};
wxButton::wxButton( wxWindow *parent, wxWindowID id, const wxString &label,
- const wxPoint &pos, const wxSize &size,
+ const wxPoint &pos, const wxSize &size,
long style, const wxString &name )
{
Create( parent, id, label, pos, size, style, name );
};
bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label,
- const wxPoint &pos, const wxSize &size,
+ const wxPoint &pos, const wxSize &size,
long style, const wxString &name )
{
m_needParent = TRUE;
-
+
wxSize newSize = size;
PreCreation( parent, id, pos, newSize, style, name );
-
- m_label = label;
- m_widget = gtk_button_new_with_label( label );
-
+
+ SetLabel(label);
+ m_widget = gtk_button_new_with_label( m_label );
+
if (newSize.x == -1) newSize.x = 15+gdk_string_measure( m_widget->style->font, label );
if (newSize.y == -1) newSize.y = 26;
SetSize( newSize.x, newSize.y );
-
- gtk_signal_connect( GTK_OBJECT(m_widget), "clicked",
+
+ gtk_signal_connect( GTK_OBJECT(m_widget), "clicked",
GTK_SIGNAL_FUNC(gtk_button_clicked_callback), (gpointer*)this );
PostCreation();
-
+
Show( TRUE );
-
+
return TRUE;
};
-
+
void wxButton::SetDefault(void)
{
};
// Created: 01/02/97
// Id:
// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
-// Licence: wxWindows licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
wxControl::wxControl(void)
{
- m_label = "";
m_needParent = TRUE;
};
-wxControl::wxControl( wxWindow *parent, wxWindowID id,
- const wxPoint &pos, const wxSize &size,
+wxControl::wxControl( wxWindow *parent, wxWindowID id,
+ const wxPoint &pos, const wxSize &size,
long style, const wxString &name ) :
wxWindow( parent, id, pos, size, style, name )
{
void wxControl::SetLabel( const wxString &label )
{
- m_label = label;
+ for ( const char *pc = label; *pc != '\0'; pc++ ) {
+ if ( *pc == '&' ) {
+ pc++; // skip it
+#if 0 // it would be unused anyhow for now - kbd interface not done yet
+ if ( *pc != '&' )
+ m_chAccel = *pc;
+#endif
+ }
+
+ m_label << *pc;
+ }
};
wxString wxControl::GetLabel(void) const
PreCreation( parent, id, pos, size, style, name );
- m_widget = gtk_label_new( label );
+ wxControl::SetLabel(label);
+ m_widget = gtk_label_new( m_label );
+
GtkJustification justify;
if ( style & wxALIGN_CENTER )
justify = GTK_JUSTIFY_CENTER;
void wxStaticText::SetLabel( const wxString &label )
{
- gtk_label_set( GTK_LABEL(m_widget), label );
+ wxControl::SetLabel(label);
+
+ gtk_label_set( GTK_LABEL(m_widget), m_label );
};
};
wxButton::wxButton( wxWindow *parent, wxWindowID id, const wxString &label,
- const wxPoint &pos, const wxSize &size,
+ const wxPoint &pos, const wxSize &size,
long style, const wxString &name )
{
Create( parent, id, label, pos, size, style, name );
};
bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label,
- const wxPoint &pos, const wxSize &size,
+ const wxPoint &pos, const wxSize &size,
long style, const wxString &name )
{
m_needParent = TRUE;
-
+
wxSize newSize = size;
PreCreation( parent, id, pos, newSize, style, name );
-
- m_label = label;
- m_widget = gtk_button_new_with_label( label );
-
+
+ SetLabel(label);
+ m_widget = gtk_button_new_with_label( m_label );
+
if (newSize.x == -1) newSize.x = 15+gdk_string_measure( m_widget->style->font, label );
if (newSize.y == -1) newSize.y = 26;
SetSize( newSize.x, newSize.y );
-
- gtk_signal_connect( GTK_OBJECT(m_widget), "clicked",
+
+ gtk_signal_connect( GTK_OBJECT(m_widget), "clicked",
GTK_SIGNAL_FUNC(gtk_button_clicked_callback), (gpointer*)this );
PostCreation();
-
+
Show( TRUE );
-
+
return TRUE;
};
-
+
void wxButton::SetDefault(void)
{
};
// Created: 01/02/97
// Id:
// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
-// Licence: wxWindows licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
wxControl::wxControl(void)
{
- m_label = "";
m_needParent = TRUE;
};
-wxControl::wxControl( wxWindow *parent, wxWindowID id,
- const wxPoint &pos, const wxSize &size,
+wxControl::wxControl( wxWindow *parent, wxWindowID id,
+ const wxPoint &pos, const wxSize &size,
long style, const wxString &name ) :
wxWindow( parent, id, pos, size, style, name )
{
void wxControl::SetLabel( const wxString &label )
{
- m_label = label;
+ for ( const char *pc = label; *pc != '\0'; pc++ ) {
+ if ( *pc == '&' ) {
+ pc++; // skip it
+#if 0 // it would be unused anyhow for now - kbd interface not done yet
+ if ( *pc != '&' )
+ m_chAccel = *pc;
+#endif
+ }
+
+ m_label << *pc;
+ }
};
wxString wxControl::GetLabel(void) const
PreCreation( parent, id, pos, size, style, name );
- m_widget = gtk_label_new( label );
+ wxControl::SetLabel(label);
+ m_widget = gtk_label_new( m_label );
+
GtkJustification justify;
if ( style & wxALIGN_CENTER )
justify = GTK_JUSTIFY_CENTER;
void wxStaticText::SetLabel( const wxString &label )
{
- gtk_label_set( GTK_LABEL(m_widget), label );
+ wxControl::SetLabel(label);
+
+ gtk_label_set( GTK_LABEL(m_widget), m_label );
};