[Goodies-commits] r2689 - xfce4-quicklauncher-plugin/trunk/panel-plugin

Masse Nicolas bountykiller at xfce.org
Sun Apr 15 22:55:09 CEST 2007


Author: bountykiller
Date: 2007-04-15 20:55:09 +0000 (Sun, 15 Apr 2007)
New Revision: 2689

Modified:
   xfce4-quicklauncher-plugin/trunk/panel-plugin/callbacks.c
   xfce4-quicklauncher-plugin/trunk/panel-plugin/main.c
   xfce4-quicklauncher-plugin/trunk/panel-plugin/types.h
Log:
- add a name field different from the command



Modified: xfce4-quicklauncher-plugin/trunk/panel-plugin/callbacks.c
===================================================================
--- xfce4-quicklauncher-plugin/trunk/panel-plugin/callbacks.c	2007-04-15 02:13:26 UTC (rev 2688)
+++ xfce4-quicklauncher-plugin/trunk/panel-plugin/callbacks.c	2007-04-15 20:55:09 UTC (rev 2689)
@@ -48,7 +48,9 @@
 void on_chk_labels_clicked(GtkToggleButton *togglebutton, gpointer user_data);
 void on_chk_tooltip_clicked(GtkToggleButton *togglebutton, gpointer user_data);
 void cmd_changed(GtkCellRendererText *cellrenderertext, gchar *arg1,
-								gchar *arg2, gpointer user_data);
+				 gchar *arg2, gpointer user_data);
+void name_changed(GtkCellRendererText *cellrenderertext, gchar *arg1, 
+				 gchar *arg2, gpointer user_data);
 //void on_tree_reorder(GtkTreeModel *treemodel, GtkTreePath *arg1, GtkTreeIter *arg2,
 //                                	gpointer arg3, gpointer user_data);
 void  file_chooser_preview_img (FileChooser *chooser, gpointer user_data);
@@ -111,7 +113,7 @@
   gtk_widget_show (_dlg->treeview1);
   gtk_container_add (GTK_CONTAINER (_dlg->scrolledwindow1), _dlg->treeview1);
   gtk_container_set_border_width (GTK_CONTAINER (_dlg->treeview1), 3);
-  gtk_widget_set_size_request(_dlg->treeview1, 200, 150);
+  gtk_widget_set_size_request(_dlg->treeview1, 250, 150);
   
   _dlg->chk_tooltip = gtk_check_button_new_with_label(_("afficher les tooltips"));
   gtk_widget_show (_dlg->chk_tooltip);
@@ -185,7 +187,8 @@
 	t_launcher *launcher;
 
 	_dlg->quicklauncher = quicklauncher;
-	treemodel  = GTK_TREE_MODEL(gtk_list_store_new(3, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_POINTER));
+	treemodel  = GTK_TREE_MODEL(gtk_list_store_new(4, GDK_TYPE_PIXBUF, G_TYPE_STRING,
+													  G_TYPE_STRING, G_TYPE_POINTER));
 	gtk_tree_view_set_model(GTK_TREE_VIEW(_dlg->treeview1), treemodel);
 	gtk_tree_view_set_reorderable (GTK_TREE_VIEW (_dlg->treeview1), FALSE);//==>does not manage reordering
 	gtk_spin_button_set_value(GTK_SPIN_BUTTON(_dlg->spin1), (gdouble)quicklauncher->nb_lines);
@@ -205,6 +208,11 @@
 	column = gtk_tree_view_column_new_with_attributes(_("commande"), render, "text", 1,  NULL);
 	gtk_tree_view_append_column(GTK_TREE_VIEW(_dlg->treeview1), column);
 
+	render = gtk_cell_renderer_text_new();
+	g_object_set (G_OBJECT(render),"editable", TRUE, NULL);
+	g_signal_connect(render, "edited", G_CALLBACK (name_changed), NULL);
+	column = gtk_tree_view_column_new_with_attributes(_("nom"), render, "text", 2,  NULL);
+	gtk_tree_view_append_column(GTK_TREE_VIEW(_dlg->treeview1), column);
 	//load current config
 	for( i = g_list_last(quicklauncher->launchers); i != NULL; i = g_list_previous(i) )
 	{
@@ -212,7 +220,7 @@
 		gtk_list_store_insert(GTK_LIST_STORE(treemodel), &iter, 0);
 		pixbuf = _create_pixbuf(launcher->icon_id, launcher->icon_name, 16);
 		gtk_list_store_set(GTK_LIST_STORE(treemodel), &iter, 0, pixbuf,
-									 1,  launcher->command, 2, (gpointer)launcher, -1);
+							1,  launcher->command, 2, launcher->name, 3,(gpointer)launcher, -1);
 		UNREF(pixbuf);
 	}
 	g_signal_connect(_dlg->treeview1, "row-activated",
@@ -383,7 +391,7 @@
 	GdkPixbuf *pixbuf;
 	t_launcher *launcher; 
 	
-	launcher = launcher_new(NULL, XFCE_ICON_CATEGORY_UNKNOWN, NULL, _dlg->quicklauncher);
+	launcher = launcher_new(NULL, NULL, XFCE_ICON_CATEGORY_UNKNOWN, NULL, _dlg->quicklauncher);
 	treemodel = gtk_tree_view_get_model(GTK_TREE_VIEW(_dlg->treeview1));
 	gtk_list_store_insert(GTK_LIST_STORE(treemodel), &iter, INT_MAX); //INT_MAX must be enough ;-)
 	pixbuf = xfce_themed_icon_load_category(XFCE_ICON_CATEGORY_UNKNOWN, 16);
@@ -509,6 +517,12 @@
 		launcher->command = (gchar*) g_malloc(sizeof(gchar) * (strlen(arg2)+1));
 		strcpy(launcher->command, arg2);
 		gtk_list_store_set(GTK_LIST_STORE(treemodel), &iter, 1, launcher->command, -1);
+		if(!launcher->name)
+		{
+			launcher->name = (gchar*) g_malloc(sizeof(gchar) * (strlen(arg2)+1));
+			strcpy(launcher->name, arg2);
+			gtk_list_store_set(GTK_LIST_STORE(treemodel), &iter, 2, launcher->name, -1);
+		}
 		launcher_set_has_tooltip(launcher, _dlg->quicklauncher->has_tooltips);
 		launcher_set_has_label(launcher, _dlg->quicklauncher->has_labels);
 		gtk_tree_path_free(path);
@@ -516,6 +530,32 @@
 }
 
 
+void name_changed(GtkCellRendererText *cellrenderertext, gchar *arg1, gchar *arg2, gpointer user_data)
+{
+	GtkTreeSelection *sel;
+	GtkTreeModel *treemodel;
+	GtkTreePath *path;
+	gint *indice;
+	GtkTreeIter iter;
+	t_launcher *launcher;
+
+	sel = gtk_tree_view_get_selection( GTK_TREE_VIEW(_dlg->treeview1) );
+	if ( gtk_tree_selection_get_selected(sel, &treemodel, &iter) )
+	{
+		path = gtk_tree_model_get_path(treemodel, &iter);
+		indice = gtk_tree_path_get_indices(path);
+		launcher = (t_launcher*) (g_list_nth(_dlg->quicklauncher->launchers,  indice[0]))->data;
+		g_free(launcher->name);
+		launcher->name = (gchar*) g_malloc(sizeof(gchar) * (strlen(arg2)+1));
+		strcpy(launcher->name, arg2);
+		gtk_list_store_set(GTK_LIST_STORE(treemodel), &iter, 2, launcher->name, -1);
+		launcher_set_has_tooltip(launcher, _dlg->quicklauncher->has_tooltips);
+		launcher_set_has_label(launcher, _dlg->quicklauncher->has_labels);
+		gtk_tree_path_free(path);
+	}
+}
+
+
 void  file_chooser_preview_img (FileChooser *chooser, gpointer user_data)
 {
 	gchar *filename;

Modified: xfce4-quicklauncher-plugin/trunk/panel-plugin/main.c
===================================================================
--- xfce4-quicklauncher-plugin/trunk/panel-plugin/main.c	2007-04-15 02:13:26 UTC (rev 2688)
+++ xfce4-quicklauncher-plugin/trunk/panel-plugin/main.c	2007-04-15 20:55:09 UTC (rev 2689)
@@ -304,16 +304,16 @@
 	quicklauncher->has_labels = FALSE;
 	quicklauncher->has_tooltips = TRUE;
 
-	launcher = launcher_new("xflock4", XFCE_ICON_CATEGORY_SYSTEM,
+	launcher = launcher_new(_("Lock"), "xflock4", XFCE_ICON_CATEGORY_SYSTEM,
 							NULL, quicklauncher);
 	quicklauncher_add_element(quicklauncher, launcher);
-	launcher = launcher_new("xfce-setting-show", XFCE_ICON_CATEGORY_SETTINGS,
+	launcher = launcher_new(_("Parameters"),"xfce-setting-show", XFCE_ICON_CATEGORY_SETTINGS,
 							NULL, quicklauncher);
 	quicklauncher_add_element(quicklauncher, launcher);
-	launcher = launcher_new("xfce4-appfinder", XFCE_ICON_CATEGORY_UTILITY,
+	launcher = launcher_new(_("Applications"), "xfce4-appfinder", XFCE_ICON_CATEGORY_UTILITY,
 							NULL, quicklauncher);
 	quicklauncher_add_element(quicklauncher, launcher);
-	launcher = launcher_new("xfhelp4", XFCE_ICON_CATEGORY_HELP,
+	launcher = launcher_new(_("Help"), "xfhelp4", XFCE_ICON_CATEGORY_HELP,
 							NULL, quicklauncher);
 	quicklauncher_add_element(quicklauncher, launcher);
 	//g_return_if_fail(quicklauncher->nb_launcher == 4);
@@ -502,7 +502,7 @@
 	if(has_tooltip)
 	{
 		launcher->tooltip =  g_object_ref_sink(gtk_tooltips_new());
-		gtk_tooltips_set_tip(launcher->tooltip, launcher->box, launcher->command, launcher->command);
+		gtk_tooltips_set_tip(launcher->tooltip, launcher->box, launcher->name, launcher->command);
 	}
 	else
 		launcher->tooltip = NULL;
@@ -516,7 +516,7 @@
 		gtk_widget_destroy(launcher->label);
 	if(has_label)
 	{
-		launcher->label = gtk_label_new(launcher->command);
+		launcher->label = gtk_label_new(launcher->name);
 		gtk_box_pack_end(GTK_BOX(launcher->hbox), launcher->label, FALSE, FALSE, 0);
 		gtk_widget_show(launcher->label);
 		gtk_widget_set_size_request(launcher->box, -1, launcher->quicklauncher->icon_size); 
@@ -551,11 +551,13 @@
 }
 
 
-t_launcher *launcher_new (const gchar *command, gint icon_id, const gchar *icon_name, 
-							t_quicklauncher* quicklauncher)
+t_launcher *launcher_new (const gchar *name, const gchar *command, gint icon_id,
+						const gchar *icon_name, t_quicklauncher* quicklauncher)
 {
 	t_launcher *launcher;
 	launcher = g_new0 (t_launcher, 1);
+	if(name)
+		launcher->name= g_strdup(name);
 	if(command)
 		launcher->command = g_strdup(command);
 	else launcher->command = NULL;
@@ -590,7 +592,8 @@
 	t_launcher *launcher;
 	g_sprintf(group, "launcher_%d%c", num,0);
 	xfce_rc_set_group(rcfile, group);
-	launcher = launcher_new(xfce_rc_read_entry(rcfile, "command", NULL),
+	launcher = launcher_new(xfce_rc_read_entry(rcfile, "name", NULL),
+							xfce_rc_read_entry(rcfile, "command", NULL),
 							xfce_rc_read_int_entry(rcfile, "icon_id", 0),
 							xfce_rc_read_entry(rcfile, "icon_name", NULL),
 							quicklauncher);
@@ -607,6 +610,8 @@
 	xfce_rc_set_group(rcfile, group);
 	if(launcher->command)
 		xfce_rc_write_entry(rcfile, "command", launcher->command);
+	if(launcher->name)
+		xfce_rc_write_entry(rcfile, "name", launcher->name);
 	if(launcher->icon_name)
 		xfce_rc_write_entry(rcfile, "icon_name", launcher->icon_name);
 	xfce_rc_write_int_entry(rcfile, "icon_id", launcher->icon_id);

Modified: xfce4-quicklauncher-plugin/trunk/panel-plugin/types.h
===================================================================
--- xfce4-quicklauncher-plugin/trunk/panel-plugin/types.h	2007-04-15 02:13:26 UTC (rev 2688)
+++ xfce4-quicklauncher-plugin/trunk/panel-plugin/types.h	2007-04-15 20:55:09 UTC (rev 2689)
@@ -97,6 +97,7 @@
 	GdkPixbuf  *clicked_img;
 	GtkTooltips *tooltip;
 	gchar *command;
+	gchar *name;
 	gchar *icon_name;
 	gint icon_id;
 	t_quicklauncher *quicklauncher;
@@ -106,8 +107,8 @@
 GdkPixbuf *
 _create_pixbuf(gint id, const gchar* name, gint size);
 
-t_launcher* launcher_new (const gchar *command, gint icon_id,
-						const gchar *icon_name, t_quicklauncher *quicklauncher);
+t_launcher *launcher_new (const gchar *name, const gchar *command, gint icon_id,
+						const gchar *icon_name, t_quicklauncher* quicklauncher);
 void launcher_free (t_launcher *launcher);
 void launcher_update_icon(t_launcher *launcher, gint size);
 void launcher_set_has_tooltip(t_launcher *launcher, gboolean has_tooltip);




More information about the Goodies-commits mailing list