+bool wxGauge::Create( wxWindow *parent,
+ wxWindowID id,
+ int range,
+ const wxPoint& pos,
+ const wxSize& size,
+ long style,
+ const wxValidator& validator,
+ const wxString& name )
+{
+ if (!PreCreation( parent, pos, size ) ||
+ !CreateBase( parent, id, pos, size, style, validator, name ))
+ {
+ wxFAIL_MSG( wxT("wxGauge creation failed") );
+ return false;
+ }
+
+ m_rangeMax = range;
+
+ m_widget = gtk_progress_bar_new();
+ g_object_ref(m_widget);
+ if ( style & wxGA_VERTICAL )
+ {
+#ifdef __WXGTK3__
+ gtk_orientable_set_orientation(GTK_ORIENTABLE(m_widget), GTK_ORIENTATION_VERTICAL);
+ gtk_progress_bar_set_inverted(GTK_PROGRESS_BAR(m_widget), true);
+#else
+ gtk_progress_bar_set_orientation( GTK_PROGRESS_BAR(m_widget),
+ GTK_PROGRESS_BOTTOM_TO_TOP );
+#endif
+ }
+
+ // when using the gauge in indeterminate mode, we need this:
+ gtk_progress_bar_set_pulse_step(GTK_PROGRESS_BAR (m_widget), 0.05);