gnome-commander r1616 - in branches/gcmd-1-3: . doc/C src
- From: epiotr svn gnome org
- To: svn-commits-list gnome org
- Subject: gnome-commander r1616 - in branches/gcmd-1-3: . doc/C src
- Date: Tue, 4 Mar 2008 18:07:47 +0000 (GMT)
Author: epiotr
Date: Tue Mar 4 18:07:46 2008
New Revision: 1616
URL: http://svn.gnome.org/viewvc/gnome-commander?rev=1616&view=rev
Log:
Added "Start GNOME Commander as root" action to menu and user actions
Modified:
branches/gcmd-1-3/ChangeLog
branches/gcmd-1-3/doc/C/gnome-commander.xml
branches/gcmd-1-3/src/gnome-cmd-main-menu.cc
branches/gcmd-1-3/src/gnome-cmd-main-win.cc
branches/gcmd-1-3/src/gnome-cmd-user-actions.cc
branches/gcmd-1-3/src/gnome-cmd-user-actions.h
Modified: branches/gcmd-1-3/doc/C/gnome-commander.xml
==============================================================================
--- branches/gcmd-1-3/doc/C/gnome-commander.xml (original)
+++ branches/gcmd-1-3/doc/C/gnome-commander.xml Tue Mar 4 18:07:46 2008
@@ -4195,6 +4195,15 @@
<entry><para></para></entry>
</row>
<row valign="top">
+ <entry><para>command.root_mode</para></entry>
+ <entry><para>Start &app; in root mode at the same location</para></entry>
+ <warning>
+ <para>Be careful while running &app; with root privileges
+ as you may damage your system.</para>
+ </warning>
+ <entry><para></para></entry>
+ </row>
+ <row valign="top">
<entry><para>connections.close</para></entry>
<entry><para>Disconnect from remote server</para></entry>
<entry><para><keycombo><keycap>CTRL</keycap><keycap>SHIFT</keycap><keycap>F</keycap></keycombo></para></entry>
Modified: branches/gcmd-1-3/src/gnome-cmd-main-menu.cc
==============================================================================
--- branches/gcmd-1-3/src/gnome-cmd-main-menu.cc (original)
+++ branches/gcmd-1-3/src/gnome-cmd-main-menu.cc Tue Mar 4 18:07:46 2008
@@ -479,6 +479,13 @@
},
MENUTYPE_SEPARATOR,
{
+ MENU_TYPE_ITEM, _("Start _GNOME Commander as Root"), "", NULL,
+ (gpointer) command_root_mode, NULL,
+ GNOME_APP_PIXMAP_STOCK, GTK_STOCK_DIALOG_AUTHENTICATION,
+ NULL
+ },
+ MENUTYPE_SEPARATOR,
+ {
MENU_TYPE_ITEM, _("_Quit"), "Ctrl+Q", NULL,
(gpointer) file_exit, NULL,
GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_QUIT,
Modified: branches/gcmd-1-3/src/gnome-cmd-main-win.cc
==============================================================================
--- branches/gcmd-1-3/src/gnome-cmd-main-win.cc (original)
+++ branches/gcmd-1-3/src/gnome-cmd-main-win.cc Tue Mar 4 18:07:46 2008
@@ -761,7 +761,8 @@
mw->priv->file_selector[LEFT] = NULL;
mw->priv->file_selector[RIGHT] = NULL;
- gnome_app_construct (GNOME_APP (main_win), "gnome-commander", "GNOME Commander");
+ gnome_app_construct (GNOME_APP (main_win), "gnome-commander", geteuid() ? _("GNOME Commander") :
+ _("GNOME Commander - ROOT PRIVILEGES"));
gtk_object_set_data (GTK_OBJECT (main_win), "main_win", main_win);
restore_size_and_pos (mw);
gtk_window_set_policy (GTK_WINDOW (main_win), TRUE, TRUE, FALSE);
Modified: branches/gcmd-1-3/src/gnome-cmd-user-actions.cc
==============================================================================
--- branches/gcmd-1-3/src/gnome-cmd-user-actions.cc (original)
+++ branches/gcmd-1-3/src/gnome-cmd-user-actions.cc Tue Mar 4 18:07:46 2008
@@ -208,6 +208,7 @@
actions.add(bookmarks_edit, "bookmarks.edit");
actions.add(bookmarks_goto, "bookmarks.goto");
actions.add(command_open_terminal, "command.open_terminal");
+ actions.add(command_root_mode, "command.root_mode");
actions.add(connections_close_current, "connections.close");
actions.add(connections_new, "connections.new");
actions.add(connections_open, "connections.open");
@@ -939,6 +940,37 @@
}
+void command_root_mode (GtkMenuItem *menuitem, gpointer not_used)
+{
+ char *su;
+
+ su = g_find_program_in_path ("gksudo");
+ if (!su)
+ su = g_find_program_in_path ("gksu");
+ if (!su)
+ su = g_find_program_in_path ("kdesu");
+
+ if (!su)
+ {
+ gnome_cmd_show_message (NULL, _("gksu or kdesu is not found."));
+ return ;
+ }
+
+ char *argv[3];
+
+ argv[0] = su;
+ argv[1] = g_get_prgname ();
+ argv[2] = NULL;
+
+ GError *error = NULL;
+
+ if (!g_spawn_async (NULL, argv, NULL, GSpawnFlags (G_SPAWN_STDOUT_TO_DEV_NULL | G_SPAWN_STDERR_TO_DEV_NULL), NULL, NULL, NULL, &error))
+ gnome_cmd_error_message (_("Unable to start GNOME Commander in root mode."), error);
+
+ g_free (su);
+}
+
+
/************** Mark Menu **************/
void mark_toggle (GtkMenuItem *menuitem, gpointer not_used)
{
Modified: branches/gcmd-1-3/src/gnome-cmd-user-actions.h
==============================================================================
--- branches/gcmd-1-3/src/gnome-cmd-user-actions.h (original)
+++ branches/gcmd-1-3/src/gnome-cmd-user-actions.h Tue Mar 4 18:07:46 2008
@@ -134,6 +134,7 @@
/************** Command Menu **************/
GNOME_CMD_USER_ACTION(command_open_terminal);
+GNOME_CMD_USER_ACTION(command_root_mode);
/************** View Menu **************/
GNOME_CMD_USER_ACTION(view_conbuttons);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]