X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fcommon%2Fpreferences.cpp;h=009afea777e65d7e77d743114bf90147e2feb76d;hb=176323555ae58da5fec1ac843e0c613a0b9dabba;hp=85981fd029e7ceb6c1837b3af11fa5a86427ee51;hpb=a03e20fbd95e8252ebfc2194c6b80552405bb8bd;p=xestiaab%2F.git diff --git a/source/common/preferences.cpp b/source/common/preferences.cpp index 85981fd..009afea 100644 --- a/source/common/preferences.cpp +++ b/source/common/preferences.cpp @@ -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; }