コード例 #1
1
static void
brasero_medium_selection_update_no_disc_entry (BraseroMediumSelection *self,
        GtkTreeModel *model,
        GtkTreeIter *iter)
{
    BraseroMediumMonitor *monitor;
    GIcon *icon;

    monitor = brasero_medium_monitor_get_default ();
    if (brasero_medium_monitor_is_probing (monitor)) {
        icon = g_themed_icon_new_with_default_fallbacks ("image-loading");
        gtk_list_store_set (GTK_LIST_STORE (model), iter,
                            NAME_COL, _("Searching for available discs"),
                            ICON_COL, icon,
                            VISIBLE_TEXT_COL, TRUE,
                            VISIBLE_PROGRESS_COL, FALSE,
                            -1);
    }
    else {
        icon = g_themed_icon_new_with_default_fallbacks ("drive-optical");
        gtk_list_store_set (GTK_LIST_STORE (model), iter,
                            NAME_COL, _("No disc available"),
                            ICON_COL, icon,
                            VISIBLE_TEXT_COL, TRUE,
                            VISIBLE_PROGRESS_COL, FALSE,
                            -1);
    }

    g_object_unref (icon);
    g_object_unref (monitor);

    gtk_combo_box_set_active_iter (GTK_COMBO_BOX (self), iter);
    brasero_medium_selection_set_current_medium (self, iter);
}
コード例 #2
0
static void
preferences_theme_variant_notify_cb (GSettings   *gsettings,
				     const gchar *key,
				     gpointer     user_data)
{
	EmpathyPreferences *preferences = user_data;
	EmpathyPreferencesPriv *priv = GET_PRIV (preferences);
	GtkComboBox        *combo;
	gchar              *conf_name;
	GtkTreeModel       *model;
	GtkTreeIter         iter;
	GtkTreeIter         default_iter;
	gboolean            found_default = FALSE;
	gboolean            found = FALSE;
	gboolean            ok;

	conf_name = g_settings_get_string (gsettings, EMPATHY_PREFS_CHAT_THEME_VARIANT);
	combo = GTK_COMBO_BOX (priv->combobox_chat_theme_variant);
	model = gtk_combo_box_get_model (combo);

	for (ok = gtk_tree_model_get_iter_first (model, &iter);
	     ok && !found;
	     ok = gtk_tree_model_iter_next (model, &iter)) {
		gchar *name;
		gboolean is_default;

		gtk_tree_model_get (model, &iter,
				    COL_VARIANT_NAME, &name,
				    COL_VARIANT_DEFAULT, &is_default,
				    -1);

		if (!tp_strdiff (name, conf_name)) {
			found = TRUE;
			gtk_combo_box_set_active_iter (combo, &iter);
		}
		if (is_default) {
			found_default = TRUE;
			default_iter = iter;
		}

		g_free (name);
	}

	/* Fallback to the first one. */
	if (!found) {
		if (found_default) {
			gtk_combo_box_set_active_iter (combo, &default_iter);
		} else if (gtk_tree_model_get_iter_first (model, &iter)) {
			gtk_combo_box_set_active_iter (combo, &iter);
		}
	}

	g_free (conf_name);
}
コード例 #3
0
static void
fill_networks_model (EmpathyAccountWidgetIrc *settings,
                     EmpathyIrcNetwork *network_to_select)
{
  GSList *networks, *l;
  GtkTreeModel *model;
  GtkListStore *store;

  networks = empathy_irc_network_manager_get_networks (
      settings->network_manager);

  model = gtk_combo_box_get_model (GTK_COMBO_BOX (settings->combobox_network));
  store = GTK_LIST_STORE (model);

  for (l = networks; l != NULL; l = g_slist_next (l))
    {
      gchar *name;
      EmpathyIrcNetwork *network = l->data;
      GtkTreeIter iter;

      g_object_get (network, "name", &name, NULL);

      gtk_list_store_insert_with_values (store, &iter, -1,
          COL_NETWORK_OBJ, network,
          COL_NETWORK_NAME, name,
          -1);

       if (network == network_to_select)
         {
           gtk_combo_box_set_active_iter (
               GTK_COMBO_BOX (settings->combobox_network), &iter);
         }

      g_free (name);
      g_object_unref (network);
    }

  if (network_to_select == NULL)
    {
      /* Select the first network */
      GtkTreeIter iter;

      if (gtk_tree_model_get_iter_first (model, &iter))
        {
          gtk_combo_box_set_active_iter (
              GTK_COMBO_BOX (settings->combobox_network), &iter);

          update_server_params (settings);
        }
    }

  g_slist_free (networks);
}
コード例 #4
0
static void
preferences_theme_notify_cb (GSettings   *gsettings,
			     const gchar *key,
			     gpointer     user_data)
{
	EmpathyPreferences *preferences = user_data;
	EmpathyPreferencesPriv *priv = GET_PRIV (preferences);
	GtkComboBox        *combo;
	gchar              *conf_name;
	gchar              *conf_path;
	GtkTreeModel       *model;
	GtkTreeIter         iter;
	gboolean            found = FALSE;
	gboolean            ok;

	conf_name = g_settings_get_string (gsettings, EMPATHY_PREFS_CHAT_THEME);
	conf_path = g_settings_get_string (gsettings, EMPATHY_PREFS_CHAT_ADIUM_PATH);

	combo = GTK_COMBO_BOX (priv->combobox_chat_theme);
	model = gtk_combo_box_get_model (combo);
	for (ok = gtk_tree_model_get_iter_first (model, &iter);
	     ok && !found;
	     ok = gtk_tree_model_iter_next (model, &iter)) {
		gboolean is_adium;
		gchar *name;
		gchar *path;

		gtk_tree_model_get (model, &iter,
				    COL_THEME_IS_ADIUM, &is_adium,
				    COL_THEME_NAME, &name,
				    COL_THEME_ADIUM_PATH, &path,
				    -1);

		if (!tp_strdiff (name, conf_name) &&
		    (!is_adium || !tp_strdiff (path, conf_path))) {
			found = TRUE;
			gtk_combo_box_set_active_iter (combo, &iter);
		}

		g_free (name);
		g_free (path);
	}

	/* Fallback to the first one. */
	if (!found) {
		if (gtk_tree_model_get_iter_first (model, &iter)) {
			gtk_combo_box_set_active_iter (combo, &iter);
		}
	}

	g_free (conf_name);
	g_free (conf_path);
}
コード例 #5
0
static gboolean
select_application_func_cb (GtkTreeModel *model,
                            GtkTreePath *path,
                            GtkTreeIter *iter,
                            gpointer user_data)
{
  SelectAppData *data = user_data;
  GAppInfo *app_to_match = data->info, *app = NULL;
  gboolean custom;

  gtk_tree_model_get (model, iter,
                      COLUMN_APP_INFO, &app,
                      COLUMN_CUSTOM, &custom,
                      -1);

  /* cutsom items are always after GAppInfos, so iterating further here
   * is just useless.
   */
  if (custom)
    return TRUE;

  if (g_app_info_equal (app, app_to_match))
    {
      gtk_combo_box_set_active_iter (GTK_COMBO_BOX (data->self), iter);
      return TRUE;
    }

  return FALSE;
}
コード例 #6
0
/**
 * set the account in the account button
 * this will automatickly change the content of the form
 *
 * \param account_number
 *
 * \return FALSE if not done, TRUE if ok
 * */
gboolean gsb_form_scheduler_set_account ( gint account_number )
{
    GtkTreeIter iter;
    GtkWidget *button;
    GtkTreeModel *model;

    button = gsb_form_scheduler_get_element_widget(SCHEDULED_FORM_ACCOUNT);
    /* if no account button, go away... */
    if (!button)
	return FALSE;

    model = gtk_combo_box_get_model ( GTK_COMBO_BOX (button));

    if ( gtk_tree_model_get_iter_first (model, &iter))
    {
	do
	{
	    gint number;

	    gtk_tree_model_get ( model, &iter,
				 1, &number,
				 -1 );
	    if (number == account_number)
	    {
		gtk_combo_box_set_active_iter ( GTK_COMBO_BOX (button),
						&iter );
		return TRUE;
	    }
	}
	while (gtk_tree_model_iter_next (model, &iter));
    }
    return FALSE;
}
コード例 #7
0
void
gtr_combo_box_set_active_enum (GtkComboBox * combo_box, int value)
{
  int i;
  int currentValue;
  const int column = 0;
  GtkTreeIter iter;
  GtkTreeModel * model = gtk_combo_box_get_model (combo_box);

  /* do the value and current value match? */
  if (gtk_combo_box_get_active_iter (combo_box, &iter))
    {
      gtk_tree_model_get (model, &iter, column, &currentValue, -1);
      if (currentValue == value)
        return;
    }

  /* find the one to select */
  i = 0;
  while ((gtk_tree_model_iter_nth_child (model, &iter, NULL, i++)))
    {
      gtk_tree_model_get (model, &iter, column, &currentValue, -1);
      if (currentValue == value)
        {
          gtk_combo_box_set_active_iter (combo_box, &iter);
          return;
        }
    }
}
コード例 #8
0
static void
e_tz_map_set_location_text (ETzMap *tzmap, const gchar *name)
{
	GtkWidget    *location_combo;
	GtkTreeModel *model;
	GtkTreeIter   iter;
	gboolean      valid;
	gchar        *location;

	location_combo = gst_dialog_get_widget (tzmap->tool->main_dialog, "location_combo");
	model = gtk_combo_box_get_model (GTK_COMBO_BOX (location_combo));
	valid = gtk_tree_model_get_iter_first (GTK_TREE_MODEL (model), &iter);

	while (valid) {
		gtk_tree_model_get (model, &iter, 0, &location, -1);

		if (strcmp (location, name) == 0) {
			gtk_combo_box_set_active_iter (GTK_COMBO_BOX (location_combo), &iter);
			valid = FALSE;
		} else {
			valid = gtk_tree_model_iter_next (GTK_TREE_MODEL (model), &iter);
		}

		g_free (location);
	}
}
コード例 #9
0
static void
account_widget_irc_button_remove_clicked_cb (GtkWidget *button,
                                             EmpathyAccountWidgetIrc *settings)
{
  EmpathyIrcNetwork *network;
  GtkTreeIter iter;
  GtkTreeModel *model;
  gchar *name;

  gtk_combo_box_get_active_iter (GTK_COMBO_BOX (settings->combobox_network),
      &iter);
  model = gtk_combo_box_get_model (GTK_COMBO_BOX (settings->combobox_network));
  gtk_tree_model_get (model, &iter, COL_NETWORK_OBJ, &network, -1);

  g_assert (network != NULL);

  g_object_get (network, "name", &name, NULL);
  DEBUG ("Remove network %s", name);

  gtk_list_store_remove (GTK_LIST_STORE (model), &iter);
  empathy_irc_network_manager_remove (settings->network_manager, network);

  /* Select the first network */
  if (gtk_tree_model_get_iter_first (model, &iter))
    {
      gtk_combo_box_set_active_iter (
          GTK_COMBO_BOX (settings->combobox_network), &iter);
    }

  g_free (name);
  g_object_unref (network);
}
コード例 #10
0
ファイル: gimpstringcombobox.c プロジェクト: Distrotech/gimp
/**
 * gimp_string_combo_box_set_active:
 * @combo_box: a #GimpStringComboBox
 * @id:        the ID of the item to select
 *
 * Looks up the item that belongs to the given @id and makes it the
 * selected item in the @combo_box.
 *
 * Return value: %TRUE on success or %FALSE if there was no item for
 *               this value.
 *
 * Since: 2.4
 **/
gboolean
gimp_string_combo_box_set_active (GimpStringComboBox *combo_box,
                                  const gchar        *id)
{
  g_return_val_if_fail (GIMP_IS_STRING_COMBO_BOX (combo_box), FALSE);

  if (id)
    {
      GtkTreeModel *model;
      GtkTreeIter   iter;
      gint          column;

      model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo_box));

      column = GIMP_STRING_COMBO_BOX_GET_PRIVATE (combo_box)->id_column;

      if (gimp_string_model_lookup (model, column, id, &iter))
        {
          gtk_combo_box_set_active_iter (GTK_COMBO_BOX (combo_box), &iter);
          return TRUE;
        }

      return FALSE;
    }
  else
    {
      gtk_combo_box_set_active (GTK_COMBO_BOX (combo_box), -1);

      return TRUE;
    }
}
コード例 #11
0
ファイル: gimpunitcombobox.c プロジェクト: Amerekanets/gimp-1
void
gimp_unit_combo_box_set_active (GimpUnitComboBox *combo,
                                GimpUnit          unit)
{
  GtkTreeModel *model;
  GtkTreeIter   iter;
  gboolean      iter_valid;

  g_return_if_fail (GIMP_IS_UNIT_COMBO_BOX (combo));

  model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo));

  for (iter_valid = gtk_tree_model_get_iter_first (model, &iter);
       iter_valid;
       iter_valid = gtk_tree_model_iter_next (model, &iter))
    {
      gint iter_unit;

      gtk_tree_model_get (model, &iter,
                          GIMP_UNIT_STORE_UNIT, &iter_unit,
                          -1);

      if (unit == (GimpUnit) iter_unit)
        {
          gtk_combo_box_set_active_iter (GTK_COMBO_BOX (combo), &iter);
          break;
        }
    }

}
コード例 #12
0
ファイル: info.c プロジェクト: gfunkmonk2/mate-nettool
void
info_set_nic (Netinfo * netinfo, const gchar *nic)
{
	GtkTreeModel    *model;
	GtkTreeIter      iter;

	g_return_if_fail (netinfo != NULL);
	
	if (nic == NULL)
		return;

	model = gtk_combo_box_get_model (GTK_COMBO_BOX (netinfo->combo));
	if (!gtk_tree_model_get_iter_first (model, &iter)) {
		g_warning ("No network devices found.");
		return;
	}

	do {
		char *text = NULL;

		gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, 2, &text, -1);
		if (!text)
			continue;

		if (strcmp (text, nic) == 0) {
			gtk_combo_box_set_active_iter (GTK_COMBO_BOX (netinfo->combo), &iter);
			return;
		}
	} while (gtk_tree_model_iter_next (GTK_TREE_MODEL (model), &iter));
}
コード例 #13
0
ファイル: gth-location-chooser.c プロジェクト: lplade/gthumb
static void
add_file_source_entries (GthLocationChooser *self,
			 GFile              *file,
			 const char         *name,
			 GIcon              *icon,
			 int                 position,
			 gboolean            update_active_iter,
			 int                 iter_type)
{
	GtkTreeIter  iter;
	char        *uri;

	uri = g_file_get_uri (file);

	gtk_tree_store_insert (self->priv->model, &iter, NULL, position);
	gtk_tree_store_set (self->priv->model, &iter,
			    TYPE_COLUMN, iter_type,
			    ICON_COLUMN, icon,
			    NAME_COLUMN, name,
			    URI_COLUMN, uri,
			    ELLIPSIZE_COLUMN, PANGO_ELLIPSIZE_END,
			    -1);

	g_free (uri);

	if (update_active_iter && g_file_equal (self->priv->location, file)) {
		g_signal_handlers_block_by_func (self->priv->combo, combo_changed_cb, self);
		gtk_combo_box_set_active_iter (GTK_COMBO_BOX (self->priv->combo), &iter);
		g_signal_handlers_unblock_by_func (self->priv->combo, combo_changed_cb, self);
	}
}
コード例 #14
0
int project_edit_data_query_callback(void *NotUsed, int argc, char **argv, char **col_name)
{
    g_print("project_edit_data_query_callback()\n");

    // Name

    gtk_entry_set_text(GTK_ENTRY(project_edit_entry_name), argv[0] ? argv[0] : "");


    GtkTreeIter iter;
    gboolean valid;
    GtkListStore *store;

    // Status

    store = GTK_LIST_STORE(gtk_combo_box_get_model(GTK_COMBO_BOX(project_edit_combo_status)));;

    gchar *status_id;

    valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &iter);

    while (valid) {
        gtk_tree_model_get(GTK_TREE_MODEL(store), &iter, 1, &status_id, -1);

        if (g_strcmp0(status_id, argv[1]) == 0) {
            gtk_combo_box_set_active_iter(GTK_COMBO_BOX(project_edit_combo_status), &iter);
        }

        valid = gtk_tree_model_iter_next(GTK_TREE_MODEL(store), &iter);
    }

    return 0;
}
コード例 #15
0
static void
select_style (GtkComboBox *box,
	      GDesktopBackgroundStyle new_style)
{
  GtkTreeModel *model;
  GtkTreeIter iter;
  gboolean cont;

  model = gtk_combo_box_get_model (box);
  cont = gtk_tree_model_get_iter_first (model, &iter);
  while (cont != FALSE)
    {
      GDesktopBackgroundStyle style;

      gtk_tree_model_get (model, &iter,
			  1, &style,
			  -1);

      if (style == new_style)
        {
          gtk_combo_box_set_active_iter (box, &iter);
          break;
	}
      cont = gtk_tree_model_iter_next (model, &iter);
    }

  if (cont == FALSE)
    gtk_combo_box_set_active (box, -1);
}
コード例 #16
0
ファイル: math-converter.c プロジェクト: dmashal/mate-calc
void
math_converter_set_conversion(MathConverter *converter, /*const gchar *category,*/ const gchar *unit_a, const gchar *unit_b)
{
    Unit *ua;
    Unit *ub;

    g_return_if_fail (converter != NULL);
    g_return_if_fail (unit_a != NULL);
    g_return_if_fail (unit_b != NULL);

    ua = unit_manager_get_unit_by_name(unit_manager_get_default(), unit_a);
    ub = unit_manager_get_unit_by_name(unit_manager_get_default(), unit_b);
    if (!ua || !ub)
    {
        GtkTreeModel *model;
        GtkTreeIter iter;

        /* Select the first unit */
        model = gtk_combo_box_get_model(GTK_COMBO_BOX(converter->priv->from_combo));
        if (gtk_tree_model_get_iter_first(model, &iter)) {
            GtkTreeIter child_iter;
            while (gtk_tree_model_iter_children(model, &child_iter, &iter))
                iter = child_iter;
            gtk_combo_box_set_active_iter(GTK_COMBO_BOX(converter->priv->from_combo), &iter);
        }
        return;
    }

    set_active_unit(GTK_COMBO_BOX(converter->priv->from_combo), NULL, ua);
    set_active_unit(GTK_COMBO_BOX(converter->priv->to_combo), NULL, ub);
}
コード例 #17
0
static void
enterprise_add_realm (GisAccountPageEnterprise *page,
                      UmRealmObject  *realm)
{
  GisAccountPageEnterprisePrivate *priv = gis_account_page_enterprise_get_instance_private (page);
  GtkTreeIter iter;
  gchar *name;

  name = realm_get_name (realm);

  /*
   * Don't add a second realm if we already have one with this name.
   * Sometimes realmd returns two realms for the same name, if it has
   * different ways to use that realm. The first one that realmd
   * returns is the one it prefers.
   */

  if (!model_contains_realm (GTK_TREE_MODEL (priv->realms_model), name)) {
    gtk_list_store_append (GTK_LIST_STORE (priv->realms_model), &iter);
    gtk_list_store_set (GTK_LIST_STORE (priv->realms_model), &iter,
                        0, name,
                        1, realm,
                        -1);

    if (!priv->domain_chosen && um_realm_is_configured (realm))
      gtk_combo_box_set_active_iter (GTK_COMBO_BOX (priv->domain), &iter);

    g_debug ("added realm to drop down: %s %s", name,
             g_dbus_object_get_object_path (G_DBUS_OBJECT (realm)));
  }

  g_free (name);
}
コード例 #18
0
ファイル: mooeditprefspage.c プロジェクト: cmotc/medit
static void
scheme_combo_set_scheme (GtkComboBox        *combo,
                         MooTextStyleScheme *scheme)
{
    GtkTreeModel *model = gtk_combo_box_get_model (combo);
    gboolean found = FALSE;
    GtkTreeIter iter;

    gtk_tree_model_get_iter_first (model, &iter);
    do {
        MooTextStyleScheme *s;
        gtk_tree_model_get (model, &iter, 0, &s, -1);
        g_object_unref (s);
        if (scheme == s)
        {
            found = TRUE;
            break;
        }
    }
    while (gtk_tree_model_iter_next (model, &iter));

    g_return_if_fail (found);

    gtk_combo_box_set_active_iter (combo, &iter);
}
コード例 #19
0
ファイル: GamessGuess.c プロジェクト: xomachine/gabedit
static GtkWidget *create_list_guessmethods()
{
        GtkTreeIter iter;
        GtkTreeStore *store;
	GtkTreeModel *model;
	GtkWidget *combobox;
	GtkCellRenderer *renderer;
	gint i;
        GtkTreeIter iter0;

	store = gtk_tree_store_new (1,G_TYPE_STRING);

	for(i=0;i<numberOfGuessMethods;i++)
	{
        	gtk_tree_store_append (store, &iter, NULL);
		if(i==0) iter0 = iter;
        	gtk_tree_store_set (store, &iter, 0, listGuessMethodView[i], -1);
	}

        model = GTK_TREE_MODEL (store);
	combobox = gtk_combo_box_new_with_model (model);
	/*
	gtk_combo_box_set_add_tearoffs (GTK_COMBO_BOX (combobox), TRUE);
	*/
	g_object_unref (model);
	g_signal_connect (G_OBJECT(combobox), "changed", G_CALLBACK(traitementGuessMethod), NULL);
	renderer = gtk_cell_renderer_text_new ();
	gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combobox), renderer, TRUE);
	gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combobox), renderer, "text", 0, NULL);

	gtk_combo_box_set_active_iter(GTK_COMBO_BOX (combobox), &iter0);

	return combobox;
}
コード例 #20
0
/*!
  \brief ECU specific plugin handler for combo boxes
  \param widget is the pointer to the combo box 
  \param data is unused
  \returns TRUE
  */
G_MODULE_EXPORT gboolean ecu_update_combo(GtkWidget *widget, gpointer data)
{
	gfloat value = 0.0;
	GtkTreeModel *model = NULL;
	GtkTreeIter iter;
	JimStimStdHandler handler;
	GdkColor white = {0,65535,65535,65535};

	handler = (JimStimStdHandler)OBJ_GET(widget,"handler");
	if (handler == RPM_MODE)
	{
		value = convert_after_upload_f(widget);
		model = gtk_combo_box_get_model(GTK_COMBO_BOX(widget));

		/* If set to 65535, pick second choice, otherwise first one..
		   */
		gtk_tree_model_get_iter_first(GTK_TREE_MODEL(model),&iter);
		if ((GINT)value == 65535)
			gtk_tree_model_iter_next (GTK_TREE_MODEL(model), &iter);
                g_signal_handlers_block_by_func(widget,(gpointer)std_combo_handler_f,NULL);

		gtk_combo_box_set_active_iter(GTK_COMBO_BOX(widget),&iter);
		gtk_widget_modify_base(gtk_bin_get_child(GTK_BIN(widget)),GTK_STATE_NORMAL,&white);
                g_signal_handlers_unblock_by_func(widget,(gpointer)std_combo_handler_f,NULL);
	}
	return TRUE;
}
コード例 #21
0
static void
account_widget_irc_button_add_network_clicked_cb (GtkWidget *button,
                                                  EmpathyAccountWidgetIrc *settings)
{
  EmpathyIrcNetwork *network;
  GtkTreeModel *model;
  GtkListStore *store;
  gchar *name;
  GtkTreeIter iter;

  network = empathy_irc_network_new (_("New Network"));
  empathy_irc_network_manager_add (settings->network_manager, network);

  model = gtk_combo_box_get_model (GTK_COMBO_BOX (settings->combobox_network));
  store = GTK_LIST_STORE (model);

  g_object_get (network, "name", &name, NULL);

  gtk_list_store_insert_with_values (store, &iter, -1,
      COL_NETWORK_OBJ, network,
      COL_NETWORK_NAME, name,
      -1);

  gtk_combo_box_set_active_iter (GTK_COMBO_BOX (settings->combobox_network),
      &iter);

  display_irc_network_dialog (settings, network);

  g_free (name);
  g_object_unref (network);
}
コード例 #22
0
static void
connection_pppoe_combo_set_interface (GtkComboBox       *combo,
				      OobsIfaceEthernet *ethernet)
{
  GtkTreeModel *model;
  GtkTreeIter iter;
  gboolean valid;
  OobsIfaceEthernet *iface;

  model = gtk_combo_box_get_model (combo);
  valid = gtk_tree_model_get_iter_first (model, &iter);

  while (valid)
    {
      gtk_tree_model_get (model, &iter, 0, &iface, -1);

      if (ethernet == iface)
	{
	  gtk_combo_box_set_active_iter (combo, &iter);
	  return;
	}

      valid = gtk_tree_model_iter_next (model, &iter);
    }

  gtk_combo_box_set_active (combo, -1);
}
コード例 #23
0
ファイル: combo-util.c プロジェクト: DroiDev/glabels
void
gl_combo_util_set_active_text (GtkComboBox       *combo,
                               const gchar       *text)
{
	GtkTreeModel   *model = gtk_combo_box_get_model(combo);

	g_return_if_fail (GTK_IS_LIST_STORE (model));

	if (!text) {

		gtk_combo_box_set_active (combo, -1);

	} else {
		TextSearchData  search_data;

		search_data.text        = text;
		search_data.found       = FALSE;

		gtk_tree_model_foreach (model, search_text_func, &search_data);
		if (search_data.found) {
			gtk_combo_box_set_active_iter (combo,
						       &search_data.iter);
		} else {
			gtk_combo_box_set_active (combo, -1);
		}    

	}

}
コード例 #24
0
void
pluma_encodings_combo_box_set_selected_encoding (PlumaEncodingsComboBox *menu,
						 const PlumaEncoding    *encoding)
{
	GtkTreeIter iter;
	GtkTreeModel *model;
	gboolean b;
	g_return_if_fail (PLUMA_IS_ENCODINGS_COMBO_BOX (menu));
	g_return_if_fail (GTK_IS_COMBO_BOX (menu));

	model = gtk_combo_box_get_model (GTK_COMBO_BOX (menu));
	b = gtk_tree_model_get_iter_first (model, &iter);

	while (b)
	{
		const PlumaEncoding *enc;

		gtk_tree_model_get (model, &iter,
				    ENCODING_COLUMN, &enc,
				    -1);

		if (enc == encoding)
		{
			gtk_combo_box_set_active_iter (GTK_COMBO_BOX (menu),
						       &iter);

			return;
		}

		b = gtk_tree_model_iter_next (model, &iter);
	}
}
コード例 #25
0
ファイル: x_linecapcb.c プロジェクト: SayCV/geda-gaf
/*! \brief Select the given line cap style index
 *
 *  \param [in,out] widget The line cap style combo box
 *  \param [in]     index  The line cap style index to select
 */
void
x_linecapcb_set_index (GtkWidget *widget, int index)
{
  GtkTreeIter *active = NULL;
  GtkTreeIter iter;

  g_return_if_fail (widget != NULL);
  g_return_if_fail (line_cap_list_store != NULL);

  if (index >= 0) {
    gboolean success;
    GValue value = {0};

    success = gtk_tree_model_get_iter_first (GTK_TREE_MODEL (line_cap_list_store), &iter);
    while (success) {
      gtk_tree_model_get_value (GTK_TREE_MODEL (line_cap_list_store), &iter, COLUMN_INDEX, &value);
      if (g_value_get_int (&value) == index) {
        g_value_unset (&value);
        active = &iter;
        break;
      }
      g_value_unset (&value);
      success = gtk_tree_model_iter_next (GTK_TREE_MODEL(line_cap_list_store), &iter);
    }
  }

  gtk_combo_box_set_active_iter (GTK_COMBO_BOX(widget), active);
}
コード例 #26
0
void
gnomegadu_ui_init_statusbar ()
{
	GtkComboBox *combobox = GTK_COMBO_BOX (glade_xml_get_widget (gladexml, "StatusComboBox"));
	GtkListStore *status_store = NULL;
	GtkCellRenderer *render_text, *render_pixbuf;
	GtkTreeIter iter, iter_init;
	GdkPixbuf *pixbuf;

	gtk_cell_layout_clear (GTK_CELL_LAYOUT (combobox));

	status_store = gtk_list_store_new (UI_STATUS_N_COLUMNS, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_INT);

	render_pixbuf = gtk_cell_renderer_pixbuf_new ();
	gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combobox), render_pixbuf, FALSE);
	gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combobox), render_pixbuf, "pixbuf", UI_STATUS_COLUMN_ICON, NULL);

	render_text = gtk_cell_renderer_text_new ();
	gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combobox), render_text, TRUE);
	gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combobox), render_text, "markup", UI_STATUS_COLUMN_NAME, NULL);

	pixbuf = gnomegadu_stock_get_pixbuf ("gnomegadu-user-available");
	gtk_list_store_append (status_store, &iter);
	gtk_list_store_set (status_store, &iter, UI_STATUS_COLUMN_ICON, pixbuf, UI_STATUS_COLUMN_NAME, "Dostępny",
			    UI_STATUS_COLUMN_STATUS, GNOMEGADU_STATUS_AVAIL, -1);
	gdk_pixbuf_unref (pixbuf);

	pixbuf = gnomegadu_stock_get_pixbuf ("gnomegadu-user-away");
	gtk_list_store_append (status_store, &iter);
	gtk_list_store_set (status_store, &iter, UI_STATUS_COLUMN_ICON, pixbuf, UI_STATUS_COLUMN_NAME, "Zajęty",
			    UI_STATUS_COLUMN_STATUS, GNOMEGADU_STATUS_BUSY, -1);
	gdk_pixbuf_unref (pixbuf);

	pixbuf = gnomegadu_stock_get_pixbuf ("gnomegadu-user-invisible");
	gtk_list_store_append (status_store, &iter);
	gtk_list_store_set (status_store, &iter, UI_STATUS_COLUMN_ICON, pixbuf, UI_STATUS_COLUMN_NAME, "Niewidoczny",
			    UI_STATUS_COLUMN_STATUS, GNOMEGADU_STATUS_INVISIBLE, -1);
	gdk_pixbuf_unref (pixbuf);

	pixbuf = gnomegadu_stock_get_pixbuf ("gnomegadu-user-not-available");
	gtk_list_store_append (status_store, &iter_init);
	gtk_list_store_set (status_store, &iter_init, UI_STATUS_COLUMN_ICON, pixbuf, UI_STATUS_COLUMN_NAME, "Niedostępny",
			    UI_STATUS_COLUMN_STATUS, GNOMEGADU_STATUS_UNAVAIL, -1);
	gdk_pixbuf_unref (pixbuf);

	gtk_list_store_append (status_store, &iter);
	gtk_list_store_set (status_store, &iter, UI_STATUS_COLUMN_STATUS, GNOMEGADU_STATUS_UNKNOWN, -1);

	pixbuf = gnomegadu_stock_get_pixbuf ("gnomegadu-description");
	gtk_list_store_append (status_store, &iter);
	gtk_list_store_set (status_store, &iter, UI_STATUS_COLUMN_ICON, pixbuf, UI_STATUS_COLUMN_NAME, "Ustaw opis",
			    UI_STATUS_COLUMN_STATUS, GNOMEGADU_STATUS_DESC, -1);
	gdk_pixbuf_unref (pixbuf);

	gtk_combo_box_set_row_separator_func (combobox, userlist_combo_separator_func, NULL, NULL);

	gtk_combo_box_set_model (combobox, GTK_TREE_MODEL (status_store));
	gtk_combo_box_set_active_iter (combobox, &iter_init);
	g_object_unref (status_store);
}
コード例 #27
0
void
connection_combo_set_value (GtkComboBox *combo,
			    const gchar *method)
{
  GtkTreeModel *model;
  GtkTreeIter iter;
  gboolean valid;
  gchar *elem_method;

  g_return_if_fail (method != NULL);

  model = gtk_combo_box_get_model (combo);
  valid = gtk_tree_model_get_iter_first (model, &iter);

  while (valid)
    {
      gtk_tree_model_get (model, &iter, 1, &elem_method, -1);

      if (strcmp (elem_method, method) == 0)
	{
	  gtk_combo_box_set_active_iter (combo, &iter);
	  valid = FALSE;
	}
      else
	valid = gtk_tree_model_iter_next (model, &iter);

      g_free (elem_method);
    }
}
コード例 #28
0
static void
configure_combo_box_set_active (GtkComboBox *combo_box, const gchar *value)
{
	GtkTreeRowReference *reference;
	GHashTable *index;

	index = g_object_get_data (G_OBJECT (combo_box), "index");
	g_return_if_fail (index != NULL);

	reference = g_hash_table_lookup (index, value);
	if (reference != NULL) {
		GtkTreeModel *model;
		GtkTreePath *path;
		GtkTreeIter iter;

		model = gtk_tree_row_reference_get_model (reference);
		path = gtk_tree_row_reference_get_path (reference);

		if (path == NULL)
			return;

		if (gtk_tree_model_get_iter (model, &iter, path))
			gtk_combo_box_set_active_iter (combo_box, &iter);

		gtk_tree_path_free (path);
	}
}
コード例 #29
0
ファイル: views.c プロジェクト: BYC/geany-plugins
void view_command_line(const gchar *text, const gchar *title, const gchar *seek,
	gboolean seek_after)
{
	GtkTextIter start, end;

	gtk_window_set_title(GTK_WINDOW(command_dialog), title ? title : _("GDB Command"));
	gtk_widget_grab_focus(command_view);

	if (text)
	{
		const gchar *pos = seek ? strstr(text, seek) : NULL;
		GtkTextIter iter;

		gtk_text_buffer_set_text(command_text, text, -1);
		gtk_text_buffer_get_iter_at_offset(command_text, &iter,
			g_utf8_strlen(text, pos ? pos + strlen(seek) * seek_after - text : -1));
		gtk_text_buffer_place_cursor(command_text, &iter);
	}

	on_command_text_changed(command_text, NULL);
	command_line_update_state(debug_state());
	gtk_text_buffer_get_start_iter(command_text, &start);
	gtk_text_buffer_get_end_iter(command_text, &end);
	gtk_text_buffer_select_range(command_text, &start, &end);
	gtk_combo_box_set_active_iter(command_history, NULL);
	gtk_dialog_run(GTK_DIALOG(command_dialog));
}
コード例 #30
0
ファイル: float_section.c プロジェクト: jphaenlin/Petri-Foo
void float_section_set_patch(FloatSection* self, int patch_id)
{
    FloatSectionPrivate* p = FLOAT_SECTION_GET_PRIVATE(self);

    float   assign;
    int     modsrc;
    float   mod_amt;

    GtkTreeIter moditer;

    p->patch_id = patch_id;

    if (patch_id < 0)
        return;

    patch_float_get_all(patch_id, p->float_type,    &assign,
                                                    &mod_amt,
                                                    &modsrc);
    block(p);

    phin_slider_set_value(PHIN_SLIDER(p->floatval), assign);
    phin_slider_set_value(PHIN_SLIDER(p->mod_amt), mod_amt);

    if (!mod_src_combo_get_iter_with_id(GTK_COMBO_BOX(p->mod_combo),
                                        modsrc,
                                        &moditer))
    {
        debug("failed to get mod source id from combo box\n");
    }

    gtk_combo_box_set_active_iter(GTK_COMBO_BOX(p->mod_combo), &moditer);

    unblock(p);
}