[gnome-commander/gcmd-1-3] Fixed problem with editing connections to Windows network
- From: Piotr Eljasiak <epiotr src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gnome-commander/gcmd-1-3] Fixed problem with editing connections to Windows network
- Date: Sun, 17 Jan 2010 18:57:46 +0000 (UTC)
commit f9352e8c76924b4773dabed06d2a1781087709d9
Author: Piotr Eljasiak <epiotr src gnome org>
Date: Sun Jan 17 19:54:03 2010 +0100
Fixed problem with editing connections to Windows network
src/gnome-cmd-con-dialog.cc | 40 ++++++++++++++++++++++++++++++++++++----
1 files changed, 36 insertions(+), 4 deletions(-)
---
diff --git a/src/gnome-cmd-con-dialog.cc b/src/gnome-cmd-con-dialog.cc
index 31b9212..3db7399 100644
--- a/src/gnome-cmd-con-dialog.cc
+++ b/src/gnome-cmd-con-dialog.cc
@@ -624,10 +624,42 @@ gboolean gnome_cmd_connect_dialog_edit (GnomeCmdConFtp *server)
gtk_entry_set_text (GTK_ENTRY (conndlg->priv->uri_entry), con->uri);
gtk_entry_set_text (GTK_ENTRY (conndlg->priv->server_entry), gnome_vfs_uri_get_host_name (uri));
- // gtk_entry_set_text (GTK_ENTRY (conndlg->priv->share_entry), ???);
- gtk_entry_set_text (GTK_ENTRY (conndlg->priv->folder_entry), gnome_vfs_uri_get_path (uri));
- // gtk_entry_set_text (GTK_ENTRY (conndlg->priv->domain_entry), ???);
- gtk_entry_set_text (GTK_ENTRY (conndlg->priv->user_entry), gnome_vfs_uri_get_user_name (uri));
+
+ const gchar *path = gnome_vfs_uri_get_path (uri);
+ const gchar *user_name = gnome_vfs_uri_get_user_name (uri);
+
+ if (con->method==CON_SMB)
+ {
+ gchar **a = g_strsplit (path, "/", 3);
+
+ if (g_strv_length (a) > 2)
+ {
+ gtk_entry_set_text (GTK_ENTRY (conndlg->priv->share_entry), a[1]);
+ gtk_entry_set_text (GTK_ENTRY (conndlg->priv->folder_entry), a[2]);
+ }
+ else
+ gtk_entry_set_text (GTK_ENTRY (conndlg->priv->folder_entry), path);
+
+ g_strfreev(a);
+
+ a = g_strsplit (user_name, ";", 2);
+
+ if (g_strv_length (a) > 1)
+ {
+ gtk_entry_set_text (GTK_ENTRY (conndlg->priv->domain_entry), a[0]);
+ gtk_entry_set_text (GTK_ENTRY (conndlg->priv->user_entry), a[1]);
+ }
+ else
+ gtk_entry_set_text (GTK_ENTRY (conndlg->priv->user_entry), user_name);
+
+ g_strfreev(a);
+ }
+ else
+ {
+ gtk_entry_set_text (GTK_ENTRY (conndlg->priv->folder_entry), path);
+ gtk_entry_set_text (GTK_ENTRY (conndlg->priv->user_entry), user_name);
+ }
+
gtk_entry_set_text (GTK_ENTRY (conndlg->priv->password_entry), gnome_vfs_uri_get_password (uri));
guint port = gnome_vfs_uri_get_host_port (uri);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]