void gSlider::init() { GtkAdjustment* adj = gtk_range_get_adjustment(GTK_RANGE(widget)); //if (_min == _max) // _max = _min + 1; if (_value < _min) _value = _min; else if (_value > _max) _value = _max; if (g_typ == Type_gSlider) { gtk_range_set_range(GTK_RANGE(widget), (gdouble)_min, (gdouble)_max); gtk_range_set_increments(GTK_RANGE(widget), (gdouble)_step, (gdouble)_page_step); } else { gtk_range_set_range(GTK_RANGE(widget), (gdouble)_min, (gdouble)_max + _page_step); gtk_range_set_increments(GTK_RANGE(widget), (gdouble)_step, (gdouble)_page_step); gtk_adjustment_set_page_size(adj, _page_step); } gtk_range_set_value(GTK_RANGE(widget), _value); #ifndef GTK3 gtk_range_set_update_policy(GTK_RANGE(widget), _tracking ? GTK_UPDATE_CONTINUOUS : GTK_UPDATE_DISCONTINUOUS); #endif checkInverted(); }
void pHexEdit::constructor() { gtkWidget = gtk_hbox_new(false, 0); container = gtk_scrolled_window_new(0, 0); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(container), GTK_POLICY_NEVER, GTK_POLICY_NEVER); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(container), GTK_SHADOW_ETCHED_IN); subWidget = gtk_text_view_new(); gtk_text_view_set_editable(GTK_TEXT_VIEW(subWidget), false); gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(subWidget), GTK_WRAP_NONE); gtk_container_add(GTK_CONTAINER(container), subWidget); g_signal_connect(G_OBJECT(subWidget), "key-press-event", G_CALLBACK(HexEdit_keyPress), (gpointer)&hexEdit); scrollBar = gtk_vscrollbar_new((GtkAdjustment*)0); gtk_range_set_range(GTK_RANGE(scrollBar), 0, 255); gtk_range_set_increments(GTK_RANGE(scrollBar), 1, 16); gtk_widget_set_sensitive(scrollBar, false); g_signal_connect(G_OBJECT(scrollBar), "change-value", G_CALLBACK(HexEdit_scroll), (gpointer)&hexEdit); gtk_box_pack_start(GTK_BOX(gtkWidget), container, true, true, 0); gtk_box_pack_start(GTK_BOX(gtkWidget), scrollBar, false, false, 1); textBuffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(subWidget)); textCursor = gtk_text_buffer_get_mark(textBuffer, "insert"); gtk_widget_show(scrollBar); gtk_widget_show(subWidget); gtk_widget_show(container); }
static void get_brightness_cb (GObject *source_object, GAsyncResult *res, gpointer user_data) { GError *error = NULL; GVariant *result; guint brightness; GtkRange *range; CcScreenPanel *self = CC_SCREEN_PANEL (user_data); result = g_dbus_proxy_call_finish (G_DBUS_PROXY (source_object), res, &error); if (result == NULL) { gtk_widget_hide (WID ("screen_brightness_hscale")); gtk_widget_hide (WID ("screen_auto_reduce_checkbutton")); gtk_widget_hide (WID ("brightness-frame")); g_object_set (G_OBJECT (WID ("turn-off-alignment")), "left-padding", 0, NULL); g_warning ("Error getting brightness: %s", error->message); g_error_free (error); return; } /* set the slider */ g_variant_get (result, "(u)", &brightness); range = GTK_RANGE (WID ("screen_brightness_hscale")); gtk_range_set_range (range, 0, 100); gtk_range_set_increments (range, 1, 10); gtk_range_set_value (range, brightness); g_signal_connect (range, "value-changed", G_CALLBACK (brightness_slider_value_changed_cb), user_data); g_variant_unref (result); }
void wxSlider::SetRange( int minValue, int maxValue ) { GTKDisableEvents(); if (minValue == maxValue) maxValue++; gtk_range_set_range(GTK_RANGE (m_scale), minValue, maxValue); gtk_range_set_increments(GTK_RANGE (m_scale), 1, (maxValue - minValue + 9) / 10); GTKEnableEvents(); if (HasFlag(wxSL_MIN_MAX_LABELS)) { wxString str; str.Printf( "%d", minValue ); if (HasFlag(wxSL_INVERSE)) gtk_label_set_text( GTK_LABEL(m_maxLabel), str.utf8_str() ); else gtk_label_set_text( GTK_LABEL(m_minLabel), str.utf8_str() ); str.Printf( "%d", maxValue ); if (HasFlag(wxSL_INVERSE)) gtk_label_set_text( GTK_LABEL(m_minLabel), str.utf8_str() ); else gtk_label_set_text( GTK_LABEL(m_maxLabel), str.utf8_str() ); } }
void wxSlider::SetRange( int minValue, int maxValue ) { BlockScrollEvent(); gtk_range_set_range(GTK_RANGE (m_widget), minValue, maxValue); gtk_range_set_increments(GTK_RANGE (m_widget), 1, (maxValue - minValue + 9) / 10); UnblockScrollEvent(); }
JNIEXPORT void JNICALL Java_org_gnome_gtk_GtkRange_gtk_1range_1set_1increments ( JNIEnv* env, jclass cls, jlong _self, jdouble _step, jdouble _page ) { GtkRange* self; gdouble step; gdouble page; // convert parameter self self = (GtkRange*) _self; // convert parameter step step = (gdouble) _step; // convert parameter page page = (gdouble) _page; // call function gtk_range_set_increments(self, step, page); // cleanup parameter self // cleanup parameter step // cleanup parameter page }
void gui_init(dt_lib_module_t *self) { /* initialize ui widgets */ dt_lib_tool_lighttable_t *d = (dt_lib_tool_lighttable_t *)g_malloc0(sizeof(dt_lib_tool_lighttable_t)); self->data = (void *)d; self->widget = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 2); d->layout = dt_conf_get_int("plugins/lighttable/layout"); d->previous_layout = d->layout == DT_LIGHTTABLE_LAYOUT_EXPOSE ? DT_LIGHTTABLE_LAYOUT_FILEMANAGER : DT_LIGHTTABLE_LAYOUT_EXPOSE; d->current_zoom = dt_conf_get_int("plugins/lighttable/images_in_row"); /* create layout selection combobox */ d->layout_combo = gtk_combo_box_text_new(); gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(d->layout_combo), _("zoomable light table")); gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(d->layout_combo), _("file manager")); gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(d->layout_combo), _("expose")); gtk_combo_box_set_active(GTK_COMBO_BOX(d->layout_combo), d->layout); g_signal_connect(G_OBJECT(d->layout_combo), "changed", G_CALLBACK(_lib_lighttable_layout_changed), (gpointer)self); gtk_box_pack_start(GTK_BOX(self->widget), d->layout_combo, TRUE, TRUE, 0); /* create horizontal zoom slider */ d->zoom = gtk_scale_new_with_range(GTK_ORIENTATION_HORIZONTAL, 1, 21, 1); gtk_widget_set_size_request(GTK_WIDGET(d->zoom), DT_PIXEL_APPLY_DPI(140), -1); gtk_scale_set_draw_value(GTK_SCALE(d->zoom), FALSE); gtk_range_set_increments(GTK_RANGE(d->zoom), 1, 1); gtk_box_pack_start(GTK_BOX(self->widget), d->zoom, TRUE, TRUE, 0); /* manual entry of the zoom level */ d->zoom_entry = gtk_entry_new(); gtk_entry_set_alignment(GTK_ENTRY(d->zoom_entry), 1.0); gtk_entry_set_max_length(GTK_ENTRY(d->zoom_entry), 2); gtk_entry_set_width_chars(GTK_ENTRY(d->zoom_entry), 3); gtk_entry_set_max_width_chars(GTK_ENTRY(d->zoom_entry), 3); dt_gui_key_accel_block_on_focus_connect(d->zoom_entry); gtk_box_pack_start(GTK_BOX(self->widget), d->zoom_entry, TRUE, TRUE, 0); g_signal_connect(G_OBJECT(d->zoom), "value-changed", G_CALLBACK(_lib_lighttable_zoom_slider_changed), (gpointer)self); g_signal_connect(d->zoom_entry, "key-press-event", G_CALLBACK(_lib_lighttable_zoom_entry_changed), self); gtk_range_set_value(GTK_RANGE(d->zoom), d->current_zoom); _lib_lighttable_zoom_slider_changed(GTK_RANGE(d->zoom), self); // the slider defaults to 1 and GTK doesn't // fire a value-changed signal when setting // it to 1 => empty text box gtk_widget_set_no_show_all(d->zoom, TRUE); gtk_widget_set_no_show_all(d->zoom_entry, TRUE); _lib_lighttable_layout_changed(GTK_COMBO_BOX(d->layout_combo), self); darktable.view_manager->proxy.lighttable.module = self; darktable.view_manager->proxy.lighttable.set_zoom = _lib_lighttable_set_zoom; darktable.view_manager->proxy.lighttable.get_zoom = _lib_lighttable_get_zoom; darktable.view_manager->proxy.lighttable.get_layout = _lib_lighttable_get_layout; darktable.view_manager->proxy.lighttable.set_layout = _lib_lighttable_set_layout; }
/** create a control for float ports */ static GtkWidget * create_float_control (plugin_desc_t * desc, unsigned long port_index) { LADSPA_Data lower; LADSPA_Data upper; GtkWidget *widget; if (LADSPA_IS_HINT_SAMPLE_RATE (desc->port_range_hints[port_index].HintDescriptor)) { lower = desc->port_range_hints[port_index].LowerBound * (LADSPA_Data) sample_rate; upper = desc->port_range_hints[port_index].UpperBound * (LADSPA_Data) sample_rate; } else { lower = desc->port_range_hints[port_index].LowerBound; upper = desc->port_range_hints[port_index].UpperBound; } if (!LADSPA_IS_HINT_BOUNDED_BELOW (desc->port_range_hints[port_index].HintDescriptor)) { lower = (LADSPA_Data) - 100.0; } if (!LADSPA_IS_HINT_BOUNDED_ABOVE (desc->port_range_hints[port_index].HintDescriptor)) { upper = (LADSPA_Data) 100.0; } if (LADSPA_IS_HINT_LOGARITHMIC (desc->port_range_hints[port_index].HintDescriptor)) { if (lower < FLT_EPSILON) lower = FLT_EPSILON; lower = log (lower); upper = log (upper); } widget = gtk_hscale_new_with_range ((gdouble) lower, (gdouble) upper, (upper - lower) / 10.0); gtk_scale_set_draw_value (GTK_SCALE (widget), FALSE); gtk_scale_set_digits (GTK_SCALE (widget), 8); gtk_range_set_increments (GTK_RANGE (widget), (upper - lower) / 1000.0, (upper - lower) / 10.0); g_assert (widget != NULL); return widget; }
static void gx_regler_cp_configure(GxControlParameter *self, gchar* group, gchar *name, gdouble lower, gdouble upper, gdouble step) { g_return_if_fail(GX_IS_REGLER(self)); GxRegler *regler = GX_REGLER(self); if (regler->label) { gtk_label_set_text(regler->label, name); } GtkRange *range = GTK_RANGE(self); gtk_range_set_range(range, lower, upper); gtk_range_set_increments(range, step, 0); }
static GObject *constructor(GType gtype, guint n_properties, GObjectConstructParam *properties) { GObject *obj; obj = G_OBJECT_CLASS(roccat_volume_scale_parent_class)->constructor(gtype, n_properties, properties); gtk_range_set_range(GTK_RANGE(obj), -100.0, 10.0); gtk_range_set_increments(GTK_RANGE(obj), 1.0, 10.0); gtk_scale_set_draw_value(GTK_SCALE(obj), TRUE); gtk_scale_set_value_pos(GTK_SCALE(obj), GTK_POS_RIGHT); g_signal_connect(G_OBJECT(obj), "format-value", G_CALLBACK(format_value_cb), NULL); return obj; }
static void photos_print_setup_set_initial_values (PhotosPrintSetup *self) { PhotosPrintSetupPrivate *priv = self->priv; GeglRectangle bbox; gdouble page_height; gdouble page_width; gdouble factor; gdouble height; gdouble max_perc; gdouble width; factor = get_scale_to_px_factor (self); bbox = gegl_node_get_bounding_box (priv->node); width = (gdouble) bbox.width/factor; height = (gdouble) bbox.height/factor; max_perc = photos_print_setup_get_max_percentage (self); width *= max_perc; height *= max_perc; gtk_range_set_range (GTK_RANGE (priv->scaling), 1, 100 * max_perc); gtk_range_set_increments (GTK_RANGE (priv->scaling), max_perc, 10 * max_perc); gtk_range_set_value (GTK_RANGE (priv->scaling), 100 * max_perc); photos_print_preview_set_scale (PHOTOS_PRINT_PREVIEW (priv->preview), max_perc); gtk_spin_button_set_range (GTK_SPIN_BUTTON (priv->width), 0, width); gtk_spin_button_set_range (GTK_SPIN_BUTTON (priv->height), 0, height); gtk_spin_button_set_value (GTK_SPIN_BUTTON (priv->width), width); gtk_spin_button_set_value (GTK_SPIN_BUTTON (priv->height), height); gtk_combo_box_set_active (GTK_COMBO_BOX (priv->center), CENTER_BOTH); photos_print_setup_center (gtk_page_setup_get_page_width (priv->page_setup, priv->current_unit), gtk_spin_button_get_value (GTK_SPIN_BUTTON (priv->width)), GTK_SPIN_BUTTON (priv->left), GTK_SPIN_BUTTON (priv->right)); photos_print_setup_center (gtk_page_setup_get_page_height (priv->page_setup, priv->current_unit), gtk_spin_button_get_value (GTK_SPIN_BUTTON (priv->height)), GTK_SPIN_BUTTON (priv->top), GTK_SPIN_BUTTON (priv->bottom)); page_width = gtk_page_setup_get_page_width (priv->page_setup, priv->current_unit); page_height = gtk_page_setup_get_page_height (priv->page_setup, priv->current_unit); update_image_pos_ranges (self, page_width, page_height, width, height); }
void ags_drum_input_line_init(AgsDrumInputLine *drum_input_line) { AgsLineMember *line_member; GtkWidget *widget; g_signal_connect_after((GObject *) drum_input_line, "parent_set\0", G_CALLBACK(ags_drum_input_line_parent_set_callback), (gpointer) drum_input_line); line_member = (AgsLineMember *) g_object_new(AGS_TYPE_LINE_MEMBER, "widget-type\0", GTK_TYPE_VSCALE, "plugin-name\0", "ags-volume\0", "specifier\0", "./volume[0]\0", "control-port\0", "1/1\0", NULL); ags_expander_add(AGS_LINE(drum_input_line)->expander, GTK_WIDGET(line_member), 0, 0, 1, 1); widget = gtk_bin_get_child(GTK_BIN(line_member)); gtk_scale_set_digits(GTK_SCALE(widget), 3); gtk_range_set_range(GTK_RANGE(widget), 0.0, 2.00); gtk_range_set_increments(GTK_RANGE(widget), 0.025, 0.1); gtk_range_set_value(GTK_RANGE(widget), 1.0); gtk_range_set_inverted(GTK_RANGE(widget), TRUE); gtk_widget_set_size_request(widget, -1, 100); g_object_set(G_OBJECT(line_member), "port-data\0", (gpointer) &(GTK_RANGE(widget)->adjustment->value), NULL); }
void wxScrollHelper::DoAdjustScrollbar(GtkRange* range, int pixelsPerLine, int winSize, int virtSize, int *pos, int *lines, int *linesPerPage) { if (!range) return; int upper; int page_size; if (pixelsPerLine > 0 && winSize > 0 && winSize < virtSize) { upper = (virtSize + pixelsPerLine - 1) / pixelsPerLine; page_size = winSize / pixelsPerLine; *lines = upper; *linesPerPage = page_size; } else { // GtkRange won't allow upper == lower, so for disabled state use [0,1] // with a page size of 1. This will also clamp position to 0. upper = 1; page_size = 1; *lines = 0; *linesPerPage = 0; } gtk_range_set_increments(range, 1, page_size); gtk_adjustment_set_page_size(gtk_range_get_adjustment(range), page_size); gtk_range_set_range(range, 0, upper); // ensure that the scroll position is always in valid range if (*pos > *lines) *pos = *lines; }
static void nemo_status_bar_constructed (GObject *object) { NemoStatusBar *bar = NEMO_STATUS_BAR (object); G_OBJECT_CLASS (nemo_status_bar_parent_class)->constructed (object); GtkToolbar *toolbar; GtkWidget *widget_box; GtkToolItem *item; GtkWidget *statusbar = gtk_statusbar_new (); GtkActionGroup *action_group; GtkStyleContext *context; bar->real_statusbar = statusbar; GtkIconSize size = gtk_icon_size_from_name (NEMO_STATUSBAR_ICON_SIZE_NAME); context = gtk_widget_get_style_context (GTK_WIDGET (bar)); gtk_style_context_add_class (context, GTK_STYLE_CLASS_TOOLBAR); gtk_container_set_border_width (GTK_CONTAINER (bar), 1); GtkWidget *button, *icon; button = gtk_toggle_button_new (); icon = gtk_image_new_from_icon_name ("sidebar-places-symbolic", size); gtk_button_set_image (GTK_BUTTON (button), icon); gtk_widget_set_tooltip_text (GTK_WIDGET (button), _("Show Places")); bar->places_button = button; gtk_box_pack_start (GTK_BOX (bar), button, FALSE, FALSE, 2); g_signal_connect (GTK_BUTTON (button), "clicked", G_CALLBACK (action_places_toggle_callback), bar); button = gtk_toggle_button_new (); icon = gtk_image_new_from_icon_name ("sidebar-tree-symbolic", size); gtk_button_set_image (GTK_BUTTON (button), icon); gtk_widget_set_tooltip_text (GTK_WIDGET (button), _("Show Treeview")); bar->tree_button = button; gtk_box_pack_start (GTK_BOX (bar), button, FALSE, FALSE, 2); g_signal_connect (GTK_BUTTON (button), "clicked", G_CALLBACK (action_treeview_toggle_callback), bar); GtkWidget *sep = gtk_separator_new (GTK_ORIENTATION_VERTICAL); gtk_box_pack_start (GTK_BOX (bar), sep, FALSE, FALSE, 6); gtk_widget_show (sep); bar->separator = sep; button = gtk_button_new (); icon = gtk_image_new_from_icon_name ("sidebar-hide-symbolic", size); gtk_button_set_image (GTK_BUTTON (button), icon); gtk_widget_set_tooltip_text (GTK_WIDGET (button), _("Hide the Sidebar (F9)")); bar->hide_button = button; gtk_box_pack_start (GTK_BOX (bar), button, FALSE, FALSE, 2); g_signal_connect (GTK_BUTTON (button), "clicked", G_CALLBACK (action_hide_sidebar_callback), bar); button = gtk_button_new (); icon = gtk_image_new_from_icon_name ("sidebar-show-symbolic", size); gtk_button_set_image (GTK_BUTTON (button), icon); gtk_widget_set_tooltip_text (GTK_WIDGET (button), _("Show the Sidebar (F9)")); bar->show_button = button; gtk_box_pack_start (GTK_BOX (bar), button, FALSE, FALSE, 2); g_signal_connect (GTK_BUTTON (button), "clicked", G_CALLBACK (action_show_sidebar_callback), bar); gtk_box_pack_start (GTK_BOX (bar), statusbar, TRUE, TRUE, 10); GtkWidget *zoom_slider = gtk_scale_new_with_range (GTK_ORIENTATION_HORIZONTAL, 0, 6.0, 1.0); gtk_widget_set_tooltip_text (GTK_WIDGET (zoom_slider), _("Adjust zoom level")); bar->zoom_slider = zoom_slider; gtk_box_pack_start (GTK_BOX (bar), zoom_slider, FALSE, FALSE, 2); gtk_widget_set_size_request (GTK_WIDGET (zoom_slider), SLIDER_WIDTH, 0); gtk_scale_set_draw_value (GTK_SCALE (zoom_slider), FALSE); gtk_range_set_increments (GTK_RANGE (zoom_slider), 1.0, 1.0); gtk_range_set_round_digits (GTK_RANGE (zoom_slider), 0); gtk_widget_show_all (GTK_WIDGET (bar)); g_signal_connect_object (NEMO_WINDOW (bar->window), "notify::show-sidebar", G_CALLBACK (sidebar_state_changed_cb), bar, G_CONNECT_AFTER); g_signal_connect_object (NEMO_WINDOW (bar->window), "notify::sidebar-view-id", G_CALLBACK (sidebar_type_changed_cb), bar, G_CONNECT_AFTER); g_signal_connect (GTK_RANGE (zoom_slider), "value-changed", G_CALLBACK (on_slider_changed_cb), bar); GtkWidget *cont = gtk_statusbar_get_message_area (GTK_STATUSBAR (statusbar)); GList *children = gtk_container_get_children (GTK_CONTAINER (cont)); gtk_box_set_child_packing (GTK_BOX (cont), GTK_WIDGET (children->data), TRUE, FALSE, 10, GTK_PACK_START); nemo_status_bar_sync_button_states (bar); }
gboolean browser_expose_event(GtkWidget *w, GdkEventExpose *event, gpointer data) { int width = w->allocation.width / browser_columns; rows = (tex_names.size() / browser_columns) + 1; int top = gtk_range_get_value(GTK_RANGE(browse_vscroll)); // Set sizes for row and page steps (for the scrollbar) int rows_page = w->allocation.height / width; gtk_range_set_increments(GTK_RANGE(browse_vscroll), width, rows_page * width); GdkGLContext *context = gtk_widget_get_gl_context(w); GdkGLDrawable *gldrawable = gtk_widget_get_gl_drawable(w); if (!gdk_gl_drawable_gl_begin(gldrawable, context)) return false; glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); int sel_index = -1; int a = 0; for (int row = 0; row < rows; row++) { for (int col = 0; col < browser_columns; col++) { if (a >= tex_names.size()) continue; rect_t rect(col * width, (row * width) - top, width, width, 0); glLineWidth(2.0f); if (selected_tex == tex_names[a]) { draw_rect(rect, rgba_t(0, 180, 255, 150, 0), true); draw_rect(rect, rgba_t(100, 220, 255, 255, 0), false); sel_index = a; } glLineWidth(1.0f); rect.resize(-8, -8); if (((row + 1) * width) > top && (row * width) < (top + w->allocation.height)) { if (!browse_sprites) { if (tex_names[a] != "-") draw_texture_scale(rect, tex_names[a], 0); draw_text(rect.x1() + (width/2) - 8, rect.y2() - 4, rgba_t(255, 255, 255, 255, 0), 1, tex_names[a].c_str()); } else draw_texture_scale(rect, browsesprites[a], 3); } a++; } } if (browse_sprites && sel_index != -1) draw_text(0, 0, rgba_t(255, 255, 255, 255, 0), 0, tex_names[sel_index].c_str()); if (gdk_gl_drawable_is_double_buffered(gldrawable)) gdk_gl_drawable_swap_buffers(gldrawable); else glFlush(); gdk_gl_drawable_gl_end(gldrawable); return false; }
static VALUE rg_set_increments(VALUE self, VALUE step, VALUE page) { gtk_range_set_increments(_SELF(self), NUM2DBL(step), NUM2DBL(page)); return self; }
static gboolean init (void) { search_tool = aud_plugin_lookup_basename ("search-tool"); aud_config_set_defaults ("gtkui", gtkui_defaults); audgui_set_default_icon(); audgui_register_stock_icons(); pw_col_init (); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_has_resize_grip ((GtkWindow *) window, FALSE); g_signal_connect(G_OBJECT(window), "delete-event", G_CALLBACK(window_delete), NULL); accel = gtk_accel_group_new (); gtk_window_add_accel_group ((GtkWindow *) window, accel); vbox_outer = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); gtk_container_add ((GtkContainer *) window, vbox_outer); menu_box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_pack_start ((GtkBox *) vbox_outer, menu_box, FALSE, FALSE, 0); toolbar = gtk_toolbar_new (); gtk_toolbar_set_style ((GtkToolbar *) toolbar, GTK_TOOLBAR_ICONS); GtkStyleContext * context = gtk_widget_get_style_context (toolbar); gtk_style_context_add_class (context, GTK_STYLE_CLASS_PRIMARY_TOOLBAR); gtk_box_pack_start ((GtkBox *) vbox_outer, toolbar, FALSE, FALSE, 0); /* search button */ if (search_tool) { search_button = toggle_button_new (GTK_STOCK_FIND, NULL, toggle_search_tool); gtk_toolbar_insert ((GtkToolbar *) toolbar, search_button, -1); gtk_toggle_tool_button_set_active ((GtkToggleToolButton *) search_button, aud_plugin_get_enabled (search_tool)); aud_plugin_add_watch (search_tool, search_tool_toggled, NULL); } /* playback buttons */ toolbar_button_add (toolbar, button_open_pressed, GTK_STOCK_OPEN); toolbar_button_add (toolbar, button_add_pressed, GTK_STOCK_ADD); button_play = toolbar_button_add (toolbar, aud_drct_play_pause, GTK_STOCK_MEDIA_PLAY); button_stop = toolbar_button_add (toolbar, aud_drct_stop, GTK_STOCK_MEDIA_STOP); toolbar_button_add (toolbar, aud_drct_pl_prev, GTK_STOCK_MEDIA_PREVIOUS); toolbar_button_add (toolbar, aud_drct_pl_next, GTK_STOCK_MEDIA_NEXT); /* time slider and label */ GtkToolItem * boxitem1 = gtk_tool_item_new (); gtk_tool_item_set_expand (boxitem1, TRUE); gtk_toolbar_insert ((GtkToolbar *) toolbar, boxitem1, -1); GtkWidget * box1 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_container_add ((GtkContainer *) boxitem1, box1); slider = gtk_scale_new (GTK_ORIENTATION_HORIZONTAL, NULL); gtk_range_set_increments ((GtkRange *) slider, 5000, 5000); gtk_scale_set_draw_value(GTK_SCALE(slider), FALSE); gtk_widget_set_size_request(slider, 120, -1); gtk_widget_set_valign (slider, GTK_ALIGN_CENTER); gtk_widget_set_can_focus(slider, FALSE); gtk_box_pack_start ((GtkBox *) box1, slider, TRUE, TRUE, 6); label_time = markup_label_new(NULL); gtk_box_pack_end ((GtkBox *) box1, label_time, FALSE, FALSE, 6); gtk_widget_set_no_show_all (slider, TRUE); gtk_widget_set_no_show_all (label_time, TRUE); /* repeat and shuffle buttons */ button_repeat = toggle_button_new ("media-playlist-repeat", "RP", toggle_repeat); gtk_toolbar_insert ((GtkToolbar *) toolbar, button_repeat, -1); button_shuffle = toggle_button_new ("media-playlist-shuffle", "SF", toggle_shuffle); gtk_toolbar_insert ((GtkToolbar *) toolbar, button_shuffle, -1); /* volume button */ GtkToolItem * boxitem2 = gtk_tool_item_new (); gtk_toolbar_insert ((GtkToolbar *) toolbar, boxitem2, -1); GtkWidget * box2 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_container_add ((GtkContainer *) boxitem2, box2); volume = gtk_volume_button_new(); gtk_button_set_relief(GTK_BUTTON(volume), GTK_RELIEF_NONE); gtk_scale_button_set_adjustment(GTK_SCALE_BUTTON(volume), GTK_ADJUSTMENT(gtk_adjustment_new(0, 0, 100, 1, 5, 0))); gtk_widget_set_can_focus(volume, FALSE); gint lvol = 0, rvol = 0; aud_drct_get_volume(&lvol, &rvol); gtk_scale_button_set_value(GTK_SCALE_BUTTON(volume), (lvol + rvol) / 2); gtk_box_pack_start ((GtkBox *) box2, volume, FALSE, FALSE, 0); /* main UI layout */ layout_load (); GtkWidget * layout = layout_new (); gtk_box_pack_start ((GtkBox *) vbox_outer, layout, TRUE, TRUE, 0); vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6); layout_add_center (vbox); ui_playlist_notebook_new (); gtk_box_pack_start ((GtkBox *) vbox, (GtkWidget *) UI_PLAYLIST_NOTEBOOK, TRUE, TRUE, 0); /* optional UI elements */ show_menu (aud_get_bool ("gtkui", "menu_visible")); show_infoarea (aud_get_bool ("gtkui", "infoarea_visible")); if (aud_get_bool ("gtkui", "statusbar_visible")) { statusbar = ui_statusbar_new (); gtk_box_pack_end ((GtkBox *) vbox_outer, statusbar, FALSE, FALSE, 0); } AUDDBG("hooks associate\n"); ui_hooks_associate(); AUDDBG("playlist associate\n"); ui_playlist_notebook_populate(); g_signal_connect(slider, "change-value", G_CALLBACK(ui_slider_change_value_cb), NULL); g_signal_connect(slider, "button-press-event", G_CALLBACK(ui_slider_button_press_cb), NULL); g_signal_connect(slider, "button-release-event", G_CALLBACK(ui_slider_button_release_cb), NULL); volume_change_handler_id = g_signal_connect(volume, "value-changed", G_CALLBACK(ui_volume_value_changed_cb), NULL); g_signal_connect(volume, "pressed", G_CALLBACK(ui_volume_pressed_cb), NULL); g_signal_connect(volume, "released", G_CALLBACK(ui_volume_released_cb), NULL); update_volume_timeout_source = g_timeout_add(250, (GSourceFunc) ui_volume_slider_update, volume); g_signal_connect (window, "map-event", (GCallback) window_mapped_cb, NULL); g_signal_connect (window, "key-press-event", (GCallback) window_keypress_cb, NULL); g_signal_connect (UI_PLAYLIST_NOTEBOOK, "key-press-event", (GCallback) playlist_keypress_cb, NULL); if (aud_drct_get_playing ()) { ui_playback_begin (); if (aud_drct_get_ready ()) ui_playback_ready (); } else ui_playback_stop (); title_change_cb (); gtk_widget_show_all (vbox_outer); update_toggles (NULL, NULL); menu_rclick = make_menu_rclick (accel); menu_tab = make_menu_tab (accel); return TRUE; }
int main (int argc, char **argv) { GdkScreen *screen; GtkWidget *nb; GtkWidget *general_vbox; GtkWidget *behaviour_vbox; GtkWidget *placement_vbox; GtkWidget *widget; GtkWidget *vbox; GtkWidget *vbox1; GtkWidget *hbox; GtkWidget *hbox1; GtkWidget *hbox2; GtkWidget *hbox3; GtkWidget *content_area; gchar *str; const char *current_wm; int i; bindtextdomain (GETTEXT_PACKAGE, MATELOCALEDIR); bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); gtk_init (&argc, &argv); screen = gdk_display_get_default_screen (gdk_display_get_default ()); current_wm = gdk_x11_screen_get_window_manager_name (screen); if (g_strcmp0 (current_wm, WM_COMMON_METACITY) == 0) { mate_metacity_config_tool (); return 0; } if (g_strcmp0 (current_wm, WM_COMMON_MARCO) != 0) { wm_unsupported (); return 1; } marco_settings = g_settings_new (MARCO_SCHEMA); /* Window */ dialog_win = gtk_dialog_new_with_buttons (_("Window Preferences"), NULL, GTK_DIALOG_MODAL, #if GTK_CHECK_VERSION (3, 10, 0) _("_Help"), #else GTK_STOCK_HELP, #endif GTK_RESPONSE_HELP, #if GTK_CHECK_VERSION (3, 10, 0) _("_Close"), #else GTK_STOCK_CLOSE, #endif GTK_RESPONSE_CLOSE, NULL); //gtk_window_set_resizable (GTK_WINDOW (dialog_win), FALSE); gtk_window_set_icon_name (GTK_WINDOW (dialog_win), "preferences-system-windows"); gtk_container_set_border_width (GTK_CONTAINER (dialog_win), 10); nb = gtk_notebook_new (); general_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); behaviour_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); placement_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); widget = gtk_label_new (_("General")); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_pack_start (GTK_BOX (hbox), general_vbox, FALSE, FALSE, 6); gtk_notebook_append_page (GTK_NOTEBOOK (nb), hbox, widget); widget = gtk_label_new (_("Behaviour")); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_pack_start (GTK_BOX (hbox), behaviour_vbox, FALSE, FALSE, 6); gtk_notebook_append_page (GTK_NOTEBOOK (nb), hbox, widget); widget = gtk_label_new (_("Placement")); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_pack_start (GTK_BOX (hbox), placement_vbox, FALSE, FALSE, 6); gtk_notebook_append_page (GTK_NOTEBOOK (nb), hbox, widget); /* Compositing manager */ widget = title_label_new (N_("Compositing Manager")); gtk_box_pack_start (GTK_BOX (general_vbox), widget, FALSE, FALSE, 6); vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); hbox1 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); compositing_checkbutton = gtk_check_button_new_with_mnemonic (_("Enable software _compositing window manager")); compositing_fast_alt_tab_checkbutton = gtk_check_button_new_with_mnemonic (_("Disable _thumbnails in Alt-Tab")); gtk_box_pack_start (GTK_BOX (vbox), compositing_checkbutton, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (hbox1), compositing_fast_alt_tab_checkbutton, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (vbox), hbox1, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (hbox), vbox, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (general_vbox), hbox, FALSE, FALSE, 6); /* Titlebar buttons */ widget = title_label_new (N_("Titlebar Buttons")); gtk_box_pack_start (GTK_BOX (general_vbox), widget, FALSE, FALSE, 6); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); widget = gtk_label_new (_("Position:")); gtk_box_pack_start (GTK_BOX (hbox), widget, FALSE, FALSE, 6); titlebar_layout_optionmenu = gtk_combo_box_text_new (); gtk_box_pack_start (GTK_BOX (hbox), titlebar_layout_optionmenu, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (general_vbox), hbox, FALSE, FALSE, 6); /* New Windows */ widget = title_label_new (N_("New Windows")); gtk_box_pack_start (GTK_BOX (placement_vbox), widget, FALSE, FALSE, 6); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); center_new_windows_checkbutton = gtk_check_button_new_with_mnemonic (_("Center _new windows")); gtk_box_pack_start (GTK_BOX (hbox), center_new_windows_checkbutton, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (placement_vbox), hbox, FALSE, FALSE, 6); /* Window Snapping */ widget = title_label_new (N_("Window Snapping")); gtk_box_pack_start (GTK_BOX (placement_vbox), widget, FALSE, FALSE, 6); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); side_by_side_tiling_checkbutton = gtk_check_button_new_with_mnemonic (_("Enable side by side _tiling")); gtk_box_pack_start (GTK_BOX (hbox), side_by_side_tiling_checkbutton, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (placement_vbox), hbox, FALSE, FALSE, 6); /* Window Selection */ widget = title_label_new (N_("Window Selection")); gtk_box_pack_start (GTK_BOX (behaviour_vbox), widget, FALSE, FALSE, 6); vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); vbox1 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); hbox1 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); hbox2 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); hbox3 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); focus_mode_checkbutton = gtk_check_button_new_with_mnemonic (_("_Select windows when the mouse moves over them")); gtk_box_pack_start (GTK_BOX (vbox), focus_mode_checkbutton, FALSE, FALSE, 6); focus_mode_mouse_checkbutton = gtk_check_button_new_with_mnemonic (_("U_nselect windows when the mouse leaves them")); gtk_box_pack_start (GTK_BOX (hbox1), focus_mode_mouse_checkbutton, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 6); autoraise_checkbutton = gtk_check_button_new_with_mnemonic (_("_Raise selected windows after an interval")); gtk_box_pack_start (GTK_BOX (hbox2), autoraise_checkbutton, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (vbox1), hbox2, FALSE, FALSE, 6); autoraise_delay_hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); autoraise_delay_slider = gtk_scale_new_with_range (GTK_ORIENTATION_HORIZONTAL, 0, 10, 0.2); widget = gtk_label_new_with_mnemonic (_("_Interval before raising:")); gtk_box_pack_start (GTK_BOX (autoraise_delay_hbox), widget, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (autoraise_delay_hbox), autoraise_delay_slider, TRUE, TRUE, 6); gtk_label_set_mnemonic_widget (GTK_LABEL (widget), autoraise_delay_slider); widget = gtk_label_new (_("seconds")); gtk_range_set_increments (GTK_RANGE (autoraise_delay_slider), 0.2, 1.0); gtk_box_pack_start (GTK_BOX (autoraise_delay_hbox), widget, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (vbox1), autoraise_delay_hbox, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (hbox3), vbox1, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (vbox), hbox3, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (hbox), vbox, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (behaviour_vbox), hbox, FALSE, FALSE, 6); /* Titlebar Action */ widget = title_label_new (N_("Titlebar Action")); gtk_box_pack_start (GTK_BOX (behaviour_vbox), widget, FALSE, FALSE, 6); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); widget = gtk_label_new_with_mnemonic (_("_Double-click titlebar to perform this action:")); gtk_box_pack_start (GTK_BOX (hbox), widget, FALSE, FALSE, 6); double_click_titlebar_optionmenu = gtk_combo_box_text_new (); gtk_label_set_mnemonic_widget (GTK_LABEL (widget), double_click_titlebar_optionmenu); gtk_box_pack_start (GTK_BOX (hbox), double_click_titlebar_optionmenu, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (behaviour_vbox), hbox, FALSE, FALSE, 6); /* Movement Key */ widget = title_label_new (N_("Movement Key")); gtk_box_pack_start (GTK_BOX (behaviour_vbox), widget, FALSE, FALSE, 6); vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); widget = gtk_label_new_with_mnemonic (_("To move a window, press-and-hold this key then grab the window:")); #if GTK_CHECK_VERSION (3, 16, 0) gtk_label_set_xalign (GTK_LABEL (widget), 0.0); gtk_label_set_yalign (GTK_LABEL (widget), 0.0); #else gtk_misc_set_alignment (GTK_MISC (widget), 0.0, 0.0); #endif gtk_box_pack_start (GTK_BOX (vbox), widget, FALSE, FALSE, 6); alt_click_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6); gtk_label_set_mnemonic_widget (GTK_LABEL (widget), alt_click_vbox); gtk_box_pack_start (GTK_BOX (vbox), alt_click_vbox, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (hbox), vbox, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (behaviour_vbox), hbox, FALSE, FALSE, 6); reload_mouse_modifiers (); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (titlebar_layout_optionmenu), _("Right")); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (titlebar_layout_optionmenu), _("Left")); str = g_settings_get_string (marco_settings, MARCO_BUTTON_LAYOUT_KEY); gtk_combo_box_set_active (GTK_COMBO_BOX (titlebar_layout_optionmenu), g_strcmp0 (str, MARCO_BUTTON_LAYOUT_RIGHT) == 0 ? 0 : 1); g_free (str); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (double_click_titlebar_optionmenu), _("Roll up")); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (double_click_titlebar_optionmenu), _("Maximize")); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (double_click_titlebar_optionmenu), _("Maximize Horizontally")); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (double_click_titlebar_optionmenu), _("Maximize Vertically")); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (double_click_titlebar_optionmenu), _("Minimize")); gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (double_click_titlebar_optionmenu), _("None")); gtk_combo_box_set_active (GTK_COMBO_BOX (double_click_titlebar_optionmenu), g_settings_get_enum (marco_settings, MARCO_DOUBLE_CLICK_TITLEBAR_KEY)); set_alt_click_value (); gtk_range_set_value (GTK_RANGE (autoraise_delay_slider), g_settings_get_int (marco_settings, MARCO_AUTORAISE_DELAY_KEY) / 1000.0); gtk_combo_box_set_active (GTK_COMBO_BOX (double_click_titlebar_optionmenu), g_settings_get_enum (marco_settings, MARCO_DOUBLE_CLICK_TITLEBAR_KEY)); g_signal_connect (G_OBJECT (dialog_win), "response", G_CALLBACK (response_cb), NULL); g_signal_connect (G_OBJECT (dialog_win), "destroy", G_CALLBACK (gtk_main_quit), NULL); g_signal_connect (marco_settings, "changed", G_CALLBACK (marco_settings_changed_callback), NULL); g_settings_bind (marco_settings, MARCO_COMPOSITING_MANAGER_KEY, compositing_checkbutton, "active", G_SETTINGS_BIND_DEFAULT); g_settings_bind (marco_settings, MARCO_COMPOSITING_FAST_ALT_TAB_KEY, compositing_fast_alt_tab_checkbutton, "active", G_SETTINGS_BIND_DEFAULT); g_settings_bind (marco_settings, MARCO_SIDE_BY_SIDE_TILING_KEY, side_by_side_tiling_checkbutton, "active", G_SETTINGS_BIND_DEFAULT); g_settings_bind (marco_settings, MARCO_CENTER_NEW_WINDOWS_KEY, center_new_windows_checkbutton, "active", G_SETTINGS_BIND_DEFAULT); g_signal_connect (marco_settings, "changed::" MARCO_FOCUS_KEY, G_CALLBACK (mouse_focus_changed_callback), NULL); /* Initialize the checkbox state appropriately */ mouse_focus_changed_callback(marco_settings, MARCO_FOCUS_KEY, NULL); g_signal_connect (focus_mode_checkbutton, "toggled", G_CALLBACK (mouse_focus_toggled_callback), NULL); g_signal_connect (focus_mode_mouse_checkbutton, "toggled", G_CALLBACK (mouse_focus_toggled_callback), NULL); g_settings_bind (marco_settings, MARCO_AUTORAISE_KEY, autoraise_checkbutton, "active", G_SETTINGS_BIND_DEFAULT); g_signal_connect (autoraise_delay_slider, "value_changed", G_CALLBACK (autoraise_delay_value_changed_callback), NULL); g_signal_connect (double_click_titlebar_optionmenu, "changed", G_CALLBACK (double_click_titlebar_changed_callback), NULL); g_signal_connect (titlebar_layout_optionmenu, "changed", G_CALLBACK (titlebar_layout_changed_callback), NULL); g_signal_connect (G_OBJECT (screen), "window_manager_changed", G_CALLBACK (wm_changed_callback), NULL); i = 0; while (i < n_mouse_modifiers) { g_signal_connect (G_OBJECT (mouse_modifiers[i].radio), "toggled", G_CALLBACK (alt_click_radio_toggled_callback), &mouse_modifiers[i]); ++i; } /* update sensitivity */ update_sensitivity (); capplet_set_icon (dialog_win, "preferences-system-windows"); content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog_win)); gtk_box_pack_start (GTK_BOX (content_area), nb, TRUE, TRUE, 0); gtk_widget_show_all (dialog_win); gtk_main (); g_object_unref (marco_settings); return 0; }
void wxSlider::SetLineSize( int lineSize ) { GTKDisableEvents(); gtk_range_set_increments(GTK_RANGE (m_scale), lineSize, GetPageSize()); GTKEnableEvents(); }
static gboolean timing_dia_area_draw_event(GtkWidget *widget, cairo_t *cr, struct vgpu_compute_unit_t *compute_unit) { struct vgpu_t *vgpu = compute_unit->vgpu; GtkWidget *timing_dia_area = compute_unit->timing_dia_area; GdkWindow *window; int i, j, top_y; int widget_width; int widget_height; /* Check if diagram needs to get recalculated */ if (timing_dia_needs_refresh(compute_unit)) timing_dia_refresh(compute_unit); /* Get widget size */ widget_width = gtk_widget_get_allocated_width(timing_dia_area); widget_height = gtk_widget_get_allocated_height(timing_dia_area); /* Instructions */ window = gtk_widget_get_window(timing_dia_area); cr = gdk_cairo_create(window); /* White background */ cairo_rectangle(cr, 0, 0, widget_width, widget_height); cairo_set_source_rgb(cr, 1, 1, 1); cairo_fill(cr); /* Draw */ cairo_set_line_width(cr, 1); top_y = timing_dia_row_height - ((int) compute_unit->timing_dia_vscrollbar_value % timing_dia_row_height); for (i = 0; i < compute_unit->timing_dia_width; i++) { for (j = 0; j < compute_unit->timing_dia_height; j++) { struct timing_dia_entry_t *timing_dia_entry; int x1, x2, y1, y2; char text[MAX_STRING_SIZE]; cairo_text_extents_t text_extents; timing_dia_entry = &compute_unit->timing_dia[i * compute_unit->timing_dia_height + j]; x1 = i * timing_dia_col_width - (int) compute_unit->timing_dia_hscrollbar_value % timing_dia_col_width; x2 = x1 + timing_dia_col_width; y1 = j * timing_dia_row_height - timing_dia_row_height + top_y; y2 = y1 + timing_dia_row_height; cairo_set_source_rgb(cr, .8, .8, .8); cairo_rectangle(cr, x1, y1, timing_dia_col_width, timing_dia_row_height); cairo_stroke(cr); /* Clip region */ cairo_save(cr); cairo_rectangle(cr, x1 + 1, y1 + 1, timing_dia_col_width - 2, timing_dia_row_height - 2); cairo_clip(cr); /* Fill */ if (timing_dia_entry->fill) { cairo_set_source_rgb(cr, timing_dia_entry->fill_r, timing_dia_entry->fill_g, timing_dia_entry->fill_b); cairo_rectangle(cr, x1, y1, timing_dia_col_width, timing_dia_row_height); cairo_fill(cr); } /* Show text */ snprintf(text, sizeof text, "%s", timing_dia_entry->text); cairo_text_extents(cr, text, &text_extents); cairo_move_to(cr, (x1 + x2) / 2 - text_extents.x_advance / 2, y2 - timing_dia_font_extents.descent); cairo_set_source_rgb(cr, 0, 0, 0); cairo_show_text(cr, text); cairo_restore(cr); } } /* Adjust increments for scroll bars */ gtk_range_set_range(GTK_RANGE(compute_unit->timing_dia_hscrollbar), 0, (double) vgpu->max_cycles * timing_dia_col_width); gtk_range_set_range(GTK_RANGE(compute_unit->timing_dia_vscrollbar), 0, (double) compute_unit->max_uops * timing_dia_row_height); compute_unit->timing_dia_hscrollbar_incr_step = (double) timing_dia_col_width * 0.4; compute_unit->timing_dia_hscrollbar_incr_page = (double) widget_width * 0.9; gtk_range_set_increments(GTK_RANGE(compute_unit->timing_dia_hscrollbar), compute_unit->timing_dia_hscrollbar_incr_step, compute_unit->timing_dia_hscrollbar_incr_page); compute_unit->timing_dia_vscrollbar_incr_step = 10.0; compute_unit->timing_dia_vscrollbar_incr_page = (double) widget_height * 0.9; gtk_range_set_increments(GTK_RANGE(compute_unit->timing_dia_vscrollbar), compute_unit->timing_dia_vscrollbar_incr_step, compute_unit->timing_dia_vscrollbar_incr_page); /* Destroy */ cairo_destroy(cr); return FALSE; }
int main (int argc, char **argv) { GdkScreen *screen; MateWMSettings new_settings; GtkBuilder *builder; GError *error = NULL; int rc = 0; int i; bindtextdomain (GETTEXT_PACKAGE, MATELOCALEDIR); bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); gtk_init (&argc, &argv); mate_wm_manager_init (); screen = gdk_display_get_default_screen (gdk_display_get_default ()); current_wm = mate_wm_manager_get_current (screen); if (current_wm == NULL) { try_spawn_config_tool (screen); goto out; } builder = gtk_builder_new (); gtk_builder_set_translation_domain (builder, GETTEXT_PACKAGE); if (gtk_builder_add_from_file (builder, UIDIR "/mate-window-properties.ui", &error) == 0) { g_warning ("Could not parse UI file: %s", error->message); g_error_free (error); g_object_unref (builder); rc = 1; goto out; } dialog_win = GTK_WIDGET (gtk_builder_get_object (builder, "main-dialog")); focus_mode_checkbutton = gtk_builder_get_object (builder, "focus-mode-checkbutton"); autoraise_checkbutton = gtk_builder_get_object (builder, "autoraise-checkbutton"); autoraise_delay_slider = gtk_builder_get_object (builder, "autoraise-delay-slider"); autoraise_delay_hbox = GTK_WIDGET (gtk_builder_get_object (builder, "autoraise-delay-hbox")); double_click_titlebar_optionmenu = gtk_builder_get_object (builder, "double-click-titlebar-optionmenu"); alt_click_hbox = gtk_builder_get_object (builder, "alt-click-box"); gtk_range_set_range (GTK_RANGE (autoraise_delay_slider), 0, 10); gtk_range_set_increments (GTK_RANGE (autoraise_delay_slider), 0.2, 1.0); new_settings.flags = 0; init_settings_struct (&new_settings); settings = mate_wm_settings_copy (&new_settings); reload_mouse_modifiers (); update_wm (screen, FALSE); set_alt_click_value (&new_settings); gtk_range_set_value (GTK_RANGE (autoraise_delay_slider), new_settings.autoraise_delay / 1000.0); gtk_combo_box_set_active (GTK_COMBO_BOX (double_click_titlebar_optionmenu), new_settings.double_click_action); reload_settings (); /* must come before below signal connections */ g_signal_connect (G_OBJECT (dialog_win), "response", G_CALLBACK (response_cb), NULL); g_signal_connect (G_OBJECT (dialog_win), "destroy", G_CALLBACK (gtk_main_quit), NULL); g_signal_connect (focus_mode_checkbutton, "toggled", G_CALLBACK (mouse_focus_toggled_callback), NULL); g_signal_connect (autoraise_checkbutton, "toggled", G_CALLBACK (autoraise_toggled_callback), NULL); g_signal_connect (autoraise_delay_slider, "value_changed", G_CALLBACK (autoraise_delay_value_changed_callback), NULL); g_signal_connect (double_click_titlebar_optionmenu, "changed", G_CALLBACK (double_click_titlebar_changed_callback), NULL); g_signal_connect (G_OBJECT (screen), "window_manager_changed", G_CALLBACK (wm_changed_callback), NULL); i = 0; while (i < n_mouse_modifiers) { g_signal_connect (G_OBJECT (mouse_modifiers[i].radio), "toggled", G_CALLBACK (alt_click_radio_toggled_callback), &mouse_modifiers[i]); ++i; } capplet_set_icon (dialog_win, "preferences-system-windows"); gtk_widget_show (dialog_win); gtk_main (); g_object_unref (builder); out: return rc; }
static GtkWidget * pidgin_media_add_audio_widget(PidginMedia *gtkmedia, PurpleMediaSessionType type) { GtkWidget *volume_widget, *progress_parent, *volume, *progress; double value; if (type & PURPLE_MEDIA_SEND_AUDIO) { value = purple_prefs_get_int( "/purple/media/audio/volume/input"); } else if (type & PURPLE_MEDIA_RECV_AUDIO) { value = purple_prefs_get_int( "/purple/media/audio/volume/output"); } else g_return_val_if_reached(NULL); #if GTK_CHECK_VERSION(2,12,0) /* Setup widget structure */ volume_widget = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE); progress_parent = gtk_vbox_new(FALSE, 0); gtk_box_pack_start(GTK_BOX(volume_widget), progress_parent, TRUE, TRUE, 0); /* Volume button */ volume = gtk_volume_button_new(); gtk_scale_button_set_value(GTK_SCALE_BUTTON(volume), value/100.0); gtk_box_pack_end(GTK_BOX(volume_widget), volume, FALSE, FALSE, 0); #else /* Setup widget structure */ volume_widget = gtk_vbox_new(FALSE, 0); progress_parent = volume_widget; /* Volume slider */ volume = gtk_hscale_new_with_range(0.0, 100.0, 5.0); gtk_range_set_increments(GTK_RANGE(volume), 5.0, 25.0); gtk_range_set_value(GTK_RANGE(volume), value); gtk_scale_set_draw_value(GTK_SCALE(volume), FALSE); gtk_box_pack_end(GTK_BOX(volume_widget), volume, TRUE, FALSE, 0); #endif /* Volume level indicator */ progress = gtk_progress_bar_new(); gtk_widget_set_size_request(progress, 250, 10); gtk_box_pack_end(GTK_BOX(progress_parent), progress, TRUE, FALSE, 0); if (type & PURPLE_MEDIA_SEND_AUDIO) { g_signal_connect (G_OBJECT(volume), "value-changed", G_CALLBACK(pidgin_media_input_volume_changed), gtkmedia->priv->media); gtkmedia->priv->send_progress = progress; } else if (type & PURPLE_MEDIA_RECV_AUDIO) { g_signal_connect (G_OBJECT(volume), "value-changed", G_CALLBACK(pidgin_media_output_volume_changed), gtkmedia->priv->media); gtkmedia->priv->recv_progress = progress; } gtk_widget_show_all(volume_widget); return volume_widget; }
void wxSlider::SetLineSize( int lineSize ) { BlockScrollEvent(); gtk_range_set_increments(GTK_RANGE (m_widget), lineSize, GetPageSize()); UnblockScrollEvent(); }
/**************************************************************** Create rates dialog *****************************************************************/ static GtkWidget *create_rates_dialog(void) { GtkWidget *shell, *content; GtkWidget *frame, *hgrid; int i; if (!can_client_issue_orders()) { return NULL; } shell = gtk_dialog_new_with_buttons(_("Select tax, luxury and science rates"), NULL, 0, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OK, GTK_RESPONSE_OK, NULL); setup_dialog(shell, toplevel); gtk_dialog_set_default_response(GTK_DIALOG(shell), GTK_RESPONSE_OK); gtk_window_set_position(GTK_WINDOW(shell), GTK_WIN_POS_MOUSE); content = gtk_dialog_get_content_area(GTK_DIALOG(shell)); rates_gov_label = gtk_label_new(""); gtk_box_pack_start( GTK_BOX( content ), rates_gov_label, TRUE, TRUE, 5 ); frame = gtk_frame_new( _("Tax") ); gtk_box_pack_start( GTK_BOX( content ), frame, TRUE, TRUE, 5 ); hgrid = gtk_grid_new(); gtk_grid_set_column_spacing(GTK_GRID(hgrid), 10); gtk_container_add(GTK_CONTAINER(frame), hgrid); rates_tax_scale = gtk_scale_new_with_range(GTK_ORIENTATION_HORIZONTAL, 0, 10, 1); gtk_range_set_increments(GTK_RANGE(rates_tax_scale), 1, 1); for (i = 0; i <= 10; i++) { gtk_scale_add_mark(GTK_SCALE(rates_tax_scale), i, GTK_POS_TOP, NULL); } gtk_widget_set_size_request(rates_tax_scale, 300, 40); gtk_scale_set_digits(GTK_SCALE(rates_tax_scale), 0); gtk_scale_set_draw_value(GTK_SCALE(rates_tax_scale), FALSE); gtk_container_add(GTK_CONTAINER(hgrid), rates_tax_scale); rates_tax_label = gtk_label_new(" 0%"); gtk_container_add(GTK_CONTAINER(hgrid), rates_tax_label); gtk_widget_set_size_request(rates_tax_label, 40, -1); rates_tax_toggle = gtk_check_button_new_with_label( _("Lock") ); gtk_container_add(GTK_CONTAINER(hgrid), rates_tax_toggle); frame = gtk_frame_new( _("Luxury") ); gtk_box_pack_start( GTK_BOX( content ), frame, TRUE, TRUE, 5 ); hgrid = gtk_grid_new(); gtk_grid_set_column_spacing(GTK_GRID(hgrid), 10); gtk_container_add(GTK_CONTAINER(frame), hgrid); rates_lux_scale = gtk_scale_new_with_range(GTK_ORIENTATION_HORIZONTAL, 0, 10, 1); gtk_range_set_increments(GTK_RANGE(rates_lux_scale), 1, 1); for (i = 0; i <= 10; i++) { gtk_scale_add_mark(GTK_SCALE(rates_lux_scale), i, GTK_POS_TOP, NULL); } gtk_widget_set_size_request(rates_lux_scale, 300, 40); gtk_scale_set_digits(GTK_SCALE(rates_lux_scale), 0); gtk_scale_set_draw_value(GTK_SCALE(rates_lux_scale), FALSE); gtk_container_add(GTK_CONTAINER(hgrid), rates_lux_scale); rates_lux_label = gtk_label_new(" 0%"); gtk_container_add(GTK_CONTAINER(hgrid), rates_lux_label); gtk_widget_set_size_request(rates_lux_label, 40, -1); rates_lux_toggle = gtk_check_button_new_with_label( _("Lock") ); gtk_container_add(GTK_CONTAINER(hgrid), rates_lux_toggle); frame = gtk_frame_new( _("Science") ); gtk_box_pack_start( GTK_BOX( content ), frame, TRUE, TRUE, 5 ); hgrid = gtk_grid_new(); gtk_grid_set_column_spacing(GTK_GRID(hgrid), 10); gtk_container_add(GTK_CONTAINER(frame), hgrid); rates_sci_scale = gtk_scale_new_with_range(GTK_ORIENTATION_HORIZONTAL, 0, 10, 1); gtk_range_set_increments(GTK_RANGE(rates_sci_scale), 1, 1); for (i = 0; i <= 10; i++) { gtk_scale_add_mark(GTK_SCALE(rates_sci_scale), i, GTK_POS_TOP, NULL); } gtk_widget_set_size_request(rates_sci_scale, 300, 40); gtk_scale_set_digits(GTK_SCALE(rates_sci_scale), 0); gtk_scale_set_draw_value(GTK_SCALE(rates_sci_scale), FALSE); gtk_container_add(GTK_CONTAINER(hgrid), rates_sci_scale); rates_sci_label = gtk_label_new(" 0%"); gtk_container_add(GTK_CONTAINER(hgrid), rates_sci_label); gtk_widget_set_size_request(rates_sci_label, 40, -1); rates_sci_toggle = gtk_check_button_new_with_label( _("Lock") ); gtk_container_add(GTK_CONTAINER(hgrid), rates_sci_toggle); g_signal_connect(shell, "response", G_CALLBACK(rates_command_callback), NULL); g_signal_connect(shell, "destroy", G_CALLBACK(gtk_widget_destroyed), &rates_dialog_shell); gtk_widget_show_all(content); gtk_widget_show_all(gtk_dialog_get_action_area(GTK_DIALOG(shell))); rates_tax_value=-1; rates_lux_value=-1; rates_sci_value=-1; rates_tax_sig = g_signal_connect_after(rates_tax_scale, "value-changed", G_CALLBACK(rates_changed_callback), NULL); rates_lux_sig = g_signal_connect_after(rates_lux_scale, "value-changed", G_CALLBACK(rates_changed_callback), NULL); rates_sci_sig = g_signal_connect_after(rates_sci_scale, "value-changed", G_CALLBACK(rates_changed_callback), NULL); rates_set_values(client.conn.playing->economic.tax, 0, client.conn.playing->economic.luxury, 0, client.conn.playing->economic.science, 0); return shell; }
static void clarity_widget_init (ClarityWidget *self) { ClarityWidgetPrivate *priv; priv = CLARITY_WIDGET_GET_PRIVATE (self); priv->album_model = album_model_new(); priv->draw_area = clarity_canvas_new(); g_signal_connect (G_OBJECT(priv->draw_area), "scroll-event", G_CALLBACK(_on_scrolling_covers_cb), priv); _set_background_color(self); _set_text_color(self); priv->leftbutton = gtk_button_new_with_label("<"); gtk_widget_set_name(priv->leftbutton, LEFT_BUTTON); gtk_button_set_relief(GTK_BUTTON(priv->leftbutton), GTK_RELIEF_NONE); gtk_widget_set_can_focus(priv->leftbutton, TRUE); g_signal_connect (G_OBJECT(priv->leftbutton), "clicked", G_CALLBACK(_on_clarity_button_clicked), priv); priv->cdslider = gtk_scale_new_with_range(GTK_ORIENTATION_HORIZONTAL, 0, 1, 1); gtk_scale_set_digits(GTK_SCALE(priv->cdslider), 0); gtk_scale_set_draw_value(GTK_SCALE(priv->cdslider), FALSE); gtk_widget_set_can_focus(priv->cdslider, TRUE); gtk_range_set_increments(GTK_RANGE(priv->cdslider), 1, 2); priv->slider_signal_id = g_signal_connect (G_OBJECT(priv->cdslider), "value-changed", G_CALLBACK(_on_clarity_slider_value_changed), priv); priv->rightbutton = gtk_button_new_with_label(">"); gtk_widget_set_name(priv->rightbutton, RIGHT_BUTTON); gtk_button_set_relief(GTK_BUTTON(priv->rightbutton), GTK_RELIEF_NONE); gtk_widget_set_can_focus(priv->rightbutton, TRUE); g_signal_connect (G_OBJECT(priv->rightbutton), "clicked", G_CALLBACK(_on_clarity_button_clicked), priv); /* Dnd destinaton for foreign image files */ gtk_drag_dest_set(priv->draw_area, 0, clarity_drop_types, TGNR(clarity_drop_types), GDK_ACTION_COPY | GDK_ACTION_MOVE); g_signal_connect ((gpointer) priv->draw_area, "drag-drop", G_CALLBACK (dnd_clarity_drag_drop), NULL); g_signal_connect ((gpointer) priv->draw_area, "drag-data-received", G_CALLBACK (dnd_clarity_drag_data_received), NULL); g_signal_connect ((gpointer) priv->draw_area, "drag-motion", G_CALLBACK (dnd_clarity_drag_motion), NULL); /* * Ensure everything is inited correctly if gtkpod is loaded with * the clarity window is not initially visible. */ g_signal_connect_after(GTK_WIDGET(self), "realize", G_CALLBACK(_clarity_widget_realized_cb), NULL); _init_slider_range(priv); priv->controlbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 2); gtk_box_pack_start(GTK_BOX(priv->controlbox), priv->leftbutton, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(priv->controlbox), priv->cdslider, TRUE, TRUE, 0); gtk_box_pack_start(GTK_BOX(priv->controlbox), priv->rightbutton, FALSE, FALSE, 0); priv->contentpanel = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); gtk_box_pack_start(GTK_BOX(priv->contentpanel), priv->draw_area, TRUE, TRUE, 0); gtk_box_pack_end(GTK_BOX(priv->contentpanel), priv->controlbox, FALSE, TRUE, 0); gtk_box_pack_start(GTK_BOX (self), priv->contentpanel, TRUE, TRUE, 0); gtk_widget_show_all(GTK_WIDGET(self)); }