Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Added code for viewing vCard data within an unsupported account
[xestiaab/.git] / source / common / preferences.cpp
index 85981fd..009afea 100644 (file)
@@ -30,8 +30,10 @@ void SavePreferences();
 void LoadPreferences();
 
 XABPreferences::XABPreferences(wxString PreferencesFilename){
-    
-       //fstream preffile;
+
+       // Load the settings into the XABPreferences object using the
+       // settings file received in PreferencesFilename.
+
        wxString fullprefpath;
     
        bool accountnamevalid, accountaddressvalid, accounttypevalid, accountportvalid,
@@ -132,7 +134,6 @@ XABPreferences::XABPreferences(wxString PreferencesFilename){
        while (ContinueAcc){
 
                cfgfile->SetPath(accountname);
-               //ContinueProc = cfgfile->GetFirstEntry(EntryName, subitemindex);
                cfgfile->Read(wxT("type"), &EntryValue);
          
                if (EntryValue == wxT("Local")){
@@ -168,6 +169,9 @@ XABPreferences::XABPreferences(wxString PreferencesFilename){
                        if (AccSSLInc == wxT("true")){
                                AccSSL = TRUE;
                        }
+                       else {
+                               AccSSL = FALSE;
+                       }
                        accountusernamevalid = cfgfile->Read(wxT("username"), &AccUsr);
                        accountpasswordvalid = cfgfile->Read(wxT("password"), &AccPass);
                        accountdirprefixvalid = cfgfile->Read(wxT("prefix"), &AccPrefix);
@@ -191,6 +195,41 @@ XABPreferences::XABPreferences(wxString PreferencesFilename){
                                AccSSL, AccUsr, AccPass, 
                                AccPrefix, AccDir, AccRef);
             
+               } else {
+                       
+                       cfgfile->Read(wxT("accountdir"), &AccDir);
+                       accountaddressvalid = cfgfile->Read(wxT("address"), &AccAdr);
+                       accountportvalid = cfgfile->Read(wxT("port"), &AccPort);
+                       accountsslvalid = cfgfile->Read(wxT("ssl"), &AccSSLInc);
+                       if (AccSSLInc == wxT("true")){
+                               AccSSL = TRUE;
+                       }
+                       else {
+                               AccSSL = FALSE;
+                       }
+                       accountusernamevalid = cfgfile->Read(wxT("username"), &AccUsr);
+                       accountpasswordvalid = cfgfile->Read(wxT("password"), &AccPass);
+                       accountdirprefixvalid = cfgfile->Read(wxT("prefix"), &AccPrefix);
+                       accountrefreshvalid = cfgfile->Read(wxT("refresh"), &AccRef);
+            
+                       if (AccDir.Len() > 4){
+
+                               accountdirvalid = TRUE;
+            
+                       }
+                
+                       // Make sure it is not bigger than 65535 or less than 1.
+                       // If so, default to port 8008.
+                
+                       if (accountport < 1 || accountport > 65535){
+                               accountport = 8008;
+                               accountportvalid = TRUE;
+                       }
+            
+                       accounts.AddAccount(accountname, EntryValue, AccAdr, AccPort,
+                               AccSSL, AccUsr, AccPass, 
+                               AccPrefix, AccDir, AccRef);
+                       
                }
 
                // Clear up for the next account.
@@ -228,6 +267,8 @@ XABPreferences::~XABPreferences(){
 
 bool XABPreferences::GetBoolData(wxString SettingName){
 
+       // GetBoolData from the XABPreferences object.
+
        if (SettingName == wxT("SaveWindowPosition")) { return SaveWindowPos; }
        else if (SettingName == wxT("HideLocalAddressBooks")) { return HideLocalABs; }
        
@@ -237,12 +278,16 @@ bool XABPreferences::GetBoolData(wxString SettingName){
 
 wxRect XABPreferences::GetMainWindowData(){
        
+       // Return the main window data as a wxRect object.
+       
        return MainWindowData;
 
 }
 
 void XABPreferences::SetMainWindowData(wxRect WindowData){
 
+       // Set the main window data from a wxRect object.
+
        MainWindowData = WindowData;
 
 }
@@ -250,7 +295,11 @@ void XABPreferences::SetMainWindowData(wxRect WindowData){
 // XABPrefAccounts
 
 XABPrefAccounts::XABPrefAccounts(){
+
+       // Setup the default values for XABPrefAccounts.
+
        AccountsCount = 0;
+       
 }
 
 int XABPrefAccounts::AddAccount(wxString NewAccName,
@@ -265,6 +314,9 @@ int XABPrefAccounts::AddAccount(wxString NewAccName,
        long NewAccRefresh
 ){
   
+       // Add an account to the list of accounts in the
+       // XABPrefAccounts object.
+  
        AccountName.Add(NewAccName, 1);
        AccountType.Add(NewAccType, 1);
        AccountAddress.Add(NewAccAddress, 1);
@@ -284,12 +336,16 @@ int XABPrefAccounts::AddAccount(wxString NewAccName,
 
 int XABPrefAccounts::GetCount(){
   
+       // Get the count of accounts in the XABPrefAccounts object.
+  
        return AccountsCount;
   
 }
 
 wxString XABPrefAccounts::GetAccountName(int AccountNum){
  
+       // Get the account name.
        if (AccountNum > AccountsCount){
                return wxT("");
        }
@@ -300,6 +356,8 @@ wxString XABPrefAccounts::GetAccountName(int AccountNum){
 
 wxString XABPrefAccounts::GetAccountType(int AccountNum){
  
+       // Get the account type.
        if (AccountNum > AccountsCount){
                return wxT("");
        }
@@ -310,6 +368,8 @@ wxString XABPrefAccounts::GetAccountType(int AccountNum){
 
 wxString XABPrefAccounts::GetAccountAddress(int AccountNum){
  
+       // Get the account server address.
        if (AccountNum > AccountsCount){
                return wxT("");
        }
@@ -320,6 +380,8 @@ wxString XABPrefAccounts::GetAccountAddress(int AccountNum){
 
 int XABPrefAccounts::GetAccountPort(int AccountNum){
  
+       // Get the account server port.
        if (AccountNum > AccountsCount){
                return 0;
        }
@@ -330,6 +392,8 @@ int XABPrefAccounts::GetAccountPort(int AccountNum){
 
 bool XABPrefAccounts::GetAccountSSL(int AccountNum){
  
+       // Get the account server SSL support.
        if (AccountNum > AccountsCount){
                return wxT("");
        }
@@ -340,6 +404,8 @@ bool XABPrefAccounts::GetAccountSSL(int AccountNum){
 
 wxString XABPrefAccounts::GetAccountUsername(int AccountNum){
  
+       // Get the account username.
        if (AccountNum > AccountsCount){
                return wxT("");
        }
@@ -350,6 +416,8 @@ wxString XABPrefAccounts::GetAccountUsername(int AccountNum){
 
 wxString XABPrefAccounts::GetAccountPassword(int AccountNum){
  
+       // Get the account password.
        if (AccountNum > AccountsCount){
                return wxT("");
        }
@@ -360,6 +428,8 @@ wxString XABPrefAccounts::GetAccountPassword(int AccountNum){
 
 wxString XABPrefAccounts::GetAccountDirectory(int AccountNum){
  
+       // Get the account directory.
        if (AccountNum > AccountsCount){
                return wxT("");
        }
@@ -370,6 +440,8 @@ wxString XABPrefAccounts::GetAccountDirectory(int AccountNum){
 
 wxString XABPrefAccounts::GetAccountDirPrefix(int AccountNum){
  
+       // Get the account server directory prefix.
        if (AccountNum > AccountsCount){
                return wxT("");
        }
@@ -380,6 +452,8 @@ wxString XABPrefAccounts::GetAccountDirPrefix(int AccountNum){
 
 long XABPrefAccounts::GetAccountRefresh(int AccountNum){
 
+       // Get the account refresh time.
+
        if (AccountNum > AccountsCount){
                return 0;
        }
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy