PolygonDialog::PolygonDialog(GtkBuilder* builder, bool isFace){
    GError* error = nullptr;
    // (char*) usado para tirar warnings do compilador
    char* ids[] = {(char*)"poly_list_store",(char*)"adj_x1",(char*)"adj_y1",
        (char*)"adj_z1",(char*)"dlog_add_poly",nullptr};

    if(!gtk_builder_add_objects_from_file(builder, UI_FILE, ids, &error)){
        g_warning( "%s", error->message );
        g_free( error );
        return;
    }

    m_dialog = GTK_WIDGET( gtk_builder_get_object( builder, "dlog_add_poly" ) );
    m_entryName = GTK_WIDGET( gtk_builder_get_object( builder, "poly_name" ) );
    m_entryX = GTK_WIDGET( gtk_builder_get_object( builder, "poly_x" ) );
    m_entryY = GTK_WIDGET( gtk_builder_get_object( builder, "poly_y" ) );
    m_entryZ = GTK_WIDGET( gtk_builder_get_object( builder, "poly_z" ) );
    m_checkFilled = GTK_WIDGET( gtk_builder_get_object( builder, "poly_filled" ) );

    GtkTreeView* tree = GTK_TREE_VIEW( gtk_builder_get_object( GTK_BUILDER(builder), "poly_treeview" ) );
    m_model = gtk_tree_view_get_model(tree);

    // Agora com o 3D os poligonos não podem mais ser
    //  preenchidos...
    gtk_widget_hide(m_checkFilled);

    gtk_builder_connect_signals(builder, this);
}
Example #2
0
/* gnc_builder_add_from_file:
 *
 *   a convenience wrapper for gtk_builder_add_objects_from_file.
 *   It takes care of finding the directory for glade files and prints a
 *   warning message in case of an error.
 */
gboolean
gnc_builder_add_from_file (GtkBuilder *builder, const char *filename, const char *root)
{
    GError* error = NULL;
    char *fname;
    gchar *gnc_builder_dir;
    gboolean result;

    g_return_val_if_fail (builder != NULL, FALSE);
    g_return_val_if_fail (filename != NULL, FALSE);
    g_return_val_if_fail (root != NULL, FALSE);

    gnc_builder_dir = gnc_path_get_gtkbuilderdir ();
    fname = g_build_filename(gnc_builder_dir, filename, (char *)NULL);
    g_free (gnc_builder_dir);

    {
        gchar *localroot = g_strdup(root);
        gchar *objects[] = { localroot, NULL };
        result = gtk_builder_add_objects_from_file (builder, fname, objects, &error);
        if (!result)
        {
            PWARN ("Couldn't load builder file: %s", error->message);
            g_error_free (error);
        }
        g_free (localroot);
    }

    g_free (fname);

    return result;
}
RotateDialog::RotateDialog(GtkBuilder* builder){
    GError* error = nullptr;
    // (char*) usado para tirar warnings do compilador
    char* ids[] = {(char*)"dlog_rotate",(char*)"adj_x1",
        (char*)"adj_y1",(char*)"adj_z1",(char*)"adj_ang_x",
        (char*)"adj_ang_y",(char*)"adj_ang_z",(char*)"adj_ang_a",nullptr};

    if(!gtk_builder_add_objects_from_file (builder, UI_FILE, ids, &error)){
        g_warning( "%s", error->message );
        g_free( error );
        return;
    }

    m_dialog = GTK_WIDGET( gtk_builder_get_object( builder, "dlog_rotate" ) );
    m_entryCX = GTK_WIDGET( gtk_builder_get_object( builder, "entry_cx" ) );
    m_entryCY = GTK_WIDGET( gtk_builder_get_object( builder, "entry_cy" ) );
    m_entryCZ = GTK_WIDGET( gtk_builder_get_object( builder, "entry_cz" ) );
    m_entryAngX = GTK_WIDGET( gtk_builder_get_object( builder, "entry_ang_x" ) );
    m_entryAngY = GTK_WIDGET( gtk_builder_get_object( builder, "entry_ang_y" ) );
    m_entryAngZ = GTK_WIDGET( gtk_builder_get_object( builder, "entry_ang_z" ) );
    m_entryAngA = GTK_WIDGET( gtk_builder_get_object( builder, "entry_ang_a" ) );

    m_objCenter = GTK_WIDGET( gtk_builder_get_object( builder, "tb_obj_center" ) );
    m_pntCenter = GTK_WIDGET( gtk_builder_get_object( builder, "rb_pnt_center" ) );
}
LineDialog::LineDialog(GtkBuilder* builder){
    GError* error = nullptr;
    // (char*) usado para tirar warnings do compilador
    char* ids[] = { (char*)"dlog_add_line",(char*)"adj_x1",
                    (char*)"adj_y1",(char*)"adj_z1",
                    (char*)"adj_x2",(char*)"adj_y2",
                    (char*)"adj_z2",nullptr };

    if(!gtk_builder_add_objects_from_file (builder, UI_FILE, ids, &error)){
        g_warning( "%s", error->message );
        g_free( error );
        return;
    }

    m_dialog = GTK_WIDGET( gtk_builder_get_object( builder, "dlog_add_line" ) );
    m_entryName = GTK_WIDGET( gtk_builder_get_object( builder, "line_name" ) );
    m_entryX1 = GTK_WIDGET( gtk_builder_get_object( builder, "line_x1" ) );
    m_entryY1 = GTK_WIDGET( gtk_builder_get_object( builder, "line_y1" ) );
    m_entryZ1 = GTK_WIDGET( gtk_builder_get_object( builder, "line_z1" ) );
    m_entryX2 = GTK_WIDGET( gtk_builder_get_object( builder, "line_x2" ) );
    m_entryY2 = GTK_WIDGET( gtk_builder_get_object( builder, "line_y2" ) );
    m_entryZ2 = GTK_WIDGET( gtk_builder_get_object( builder, "line_z2" ) );

    gtk_builder_connect_signals(builder, this);
}
SurfaceDialog::SurfaceDialog(GtkBuilder* builder){
    GError* error = nullptr;
    // (char*) usado para tirar warnings do compilador
    char* ids[] = {(char*)"surface_comboBox",(char*)"adj_x1",(char*)"adj_y1",
        (char*)"adj_z1",(char*)"dlog_add_surface",nullptr};

    if(!gtk_builder_add_objects_from_file(builder, UI_FILE, ids, &error)){
        g_warning( "%s", error->message );
        g_free( error );
        return;
    }

    m_dialog = GTK_WIDGET( gtk_builder_get_object( builder, "dlog_add_surface" ) );
    m_entryName = GTK_WIDGET( gtk_builder_get_object( builder, "surface_name" ) );
    m_entryX = GTK_WIDGET( gtk_builder_get_object( builder, "surface_x" ) );
    m_entryY = GTK_WIDGET( gtk_builder_get_object( builder, "surface_y" ) );
    m_entryZ = GTK_WIDGET( gtk_builder_get_object( builder, "surface_z" ) );
    m_grid = GTK_WIDGET( gtk_builder_get_object( builder, "surface_grid" ) );

    m_comboBox = GTK_WIDGET( gtk_builder_get_object( builder, "cb_surface_side" ) );
    gtk_combo_box_set_active(GTK_COMBO_BOX(m_comboBox), 0);
    m_btnAddSurface = GTK_WIDGET( gtk_builder_get_object( builder, "btn_add_surface" ) );

    GObject* tmpBezier = G_OBJECT(gtk_builder_get_object( builder, "rb_bezier_surface" ));
    m_rbBezier = GTK_WIDGET( tmpBezier );
    g_object_set_data(tmpBezier, "ID", GINT_TO_POINTER(ObjType::BEZIER_SURFACE));

    GObject* tmpBSpline = G_OBJECT(gtk_builder_get_object( builder, "rb_bspline_surface" ));
    m_rbBSpline = GTK_WIDGET( tmpBSpline );
    g_object_set_data(tmpBSpline, "ID", GINT_TO_POINTER(ObjType::BSPLINE_SURFACE));

    gtk_builder_connect_signals(builder, this);
}
Example #6
0
static void
git_checkout_pane_init (GitCheckoutPane *self)
{
	gchar *objects[] = {"checkout_pane",
						NULL};
	GError *error = NULL;
	GtkButton *ok_button;
	GtkButton *cancel_button;

	self->priv = g_new0 (GitCheckoutPanePriv, 1);
	self->priv->builder = gtk_builder_new ();

	if (!gtk_builder_add_objects_from_file (self->priv->builder, BUILDER_FILE, 
	                                        objects, 
	                                        &error))
	{
		g_warning ("Couldn't load builder file: %s", error->message);
		g_error_free (error);
	}

	ok_button = GTK_BUTTON (gtk_builder_get_object (self->priv->builder, 
	                                                "ok_button"));
	cancel_button = GTK_BUTTON (gtk_builder_get_object (self->priv->builder,
	                                                    "cancel_button"));

	g_signal_connect (G_OBJECT (ok_button), "clicked",
	                  G_CALLBACK (on_ok_button_clicked),
	                  self);

	g_signal_connect_swapped (G_OBJECT (cancel_button), "clicked",
	                          G_CALLBACK (git_pane_remove_from_dock),
	                          self);
}
Example #7
0
static void
git_stash_pane_init (GitStashPane *self)
{
	gchar *objects[] = {"stash_pane",
						"stash_list_model",
						NULL};
	GError *error = NULL;
	GtkWidget *stash_view;
	
	self->priv = g_new0 (GitStashPanePriv, 1);
	self->priv->builder = gtk_builder_new ();

	if (!gtk_builder_add_objects_from_file (self->priv->builder, BUILDER_FILE, 
	                                        objects, 
	                                        &error))
	{
		g_warning ("Couldn't load builder file: %s", error->message);
		g_error_free (error);
	}

	stash_view = GTK_WIDGET (gtk_builder_get_object (self->priv->builder,
	                                                 "stash_view"));

	g_signal_connect (G_OBJECT (stash_view), "button-press-event",
	                  G_CALLBACK (on_stash_view_button_press_event),
	                  self);
}
static void
msd_media_keys_window_init (MsdMediaKeysWindow *window)
{
        GdkScreen *screen;

        window->priv = MSD_MEDIA_KEYS_WINDOW_GET_PRIVATE (window);

        screen = gtk_widget_get_screen (GTK_WIDGET (window));

        if (!msd_osd_window_is_composited (MSD_OSD_WINDOW (window))) {
                GtkBuilder *builder;
                const gchar *objects[] = {"acme_box", NULL};
                GtkWidget *box;

                builder = gtk_builder_new ();
                gtk_builder_add_objects_from_file (builder,
                                                   GTKBUILDERDIR "/acme.ui",
                                                   (char **) objects,
                                                   NULL);

                window->priv->image = GTK_IMAGE (gtk_builder_get_object (builder, "acme_image"));
                window->priv->progress = GTK_WIDGET (gtk_builder_get_object (builder, "acme_volume_progressbar"));
                box = GTK_WIDGET (gtk_builder_get_object (builder, "acme_box"));

                if (box != NULL) {
                        gtk_container_add (GTK_CONTAINER (window), box);
                        gtk_widget_show_all (box);
                }

                /* The builder needs to stay alive until the window
                   takes ownership of the box (and its children)  */
                g_object_unref (builder);
        }
}
static void
git_delete_branches_pane_init (GitDeleteBranchesPane *self)
{
	gchar *objects[] = {"delete_branches_pane",
						"ok_action",
						"cancel_action",
						NULL};
	GError *error = NULL;
	GtkAction *ok_action;
	GtkAction *cancel_action;

	self->priv = g_new0 (GitDeleteBranchesPanePriv, 1);
	self->priv->builder = gtk_builder_new ();

	if (!gtk_builder_add_objects_from_file (self->priv->builder, BUILDER_FILE, 
	                                        objects, 
	                                        &error))
	{
		g_warning ("Couldn't load builder file: %s", error->message);
		g_error_free (error);
	}

	ok_action = GTK_ACTION (gtk_builder_get_object (self->priv->builder,
	                                                "ok_action"));
	cancel_action = GTK_ACTION (gtk_builder_get_object (self->priv->builder,
	                                                "cancel_action"));

	g_signal_connect (G_OBJECT (ok_action), "activate",
	                  G_CALLBACK (on_ok_action_activated),
	                  self);

	g_signal_connect_swapped (G_OBJECT (cancel_action), "activate",
	                          G_CALLBACK (git_pane_remove_from_dock),
	                          self);
}
PpPPDSelectionDialog *
pp_ppd_selection_dialog_new (GtkWindow            *parent,
                             PPDList              *ppd_list,
                             gchar                *manufacturer,
                             UserResponseCallback  user_callback,
                             gpointer              user_data)
{
  PpPPDSelectionDialog *dialog;
  GtkWidget            *widget;
  GError               *error = NULL;
  gchar                *objects[] = { "ppd-selection-dialog", NULL };
  guint                 builder_result;

  dialog = g_new0 (PpPPDSelectionDialog, 1);

  dialog->builder = gtk_builder_new ();
  dialog->parent = GTK_WIDGET (parent);

  builder_result = gtk_builder_add_objects_from_file (dialog->builder,
                                                      DATADIR"/ppd-selection-dialog.ui",
                                                      objects, &error);

  if (builder_result == 0)
    {
      g_warning ("Could not load ui: %s", error->message);
      g_error_free (error);
      return NULL;
    }

  dialog->dialog = (GtkWidget *) gtk_builder_get_object (dialog->builder, "ppd-selection-dialog");
  dialog->user_callback = user_callback;
  dialog->user_data = user_data;

  dialog->response = GTK_RESPONSE_NONE;
  dialog->list = ppd_list_copy (ppd_list);

  dialog->manufacturer = get_standard_manufacturers_name (manufacturer);

  /* connect signals */
  g_signal_connect (dialog->dialog, "delete-event", G_CALLBACK (gtk_widget_hide_on_delete), NULL);
  g_signal_connect (dialog->dialog, "response", G_CALLBACK (ppd_selection_dialog_response_cb), dialog);

  widget = (GtkWidget*)
    gtk_builder_get_object (dialog->builder, "content-alignment");
  g_signal_connect (widget, "size-allocate", G_CALLBACK (update_alignment_padding), dialog);

  widget = (GtkWidget*)
    gtk_builder_get_object (dialog->builder, "ppd-spinner");
  gtk_spinner_start (GTK_SPINNER (widget));

  populate_dialog (dialog);

  gtk_window_set_transient_for (GTK_WINDOW (dialog->dialog), GTK_WINDOW (parent));
  gtk_window_present (GTK_WINDOW (dialog->dialog));
  gtk_widget_show_all (GTK_WIDGET (dialog->dialog));

  return dialog;
}
Example #11
0
static void
git_stash_pane_init (GitStashPane *self)
{
	gchar *objects[] = {"stash_pane",
						"stash_model",
						NULL};
	GError *error = NULL;
	GtkTreeView *stash_view;
	GtkTreeViewColumn *stash_number_column;
	GtkCellRenderer *stash_number_renderer;
	GtkTreeViewColumn *stash_message_column;
	GtkCellRenderer *stash_message_renderer;
	GtkCellRenderer *diff_renderer;
	GtkTreeSelection *selection;
	
	self->priv = g_new0 (GitStashPanePriv, 1);
	self->priv->builder = gtk_builder_new ();

	if (!gtk_builder_add_objects_from_file (self->priv->builder, BUILDER_FILE, 
	                                        objects, 
	                                        &error))
	{
		g_warning ("Couldn't load builder file: %s", error->message);
		g_error_free (error);
	}

	stash_view = GTK_TREE_VIEW (gtk_builder_get_object (self->priv->builder,
	                                             	    "stash_view"));
	stash_number_column = GTK_TREE_VIEW_COLUMN (gtk_builder_get_object (self->priv->builder,
	                                                                    "stash_number_column"));
	stash_number_renderer = GTK_CELL_RENDERER (gtk_builder_get_object (self->priv->builder,
	                                                                   "stash_number_renderer"));
	stash_message_column = GTK_TREE_VIEW_COLUMN (gtk_builder_get_object (self->priv->builder,
	                                                                     "stash_message_column"));
	stash_message_renderer = GTK_CELL_RENDERER (gtk_builder_get_object (self->priv->builder,
	                                                                    "stash_message_renderer"));
	diff_renderer = anjuta_cell_renderer_diff_new ();
	selection = gtk_tree_view_get_selection (stash_view);

	gtk_tree_view_column_set_cell_data_func (stash_number_column, stash_number_renderer,
	                                         stash_number_renderer_data_func, 
	                                         NULL, NULL);
	gtk_tree_view_column_set_cell_data_func (stash_message_column, stash_message_renderer,
	                                         stash_message_renderer_data_func,
	                                         NULL, NULL);

	gtk_tree_view_column_pack_start (stash_message_column, diff_renderer, TRUE);
	gtk_tree_view_column_add_attribute (stash_message_column, diff_renderer,
	                                    "diff", COL_DIFF);

	/* Don't allow diffs to be selected */
	gtk_tree_selection_set_select_function (selection, on_stash_view_row_selected,
	                                        NULL, NULL);

	g_signal_connect (G_OBJECT (stash_view), "button-press-event",
	                  G_CALLBACK (on_stash_view_button_press_event),
	                  self);
}
static void
cc_ua_panel_init (CcUaPanel *self)
{
  CcUaPanelPrivate *priv;
  GtkWidget *widget;
  GError *err = NULL;
  gchar *objects[] = { "universal_access_box", "contrast_model",
                       "text_size_model", "slowkeys_delay_adjustment",
                       "bouncekeys_delay_adjustment", "click_delay_adjustment",
                       "dwell_time_adjustment", "dwell_threshold_adjustment",
                       "seeing_sizegroup", "typing_sizegroup",
                       "pointing_sizegroup", "pointing_sizegroup2",
                       "pointing_scale_sizegroup", "sizegroup1",
                       "hearing_sizegroup",
                       NULL };

  priv = self->priv = UA_PANEL_PRIVATE (self);

  priv->builder = gtk_builder_new ();

  gtk_builder_add_objects_from_file (priv->builder,
                                     GNOMECC_UI_DIR "/uap.ui",
                                     objects,
                                     &err);

  if (err)
    {
      g_warning ("Could not load interface file: %s", err->message);
      g_error_free (err);

      g_object_unref (priv->builder);
      priv->builder = NULL;

      return;
    }

  priv->client = gconf_client_get_default ();

  priv->interface_settings = g_settings_new ("org.gnome.desktop.interface");
  g_signal_connect (priv->interface_settings, "changed",
                    G_CALLBACK (interface_settings_changed_cb), self);
  interface_settings_changed_cb (priv->interface_settings, "gtk-theme", self);

  priv->kb_settings = g_settings_new ("org.gnome.desktop.a11y.keyboard");
  priv->mouse_settings = g_settings_new ("org.gnome.desktop.a11y.mouse");
  priv->application_settings = g_settings_new ("org.gnome.desktop.a11y.applications");
  priv->mediakeys_settings = g_settings_new ("org.gnome.settings-daemon.plugins.media-keys");

  cc_ua_panel_init_keyboard (self);
  cc_ua_panel_init_mouse (self);
  cc_ua_panel_init_hearing (self);
  cc_ua_panel_init_seeing (self);

  widget = (GtkWidget*) gtk_builder_get_object (priv->builder,
                                                "universal_access_box");

  gtk_container_add (GTK_CONTAINER (self), widget);
}
Example #13
0
static void
init (GnomePilotCapplet *gpcap)
{
	GnomePilotCappletPrivate *priv;
	guint error;
 	gchar *objects[] = {"timeout_adjustment",
			    "device_speed_store",
			    "pilot_charset_store",
			    "CappletMain",
 			    NULL};

	priv = g_new0 (GnomePilotCappletPrivate, 1);

	gpcap->priv = priv;

	/* State information */
	loadPilotState (&priv->orig_state);
	priv->state = dupPilotState (priv->orig_state);

	/* Gui stuff */
	priv->ui = gtk_builder_new ();
	error = gtk_builder_add_objects_from_file (priv->ui, "gpilotd-capplet.ui", objects, NULL);
	if (error == 0) {
		error = gtk_builder_add_objects_from_file (priv->ui, UIDATADIR "/gpilotd-capplet.ui", objects, NULL);
		if (error == 0) {
			g_message ("gnome-pilot-capplet init(): Could not load the GtkBuilder UI file!");
			goto error;
		}
	}
	gpcap_create_pilots_treeview (priv);
	gpcap_create_devices_treeview (priv);
	gpcap_create_conduit_treeview (priv);
	
	if (!get_widgets (gpcap)) {
		g_message ("gnome-pilot-capplet init(): Could not find all widgets in the UI file!");
		goto error;
	}
	
	fill_widgets (gpcap);
	init_widgets (gpcap);

 error:
	;
}
static void
create_patch_series_dialog (Git *plugin)
{
	GtkBuilder *bxml;
	gchar *objects[] = {"patch_series_dialog", "branch_combo_model", NULL};
	GError *error;
	GtkWidget *dialog;
	GtkWidget *patch_series_origin_check;
	GtkWidget *patch_series_branch_combo;
	GtkListStore *branch_combo_model;
	GitUIData *data;
	GitBranchListCommand *list_command;
	
	bxml = gtk_builder_new ();
	error = NULL;

	if (!gtk_builder_add_objects_from_file (bxml, BUILDER_FILE, objects, 
	                                        &error))
	{
		g_warning ("Couldn't load builder file: %s", error->message);
		g_error_free (error);
	}
	
	dialog = GTK_WIDGET (gtk_builder_get_object (bxml, "patch_series_dialog"));
	patch_series_origin_check = GTK_WIDGET (gtk_builder_get_object (bxml, 
	                                              				    "patch_series_origin_check"));
	patch_series_branch_combo = GTK_WIDGET (gtk_builder_get_object (bxml, 
																    "patch_series_branch_combo"));
	branch_combo_model = GTK_LIST_STORE (gtk_builder_get_object (bxml,
	                                                             "branch_combo_model"));
	
	data = git_ui_data_new (plugin, bxml);
	
	list_command = git_branch_list_command_new (plugin->project_root_directory,
												GIT_BRANCH_TYPE_ALL);
	
	g_signal_connect (G_OBJECT (list_command), "data-arrived", 
					  G_CALLBACK (on_git_list_branch_combo_command_data_arrived), 
					  branch_combo_model);
	
	g_signal_connect (G_OBJECT (list_command), "command-finished", 
					  G_CALLBACK (on_git_list_branch_combo_command_finished), 
					  patch_series_branch_combo);
	
	anjuta_command_start (ANJUTA_COMMAND (list_command));
	
	g_signal_connect (G_OBJECT (dialog), "response", 
					  G_CALLBACK (on_create_patch_series_dialog_response), 
					  data);

	g_signal_connect (G_OBJECT (patch_series_origin_check), "toggled",
	                  G_CALLBACK (on_git_origin_check_toggled),
	                  patch_series_branch_combo);
	
	gtk_widget_show_all (dialog);
}
static void
gsd_media_keys_window_init (GsdMediaKeysWindow *window)
{
        GdkScreen *screen;

        window->priv = GSD_MEDIA_KEYS_WINDOW_GET_PRIVATE (window);

        screen = gtk_widget_get_screen (GTK_WIDGET (window));

        window->priv->is_composited = gdk_screen_is_composited (screen);

        if (window->priv->is_composited) {
                gdouble scalew, scaleh, scale;
                gint size;

                gtk_window_set_decorated (GTK_WINDOW (window), FALSE);
                gtk_widget_set_app_paintable (GTK_WIDGET (window), TRUE);

                /* assume 130x130 on a 640x480 display and scale from there */
                scalew = gdk_screen_get_width (screen) / 640.0;
                scaleh = gdk_screen_get_height (screen) / 480.0;
                scale = MIN (scalew, scaleh);
                size = 130 * MAX (1, scale);

                gtk_window_set_default_size (GTK_WINDOW (window), size, size);
                g_signal_connect (window, "expose-event", G_CALLBACK (on_expose_event), window);

                window->priv->fade_out_alpha = 1.0;
        } else {
                GtkBuilder *builder;
                const gchar *objects[] = {"acme_frame", NULL};
                GtkWidget *frame;

                builder = gtk_builder_new ();
                gtk_builder_add_objects_from_file (builder,
                                                   GTKBUILDERDIR "/acme.ui",
                                                   (char **) objects,
                                                   NULL);

                window->priv->image = GTK_IMAGE (gtk_builder_get_object (builder, "acme_image"));
                window->priv->progress = GTK_WIDGET (gtk_builder_get_object (builder, "acme_volume_progressbar"));
                frame = GTK_WIDGET (gtk_builder_get_object (builder,
                                                            "acme_frame"));

                if (frame != NULL) {
                        gtk_container_add (GTK_CONTAINER (window), frame);
                        gtk_widget_show_all (frame);
                }

                /* The builder needs to stay alive until the window
                   takes ownership of the frame (and its children)  */
                g_object_unref (builder);
        }
}
Example #16
0
static void
gst_editor_palette_init (GstEditorPalette * palette)
{
  connect_struct data;
  GModule *symbols;
  gchar *path;
  GError *error = NULL;
  static const gchar *object_ids[] = {"utility_palette", NULL};

  symbols = g_module_open (NULL, 0);

  data.palette = palette;
  data.symbols = symbols;

  path = gste_get_ui_file ("editor.ui");
  if (!path)
    g_error ("GStreamer Editor user interface file 'editor.ui' not found.");

  palette->builder = gtk_builder_new ();

  if (!gtk_builder_add_objects_from_file (palette->builder,
          path, (gchar **) object_ids, &error)) {
    g_error (
        "GStreamer Editor could not load utility_palette from builder file: %s",
        error->message);
    g_error_free (error);
  }
  g_free (path);

  gtk_builder_connect_signals_full (palette->builder,
      gst_editor_palette_connect_func, &data);

  palette->window =
      GTK_WIDGET (gtk_builder_get_object (palette->builder, "utility_palette"));
  palette->element_tree =
      g_object_new (gst_element_browser_element_tree_get_type (), NULL);

  gtk_box_pack_start (GTK_BOX (gtk_builder_get_object (palette->builder,
              "element-browser-vbox")), palette->element_tree, TRUE, TRUE, 0);
  g_signal_connect (palette->element_tree, "element-activated",
      G_CALLBACK (on_element_tree_select), palette);
  
#ifndef _MSC_VER
  palette->debug_ui = gst_debug_ui_new ();
  gtk_box_pack_start (GTK_BOX (gtk_builder_get_object (palette->builder,
              "debug-vbox")), palette->debug_ui, TRUE, TRUE, 0);
#endif
  g_signal_connect (palette->window, "delete-event",
      G_CALLBACK (on_delete_event), palette);

  gtk_widget_show_all (palette->window);
}
static void
cb_http_details_button_clicked (GtkWidget *button,
			        GtkWidget *parent)
{
	GtkBuilder *builder;
	gchar *builder_widgets[] = { "details_dialog", NULL };
	GError *error = NULL;
	GtkWidget *widget;

	if (details_dialog != NULL) {
		gtk_window_present (GTK_WINDOW (details_dialog));
		gtk_widget_grab_focus (details_dialog);
		return;
	}

	builder = gtk_builder_new ();
	if (gtk_builder_add_objects_from_file (builder, MATECC_GNP_UI_FILE,
					       builder_widgets, &error) == 0) {
		g_warning ("Could not load details dialog: %s", error->message);
		g_error_free (error);
		g_object_unref (builder);
		return;
	}

	details_dialog = widget = _gtk_builder_get_widget (builder,
							   "details_dialog");

	gtk_window_set_transient_for (GTK_WINDOW (widget), GTK_WINDOW (parent));

	g_signal_connect (gtk_builder_get_object (builder, "use_auth_checkbutton"),
			  "toggled",
			  G_CALLBACK (cb_use_auth_toggled),
			  _gtk_builder_get_widget (builder, "auth_table"));

	g_settings_bind (http_proxy_settings, HTTP_USE_AUTH_KEY,
			gtk_builder_get_object (builder, "use_auth_checkbutton"), "active",
			G_SETTINGS_BIND_DEFAULT);
	g_settings_bind (http_proxy_settings, HTTP_AUTH_USER_KEY,
			gtk_builder_get_object (builder, "username_entry"), "text",
			G_SETTINGS_BIND_DEFAULT);
	g_settings_bind (http_proxy_settings, HTTP_AUTH_PASSWD_KEY,
			gtk_builder_get_object (builder, "password_entry"), "text",
			G_SETTINGS_BIND_DEFAULT);

	g_signal_connect (widget, "response",
			  G_CALLBACK (cb_details_dialog_response), NULL);

	capplet_set_icon (widget, "mate-network-properties");

	gtk_widget_show_all (widget);
}
static void
cc_background_panel_init (CcBackgroundPanel *self)
{
  CcBackgroundPanelPrivate *priv;
  gchar *objects[] = {"background-panel", NULL };
  GError *err = NULL;
  GtkWidget *widget;

  priv = self->priv = BACKGROUND_PANEL_PRIVATE (self);

  priv->builder = gtk_builder_new ();
  priv->connection = g_application_get_dbus_connection (g_application_get_default ());

  gtk_builder_add_objects_from_file (priv->builder,
                                     UIDIR"/background.ui",
                                     objects, &err);

  if (err)
    {
      g_warning ("Could not load ui: %s", err->message);
      g_error_free (err);
      return;
    }

  priv->settings = g_settings_new (WP_PATH_ID);
  g_settings_delay (priv->settings);

  /* add the top level widget */
  widget = WID ("background-panel");

  gtk_container_add (GTK_CONTAINER (self), widget);
  gtk_widget_show_all (GTK_WIDGET (self));

  /* setup preview area */
  widget = WID ("background-desktop-drawingarea");
  g_signal_connect (widget, "draw", G_CALLBACK (on_preview_draw),
                    self);

  priv->copy_cancellable = g_cancellable_new ();

  priv->thumb_factory = gnome_desktop_thumbnail_factory_new (GNOME_DESKTOP_THUMBNAIL_SIZE_LARGE);

  reload_current_bg (self);
  update_preview (priv, NULL);

  g_signal_connect (priv->settings, "changed", G_CALLBACK (on_settings_changed), self);

  widget = WID ("background-set-button");
  g_signal_connect (widget, "clicked", G_CALLBACK (on_background_button_clicked), self);
}
TranslateDialog::TranslateDialog(GtkBuilder* builder){
    GError* error = nullptr;
    // (char*) usado para tirar warnings do compilador
    char* ids[] = {(char*)"dlog_translate",(char*)"adj_x1",
        (char*)"adj_y1",nullptr};

    if(!gtk_builder_add_objects_from_file (builder, UI_FILE, ids, &error)){
        g_warning( "%s", error->message );
        g_free( error );
        return;
    }

    m_dialog = GTK_WIDGET( gtk_builder_get_object( builder, "dlog_translate" ) );
    m_entryDX = GTK_WIDGET( gtk_builder_get_object( builder, "entry_dx" ) );
    m_entryDY = GTK_WIDGET( gtk_builder_get_object( builder, "entry_dy" ) );
}
int
main (int argc, char **argv)
{
	GtkBuilder  *builder;
	GError *error = NULL;
	gchar *builder_widgets[] = {"network_dialog", "adjustment1",
				    "adjustment2", "adjustment3", "adjustment4",
				    "delete_button_img", NULL};
	GtkWidget   *widget;

	bindtextdomain (GETTEXT_PACKAGE, MATELOCALEDIR);
	bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
	textdomain (GETTEXT_PACKAGE);

	gtk_init (&argc, &argv);

	builder = gtk_builder_new ();
	if (gtk_builder_add_objects_from_file (builder, MATECC_GNP_UI_FILE,
					       builder_widgets, &error) == 0) {
		g_warning ("Could not load main dialog: %s",
			   error->message);
		g_error_free (error);
		g_object_unref (builder);
		return (EXIT_FAILURE);
	}

	proxy_settings = g_settings_new (PROXY_SCHEMA);
	http_proxy_settings = g_settings_new (HTTP_PROXY_SCHEMA);
	https_proxy_settings = g_settings_new (HTTPS_PROXY_SCHEMA);
	ftp_proxy_settings = g_settings_new (FTP_PROXY_SCHEMA);
	socks_proxy_settings = g_settings_new (SOCKS_PROXY_SCHEMA);

	setup_dialog (builder);
	widget = _gtk_builder_get_widget (builder, "network_dialog");
	capplet_set_icon (widget, "mate-network-properties");
	gtk_widget_show_all (widget);
	gtk_main ();

	g_object_unref (builder);
	g_object_unref (proxy_settings);
	g_object_unref (http_proxy_settings);
	g_object_unref (https_proxy_settings);
	g_object_unref (ftp_proxy_settings);
	g_object_unref (socks_proxy_settings);

	return 0;
}
Example #21
0
GtkWidget *
liferea_dialog_new (const gchar *filename, gchar *name) 
{
	LifereaDialog	*ld;
	gchar 		*path;
	GError          *error = NULL;

	/* FIXME: this is so hacky... We should just load the whole file as we
	 * did with glade, then pick the widget we're told. However GtkBuilder
	 * doesn't cope with multiple top-level widgets in the same .ui file
	 * yet (it will load all the widgets, which are a lot in liferea.ui, so
	 * you end with a lot of new dialogs when you open e.g. preferences),
	 * so we need to do this for now...
	 * http://bugzilla.gnome.org/show_bug.cgi?id=575714
	 */
	gchar	*objs[] = { "adjustment1", "adjustment2", "adjustment3",
			    "adjustment4", "adjustment5", "adjustment6",
			    "liststore1", "liststore2", "liststore3",
			    "liststore4", "liststore5", "liststore6",
			    "refreshIntervalSpinButton", name, NULL };

	ld = LIFEREA_DIALOG (g_object_new (LIFEREA_DIALOG_TYPE, NULL));

	path = g_build_filename (PACKAGE_DATA_DIR, PACKAGE, filename?filename:"liferea.ui", NULL);
	ld->priv->xml = gtk_builder_new ();
	if (!gtk_builder_add_objects_from_file (ld->priv->xml, path, objs, &error)) {
		g_error ("Loading %s failed : %s", path, error->message);
		g_error_free(error);
	}

	g_free (path);

	g_return_val_if_fail (ld->priv->xml != NULL, NULL);

	ld->priv->dialog = GTK_WIDGET (gtk_builder_get_object (ld->priv->xml, name));
	gtk_builder_connect_signals (ld->priv->xml, NULL);
	g_return_val_if_fail (ld->priv->dialog != NULL, NULL);

	g_object_set_data (G_OBJECT (ld->priv->dialog), "LifereaDialog", ld);
	
	gtk_window_set_transient_for (GTK_WINDOW (ld->priv->dialog), GTK_WINDOW (liferea_shell_lookup ("mainwindow")));

	g_signal_connect_object (ld->priv->dialog, "destroy", G_CALLBACK (liferea_dialog_destroy_cb), ld, 0);

	return ld->priv->dialog;
}
ScaleDialog::ScaleDialog(GtkBuilder* builder){
    GError* error = nullptr;
    // (char*) usado para tirar warnings do compilador
    char* ids[] = {(char*)"dlog_scale",(char*)"adj_x1",
        (char*)"adj_y1",nullptr};

    if(!gtk_builder_add_objects_from_file (builder, UI_FILE, ids, &error)){
        g_warning( "%s", error->message );
        g_free( error );
        return;
    }

    m_dialog = GTK_WIDGET( gtk_builder_get_object( builder, "dlog_scale" ) );
    m_entrySX = GTK_WIDGET( gtk_builder_get_object( builder, "entry_sx" ) );
    gtk_spin_button_set_value(GTK_SPIN_BUTTON(m_entrySX), 1.0);
    m_entrySY = GTK_WIDGET( gtk_builder_get_object( builder, "entry_sy" ) );
    gtk_spin_button_set_value(GTK_SPIN_BUTTON(m_entrySY), 1.0);
}
Example #23
0
static void
git_merge_pane_init (GitMergePane *self)
{
	gchar *objects[] = {"merge_pane",
						"ok_action",
						"cancel_action",
						"no_commit_action",
						"squash_action",
						NULL};
	GError *error = NULL;
	GtkAction *ok_action;
	GtkAction *cancel_action;
	GtkWidget *use_custom_log_check;

	self->priv = g_new0 (GitMergePanePriv, 1);
	self->priv->builder = gtk_builder_new ();

	if (!gtk_builder_add_objects_from_file (self->priv->builder, BUILDER_FILE, 
	                                        objects, 
	                                        &error))
	{
		g_warning ("Couldn't load builder file: %s", error->message);
		g_error_free (error);
	}

	ok_action = GTK_ACTION (gtk_builder_get_object (self->priv->builder,
	                                                "ok_action"));
	cancel_action = GTK_ACTION (gtk_builder_get_object (self->priv->builder,
	                                                    "cancel_action"));
	use_custom_log_check = GTK_WIDGET (gtk_builder_get_object (self->priv->builder,
	                                                       	   "use_custom_log_check"));

	g_signal_connect (G_OBJECT (ok_action), "activate",
	                  G_CALLBACK (on_ok_action_activated),
	                  self);

	g_signal_connect_swapped (G_OBJECT (cancel_action), "activate",
	                          G_CALLBACK (git_pane_remove_from_dock),
	                          self);

	g_signal_connect (G_OBJECT (use_custom_log_check), "toggled",
	                  G_CALLBACK (on_use_custom_log_check_toggled),
	                  self);
}
Object3dDialog::Object3dDialog(GtkBuilder* builder){
    GError* error = nullptr;
    // (char*) usado para tirar warnings do compilador
    char* ids[] = {(char*)"obj3d_list_store",(char*)"dlog_add_obj3d",nullptr};

    if(!gtk_builder_add_objects_from_file(builder, UI_FILE, ids, &error)){
        g_warning( "%s", error->message );
        g_free( error );
        return;
    }

    m_dialog = GTK_WIDGET( gtk_builder_get_object( builder, "dlog_add_obj3d" ) );
    m_entryName = GTK_WIDGET( gtk_builder_get_object( builder, "obj3d_name" ) );

    GtkTreeView* tree = GTK_TREE_VIEW( gtk_builder_get_object( GTK_BUILDER(builder), "obj3d_treeview" ) );
    m_model = gtk_tree_view_get_model(tree);

    gtk_builder_connect_signals(builder, this);
}
PointDialog::PointDialog(GtkBuilder* builder){
    GError* error = nullptr;
    // (char*) usado para tirar warnings do compilador
    char* ids[] = {(char*)"dlog_add_pnt",(char*)"adj_x1",
        (char*)"adj_y1",nullptr};

    if(!gtk_builder_add_objects_from_file (builder, UI_FILE, ids, &error)){
        g_warning( "%s", error->message );
        g_free( error );
        return;
    }

    m_dialog = GTK_WIDGET( gtk_builder_get_object( builder, "dlog_add_pnt" ) );
    m_entryName = GTK_WIDGET( gtk_builder_get_object( builder, "point_name" ) );
    m_entryX = GTK_WIDGET( gtk_builder_get_object( builder, "point_x" ) );
    m_entryY = GTK_WIDGET( gtk_builder_get_object( builder, "point_y" ) );

    gtk_builder_connect_signals(builder, this);
}
FileDialog::FileDialog(GtkBuilder* builder, bool toSave){
    GError* error = nullptr;
    // (char*) usado para tirar warnings do compilador
    char* ids[] = {(char*)"dlog_file",(char*)"obj_filter",nullptr};

    if(!gtk_builder_add_objects_from_file (builder, UI_FILE, ids, &error)){
        g_warning( "%s", error->message );
        g_free( error );
        return;
    }

    m_dialog = GTK_WIDGET( gtk_builder_get_object( builder, "dlog_file" ) );
    if(toSave){
        gtk_window_set_title (GTK_WINDOW(m_dialog), "Salve o arquivo...");
        gtk_file_chooser_set_action(GTK_FILE_CHOOSER(m_dialog), GTK_FILE_CHOOSER_ACTION_SAVE);
        gtk_file_chooser_set_do_overwrite_confirmation(GTK_FILE_CHOOSER(m_dialog), true);
        gtk_file_chooser_set_create_folders(GTK_FILE_CHOOSER(m_dialog), true);
        gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER(m_dialog), "untitled.obj");
    }
}
Example #27
0
static void
liferea_shell_init (LifereaShell *ls)
{
	/* FIXME: we should only need to load mainwindow, but GtkBuilder won't
	 * load the other required objects, so we need to do it manually...
	 * See fixme in liferea_dialog_new()
	 * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=508585
	 */
	gchar *objs[] = { "adjustment6", "mainwindow", NULL };
	/* globally accessible singleton */
	g_assert (NULL == shell);
	shell = ls;
	
	shell->priv = LIFEREA_SHELL_GET_PRIVATE (ls);
	shell->priv->xml = gtk_builder_new ();
	if (!gtk_builder_add_objects_from_file (shell->priv->xml, PACKAGE_DATA_DIR G_DIR_SEPARATOR_S PACKAGE G_DIR_SEPARATOR_S "liferea.ui", objs, NULL))
		g_error ("Loading " PACKAGE_DATA_DIR G_DIR_SEPARATOR_S PACKAGE G_DIR_SEPARATOR_S  "liferea.ui failed");

	gtk_builder_connect_signals (shell->priv->xml, NULL);
}
static void
nm_connection_editor_init (NMConnectionEditor *editor)
{
	GtkWidget *dialog;
	GError *error = NULL;
	const char *objects[] = { "nm-connection-editor", NULL };

	editor->builder = gtk_builder_new ();

	if (!gtk_builder_add_objects_from_file (editor->builder,
	                                        UIDIR "/nm-connection-editor.ui",
	                                        (char **) objects,
	                                        &error)) {
		g_warning ("Couldn't load builder file " UIDIR "/nm-connection-editor.ui: %s", error->message);
		g_error_free (error);

		dialog = gtk_message_dialog_new (NULL, 0,
		                                 GTK_MESSAGE_ERROR,
		                                 GTK_BUTTONS_OK,
		                                 "%s",
		                                 _("The connection editor could not find some required resources (the .ui file was not found)."));
		gtk_dialog_run (GTK_DIALOG (dialog));
		gtk_widget_destroy (dialog);
		gtk_main_quit ();
		return;
	}

	editor->window = GTK_WIDGET (gtk_builder_get_object (editor->builder, "nm-connection-editor"));
	if (nm_ce_keep_above)
		gtk_window_set_keep_above (GTK_WINDOW (editor->window), TRUE);

	editor->cancel_button = GTK_WIDGET (gtk_builder_get_object (editor->builder, "cancel_button"));
	editor->export_button = GTK_WIDGET (gtk_builder_get_object (editor->builder, "export_button"));

	editor->inter_page_hash = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, (GDestroyNotify) destroy_inter_page_item);
}
Example #29
0
ColourGUI *colourgui_open(const char *scheme_name, GdkScreen *scrn)
{
    ColourGUI *cg;
    char *title;
    static char const *build_objs[] = { "Colour_Scheme_Editor", NULL };
    GError *error = NULL;

    if (!colourgui_being_edited)
    {
        colourgui_being_edited = g_hash_table_new_full(g_str_hash, g_str_equal,
                g_free, NULL);
    }

    cg = g_hash_table_lookup(colourgui_being_edited, scheme_name);
    if (cg)
    {
        if (scrn)
            gtk_window_set_screen(GTK_WINDOW(cg->widget), scrn);
        gtk_window_present(GTK_WINDOW(cg->widget));
        return cg;
    }

    cg = g_new0(ColourGUI, 1);
    cg->scheme_name = g_strdup(scheme_name);
    cg->capp.options = colour_scheme_lookup_and_ref(scheme_name);
    cg->orig_scheme = options_copy(cg->capp.options);

    cg->capp.builder = gtk_builder_new();
    if (!gtk_builder_add_objects_from_file(cg->capp.builder,
            capplet_get_ui_filename(),
            (char **) build_objs, &error))
    {
        g_error(_("Unable to load 'Colour_Scheme_Editor' from UI defs: %s"),
                error->message);
    }
    cg->widget = GTK_WIDGET(gtk_builder_get_object(cg->capp.builder,
            "Colour_Scheme_Editor"));
    if (scrn)
        gtk_window_set_screen(GTK_WINDOW(cg->widget), scrn);
    title = g_strdup_printf(_("ROXTerm Colour Scheme \"%s\""), scheme_name);
    gtk_window_set_title(GTK_WINDOW(cg->widget), title);
    g_free(title);

    if (!cg->orig_scheme)
    {
        dlg_warning(GTK_WINDOW(cg->widget),
                _("Unable to back up colour scheme to revert"));
        gtk_widget_set_sensitive(
                GTK_WIDGET(gtk_builder_get_object(cg->capp.builder, "revert")),
                FALSE);
    }

    g_hash_table_insert(colourgui_being_edited, g_strdup(scheme_name), cg);

    colourgui_fill_in_dialog(cg, TRUE);
    gtk_builder_connect_signals(cg->capp.builder, cg);

    gtk_widget_show(cg->widget);

    capplet_inc_windows();

    configlet_lock_colour_schemes();

    return cg;
}
PpOptionsDialog *
pp_options_dialog_new (GtkWindow            *parent,
                       UserResponseCallback  user_callback,
                       gpointer              user_data,
                       gchar                *printer_name,
                       gboolean              sensitive)
{
  PpOptionsDialog *dialog;
  GtkWidget       *widget;
  GError          *error = NULL;
  gchar           *objects[] = { "options-dialog", NULL };
  guint            builder_result;
  gchar           *title;

  dialog = g_new0 (PpOptionsDialog, 1);

  dialog->builder = gtk_builder_new ();
  dialog->parent = GTK_WIDGET (parent);

  builder_result = gtk_builder_add_objects_from_file (dialog->builder,
                                                      DATADIR"/options-dialog.ui",
                                                      objects, &error);

  if (builder_result == 0)
    {
      g_warning ("Could not load ui: %s", error->message);
      g_error_free (error);
      return NULL;
    }

  dialog->dialog = (GtkWidget *) gtk_builder_get_object (dialog->builder, "options-dialog");
  gtk_window_set_transient_for (GTK_WINDOW (dialog->dialog), GTK_WINDOW (parent));

  dialog->user_callback = user_callback;
  dialog->user_data = user_data;

  dialog->printer_name = g_strdup (printer_name);

  dialog->ppd_filename = NULL;
  dialog->ppd_filename_set = FALSE;

  dialog->destination = NULL;
  dialog->destination_set = FALSE;

  dialog->ipp_attributes = NULL;
  dialog->ipp_attributes_set = FALSE;

  dialog->response = GTK_RESPONSE_NONE;

  dialog->sensitive = sensitive;

  /* connect signals */
  g_signal_connect (dialog->dialog, "response", G_CALLBACK (options_dialog_response_cb), dialog);
  g_signal_connect (dialog->dialog, "size-allocate", G_CALLBACK (update_alignment_padding), dialog);

  widget = (GtkWidget*)
    gtk_builder_get_object (dialog->builder, "options-title");
  /* Translators: Options of given printer (e.g. "MyPrinter Options") */
  title = g_strdup_printf (_("%s Options"), printer_name);
  gtk_label_set_label (GTK_LABEL (widget), title);
  g_free (title);

  gtk_widget_show_all (GTK_WIDGET (dialog->dialog));

  dialog->populating_dialog = TRUE;
  populate_options (dialog);

  return dialog;
}