Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Initial import of code already done for Xestia Address Book
[xestiaab/.git] / source / common / preferences.h
1 #include <iostream>
2 #include <wx/wx.h>
4 #ifndef PREFERENCES_H
5 #define PREFERENCES_H
7 void SavePreferences();
8 void LoadPreferences();
9    
10 class XABPrefThemes
11 {
12 private:
14 public:
15     wxArrayString       ThemeName;
16     wxArrayString       ThemeData;  
17 };
19 class XABPrefAccounts
20 {
21 private:
22     wxArrayString       AccountName;
23     wxArrayString       AccountType;
24     wxArrayString       AccountAddress;
25     wxArrayInt          AccountPort;
26     wxArrayInt          AccountSSL;
27     wxArrayString       AccountUsername;
28     wxArrayString       AccountPassword;
29     wxArrayString       DirectoryPrefix;
30     wxArrayString       AccountDirectory;
31     wxArrayLong         AccountRefresh;
32     int                 AccountsCount;
33 public:
34     XABPrefAccounts();
35   
36     int GetCount();
37     wxString GetAccountName(int AccountNum);
38     wxString GetAccountType(int AccountNum);
39     wxString GetAccountAddress(int AccountNum);
40     int GetAccountPort(int AcconutNum);
41     bool GetAccountSSL(int AccountNum);
42     wxString GetAccountUsername(int AccountNum);
43     wxString GetAccountPassword(int AccountNum);
44     wxString GetAccountDirectory(int AccountNum);
45     wxString GetAccountDirPrefix(int AccountNum);
46     long GetAccountRefresh(int AccountNum);
47     int AddAccount(wxString NewAccName,
48         wxString NewAccType,
49         wxString NewAccAddress,
50         int NewAccPort,
51         int NewAccSSL,
52         wxString NewAccUser,
53         wxString NewAccPass,
54         wxString NewAccDirPrefix,
55         wxString NewAccDir,
56         long NewAccRefresh
57     );
58 };
60 //XABPreferences should emulate what is in the Preferences window.
61 //Including others which aren't in the window such as main window
62 //position and size.
64 class XABPreferences
65 {
66 private:
67     
68     // General Tab
69     bool SaveWindowPos = FALSE;
70     wxRect MainWindowData;
71     bool HideLocalABs = FALSE;
72     
73     // Themes tab
74     bool EnableThemes = FALSE;
75     
76     // Accounts tab
77     
78     // General things.
79     wxString Filename;
80     
81 public:
82     XABPreferences(wxString PreferencesFilename);
83     ~XABPreferences();
84     
85     XABPrefAccounts accounts;
86     XABPrefThemes themes;
87     
88     int WritePreferences();
89     int ReadPreferences();
90     
91     bool GetBoolData(wxString SettingName);
92     bool SetBoolData(wxString SettingName, bool SettingValue);
93     wxRect GetMainWindowData();
94     void SetMainWindowData(wxRect WindowData);
95     
96     //int AddAccount(wxString Name);
97     
98     int GetThemeCount();
99     wxString GetThemeData(wxString ThemeName);
100     
101     int ErrorFlag;
102     
103 };
105 #endif
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