-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAxPluginSetup.h
160 lines (133 loc) · 6.22 KB
/
AxPluginSetup.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
#ifndef __AxPluginSetup_H__
#define __AxPluginSetup_H__
//=============================================================================
/*
* See the file README in the main directory for a description of
* this software, copyright information, and how to reach the author.
*
* Author: alex
* Date: 15.11.2003
*
* Last modfied:
* $Author: alex $
* $Date: 2013-03-20 20:33:18 +0100 (Mi, 20 Mär 2013) $
*/
//=============================================================================
//=============================================================================
// includes
//=============================================================================
//----- qt --------------------------------------------------------------------
//----- CORBA -----------------------------------------------------------------
//----- C++ -------------------------------------------------------------------
#include <string>
//----- C ---------------------------------------------------------------------
//----- AxLib -----------------------------------------------------------------
#include <Ax/Mail/Globals.h>
//----- local -----------------------------------------------------------------
//----- vdr -------------------------------------------------------------------
#include <vdr/font.h>
//----- local -----------------------------------------------------------------
//=============================================================================
// forward declarations
//=============================================================================
class cPlugin;
//=============================================================================
// typedefs
//=============================================================================
//=========================================================================
// class AxPluginSettings
//=========================================================================
/** Small class to hold the settings for the plugin
*/
class AxPluginSettings
{
public:
//-------------------------------------------------------------------------
// AxPluginSettings()
//-------------------------------------------------------------------------
AxPluginSettings();
//-------------------------------------------------------------------------
// clear()
//-------------------------------------------------------------------------
void clear();
//-------------------------------------------------------------------------
// parseSetup()
//-------------------------------------------------------------------------
bool parseSetup(const char *theName, const char *theValue);
//-------------------------------------------------------------------------
// storeSetup()
//-------------------------------------------------------------------------
void storeSetup(cPlugin *thePlugin);
//-------------------------------------------------------------------------
// attributes
//-------------------------------------------------------------------------
int BGCheckDelay ;
int BGCheckDelayMax;
int MLV_SortOrder;
int MLV_MaxMails ;
int MV_ViewMode ;
int ConnTimeOut ;
std::string MailInfoCmd;
std::string MailConvCmd;
std::string MailSrcFile;
std::string MailDstFile;
}; // class AxPluginSettings
//=============================================================================
// class AxPluginSetup
//=============================================================================
class AxPluginSetup
{
public:
//-------------------------------------------------------------------------
// AxPluginSetup()
//-------------------------------------------------------------------------
AxPluginSetup();
//-------------------------------------------------------------------------
// AxPluginSetup()
//-------------------------------------------------------------------------
AxPluginSetup(const AxPluginSetup &that);
//-------------------------------------------------------------------------
// operator=()
//-------------------------------------------------------------------------
AxPluginSetup &operator=(const AxPluginSetup &that);
//-------------------------------------------------------------------------
// ~AxPluginSetup()
//-------------------------------------------------------------------------
~AxPluginSetup();
//-------------------------------------------------------------------------
// loadAccounts()
//-------------------------------------------------------------------------
/** cPlugin::ConfigDirectory(myPlugin->Name())
*/
bool loadAccounts(const std::string &theConfigFolder);
//-------------------------------------------------------------------------
// saveAccounts()
//-------------------------------------------------------------------------
/** cPlugin::ConfigDirectory(myPlugin->Name())
*/
bool saveAccounts(const std::string &theConfigFolder);
//-------------------------------------------------------------------------
// clear()
//-------------------------------------------------------------------------
void clear();
private:
//-------------------------------------------------------------------------
// copyFrom()
//-------------------------------------------------------------------------
void copyFrom(const AxPluginSetup &that);
//-------------------------------------------------------------------------
// clearAccounts()
//-------------------------------------------------------------------------
void clearAccounts();
//-------------------------------------------------------------------------
// readKeyVal()
//-------------------------------------------------------------------------
bool readKeyVal(const::std::string theLine, std::string &theKey, std::string &theVal);
public:
//-------------------------------------------------------------------------
// attributes
//-------------------------------------------------------------------------
AxPluginSettings Settings;
Ax::Mail::MailBoxSetupCltn Accounts;
}; // class AxPluginSetup
#endif