- Added Application SSO feature to CASAManager (Linux).

We will be able to add single sign-on information to Konquerer and
  NetworkManager appilcations from within CASAManager.
  Main-Menu: Options > Application SSO.
- Fixed an expection thrown during GnomeKeyring delete secret operation.
- All textboxes in CASAManager have been updated to take not more than
  256 characters (just a small check to avoid buffer-overflows).
This commit is contained in:
smanojna 2006-03-07 13:54:44 +00:00
parent 52f11fa9cd
commit 36e3a1ef20
9 changed files with 4236 additions and 2146 deletions

View File

@ -1,3 +1,14 @@
-------------------------------------------------------------------
Tue Mar 7 19:20:50 IST 2006 - smanojna@novell.com
- Added Application SSO feature to CASAManager (Linux).
We will be able to add single sign-on information to Konquerer and
NetworkManager appilcations from within CASAManager.
Main-Menu: Options > Application SSO.
- Fixed an expection thrown during GnomeKeyring delete secret operation.
- All textboxes in CASAManager have been updated to take not more than
256 characters (just a small check to avoid buffer-overflows).
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Mar 7 15:08:26 IST 2006 - smanojna@novell.com Tue Mar 7 15:08:26 IST 2006 - smanojna@novell.com

File diff suppressed because it is too large Load Diff

View File

@ -35,11 +35,11 @@ using Glade;
public class Common public class Common
{ {
public const int STORE_MICASA = 0, public const int STORE_MICASA = 0,
STORE_FIREFOX = 1, STORE_FIREFOX = 1,
STORE_MOZILLA = 2, STORE_MOZILLA = 2,
STORE_KDEWALLET = 3, STORE_KDEWALLET = 3,
STORE_GNOMEKEYRING = 4; STORE_GNOMEKEYRING = 4;
public static bool IS_MICASA_AVAILABLE = true, public static bool IS_MICASA_AVAILABLE = true,
IS_FIREFOX_AVAILABLE = false, IS_FIREFOX_AVAILABLE = false,
@ -66,10 +66,10 @@ public class Common
public static int MAX_STORES = 10; public static int MAX_STORES = 10;
public static string STORENAME_MICASA = "miCASA", public static string STORENAME_MICASA = "miCASA",
STORENAME_FIREFOX = "Firefox", STORENAME_FIREFOX = "Firefox",
STORENAME_MOZILLA = "Mozilla", STORENAME_MOZILLA = "Mozilla",
STORENAME_KDEWALLET = "KDE KWallet", STORENAME_KDEWALLET = "KDE Wallet",
STORENAME_GNOMEKEYRING = "GNOME Keyring"; STORENAME_GNOMEKEYRING = "GNOME Keyring";
@ -90,8 +90,8 @@ public class Common
public static string NATIVEINFO_FOLDERNAME = "Folder Name"; public static string NATIVEINFO_FOLDERNAME = "Folder Name";
public static string NATIVEINFO_TYPEID = "Type of Secret"; public static string NATIVEINFO_TYPEID = "Type of Secret";
public static string NATIVEINFO_SYNC = "Syncronization Status"; public static string NATIVEINFO_SYNC = "Syncronization Status";
public static string NATIVEINFO_SYNCTYPE = "Syncronization Type"; public static string NATIVEINFO_SYNCTYPE = "Syncronization Type";
public static string NATIVEINFO_MODIFIEDTIME = "Last Modified Time"; public static string NATIVEINFO_MODIFIEDTIME = "Last Modified Time";
public static int INDEX_NATIVEINFO_FOLDERNAME = 0, public static int INDEX_NATIVEINFO_FOLDERNAME = 0,
@ -173,7 +173,7 @@ public class Common
if ( (128 == platform) || (4 == platform) ) if ( (128 == platform) || (4 == platform) )
{ {
IS_LINUX = true; IS_LINUX = true;
GladeFile = "/usr/share/doc/packages/CASA/images/casa.glade"; GladeFile = "/usr/share/doc/packages/CASA/images/casa.glade";
if( !File.Exists(GladeFile) ) if( !File.Exists(GladeFile) )
{ {

View File

@ -20,52 +20,50 @@
* *
***********************************************************************/ ***********************************************************************/
using System; using System;
using Gtk; using Gtk;
using Glade; using Glade;
using Novell.CASA; using Novell.CASA;
using Novell.CASA.MiCasa.Common; using Novell.CASA.MiCasa.Common;
using Novell.CASA.MiCasa.Communication; using Novell.CASA.MiCasa.Communication;
#if W32 #if W32
using Microsoft.Win32; using Microsoft.Win32;
#endif #endif
namespace Novell.CASA.GUI namespace Novell.CASA.GUI
{ {
/// <summary> /// <summary>
/// Summary description for CommonGUI. /// Summary description for CommonGUI.
/// </summary> /// </summary>
public class CommonGUI public class CommonGUI
{ {
[Glade.Widget] [Glade.Widget]
Gtk.Label label86, Gtk.Label label86,
label88; label88;
[Glade.Widget] [Glade.Widget]
Gtk.Entry entryMasterPassword1, Gtk.Entry entryMasterPassword3,
entryMasterPassword2,
entryMasterPassword3,
entryMasterPassword4; entryMasterPassword4;
[Glade.Widget] [Glade.Widget]
Gtk.Dialog dialogLogin; Gtk.Dialog dialogLogin;
Gtk.Window mainWindow = new Window("Test"); Gtk.Window mainWindow = new Window("Test");
private CasaMain mCasaInstance = null; private CasaMain mCasaInstance = null;
private CasaTray mTrayInstance = null; private CasaTray mTrayInstance = null;
public CommonGUI() public CommonGUI()
{ {
// //
// TODO: Add constructor logic here // TODO: Add constructor logic here
// //
} }
/// <summary> /// <summary>
/// HandleUnlock dialog /// HandleUnlock dialog
/// </summary> /// </summary>
public void HandleUnlock(CasaMain managerInstance, CasaTray trayInstance) public void HandleUnlock(CasaMain managerInstance, CasaTray trayInstance)
{ {
@ -79,8 +77,9 @@ namespace Novell.CASA.GUI
Glade.XML gxmlTemp = new Glade.XML ("../images/casa.glade", "dialogLogin", null); Glade.XML gxmlTemp = new Glade.XML ("../images/casa.glade", "dialogLogin", null);
#endif #endif
#if LINUX #if LINUX
Glade.XML gxmlTemp = new Glade.XML ("/usr/share/doc/packages/CASA/images/casa.glade", "dialogLogin", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogLogin", null);
#endif #endif
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
//dialogLogin.TransientFor = windowMain; //dialogLogin.TransientFor = windowMain;
@ -191,84 +190,84 @@ namespace Novell.CASA.GUI
public void on_entryMasterPassword4_activate(object obj, EventArgs args) public void on_entryMasterPassword4_activate(object obj, EventArgs args)
{ {
okbuttonLogin_clicked(obj, args); okbuttonLogin_clicked(obj, args);
} }
private void dialogLogin_Destroyed(object sender, EventArgs e) private void dialogLogin_Destroyed(object sender, EventArgs e)
{ {
bool bStoreLocked = MiCASAStore.IsLocked(); bool bStoreLocked = MiCASAStore.IsLocked();
if (mCasaInstance != null) if (mCasaInstance != null)
{ {
if (bStoreLocked) if (bStoreLocked)
mCasaInstance.LockGUI(); mCasaInstance.LockGUI();
else else
mCasaInstance.UnlockGUI(); mCasaInstance.UnlockGUI();
} }
if (mTrayInstance != null) if (mTrayInstance != null)
{ {
if (bStoreLocked) if (bStoreLocked)
mTrayInstance.UpdateTrayIcon(true); mTrayInstance.UpdateTrayIcon(true);
else else
mTrayInstance.UpdateTrayIcon(false); mTrayInstance.UpdateTrayIcon(false);
} }
} }
#if W32 #if W32
internal static string ReadRegKey(RegistryKey rk, string sSubKey, string KeyName) internal static string ReadRegKey(RegistryKey rk, string sSubKey, string KeyName)
{ {
// Opening the registry key // Opening the registry key
// RegistryKey rk = Registry.Users; // RegistryKey rk = Registry.Users;
// Open a subKey as read-only // Open a subKey as read-only
RegistryKey sk1 = rk.OpenSubKey(sSubKey); RegistryKey sk1 = rk.OpenSubKey(sSubKey);
// If the RegistrySubKey doesn't exist -> (null) // If the RegistrySubKey doesn't exist -> (null)
if ( sk1 == null ) if ( sk1 == null )
{ {
return null; return null;
} }
else else
{ {
try try
{ {
// If the RegistryKey exists I get its value // If the RegistryKey exists I get its value
// or null is returned. // or null is returned.
return (string)sk1.GetValue(KeyName.ToUpper()); return (string)sk1.GetValue(KeyName.ToUpper());
} }
catch (Exception e) catch (Exception e)
{ {
//ShowErrorMessage(e, "Reading registry " + KeyName.ToUpper()); //ShowErrorMessage(e, "Reading registry " + KeyName.ToUpper());
return null; return null;
} }
} }
} }
internal static void WriteRegKey(RegistryKey rk, string sSubKey, string KeyName, string sKeyValue) internal static void WriteRegKey(RegistryKey rk, string sSubKey, string KeyName, string sKeyValue)
{ {
RegistryKey sk1 = rk.OpenSubKey(sSubKey, true); RegistryKey sk1 = rk.OpenSubKey(sSubKey, true);
// If the RegistrySubKey doesn't exist -> (null) // If the RegistrySubKey doesn't exist -> (null)
if ( sk1 == null ) if ( sk1 == null )
{ {
//return null; //return null;
} }
else else
{ {
try try
{ {
// If the RegistryKey exists I get its value // If the RegistryKey exists I get its value
// or null is returned. // or null is returned.
sk1.SetValue(KeyName, sKeyValue); sk1.SetValue(KeyName, sKeyValue);
sk1.Close(); sk1.Close();
} }
catch (Exception e) catch (Exception e)
{ {
sk1.Close(); sk1.Close();
//ShowErrorMessage(e, "Reading registry " + KeyName.ToUpper()); //ShowErrorMessage(e, "Reading registry " + KeyName.ToUpper());
Console.Write(e.ToString()); Console.Write(e.ToString());
//return null; //return null;
} }
} }
} }
#endif #endif
} }
} }

View File

@ -38,9 +38,7 @@ public class Firefox : Store
tsKeyValue; tsKeyValue;
CellRendererText cellEditable; CellRendererText cellEditable;
ArrayList arrDeletedKeys = null;
public bool IS_STORE_AGGREGATED = false; public bool IS_STORE_AGGREGATED = false;
#region Glade Widgets #region Glade Widgets
@ -57,7 +55,6 @@ public class Firefox : Store
[Glade.Widget] [Glade.Widget]
Gtk.Dialog dialogNewSecret, Gtk.Dialog dialogNewSecret,
dialogManageSecret, dialogManageSecret,
dialogConfirmDelete,
dialogLogin; dialogLogin;
[Glade.Widget] [Glade.Widget]
@ -68,8 +65,7 @@ public class Firefox : Store
entryKey, entryKey,
entryValue, entryValue,
entryMasterPassword3, entryMasterPassword3,
entryMasterPassword4, entryMasterPassword4;
entryDeleteSecretID;
[Glade.Widget] [Glade.Widget]
Gtk.CheckButton cbuttonShowPassword; Gtk.CheckButton cbuttonShowPassword;
@ -102,7 +98,7 @@ public class Firefox : Store
Logger.DbgLog("GUI:Firefox.Firefox() - BEGIN"); Logger.DbgLog("GUI:Firefox.Firefox() - BEGIN");
/// SecretID TreeStore /// SecretID TreeStore
tvSecretIDFirefox = (Gtk.TreeView)CasaMain.gxml.GetWidget("tvSecretIDFirefox"); tvSecretIDFirefox = (Gtk.TreeView)CasaMain.gxmlMain.GetWidget("tvSecretIDFirefox");
tsSecretIDFirefox = new TreeStore(typeof(string), typeof(string[]), typeof(string[]), typeof(string), typeof(string[]), typeof(string[])); tsSecretIDFirefox = new TreeStore(typeof(string), typeof(string[]), typeof(string[]), typeof(string), typeof(string[]), typeof(string[]));
tvSecretIDFirefox.AppendColumn("Secret ID",new CellRendererText(),"text",0); tvSecretIDFirefox.AppendColumn("Secret ID",new CellRendererText(),"text",0);
tvSecretIDFirefox.Model = tsSecretIDFirefox; tvSecretIDFirefox.Model = tsSecretIDFirefox;
@ -110,7 +106,7 @@ public class Firefox : Store
tvSecretIDFirefox.ButtonReleaseEvent += new ButtonReleaseEventHandler(OnRightClicked); tvSecretIDFirefox.ButtonReleaseEvent += new ButtonReleaseEventHandler(OnRightClicked);
tvSecretIDFirefox.CursorChanged += new EventHandler(OnCursorChanged); tvSecretIDFirefox.CursorChanged += new EventHandler(OnCursorChanged);
/// NativeInfo TreeStore /// NativeInfo TreeStore
tvNativeInfoFirefox = (Gtk.TreeView)CasaMain.gxml.GetWidget("tvNativeInfoFirefox"); tvNativeInfoFirefox = (Gtk.TreeView)CasaMain.gxmlMain.GetWidget("tvNativeInfoFirefox");
tsNativeInfoFirefox = new TreeStore(typeof(string), typeof(string)); tsNativeInfoFirefox = new TreeStore(typeof(string), typeof(string));
tvNativeInfoFirefox.AppendColumn("NativeKey",new CellRendererText(),"text",0); tvNativeInfoFirefox.AppendColumn("NativeKey",new CellRendererText(),"text",0);
tvNativeInfoFirefox.AppendColumn("NativeValue",new CellRendererText(),"text",1); tvNativeInfoFirefox.AppendColumn("NativeValue",new CellRendererText(),"text",1);
@ -131,7 +127,7 @@ public class Firefox : Store
try try
{ {
tsSecretIDFirefox.Clear(); tsSecretIDFirefox.Clear();
tsNativeInfoFirefox.Clear(); tsNativeInfoFirefox.Clear();
StoreDataInterface.AggregateStore(Common.STORE_FIREFOX); StoreDataInterface.AggregateStore(Common.STORE_FIREFOX);
StoreDataInterface.ReadStore(Common.STORE_FIREFOX,ref tsSecretIDFirefox); StoreDataInterface.ReadStore(Common.STORE_FIREFOX,ref tsSecretIDFirefox);
@ -235,7 +231,7 @@ public class Firefox : Store
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogManageSecret", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogManageSecret", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogManageSecret.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("windowMain"); dialogManageSecret.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
dialogManageSecret.Title = "Firefox - Manage Secret"; dialogManageSecret.Title = "Firefox - Manage Secret";
cellEditable = new CellRendererText(); cellEditable = new CellRendererText();
@ -253,7 +249,7 @@ public class Firefox : Store
{ {
if( (null != keys[i]) && (null != values[i]) ) if( (null != keys[i]) && (null != values[i]) )
tsKeyValue.AppendValues(keys[i], values[i], "********", false, "No"); tsKeyValue.AppendValues(keys[i], values[i], "********", false, "No");
//Console.WriteLine("Keys="+keys[i]+" , "+"Values="+values[i]); Console.WriteLine("Keys="+keys[i]+" , "+"Values="+values[i]);
} }
tvKeyValue.Model = tsKeyValue; tvKeyValue.Model = tsKeyValue;
//entryKey.HasFocus = true; //entryKey.HasFocus = true;
@ -283,7 +279,7 @@ public class Firefox : Store
} }
/// <summary> /// <summary>
/// MANAGE SECRET-ID DIALOG OK-BUTTON CLICKED /// MANAGE SECRET ID DIALOG OK-BUTTON CLICKED
/// </summary> /// </summary>
public void on_buttonManageOk_clicked(object obj, EventArgs args) public void on_buttonManageOk_clicked(object obj, EventArgs args)
{ {
@ -292,7 +288,7 @@ public class Firefox : Store
} }
/// <summary> /// <summary>
/// MANAGE SECRET-ID DIALOG CANCEL-BUTTON CLICKED /// MANAGE SECRET ID DIALOG CANCEL-BUTTON CLICKED
/// </summary> /// </summary>
public void on_buttonManageCancel_clicked(object obj, EventArgs args) public void on_buttonManageCancel_clicked(object obj, EventArgs args)
{ {
@ -404,18 +400,9 @@ public class Firefox : Store
} }
} }
private void md_Response(object o, ResponseArgs args)
{
MessageDialog md = (MessageDialog)o;
if (md != null)
{
md.Destroy();
}
}
/// <summary> /// <summary>
/// SECRET-ID DOUBLE CLICKED /// SECRET ID DOUBLE CLICKED
/// </summary> /// </summary>
private void OntvSecretIDFirefoxRowActivated( object obj, RowActivatedArgs args ) private void OntvSecretIDFirefoxRowActivated( object obj, RowActivatedArgs args )
{ {

View File

@ -26,8 +26,8 @@ namespace Novell.CASA.GUI {
using System; using System;
using System.Collections; using System.Collections;
using System.Collections.Specialized; using System.Collections.Specialized;
using Gtk;
using Glade; using Glade;
using Gtk;
using Novell.CASA.MiCasa.Common; using Novell.CASA.MiCasa.Common;
using Novell.CASA.MiCasa.Communication; using Novell.CASA.MiCasa.Communication;
@ -45,6 +45,10 @@ public class GnomeKeyring : Store
public bool IS_STORE_AGGREGATED = false; public bool IS_STORE_AGGREGATED = false;
string[] stringNetworkManagerServerType = new string[]{ "SSH",
"FTP (with login)",
"Windows share" };
#region Glade Widgets #region Glade Widgets
[Glade.Widget] [Glade.Widget]
@ -58,9 +62,11 @@ public class GnomeKeyring : Store
[Glade.Widget] [Glade.Widget]
Gtk.Dialog dialogNewSecret, Gtk.Dialog dialogNewSecret,
dialogManageSecret, dialogManageSecret,
dialogConfirmDelete, dialogConfirmDelete,
dialogLogin; dialogLogin,
dialogNetworkManager,
dialogGaim;
[Glade.Widget] [Glade.Widget]
Gtk.Menu menuRightClick; Gtk.Menu menuRightClick;
@ -71,29 +77,37 @@ public class GnomeKeyring : Store
entryValue, entryValue,
entryMasterPassword3, entryMasterPassword3,
entryMasterPassword4, entryMasterPassword4,
entryDeleteSecretID; entryDeleteSecretID,
entryNetworkManagerCName,
entryNetworkManagerServer,
entryNetworkManagerUsername,
entryNetworkManagerPassword,
entryNetworkManagerFolder,
entryNetworkManagerPort,
entryNetworkManagerShare,
entryNetworkManagerDomain;
[Glade.Widget] [Glade.Widget]
Gtk.CheckButton cbuttonShowPassword; Gtk.CheckButton cbuttonShowPassword;
[Glade.Widget] [Glade.Widget]
Gtk.Label label86, Gtk.Label label86,
label88; label88,
labelNetworkManagerPort,
[Glade.Widget] labelNetworkManagerShare,
Gtk.Button buttonNewAdd, labelNetworkManagerDomain;
buttonNewRemove;
[Glade.Widget] [Glade.Widget]
Gtk.MenuItem cmiNewSecret, Gtk.MenuItem cmiNewKey,
cmiNewKey,
cmiDelete, cmiDelete,
cmiView, cmiView,
cmiLink, cmiLink,
cmiCopy; cmiCopy;
[Glade.Widget]
Combo comboNetworkManager;
#endregion #endregion
///####################################################################### ///#######################################################################
@ -107,15 +121,15 @@ public class GnomeKeyring : Store
Logger.DbgLog("GUI:GnomeKeyring.GnomeKeyring() - BEGIN"); Logger.DbgLog("GUI:GnomeKeyring.GnomeKeyring() - BEGIN");
/// SecretID TreeStore /// SecretID TreeStore
tvSecretIDGnomeKeyring = (Gtk.TreeView)CasaMain.gxml.GetWidget("tvSecretIDGnomeKeyring"); tvSecretIDGnomeKeyring = (Gtk.TreeView)CasaMain.gxmlMain.GetWidget("tvSecretIDGnomeKeyring");
tsSecretIDGnomeKeyring = new TreeStore(typeof(string), typeof(string[]), typeof(string[]), typeof(string), typeof(string[]), typeof(string[])); tsSecretIDGnomeKeyring = new TreeStore(typeof(string), typeof(string[]), typeof(string[]), typeof(string), typeof(string[]), typeof(string[]));
tvSecretIDGnomeKeyring.AppendColumn("Secret-ID",new CellRendererText(),"text",0); tvSecretIDGnomeKeyring.AppendColumn("Secret ID",new CellRendererText(),"text",0);
tvSecretIDGnomeKeyring.Model = tsSecretIDGnomeKeyring; tvSecretIDGnomeKeyring.Model = tsSecretIDGnomeKeyring;
tvSecretIDGnomeKeyring.RowActivated += new RowActivatedHandler(OntvSecretIDGnomeKeyringRowActivated); tvSecretIDGnomeKeyring.RowActivated += new RowActivatedHandler(OntvSecretIDGnomeKeyringRowActivated);
tvSecretIDGnomeKeyring.ButtonReleaseEvent += new ButtonReleaseEventHandler(OnRightClicked); tvSecretIDGnomeKeyring.ButtonReleaseEvent += new ButtonReleaseEventHandler(OnRightClicked);
tvSecretIDGnomeKeyring.CursorChanged += new EventHandler(OnCursorChanged); tvSecretIDGnomeKeyring.CursorChanged += new EventHandler(OnCursorChanged);
/// NativeInfo TreeStore /// NativeInfo TreeStore
tvNativeInfoGnomeKeyring = (Gtk.TreeView)CasaMain.gxml.GetWidget("tvNativeInfoGnomeKeyring"); tvNativeInfoGnomeKeyring = (Gtk.TreeView)CasaMain.gxmlMain.GetWidget("tvNativeInfoGnomeKeyring");
tsNativeInfoGnomeKeyring = new TreeStore(typeof(string), typeof(string)); tsNativeInfoGnomeKeyring = new TreeStore(typeof(string), typeof(string));
tvNativeInfoGnomeKeyring.AppendColumn("NativeKey",new CellRendererText(),"text",0); tvNativeInfoGnomeKeyring.AppendColumn("NativeKey",new CellRendererText(),"text",0);
tvNativeInfoGnomeKeyring.AppendColumn("NativeValue",new CellRendererText(),"text",1); tvNativeInfoGnomeKeyring.AppendColumn("NativeValue",new CellRendererText(),"text",1);
@ -255,7 +269,7 @@ public class GnomeKeyring : Store
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogManageSecret", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogManageSecret", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogManageSecret.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("windowMain"); dialogManageSecret.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
dialogManageSecret.Title = "GNOME Keyring - Manage Secret"; dialogManageSecret.Title = "GNOME Keyring - Manage Secret";
cellEditable = new CellRendererText(); cellEditable = new CellRendererText();
@ -642,7 +656,7 @@ public class GnomeKeyring : Store
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogNewSecret", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogNewSecret", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogNewSecret.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("windowMain"); dialogNewSecret.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
dialogNewSecret.Title = "GNOME Keyring - New Secret"; dialogNewSecret.Title = "GNOME Keyring - New Secret";
cellEditable = new CellRendererText(); cellEditable = new CellRendererText();
@ -832,8 +846,8 @@ public class GnomeKeyring : Store
{ {
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogConfirmDelete", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogConfirmDelete", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogConfirmDelete.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("windowMain"); dialogConfirmDelete.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
dialogNewSecret.Title = "GNOME Keyring - Delete Secret"; dialogConfirmDelete.Title = "GNOME Keyring - Delete Secret";
TreeModel model; TreeModel model;
TreeIter iter; TreeIter iter;
@ -886,16 +900,179 @@ public class GnomeKeyring : Store
} }
public void on_buttonhelpEditSecret_clicked(object obj, EventArgs args) public void on_buttonhelpEditSecret_clicked(object obj, EventArgs args)
{ {
Common.ShowHelpUrl("EditingSecrets.html"); Common.ShowHelpUrl("EditingSecrets.html");
} }
public void on_helpbuttonAuthentication_clicked(object obj, EventArgs args) public void on_helpbuttonAuthentication_clicked(object obj, EventArgs args)
{ {
Common.ShowHelpUrl("CASAMasterPasswordAuthentication.htm"); Common.ShowHelpUrl("CASAMasterPasswordAuthentication.htm");
} }
///#######################################################################
/// Application SSO
/// <summary>
///
/// </summary>
/// Network Manager
public void SSONetworkManager(object obj, EventArgs args)
{
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogNetworkManager", null);
gxmlTemp.Autoconnect (this);
dialogNetworkManager.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
comboNetworkManager.PopdownStrings = stringNetworkManagerServerType;
comboNetworkManager.DisableActivate();
//labelNetworkManagerFolder.Visible = entryNetworkManagerFolder.Visible = true;
labelNetworkManagerPort.Visible = entryNetworkManagerPort.Visible = true;
labelNetworkManagerShare.Visible = entryNetworkManagerShare.Visible = false;
labelNetworkManagerDomain.Visible = entryNetworkManagerDomain.Visible = false;
}
public void on_okNetworkManager_clicked(object abj, EventArgs args)
{
TreeModel modelSecret;
TreeIter iterSecret;
string SecretID = null;
string[] Keys = null,
Values = null,
NativeKeys = null,
NativeValues = null;
ArrayList arrKeys = null,
arrValues = null;
try
{
if( "" != entryNetworkManagerServer.Text && "" != entryNetworkManagerUsername.Text && "" != entryNetworkManagerPassword.Text )
{
arrKeys = new ArrayList();
arrValues = new ArrayList();
if( "SSH" == comboNetworkManager.Entry.Text )
{
SecretID = String.Concat(entryNetworkManagerUsername.Text ,"@", entryNetworkManagerServer.Text);
arrKeys.Add("server"); arrValues.Add(entryNetworkManagerServer.Text);
arrKeys.Add("user"); arrValues.Add(entryNetworkManagerUsername.Text);
arrKeys.Add("password"); arrValues.Add(entryNetworkManagerPassword.Text);
arrKeys.Add("protocol"); arrValues.Add("sftp");
arrKeys.Add("authtype"); arrValues.Add("password");
}
else if( "FTP (with login)" == comboNetworkManager.Entry.Text )
{
SecretID = String.Concat(entryNetworkManagerUsername.Text ,"@", entryNetworkManagerServer.Text);
arrKeys.Add("server"); arrValues.Add(entryNetworkManagerServer.Text);
arrKeys.Add("user"); arrValues.Add(entryNetworkManagerUsername.Text);
arrKeys.Add("password"); arrValues.Add(entryNetworkManagerPassword.Text);
arrKeys.Add("protocol"); arrValues.Add("ftp");
arrKeys.Add("authtype"); arrValues.Add("password");
}
else if( "Windows share" == comboNetworkManager.Entry.Text )
{
SecretID = String.Concat(entryNetworkManagerUsername.Text ,"@", entryNetworkManagerServer.Text,"/",entryNetworkManagerShare.Text);
arrKeys.Add("server"); arrValues.Add(entryNetworkManagerServer.Text);
arrKeys.Add("user"); arrValues.Add(entryNetworkManagerUsername.Text);
arrKeys.Add("password"); arrValues.Add(entryNetworkManagerPassword.Text);
arrKeys.Add("object"); arrValues.Add(entryNetworkManagerShare.Text);
arrKeys.Add("domain"); arrValues.Add(entryNetworkManagerDomain.Text);
arrKeys.Add("protocol"); arrValues.Add("smb");
}
Keys = (string[])arrKeys.ToArray(typeof(string));
Values = (string[])arrValues.ToArray(typeof(string));
NativeKeys = new string[Common.MAX_NATIVE_ELEMENTS];
NativeValues = new string[Common.MAX_NATIVE_ELEMENTS];
NativeKeys[Common.INDEX_NATIVEINFO_FOLDERNAME] = Common.NATIVEINFO_FOLDERNAME;
NativeKeys[Common.INDEX_NATIVEINFO_TYPEID] = Common.NATIVEINFO_TYPEID;
NativeKeys[Common.INDEX_NATIVEINFO_SYNC] = Common.NATIVEINFO_SYNC;
NativeKeys[Common.INDEX_NATIVEINFO_SYNCTYPE] = Common.NATIVEINFO_SYNCTYPE;
NativeKeys[Common.INDEX_NATIVEINFO_MODIFIEDTIME] = Common.NATIVEINFO_MODIFIEDTIME;
NativeValues[Common.INDEX_NATIVEINFO_FOLDERNAME] = null;
NativeValues[Common.INDEX_NATIVEINFO_TYPEID] = "Network Password";
NativeValues[Common.INDEX_NATIVEINFO_SYNC] = null;
NativeValues[Common.INDEX_NATIVEINFO_SYNCTYPE] = null;
NativeValues[Common.INDEX_NATIVEINFO_MODIFIEDTIME] = null;
iterSecret = tsSecretIDGnomeKeyring.AppendValues(SecretID, Keys, Values, "default", NativeKeys, NativeValues);
modelSecret = tvSecretIDGnomeKeyring.Model;
if( Common.STATUS_SUCCESS == StoreDataInterface.UpdateStore(Common.STORE_GNOMEKEYRING, Common.OPERATION_ADD_SECRET, "", "", ref modelSecret, ref iterSecret) )
{
AggregateStore();
Logger.DbgLog("GUI:GnomeKeyring.on_okNetworkManager_clicked() - ADD_NEW_SECRET_SUCCEEDED.");
}
else
Logger.DbgLog("GUI:GnomeKeyring.on_okNetworkManager_clicked() - ERROR: ADD_NEW_SECRET_FAILED");
dialogNetworkManager.Destroy();
}
}
catch(Exception exp)
{
Logger.DbgLog("GUI:GnomeKeyring.on_okNetworkManager_clicked() - EXCEPTION:" + exp.ToString());
}
}
public void on_entryNetworkManagerServerType_changed(object obj, EventArgs args)
{
if( comboNetworkManager.Entry.Text == stringNetworkManagerServerType[0] )
{
//labelNetworkManagerFolder.Visible = entryNetworkManagerFolder.Visible = true;
labelNetworkManagerPort.Visible = entryNetworkManagerPort.Visible = true;
labelNetworkManagerShare.Visible = entryNetworkManagerShare.Visible = false;
labelNetworkManagerDomain.Visible = entryNetworkManagerDomain.Visible = false;
entryNetworkManagerServer.HasFocus = true;
}
if( comboNetworkManager.Entry.Text == stringNetworkManagerServerType[1] )
{
//labelNetworkManagerFolder.Visible = entryNetworkManagerFolder.Visible = true;
labelNetworkManagerPort.Visible = entryNetworkManagerPort.Visible = true;
labelNetworkManagerShare.Visible = entryNetworkManagerShare.Visible = false;
labelNetworkManagerDomain.Visible = entryNetworkManagerDomain.Visible = false;
entryNetworkManagerServer.HasFocus = true;
}
if( comboNetworkManager.Entry.Text == stringNetworkManagerServerType[2] )
{
//labelNetworkManagerFolder.Visible = entryNetworkManagerFolder.Visible = true;
labelNetworkManagerPort.Visible = entryNetworkManagerPort.Visible = false;
labelNetworkManagerShare.Visible = entryNetworkManagerShare.Visible = true;
labelNetworkManagerDomain.Visible = entryNetworkManagerDomain.Visible = true;
entryNetworkManagerServer.HasFocus = true;
}
}
public void on_cancelNetworkManager_clicked(object obj, EventArgs args)
{
dialogNetworkManager.Destroy();
}
public void on_helpNetworkManager_clicked(object obj, EventArgs args)
{
}
/// Gaim
public void SSOGaim(object obj, EventArgs args)
{
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogGaim", null);
gxmlTemp.Autoconnect (this);
dialogGaim.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
}
public void on_okGaim_clicked(object obj, EventArgs args)
{
dialogGaim.Destroy();
}
public void on_cancelGaim_clicked(object obj, EventArgs args)
{
dialogGaim.Destroy();
}
public void on_helpGaim_clicked(object obj, EventArgs args)
{
}
} }
} }
///################################################################## ///##################################################################

View File

@ -43,6 +43,17 @@ public class KdeWallet : Store
public bool IS_STORE_AGGREGATED = false; public bool IS_STORE_AGGREGATED = false;
string[] stringKonquererTemplates = new string[]{ "New Website",
"Novell Website (novell.com)",
"Novell Innerweb (innerweb.novell.com)",
"Novell Bugzilla (bugzilla.novell.com)",
"Novell Forge (forge.novell.com)",
"Bandit Project (bandit-project.org)",
"Groupwise Webaccess (gmail.novell.com)",
"Gmail (gmail.com)",
"Yahoo! Mail (mail.yahoo.com)",
"MSN Hotmail (hotmail.com)"};
#region Glade Widgets #region Glade Widgets
[Glade.Widget] [Glade.Widget]
@ -56,9 +67,11 @@ public class KdeWallet : Store
[Glade.Widget] [Glade.Widget]
Gtk.Dialog dialogNewSecret, Gtk.Dialog dialogNewSecret,
dialogManageSecret, dialogManageSecret,
dialogConfirmDelete, dialogConfirmDelete,
dialogLogin; dialogLogin,
dialogKonquerer,
dialogKopete;
[Glade.Widget] [Glade.Widget]
Gtk.Menu menuRightClick; Gtk.Menu menuRightClick;
@ -69,7 +82,12 @@ public class KdeWallet : Store
entryValue, entryValue,
entryMasterPassword3, entryMasterPassword3,
entryMasterPassword4, entryMasterPassword4,
entryDeleteSecretID; entryDeleteSecretID,
entryKonquererURL,
entryKonquererUsrKey,
entryKonquererUsrValue,
entryKonquererPwdKey,
entryKonquererPwdValue;
[Glade.Widget] [Glade.Widget]
Gtk.CheckButton cbuttonShowPassword; Gtk.CheckButton cbuttonShowPassword;
@ -80,13 +98,14 @@ public class KdeWallet : Store
[Glade.Widget] [Glade.Widget]
Gtk.MenuItem cmiNewSecret, Gtk.MenuItem cmiNewKey,
cmiNewKey,
cmiDelete, cmiDelete,
cmiView, cmiView,
cmiLink, cmiLink,
cmiCopy; cmiCopy;
[Glade.Widget]
Gtk.Combo comboKonquererTemplates;
#endregion #endregion
@ -101,15 +120,15 @@ public class KdeWallet : Store
Logger.DbgLog("GUI:KdeWallet.KdeWallet() - BEGIN"); Logger.DbgLog("GUI:KdeWallet.KdeWallet() - BEGIN");
/// SecretID TreeStore /// SecretID TreeStore
tvSecretIDKdeWallet = (Gtk.TreeView)CasaMain.gxml.GetWidget("tvSecretIDKdeWallet"); tvSecretIDKdeWallet = (Gtk.TreeView)CasaMain.gxmlMain.GetWidget("tvSecretIDKdeWallet");
tsSecretIDKdeWallet = new TreeStore(typeof(string), typeof(string[]), typeof(string[]), typeof(string), typeof(string[]), typeof(string[])); tsSecretIDKdeWallet = new TreeStore(typeof(string), typeof(string[]), typeof(string[]), typeof(string), typeof(string[]), typeof(string[]));
tvSecretIDKdeWallet.AppendColumn("Secret-ID",new CellRendererText(),"text",0); tvSecretIDKdeWallet.AppendColumn("Secret ID",new CellRendererText(),"text",0);
tvSecretIDKdeWallet.Model = tsSecretIDKdeWallet; tvSecretIDKdeWallet.Model = tsSecretIDKdeWallet;
tvSecretIDKdeWallet.RowActivated += new RowActivatedHandler(OntvSecretIDKdeWalletRowActivated); tvSecretIDKdeWallet.RowActivated += new RowActivatedHandler(OntvSecretIDKdeWalletRowActivated);
tvSecretIDKdeWallet.ButtonReleaseEvent += new ButtonReleaseEventHandler(OnRightClicked); tvSecretIDKdeWallet.ButtonReleaseEvent += new ButtonReleaseEventHandler(OnRightClicked);
tvSecretIDKdeWallet.CursorChanged += new EventHandler(OnCursorChanged); tvSecretIDKdeWallet.CursorChanged += new EventHandler(OnCursorChanged);
/// NativeInfo TreeStore /// NativeInfo TreeStore
tvNativeInfoKdeWallet = (Gtk.TreeView)CasaMain.gxml.GetWidget("tvNativeInfoKdeWallet"); tvNativeInfoKdeWallet = (Gtk.TreeView)CasaMain.gxmlMain.GetWidget("tvNativeInfoKdeWallet");
tsNativeInfoKdeWallet = new TreeStore(typeof(string), typeof(string)); tsNativeInfoKdeWallet = new TreeStore(typeof(string), typeof(string));
tvNativeInfoKdeWallet.AppendColumn("NativeKey",new CellRendererText(),"text",0); tvNativeInfoKdeWallet.AppendColumn("NativeKey",new CellRendererText(),"text",0);
tvNativeInfoKdeWallet.AppendColumn("NativeValue",new CellRendererText(),"text",1); tvNativeInfoKdeWallet.AppendColumn("NativeValue",new CellRendererText(),"text",1);
@ -251,7 +270,7 @@ public class KdeWallet : Store
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogManageSecret", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogManageSecret", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogManageSecret.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("windowMain"); dialogManageSecret.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
dialogManageSecret.Title = "KDE Wallet - Manage Secret"; dialogManageSecret.Title = "KDE Wallet - Manage Secret";
cellEditable = new CellRendererText(); cellEditable = new CellRendererText();
@ -636,7 +655,7 @@ public class KdeWallet : Store
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogNewSecret", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogNewSecret", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogNewSecret.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("windowMain"); dialogNewSecret.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
dialogNewSecret.Title = "KDE Wallet - New Secret"; dialogNewSecret.Title = "KDE Wallet - New Secret";
cellEditable = new CellRendererText(); cellEditable = new CellRendererText();
@ -744,7 +763,7 @@ public class KdeWallet : Store
NativeValues[Common.INDEX_NATIVEINFO_SYNCTYPE] = null; NativeValues[Common.INDEX_NATIVEINFO_SYNCTYPE] = null;
NativeValues[Common.INDEX_NATIVEINFO_MODIFIEDTIME] = null; NativeValues[Common.INDEX_NATIVEINFO_MODIFIEDTIME] = null;
iterSecret = tsSecretIDKdeWallet.AppendValues(entrySecretID.Text, Keys, Values, "CASAwallet", NativeKeys, NativeValues); iterSecret = tsSecretIDKdeWallet.AppendValues(entrySecretID.Text, Keys, Values, "kdewallet", NativeKeys, NativeValues);
modelSecret = tvSecretIDKdeWallet.Model; modelSecret = tvSecretIDKdeWallet.Model;
if( Common.STATUS_SUCCESS == StoreDataInterface.UpdateStore(Common.STORE_KDEWALLET, Common.OPERATION_ADD_SECRET, "", "", ref modelSecret, ref iterSecret) ) if( Common.STATUS_SUCCESS == StoreDataInterface.UpdateStore(Common.STORE_KDEWALLET, Common.OPERATION_ADD_SECRET, "", "", ref modelSecret, ref iterSecret) )
@ -823,7 +842,7 @@ public class KdeWallet : Store
{ {
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogConfirmDelete", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogConfirmDelete", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogConfirmDelete.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("windowMain"); dialogConfirmDelete.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
dialogConfirmDelete.Title = "KDE Wallet - Delete Secret"; dialogConfirmDelete.Title = "KDE Wallet - Delete Secret";
TreeModel model; TreeModel model;
@ -883,7 +902,195 @@ public class KdeWallet : Store
public void on_helpbuttonAuthentication_clicked(object obj, EventArgs args) public void on_helpbuttonAuthentication_clicked(object obj, EventArgs args)
{ {
Common.ShowHelpUrl("CASAMasterPasswordAuthentication.htm"); Common.ShowHelpUrl("CASAMasterPasswordAuthentication.htm");
} }
///#######################################################################
/// Application SSO
/// <summary>
///
/// </summary>
/// Konquerer
public void SSOKonquerer(object obj, EventArgs args)
{
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogKonquerer", null);
gxmlTemp.Autoconnect (this);
dialogKonquerer.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
comboKonquererTemplates.PopdownStrings = stringKonquererTemplates;
comboKonquererTemplates.DisableActivate();
}
public void on_okKonquerer_clicked(object abj, EventArgs args)
{
TreeModel modelSecret;
TreeIter iterSecret;
string[] Keys = null,
Values = null,
NativeKeys = null,
NativeValues = null;
ArrayList arrKeys = null,
arrValues = null;
try
{
if( "" != entryKonquererURL.Text && "" != entryKonquererUsrKey.Text && "" != entryKonquererUsrValue.Text && "" != entryKonquererPwdKey.Text && "" != entryKonquererPwdValue.Text )
{
arrKeys = new ArrayList();
arrValues = new ArrayList();
arrKeys.Add(entryKonquererUsrKey.Text);
arrKeys.Add(entryKonquererPwdKey.Text);
arrValues.Add(entryKonquererUsrValue.Text);
arrValues.Add(entryKonquererPwdValue.Text);
Keys = (string[])arrKeys.ToArray(typeof(string));
Values = (string[])arrValues.ToArray(typeof(string));
NativeKeys = new string[Common.MAX_NATIVE_ELEMENTS];
NativeValues = new string[Common.MAX_NATIVE_ELEMENTS];
NativeKeys[Common.INDEX_NATIVEINFO_FOLDERNAME] = Common.NATIVEINFO_FOLDERNAME;
NativeKeys[Common.INDEX_NATIVEINFO_TYPEID] = Common.NATIVEINFO_TYPEID;
NativeKeys[Common.INDEX_NATIVEINFO_SYNC] = Common.NATIVEINFO_SYNC;
NativeKeys[Common.INDEX_NATIVEINFO_SYNCTYPE] = Common.NATIVEINFO_SYNCTYPE;
NativeKeys[Common.INDEX_NATIVEINFO_MODIFIEDTIME] = Common.NATIVEINFO_MODIFIEDTIME;
NativeValues[Common.INDEX_NATIVEINFO_FOLDERNAME] = "Form Data";
NativeValues[Common.INDEX_NATIVEINFO_TYPEID] = "Maps";
NativeValues[Common.INDEX_NATIVEINFO_SYNC] = null;
NativeValues[Common.INDEX_NATIVEINFO_SYNCTYPE] = null;
NativeValues[Common.INDEX_NATIVEINFO_MODIFIEDTIME] = null;
iterSecret = tsSecretIDKdeWallet.AppendValues(entryKonquererURL.Text, Keys, Values, "kdewallet", NativeKeys, NativeValues);
modelSecret = tvSecretIDKdeWallet.Model;
if( Common.STATUS_SUCCESS == StoreDataInterface.UpdateStore(Common.STORE_KDEWALLET, Common.OPERATION_ADD_SECRET, "", "", ref modelSecret, ref iterSecret) )
{
AggregateStore();
Logger.DbgLog("GUI:KdeWallet.on_okKonquerer_clicked() - ADD_NEW_SECRET_SUCCEEDED.");
}
else
Logger.DbgLog("GUI:KdeWallet.on_okKonquerer_clicked() - ERROR: ADD_NEW_SECRET_FAILED");
dialogKonquerer.Destroy();
}
}
catch(Exception exp)
{
Logger.DbgLog("GUI:KdeWallet.on_okKonquerer_clicked() - EXCEPTION:" + exp.ToString());
}
}
public void on_entryKonquererTemplates_changed(object obj, EventArgs args)
{
/// new
if( comboKonquererTemplates.Entry.Text == stringKonquererTemplates[0] )
{
entryKonquererURL.Text = "";
entryKonquererUsrKey.Text = "";
entryKonquererPwdKey.Text = "";
entryKonquererURL.HasFocus = true;
}
/// novell
else if( comboKonquererTemplates.Entry.Text == stringKonquererTemplates[1] )
{
entryKonquererURL.Text = "http://www.novell.com/ICSLogin/#";
entryKonquererUsrKey.Text = "username";
entryKonquererPwdKey.Text = "password";
entryKonquererUsrValue.HasFocus = true;
}
/// innerweb
else if( comboKonquererTemplates.Entry.Text == stringKonquererTemplates[2] )
{
entryKonquererURL.Text = "https://innerweb.novell.com/ICSLogin/#";
entryKonquererUsrKey.Text = "username";
entryKonquererPwdKey.Text = "password";
entryKonquererUsrValue.HasFocus = true;
}
/// bugzilla
else if( comboKonquererTemplates.Entry.Text == stringKonquererTemplates[3] )
{
entryKonquererURL.Text = "https://bugzilla.novell.com/ICSLogin/#";
entryKonquererUsrKey.Text = "username";
entryKonquererPwdKey.Text = "password";
entryKonquererUsrValue.HasFocus = true;
}
/// forge
else if( comboKonquererTemplates.Entry.Text == stringKonquererTemplates[4] )
{
entryKonquererURL.Text = "http://forge.novell.com/modules/news/#";
entryKonquererUsrKey.Text = "username";
entryKonquererPwdKey.Text = "password";
entryKonquererUsrValue.HasFocus = true;
}
/// bandit
else if( comboKonquererTemplates.Entry.Text == stringKonquererTemplates[5] )
{
entryKonquererURL.Text = "https://www.bandit-project.org/ICSLogin/#login";
entryKonquererUsrKey.Text = "username";
entryKonquererPwdKey.Text = "password";
entryKonquererUsrValue.HasFocus = true;
}
/// gw webaccess
else if( comboKonquererTemplates.Entry.Text == stringKonquererTemplates[6] )
{
entryKonquererURL.Text = "https://gmail.novell.com/gw/webacc#loginForm";
entryKonquererUsrKey.Text = "User.id";
entryKonquererPwdKey.Text = "User.password";
entryKonquererUsrValue.HasFocus = true;
}
/// gmail
else if( comboKonquererTemplates.Entry.Text == stringKonquererTemplates[7] )
{
entryKonquererURL.Text = "https://www.google.com/accounts/ServiceLogin#";
entryKonquererUsrKey.Text = "Email";
entryKonquererPwdKey.Text = "Passwd";
entryKonquererUsrValue.HasFocus = true;
}
/// yahoo mail
else if( comboKonquererTemplates.Entry.Text == stringKonquererTemplates[8] )
{
entryKonquererURL.Text = "http://mail.yahoo.com/#login_form";
entryKonquererUsrKey.Text = "login";
entryKonquererPwdKey.Text = "passwd";
entryKonquererUsrValue.HasFocus = true;
}
/// hotmail
else if( comboKonquererTemplates.Entry.Text == stringKonquererTemplates[9] )
{
entryKonquererURL.Text = "http://login.passport.net/uilogin.srf#f1";
entryKonquererUsrKey.Text = "login";
entryKonquererPwdKey.Text = "passwd";
entryKonquererUsrValue.HasFocus = true;
}
}
public void on_cancelKonquerer_clicked(object obj, EventArgs args)
{
dialogKonquerer.Destroy();
}
public void on_helpKonquerer_clicked(object obj, EventArgs args)
{
}
/// Kopete
public void SSOKopete(object obj, EventArgs args)
{
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogKopete", null);
gxmlTemp.Autoconnect (this);
dialogKopete.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
}
public void on_okKopete_clicked(object obj, EventArgs args)
{
dialogKopete.Destroy();
}
public void on_cancelKopete_clicked(object obj, EventArgs args)
{
dialogKopete.Destroy();
}
public void on_helpKopete_clicked(object obj, EventArgs args)
{
}
} }
} }
///################################################################## ///##################################################################

View File

@ -114,16 +114,16 @@ public class MiCasa : Store
Logger.DbgLog("GUI:MiCasa.MiCasa() - BEGIN"); Logger.DbgLog("GUI:MiCasa.MiCasa() - BEGIN");
/// SecretID TreeStore /// SecretID TreeStore
tvSecretIDMiCasa = (Gtk.TreeView)CasaMain.gxml.GetWidget("tvSecretIDMiCasa"); tvSecretIDMiCasa = (Gtk.TreeView)CasaMain.gxmlMain.GetWidget("tvSecretIDMiCasa");
tsSecretIDMiCasa = new TreeStore(typeof(string), typeof(string[]), typeof(string[]), typeof(string), typeof(string[]), typeof(string[])); tsSecretIDMiCasa = new TreeStore(typeof(string), typeof(string[]), typeof(string[]), typeof(string), typeof(string[]), typeof(string[]));
tvSecretIDMiCasa.AppendColumn("Secret-ID",new CellRendererText(),"text",0); tvSecretIDMiCasa.AppendColumn("Secret ID",new CellRendererText(),"text",0);
tvSecretIDMiCasa.Model = tsSecretIDMiCasa; tvSecretIDMiCasa.Model = tsSecretIDMiCasa;
tsSecretIDMiCasa.SetSortColumnId(0, Gtk.SortType.Ascending); tsSecretIDMiCasa.SetSortColumnId(0, Gtk.SortType.Ascending);
tvSecretIDMiCasa.RowActivated += new RowActivatedHandler(OntvSecretIDMiCasaRowActivated); tvSecretIDMiCasa.RowActivated += new RowActivatedHandler(OntvSecretIDMiCasaRowActivated);
tvSecretIDMiCasa.ButtonReleaseEvent += new ButtonReleaseEventHandler(OnRightClicked); tvSecretIDMiCasa.ButtonReleaseEvent += new ButtonReleaseEventHandler(OnRightClicked);
tvSecretIDMiCasa.CursorChanged += new EventHandler(OnCursorChanged); tvSecretIDMiCasa.CursorChanged += new EventHandler(OnCursorChanged);
/// NativeInfo TreeStore /// NativeInfo TreeStore
tvNativeInfoMiCasa = (Gtk.TreeView)CasaMain.gxml.GetWidget("tvNativeInfoMiCasa"); tvNativeInfoMiCasa = (Gtk.TreeView)CasaMain.gxmlMain.GetWidget("tvNativeInfoMiCasa");
tsNativeInfoMiCasa = new TreeStore(typeof(string), typeof(string)); tsNativeInfoMiCasa = new TreeStore(typeof(string), typeof(string));
tvNativeInfoMiCasa.AppendColumn("NativeKey",new CellRendererText(),"text",0); tvNativeInfoMiCasa.AppendColumn("NativeKey",new CellRendererText(),"text",0);
tvNativeInfoMiCasa.AppendColumn("NativeValue",new CellRendererText(),"text",1); tvNativeInfoMiCasa.AppendColumn("NativeValue",new CellRendererText(),"text",1);
@ -131,11 +131,7 @@ public class MiCasa : Store
tvNativeInfoMiCasa.ModifyBase(StateType.Normal,new Gdk.Color(0xff,0xff,0xe6)); tvNativeInfoMiCasa.ModifyBase(StateType.Normal,new Gdk.Color(0xff,0xff,0xe6));
/// Aggregate the store /// Aggregate the store
AggregateStore(); AggregateStore();
//TreeIter iterSecret;
//if( tsSecretIDMiCasa.GetIterFirst(out iterSecret) )
// tvSecretIDMiCasa.Selection.SelectIter(iterSecret);
Logger.DbgLog("GUI:MiCasa.MiCasa() - END"); Logger.DbgLog("GUI:MiCasa.MiCasa() - END");
} }
@ -268,7 +264,7 @@ public class MiCasa : Store
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogManageSecret", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogManageSecret", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogManageSecret.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("windowMain"); dialogManageSecret.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
dialogManageSecret.Title = "miCASA - Manage Secret"; dialogManageSecret.Title = "miCASA - Manage Secret";
cellEditable = new CellRendererText(); cellEditable = new CellRendererText();
@ -682,7 +678,7 @@ public class MiCasa : Store
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogNewSecret", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogNewSecret", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogNewSecret.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("windowMain"); dialogNewSecret.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
dialogNewSecret.Title = "miCASA - New Secret"; dialogNewSecret.Title = "miCASA - New Secret";
cellEditable = new CellRendererText(); cellEditable = new CellRendererText();
@ -875,7 +871,7 @@ public class MiCasa : Store
{ {
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogConfirmDelete", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogConfirmDelete", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogConfirmDelete.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("windowMain"); dialogConfirmDelete.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("windowMain");
dialogConfirmDelete.Title = "miCASA - Delete Secret"; dialogConfirmDelete.Title = "miCASA - Delete Secret";
TreeModel model; TreeModel model;
@ -944,7 +940,7 @@ public class MiCasa : Store
{ {
Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogLinkKeyValue", null); Glade.XML gxmlTemp = new Glade.XML (Common.GladeFile, "dialogLinkKeyValue", null);
gxmlTemp.Autoconnect (this); gxmlTemp.Autoconnect (this);
dialogLinkKeyValue.TransientFor = (Gtk.Window)CasaMain.gxml.GetWidget("dialogNewSecret"); dialogLinkKeyValue.TransientFor = (Gtk.Window)CasaMain.gxmlMain.GetWidget("dialogNewSecret");
dialogLinkKeyValue.Title = "miCASA - Link Keys"; dialogLinkKeyValue.Title = "miCASA - Link Keys";
dialogLinkKeyValue.Modal = true; dialogLinkKeyValue.Modal = true;
@ -960,7 +956,7 @@ public class MiCasa : Store
tsAvailableSecrets=new TreeStore(typeof(string),typeof(string)); tsAvailableSecrets=new TreeStore(typeof(string),typeof(string));
tsAvailableSecrets.SetSortColumnId(0, Gtk.SortType.Ascending); tsAvailableSecrets.SetSortColumnId(0, Gtk.SortType.Ascending);
tvAvailableSecrets.AppendColumn("Secret-ID",new CellRendererText(),"text",0); tvAvailableSecrets.AppendColumn("Secret ID",new CellRendererText(),"text",0);
tvAvailableSecrets.Model=tsAvailableSecrets; tvAvailableSecrets.Model=tsAvailableSecrets;
tvAvailableSecrets.ButtonReleaseEvent +=new ButtonReleaseEventHandler(tvAvailableSecrets_ButtonReleaseEvent); tvAvailableSecrets.ButtonReleaseEvent +=new ButtonReleaseEventHandler(tvAvailableSecrets_ButtonReleaseEvent);
@ -986,7 +982,7 @@ public class MiCasa : Store
tsLinkedKeys=new TreeStore(typeof(string), typeof(string)); tsLinkedKeys=new TreeStore(typeof(string), typeof(string));
tsLinkedKeys.SetSortColumnId(0, Gtk.SortType.Descending); tsLinkedKeys.SetSortColumnId(0, Gtk.SortType.Descending);
tvLinkedKeys.AppendColumn("Secret-ID", new CellRendererText(), "text", 0); tvLinkedKeys.AppendColumn("Secret ID", new CellRendererText(), "text", 0);
tvLinkedKeys.AppendColumn("Key", new CellRendererText(), "text", 1); tvLinkedKeys.AppendColumn("Key", new CellRendererText(), "text", 1);
tvLinkedKeys.Model=tsLinkedKeys; tvLinkedKeys.Model=tsLinkedKeys;
@ -1093,7 +1089,7 @@ public class MiCasa : Store
{ {
selectedSecret = (string) model.GetValue(iter,0); selectedSecret = (string) model.GetValue(iter,0);
// add NULL // add NULL
selectedSecret = selectedSecret; //selectedSecret = selectedSecret;
selectedKey = (string) model.GetValue(iter,1); selectedKey = (string) model.GetValue(iter,1);
LinkedKeyInfo lki = new LinkedKeyInfo(selectedSecret, selectedKey); LinkedKeyInfo lki = new LinkedKeyInfo(selectedSecret, selectedKey);

File diff suppressed because it is too large Load Diff