projects
/
wxWidgets.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
unused parameter warnings suppressed
[wxWidgets.git]
/
src
/
gtk1
/
button.cpp
diff --git
a/src/gtk1/button.cpp
b/src/gtk1/button.cpp
index ad9b36f8daa54dab65c79a1256feaccd51e9b156..2bb626f031f1aa803610194b4e5e5b2aee0f09d4 100644
(file)
--- a/
src/gtk1/button.cpp
+++ b/
src/gtk1/button.cpp
@@
-75,13
+75,13
@@
bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label,
m_needParent = TRUE;
m_acceptsFocus = TRUE;
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 );
-
-#if wxUSE_VALIDATORS
- SetValidator( validator );
-#endif // wxUSE_VALIDATORS
m_widget = gtk_button_new_with_label( "" );
m_widget = gtk_button_new_with_label( "" );
@@
-92,8
+92,22
@@
bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label,
SetLabel(label);
SetLabel(label);
- if (newSize.x == -1) newSize.x = 15+gdk_string_measure( m_widget->style->font, label.mbc_str() );
- if (newSize.y == -1) newSize.y = 26;
+ int x = 0; int y = 0;
+ wxFont new_font( parent->GetFont() );
+ GetTextExtent( m_label, &x, &y, (int*)NULL, (int*)NULL, &new_font );
+
+ wxSize newSize = size;
+ if (newSize.x == -1)
+ {
+ newSize.x = 12+x;
+ if (newSize.x < 80) newSize.x = 80;
+ }
+ if (newSize.y == -1)
+ {
+ newSize.y = 11+y;
+ if (newSize.x < 26) newSize.x = 26;
+ }
+
SetSize( newSize.x, newSize.y );
gtk_signal_connect( GTK_OBJECT(m_widget), "clicked",
SetSize( newSize.x, newSize.y );
gtk_signal_connect( GTK_OBJECT(m_widget), "clicked",