static void gtk_button_clicked_callback( GtkWidget *WXUNUSED(widget), wxButton *button )
{
- if (g_isIdle) wxapp_install_idle_handler();
+ if (g_isIdle)
+ wxapp_install_idle_handler();
- if (!button->HasVMT()) return;
+ if (!button->m_hasVMT) return;
if (g_blockEventsOnDrag) return;
-
+
wxCommandEvent event(wxEVT_COMMAND_BUTTON_CLICKED, button->GetId());
event.SetEventObject(button);
button->GetEventHandler()->ProcessEvent(event);
m_needParent = TRUE;
m_acceptsFocus = TRUE;
- wxSize newSize = size;
+ if (!PreCreation( parent, pos, size ) ||
+ !CreateBase( parent, id, pos, size, style, validator, name ))
+ {
+ wxFAIL_MSG( _T("wxButton creation failed") );
+ return FALSE;
+ }
- PreCreation( parent, id, pos, newSize, style, name );
-
- SetValidator( validator );
m_widget = gtk_button_new_with_label( "" );
SetLabel(label);
+ wxSize newSize = size;
if (newSize.x == -1) newSize.x = 15+gdk_string_measure( m_widget->style->font, label.mbc_str() );
if (newSize.y == -1) newSize.y = 26;
SetSize( newSize.x, newSize.y );
SetSize( m_x, m_y, m_width, m_height );
}
+/* static */
+wxSize wxButton::GetDefaultSize()
+{
+ return wxSize(80,26);
+}
+
void wxButton::SetLabel( const wxString &label )
{
wxCHECK_RET( m_widget != NULL, _T("invalid button") );