/* create the dialog box shown while worker is running */ static GtkWidget *busy_dialog(GtkWidget *parent, GtkWidget **pbar, gboolean *cancel_ind) { GtkWidget *dialog = gtk_dialog_new(); gtk_dialog_set_has_separator(GTK_DIALOG(dialog), FALSE); gtk_window_set_title(GTK_WINDOW(dialog), _("Downloading")); gtk_window_set_default_size(GTK_WINDOW(dialog), 300, 10); gtk_window_set_modal(GTK_WINDOW(dialog), TRUE); gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW(parent)); g_assert(pbar); *pbar = gtk_progress_bar_new(); gtk_progress_bar_set_pulse_step(GTK_PROGRESS_BAR(*pbar), 0.1); gtk_box_pack_start_defaults(GTK_BOX(GTK_DIALOG(dialog)->vbox), *pbar); GtkWidget *button = button_new_with_label(_("Cancel")); gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(on_cancel), (gpointer)cancel_ind); gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), button); gtk_signal_connect(GTK_OBJECT(dialog), "destroy", G_CALLBACK(dialog_destroy_event), (gpointer)cancel_ind); gtk_widget_show_all(dialog); return dialog; }
Splash *oregano_splash_new (GError **error) { GtkBuilder *gui; Splash *sp; GtkEventBox *event; if ((gui = gtk_builder_new ()) == NULL) { g_set_error_literal (error, OREGANO_ERROR, OREGANO_UI_ERROR_NO_BUILDER, _ ("Failed to spawn builder")); return NULL; } gtk_builder_set_translation_domain (gui, NULL); if (gtk_builder_add_from_file (gui, OREGANO_UIDIR "/splash.ui", error) <= 0) { return NULL; } sp = g_new0 (Splash, 1); sp->can_destroy = FALSE; sp->win = GTK_WINDOW (gtk_builder_get_object (gui, "splash")); sp->lbl = GTK_LABEL (gtk_builder_get_object (gui, "label")); sp->progress = GTK_WIDGET (gtk_builder_get_object (gui, "pbar")); event = GTK_EVENT_BOX (gtk_builder_get_object (gui, "event")); sp->event = GTK_WIDGET (event); gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR (sp->progress), 0.07); gtk_widget_show_all (GTK_WIDGET (sp->win)); while (gtk_events_pending ()) gtk_main_iteration (); return sp; }
/* create the dialog box shown while worker is running */ static GtkWidget *busy_dialog(GtkWidget *parent, GtkProgressBar **pbar, gboolean *cancel_ind, const char *title) { GtkWidget *dialog = gtk_dialog_new(); gtk_dialog_set_has_separator(GTK_DIALOG(dialog), FALSE); if(title) { char *str = g_strdup_printf(_("Downloading %s"), title); gtk_window_set_title(GTK_WINDOW(dialog), str); g_free(str); } else gtk_window_set_title(GTK_WINDOW(dialog), _("Downloading")); gtk_window_set_default_size(GTK_WINDOW(dialog), 300, 10); gtk_window_set_modal(GTK_WINDOW(dialog), TRUE); gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW(parent)); g_assert(pbar); /* extra cast as the version used in Maemo returns GtkWidget for whatever reason */ *pbar = GTK_PROGRESS_BAR(gtk_progress_bar_new()); gtk_progress_bar_set_pulse_step(*pbar, 0.1); gtk_box_pack_start_defaults(GTK_BOX(GTK_DIALOG(dialog)->vbox), GTK_WIDGET(*pbar)); GtkWidget *button = button_new_with_label(_("Cancel")); gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(on_cancel), (gpointer)cancel_ind); gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), button); gtk_signal_connect(GTK_OBJECT(dialog), "destroy", G_CALLBACK(dialog_destroy_event), (gpointer)cancel_ind); gtk_widget_show_all(dialog); return dialog; }
/** * progress: The progress bar * * Stops progress bar pulsing * **/ static void stop_pulse (GtkProgressBar *progress) { gtk_progress_bar_set_pulse_step (progress, 0.0); /* This causes the destroy callback to be called */ g_object_set_data (G_OBJECT (progress), "pulse-timer", NULL); }
static int gtkProgressBarMapMethod(Ihandle* ih) { ih->handle = gtk_progress_bar_new(); if (!ih->handle) return IUP_ERROR; /* add to the parent, all GTK controls must call this. */ iupgtkAddToParent(ih); gtk_widget_realize(ih->handle); if (iupStrEqualNoCase(iupAttribGetStr(ih, "ORIENTATION"), "VERTICAL")) { #if GTK_CHECK_VERSION(3, 0, 0) gtk_orientable_set_orientation(GTK_ORIENTABLE(ih->handle), GTK_ORIENTATION_VERTICAL); gtk_progress_bar_set_inverted(GTK_PROGRESS_BAR(ih->handle), TRUE); #else gtk_progress_bar_set_orientation(GTK_PROGRESS_BAR(ih->handle), GTK_PROGRESS_BOTTOM_TO_TOP); #endif if (ih->userheight < ih->userwidth) { int tmp = ih->userheight; ih->userheight = ih->userwidth; ih->userwidth = tmp; } } else { #if GTK_CHECK_VERSION(3, 0, 0) gtk_orientable_set_orientation(GTK_ORIENTABLE(ih->handle), GTK_ORIENTATION_HORIZONTAL); #else gtk_progress_bar_set_orientation((GtkProgressBar*)ih->handle, GTK_PROGRESS_LEFT_TO_RIGHT); #endif } if (iupAttribGetBoolean(ih, "MARQUEE")) { #if GTK_CHECK_VERSION(3, 0, 0) gtk_progress_bar_pulse(GTK_PROGRESS_BAR(ih->handle)); #else gtk_progress_set_activity_mode((GtkProgress*)ih->handle, TRUE); #endif ih->data->marquee = 1; ih->data->timer = IupTimer(); IupSetCallback(ih->data->timer, "ACTION_CB", (Icallback)gtkProgressBarTimeCb); IupSetAttribute(ih->data->timer, "TIME", "100"); iupAttribSet(ih->data->timer, "_IUP_PROGRESSBAR", (char*)ih); gtk_progress_bar_set_pulse_step((GtkProgressBar*)ih->handle, 0.02); } else ih->data->marquee = 0; return IUP_NOERROR; }
static void move_progress(GtkWidget *entry, gpointer progress) { gdouble step; g_return_if_fail(GTK_IS_PROGRESS_BAR(progress)); step = g_random_double_range(0.03, 0.1); gtk_progress_bar_set_pulse_step(GTK_PROGRESS_BAR(progress), step); gtk_progress_bar_pulse(GTK_PROGRESS_BAR(progress)); }
static void toggle_activity_mode(GtkWidget *widget, ProgressData *pdata){ pdata -> activity_mode = !pdata -> activity_mode; if(pdata -> activity_mode){ // becomes a running bar gtk_progress_bar_set_pulse_step(pdata->pbar, 0.05); gtk_progress_bar_pulse(GTK_PROGRESS_BAR(pdata->pbar)); } else // shows actual progress fraction gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(pdata->pbar), 0.0); }
Splash * oregano_splash_new () { GtkBuilder *gui; GError *perror = NULL; Splash *sp; GtkEventBox *event; gchar *msg; if ((gui = gtk_builder_new ()) == NULL) { oregano_error (_("Could not create splash message.")); return NULL; } else gtk_builder_set_translation_domain (gui, NULL); if (!g_file_test (OREGANO_UIDIR "/splash.ui", G_FILE_TEST_EXISTS) || !g_file_test (OREGANO_UIDIR "/splash.xpm", G_FILE_TEST_EXISTS)) { msg = g_strdup_printf ( _("The files %s or %s could not be found. You might need to reinstall Oregano to fix this."), OREGANO_UIDIR "/splash.ui", OREGANO_UIDIR "/splash.xpm"); oregano_error_with_title (_("Could not create splash message."), msg); g_free (msg); return NULL; } if (gtk_builder_add_from_file (gui, OREGANO_UIDIR "/splash.ui", &perror) <= 0) { msg = perror->message; oregano_error_with_title (_("Could not create splash message."), msg); g_error_free (perror); return NULL; } sp = g_new0 (Splash, 1); sp->can_destroy = FALSE; sp->win = GTK_WINDOW (gtk_builder_get_object (gui, "splash")); sp->lbl = GTK_LABEL (gtk_builder_get_object (gui, "label")); sp->progress = GTK_WIDGET (gtk_builder_get_object (gui, "pbar")); event = GTK_EVENT_BOX (gtk_builder_get_object (gui, "event")); sp->event = GTK_WIDGET (event); gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR (sp->progress), 0.07); gtk_widget_show_all (GTK_WIDGET (sp->win)); while (gtk_events_pending ()) gtk_main_iteration (); return sp; }
/** * progress: The progress bar to init * * Inits the progress bar and sets a timer function. * **/ static void start_pulse (GtkProgressBar *progress) { guint stag; gtk_progress_bar_set_pulse_step (progress, 0.05); gtk_progress_bar_pulse (progress); stag = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (progress), "pulse-timer")); if (stag == 0) { /* Start a pulse timer */ stag = g_timeout_add (100, (GSourceFunc)pulse_timer, progress); g_object_set_data_full (G_OBJECT (progress), "pulse-timer", GINT_TO_POINTER (stag), (GDestroyNotify)g_source_remove); } }
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); m_parent->DoAddChild( this ); PostCreation(size); SetInitialSize(size); return true; }
int main (int argc, char *argv[]) { GtkWidget *window, *progress, *eventbox, *menu; gtk_init (&argc, &argv); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title (GTK_WINDOW (window), "Accelerators"); gtk_container_set_border_width (GTK_CONTAINER (window), 10); gtk_widget_set_size_request (window, 250, -1); g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (gtk_main_quit), NULL); menu = gtk_menu_new (); eventbox = gtk_event_box_new (); progress = gtk_progress_bar_new (); gtk_progress_bar_set_text (GTK_PROGRESS_BAR (progress), "Nothing Yet Happened"); create_popup_menu (menu, window, progress); gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR (progress), 0.05); gtk_event_box_set_above_child (GTK_EVENT_BOX (eventbox), FALSE); g_signal_connect (G_OBJECT (eventbox), "button_press_event", G_CALLBACK (button_press_event), (gpointer) menu); gtk_container_add (GTK_CONTAINER (eventbox), progress); gtk_container_add (GTK_CONTAINER (window), eventbox); gtk_widget_set_events (eventbox, GDK_BUTTON_PRESS_MASK); gtk_widget_realize (eventbox); gtk_widget_show_all (window); gtk_main (); return 0; }
void show_countdown_dialog (PurplePlugin * plugin) { GtkWidget *content_area; GtkWidget *img; GtkWidget *hbox, *vbox; GtkWidget *progress_bar; GtkWidget *gtkconv_window; GtkWidget *blist_window; GtkWidget *label = NULL; g_assert (plugin != NULL && plugin->extra != NULL); g_assert (PLUGIN (countdown_dialog) == NULL); progress_bar = gtk_progress_bar_new (); img = gtk_image_new_from_stock (PIDGIN_STOCK_INFO, gtk_icon_size_from_name (PIDGIN_ICON_SIZE_TANGO_SMALL)); hbox = gtk_hbox_new (FALSE, PIDGIN_HIG_BOX_SPACE); vbox = gtk_vbox_new (FALSE, PIDGIN_HIG_BOX_SPACE); gtkconv_window = get_receiver_window (plugin); blist_window = pidgin_blist_get_default_gtk_blist ()->window; PLUGIN (countdown_dialog) = gtk_dialog_new_with_buttons (PLUGIN_NAME, GTK_WINDOW ((gtkconv_window) ? gtkconv_window : blist_window), 0, GTK_STOCK_EXECUTE, GTK_RESPONSE_ACCEPT, GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT, NULL); gtk_window_set_resizable (GTK_WINDOW (PLUGIN (countdown_dialog)), FALSE); gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR (progress_bar), 0.05); g_object_set_data (G_OBJECT (PLUGIN (countdown_dialog)), "progress-bar", progress_bar); label = gtk_label_new (COUNTDOWN_MSG); gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (progress_bar), 0); #if GTK_CHECK_VERSION (2,14,0) content_area = gtk_dialog_get_content_area (GTK_DIALOG (PLUGIN (countdown_dialog))); #else content_area = (GTK_DIALOG (PLUGIN (countdown_dialog)))->vbox; #endif gtk_window_set_deletable (GTK_WINDOW (PLUGIN (countdown_dialog)), FALSE); gtk_box_pack_start (GTK_BOX (content_area), vbox, FALSE, FALSE, 0); gtk_box_pack_start_defaults (GTK_BOX (vbox), hbox); gtk_box_pack_start (GTK_BOX (hbox), img, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (vbox), progress_bar, FALSE, FALSE, 0); gtk_widget_show_all (PLUGIN (countdown_dialog)); purple_timeout_add (250, (GSourceFunc) update_countdown, plugin); g_signal_connect_swapped (G_OBJECT (PLUGIN (countdown_dialog)), "response", G_CALLBACK (on_countdown_dialog_response_cb), plugin); }
static void xfburn_progress_dialog_init (XfburnProgressDialog * obj) { XfburnProgressDialogPrivate *priv = XFBURN_PROGRESS_DIALOG_GET_PRIVATE (obj); GtkBox *box = GTK_BOX (GTK_DIALOG (obj)->vbox); GtkWidget *frame; GtkWidget *table; GtkWidget *label; gtk_window_set_default_size (GTK_WINDOW (obj), 575, 200); /* label */ priv->label_action = gtk_label_new ("Initializing ..."); gtk_misc_set_alignment (GTK_MISC (priv->label_action), 0.1, 0.0); gtk_label_set_justify (GTK_LABEL (priv->label_action), GTK_JUSTIFY_LEFT); gtk_label_set_selectable (GTK_LABEL (priv->label_action), TRUE); set_action_text (obj, XFBURN_PROGRESS_DIALOG_STATUS_RUNNING, _("Initializing...")); gtk_widget_show (priv->label_action); gtk_box_pack_start (box, priv->label_action, FALSE, TRUE, BORDER); /* progress bar */ priv->progress_bar = gtk_progress_bar_new (); gtk_widget_show (priv->progress_bar); gtk_box_pack_start (box, priv->progress_bar, FALSE, FALSE, BORDER); gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR (priv->progress_bar), 0.05); /* buffers */ priv->hbox_buffers = gtk_hbox_new (FALSE, BORDER); gtk_widget_show (priv->hbox_buffers); gtk_box_pack_start (box, priv->hbox_buffers, FALSE, TRUE, BORDER); frame = gtk_frame_new (_("Estimated writing speed:")); gtk_widget_show (frame); gtk_box_pack_start (GTK_BOX (priv->hbox_buffers), frame, FALSE, FALSE, 0); priv->label_speed = gtk_label_new (_("unknown")); set_writing_speed (obj, -1); gtk_widget_show (priv->label_speed); gtk_container_add (GTK_CONTAINER (frame), priv->label_speed); table = gtk_table_new (2, 2, FALSE); gtk_table_set_row_spacings (GTK_TABLE (table), BORDER); gtk_table_set_col_spacings (GTK_TABLE (table), BORDER * 2); gtk_box_pack_start (GTK_BOX (priv->hbox_buffers), table, TRUE, TRUE, 0); gtk_widget_show (table); label = gtk_label_new (_("FIFO buffer:")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_label_set_justify (GTK_LABEL (label), GTK_JUSTIFY_LEFT); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 0, 1, GTK_FILL, GTK_FILL, 0, 0); gtk_widget_show (label); priv->fifo_bar = gtk_progress_bar_new (); gtk_progress_bar_set_text (GTK_PROGRESS_BAR (priv->fifo_bar), _("unknown")); gtk_table_attach (GTK_TABLE (table), priv->fifo_bar, 1, 2, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL, 0, 0); gtk_widget_show (priv->fifo_bar); label = gtk_label_new (_("Device buffer:")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_label_set_justify (GTK_LABEL (label), GTK_JUSTIFY_LEFT); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 1, 2, GTK_FILL, GTK_FILL, 0, 0); gtk_widget_show (label); priv->buffer_bar = gtk_progress_bar_new (); gtk_progress_bar_set_text (GTK_PROGRESS_BAR (priv->buffer_bar), _("unknown")); gtk_table_attach (GTK_TABLE (table), priv->buffer_bar, 1, 2, 1, 2, GTK_FILL | GTK_EXPAND, GTK_FILL, 0, 0); gtk_widget_show (priv->buffer_bar); /* action buttons */ priv->button_stop = gtk_button_new_from_stock (GTK_STOCK_STOP); gtk_widget_show (priv->button_stop); gtk_dialog_add_action_widget (GTK_DIALOG (obj), priv->button_stop, GTK_RESPONSE_CANCEL); g_signal_connect (G_OBJECT (priv->button_stop), "clicked", G_CALLBACK (cb_button_stop_clicked), obj); priv->button_close = gtk_button_new_from_stock (GTK_STOCK_CLOSE); gtk_widget_show (priv->button_close); gtk_dialog_add_action_widget (GTK_DIALOG (obj), priv->button_close, GTK_RESPONSE_CLOSE); GTK_WIDGET_SET_FLAGS (priv->button_close, GTK_CAN_DEFAULT); gtk_widget_grab_focus (priv->button_close); gtk_widget_grab_default (priv->button_close); gtk_widget_set_sensitive (priv->button_close, FALSE); g_signal_connect (G_OBJECT (priv->button_close), "clicked", G_CALLBACK (cb_button_close_clicked), obj); g_signal_connect (G_OBJECT (obj), "delete-event", G_CALLBACK (cb_dialog_delete), priv); }
static void nautilus_progress_info_widget_constructed (GObject *obj) { GtkWidget *label, *progress_bar, *hbox, *box, *button, *image; NautilusProgressInfoWidget *self = NAUTILUS_PROGRESS_INFO_WIDGET (obj); G_OBJECT_CLASS (nautilus_progress_info_widget_parent_class)->constructed (obj); label = gtk_label_new ("status"); gtk_widget_set_size_request (label, 500, -1); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); gtk_label_set_line_wrap_mode (GTK_LABEL (label), PANGO_WRAP_WORD_CHAR); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_box_pack_start (GTK_BOX (self), label, TRUE, FALSE, 0); self->priv->status = label; hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 10); progress_bar = gtk_progress_bar_new (); self->priv->progress_bar = progress_bar; gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR (progress_bar), 0.05); box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); gtk_box_pack_start(GTK_BOX (box), progress_bar, TRUE, FALSE, 0); gtk_box_pack_start(GTK_BOX (hbox), box, TRUE, TRUE, 0); image = gtk_image_new_from_icon_name ("gtk-cancel", GTK_ICON_SIZE_BUTTON); button = gtk_button_new (); gtk_container_add (GTK_CONTAINER (button), image); gtk_box_pack_start (GTK_BOX (hbox), button, FALSE,FALSE, 0); g_signal_connect (button, "clicked", G_CALLBACK (cancel_clicked), self); gtk_box_pack_start (GTK_BOX (self), hbox, FALSE,FALSE, 0); label = gtk_label_new ("details"); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); gtk_box_pack_start (GTK_BOX (self), label, TRUE, FALSE, 0); self->priv->details = label; gtk_widget_show_all (GTK_WIDGET (self)); update_data (self); update_progress (self); g_signal_connect_swapped (self->priv->info, "changed", G_CALLBACK (update_data), self); g_signal_connect_swapped (self->priv->info, "progress-changed", G_CALLBACK (update_progress), self); g_signal_connect_swapped (self->priv->info, "finished", G_CALLBACK (info_finished), self); }
//____________________________________________________ SliderDemoWidget::SliderDemoWidget( void ) { // main widget GtkWidget* mainWidget( gtk_hbox_new( false, 0 ) ); gtk_box_set_spacing( GTK_BOX( mainWidget ), 5 ); setWidget( mainWidget ); // setup setName( "Sliders" ); setComments( "Shows the appearance of sliders, progress bars and scrollbars" ); setIconName( "measure" ); realize(); // horizontal sliders { // frame GtkWidget* frame( gtk_frame_new( "Horizontal" ) ); gtk_box_pack_start( GTK_BOX( mainWidget ), frame, true, true, 0 ); gtk_widget_show( frame ); // container GtkWidget* box( gtk_vbox_new( false, 0 ) ); gtk_container_set_border_width( GTK_CONTAINER( box ), 5 ); gtk_box_set_spacing( GTK_BOX( box ), 2 ); gtk_widget_show( box ); gtk_container_add( GTK_CONTAINER( frame ), box ); // scale _horizontalSliders._scale = gtk_hscale_new_with_range( 0, 100, 1 ); gtk_scale_set_draw_value( GTK_SCALE( _horizontalSliders._scale ), false ); gtk_box_pack_start( GTK_BOX( box ), _horizontalSliders._scale, false, true, 0 ); gtk_widget_show( _horizontalSliders._scale ); // progress entry _horizontalSliders._progressEntry = gtk_entry_new(); gtk_entry_set_text( GTK_ENTRY( _horizontalSliders._progressEntry ), "Progress Bar Entry" ); gtk_entry_set_progress_fraction( GTK_ENTRY( _horizontalSliders._progressEntry ), 0.25 ); gtk_box_pack_start( GTK_BOX( box ), _horizontalSliders._progressEntry, false, true, 0 ); gtk_widget_show( _horizontalSliders._progressEntry ); // progress bar _horizontalSliders._progressBar = gtk_progress_bar_new(); #if GTK_CHECK_VERSION(3, 0, 0) gtk_orientable_set_orientation( GTK_ORIENTABLE( _horizontalSliders._progressBar ), GTK_ORIENTATION_HORIZONTAL ); #else gtk_progress_bar_set_orientation( GTK_PROGRESS_BAR( _horizontalSliders._progressBar ), GTK_PROGRESS_LEFT_TO_RIGHT ); #endif gtk_progress_set_show_text( GTK_PROGRESS( _horizontalSliders._progressBar ), true ); gtk_box_pack_start( GTK_BOX( box ), _horizontalSliders._progressBar, false, true, 0 ); gtk_widget_show( _horizontalSliders._progressBar ); // pulse progressBar _pulseProgressBar = gtk_progress_bar_new(); #if GTK_CHECK_VERSION(3, 0, 0) gtk_orientable_set_orientation( GTK_ORIENTABLE( _pulseProgressBar ), GTK_ORIENTATION_HORIZONTAL ); #else gtk_progress_bar_set_orientation( GTK_PROGRESS_BAR( _pulseProgressBar ), GTK_PROGRESS_LEFT_TO_RIGHT ); #endif gtk_progress_bar_set_pulse_step( GTK_PROGRESS_BAR( _pulseProgressBar ), 0.01 ); gtk_box_pack_start( GTK_BOX( box ), _pulseProgressBar, false, true, 0 ); gtk_widget_show( _pulseProgressBar ); // scrollbar GtkAdjustment* adjustment( GTK_ADJUSTMENT( gtk_adjustment_new( 25, 0, 110, 1, 1, 10 ) ) ); _horizontalSliders._scrollBar = gtk_hscrollbar_new( adjustment ); gtk_box_pack_start( GTK_BOX( box ), _horizontalSliders._scrollBar, false, true, 0 ); gtk_widget_show( _horizontalSliders._scrollBar ); } // vertical sliders { // frame GtkWidget* frame( gtk_frame_new( "Vertical" ) ); gtk_box_pack_start( GTK_BOX( mainWidget ), frame, false, true, 0 ); gtk_widget_show( frame ); // container GtkWidget* box( gtk_hbox_new( false, 0 ) ); gtk_container_set_border_width( GTK_CONTAINER( box ), 5 ); gtk_box_set_spacing( GTK_BOX( box ), 5 ); gtk_widget_show( box ); gtk_container_add( GTK_CONTAINER( frame ), box ); // scale _verticalSliders._scale = gtk_vscale_new_with_range( 0, 100, 1 ); gtk_scale_set_draw_value( GTK_SCALE( _verticalSliders._scale ), false ); gtk_box_pack_start( GTK_BOX( box ), _verticalSliders._scale, false, true, 0 ); gtk_widget_show( _verticalSliders._scale ); // progress bar _verticalSliders._progressBar = gtk_progress_bar_new(); #if GTK_CHECK_VERSION(3, 0, 0) gtk_orientable_set_orientation( GTK_ORIENTABLE( _verticalSliders._progressBar ), GTK_ORIENTATION_VERTICAL ); #else gtk_progress_bar_set_orientation( GTK_PROGRESS_BAR( _verticalSliders._progressBar ), GTK_PROGRESS_BOTTOM_TO_TOP ); #endif gtk_progress_set_show_text( GTK_PROGRESS( _verticalSliders._progressBar ), true ); gtk_box_pack_start( GTK_BOX( box ), _verticalSliders._progressBar, false, true, 0 ); gtk_widget_show( _verticalSliders._progressBar ); // scrollbar GtkAdjustment* adjustment( GTK_ADJUSTMENT( gtk_adjustment_new( 25, 0, 110, 1, 1, 10 ) ) ); _verticalSliders._scrollBar = gtk_vscrollbar_new( adjustment ); gtk_box_pack_start( GTK_BOX( box ), _verticalSliders._scrollBar, false, true, 0 ); gtk_widget_show( _verticalSliders._scrollBar ); } // connections connect( G_OBJECT( _horizontalSliders._scale ), "value-changed", GCallback( valueChanged ), this ); connect( G_OBJECT( _horizontalSliders._scrollBar ), "value-changed", GCallback( valueChanged ), this ); connect( G_OBJECT( _verticalSliders._scale ), "value-changed", GCallback( valueChanged ), this ); connect( G_OBJECT( _verticalSliders._scrollBar ), "value-changed", GCallback( valueChanged ), this ); // Initialize all gtk_range_set_value( GTK_RANGE( _verticalSliders._scale ), 25 ); }
static void trash_empty_start () { GtkWidget *vbox1, *vbox2, *hbox; GtkWidget *label1, *label3; gchar *markup; GCancellable *cancellable; trash_empty_dialog = gtk_dialog_new (); gtk_window_set_default_size (GTK_WINDOW (trash_empty_dialog), 400, -1); gtk_window_set_icon_name (GTK_WINDOW (trash_empty_dialog), "user-trash"); gtk_window_set_title (GTK_WINDOW (trash_empty_dialog), _("Emptying the trash")); vbox1 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 12); vbox2 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); label1 = gtk_label_new (NULL); gtk_label_set_line_wrap (GTK_LABEL (label1), TRUE); #if GTK_CHECK_VERSION (3, 16, 0) gtk_label_set_xalign (GTK_LABEL (label1), 0.0); gtk_label_set_yalign (GTK_LABEL (label1), 0.5); #else gtk_misc_set_alignment (GTK_MISC (label1), 0.0, 0.5); #endif label3 = gtk_label_new (NULL); gtk_label_set_line_wrap (GTK_LABEL (label3), TRUE); #if GTK_CHECK_VERSION (3, 16, 0) gtk_label_set_xalign (GTK_LABEL (label3), 0.0); gtk_label_set_yalign (GTK_LABEL (label3), 0.5); #else gtk_misc_set_alignment (GTK_MISC (label3), 0.0, 0.5); #endif gtk_widget_hide (label3); location_label = gtk_label_new (NULL); gtk_label_set_line_wrap (GTK_LABEL (location_label), TRUE); #if GTK_CHECK_VERSION (3, 16, 0) gtk_label_set_xalign (GTK_LABEL (location_label), 0.0); gtk_label_set_yalign (GTK_LABEL (location_label), 0.5); #else gtk_misc_set_alignment (GTK_MISC (location_label), 0.0, 0.5); #endif file_label = gtk_label_new (NULL); gtk_label_set_line_wrap (GTK_LABEL (file_label), TRUE); #if GTK_CHECK_VERSION (3, 16, 0) gtk_label_set_xalign (GTK_LABEL (file_label), 0.0); gtk_label_set_yalign (GTK_LABEL (file_label), 0.5); #else gtk_misc_set_alignment (GTK_MISC (file_label), 0.0, 0.5); #endif progressbar = gtk_progress_bar_new (); gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR (progressbar), 0.1); gtk_progress_bar_set_text (GTK_PROGRESS_BAR (progressbar), _("Preparing to empty trash…")); gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (trash_empty_dialog))), vbox1, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (vbox1), label1, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (hbox), label3, FALSE, TRUE, 0); gtk_box_pack_start (GTK_BOX (hbox), location_label, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (vbox1), hbox, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (vbox2), progressbar, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (vbox2), file_label, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (vbox1), vbox2, TRUE, TRUE, 0); gtk_widget_show (label1); gtk_widget_show (vbox1); gtk_widget_show_all (vbox2); gtk_widget_show (hbox); gtk_widget_show (location_label); gtk_container_set_border_width (GTK_CONTAINER (gtk_dialog_get_content_area (GTK_DIALOG (trash_empty_dialog))), 6); gtk_container_set_border_width (GTK_CONTAINER (vbox1), 6); gtk_dialog_add_button (GTK_DIALOG (trash_empty_dialog), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL); markup = g_markup_printf_escaped ("<big><b>%s</b></big>", _("Emptying the trash")); gtk_label_set_markup (GTK_LABEL (label1), markup); /* Translators: "Emptying trash from <device>" */ gtk_label_set_text (GTK_LABEL (label3), _("From: ")); cancellable = g_cancellable_new (); g_signal_connect_object (trash_empty_dialog, "response", G_CALLBACK (g_cancellable_cancel), cancellable, G_CONNECT_SWAPPED); g_io_scheduler_push_job (trash_empty_job, NULL, NULL, 0, cancellable); gtk_widget_show (trash_empty_dialog); g_free (markup); g_object_unref (cancellable); }
static GtkWidget * progress_widget_new (CajaProgressInfo *info) { ProgressWidgetData *data; GtkWidget *label, *progress_bar, *hbox, *vbox, *box, *button, *image; data = g_new0 (ProgressWidgetData, 1); data->info = g_object_ref (info); vbox = gtk_vbox_new (FALSE, 0); gtk_box_set_spacing (GTK_BOX (vbox), 5); data->widget = vbox; g_object_set_data_full (G_OBJECT (data->widget), "data", data, (GDestroyNotify)progress_widget_data_free); label = gtk_label_new ("status"); gtk_widget_set_size_request (label, 500, -1); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); gtk_label_set_line_wrap_mode (GTK_LABEL (label), PANGO_WRAP_WORD_CHAR); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, FALSE, 0); data->status = GTK_LABEL (label); hbox = gtk_hbox_new (FALSE,10); progress_bar = gtk_progress_bar_new (); data->progress_bar = GTK_PROGRESS_BAR (progress_bar); gtk_progress_bar_set_pulse_step (data->progress_bar, 0.05); box = gtk_vbox_new (FALSE,0); gtk_box_pack_start(GTK_BOX (box), progress_bar, TRUE,FALSE, 0); gtk_box_pack_start(GTK_BOX (hbox), box, TRUE,TRUE, 0); image = gtk_image_new_from_stock (GTK_STOCK_CANCEL, GTK_ICON_SIZE_BUTTON); button = gtk_button_new (); gtk_container_add (GTK_CONTAINER (button), image); gtk_box_pack_start (GTK_BOX (hbox), button, FALSE,FALSE, 0); g_signal_connect (button, "clicked", (GCallback)cancel_clicked, data); gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE,FALSE, 0); label = gtk_label_new ("details"); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, FALSE, 0); data->details = GTK_LABEL (label); gtk_widget_show_all (data->widget); update_data (data); update_progress (data); g_signal_connect_swapped (data->info, "changed", (GCallback)update_data, data); g_signal_connect_swapped (data->info, "progress_changed", (GCallback)update_progress, data); g_signal_connect_swapped (data->info, "finished", (GCallback)op_finished, data); return data->widget; }