| 1 |
|
|---|
| 2 |
#ifndef CLIMM_UTIL_OPTS_H |
|---|
| 3 |
#define CLIMM_UTIL_OPTS_H 1 |
|---|
| 4 |
|
|---|
| 5 |
#define OPT_TABLESIZE 4 |
|---|
| 6 |
|
|---|
| 7 |
struct Opt_s |
|---|
| 8 |
{ |
|---|
| 9 |
Opt *next; |
|---|
| 10 |
UBYTE tags[OPT_TABLESIZE]; |
|---|
| 11 |
val_t vals[OPT_TABLESIZE]; |
|---|
| 12 |
}; |
|---|
| 13 |
|
|---|
| 14 |
Opt *OptC (void); |
|---|
| 15 |
void OptD (Opt *opt); |
|---|
| 16 |
|
|---|
| 17 |
BOOL OptGetVal (const Opt *opt, UDWORD flag, val_t *val DEBUGPARAM); |
|---|
| 18 |
BOOL OptSetVal (Opt *opt, UDWORD flag, val_t val DEBUGPARAM); |
|---|
| 19 |
Opt *OptSetVals (Opt *opt, UDWORD flag, ...); |
|---|
| 20 |
val_t OptUndef (Opt *opt, UDWORD flag DEBUGPARAM); |
|---|
| 21 |
|
|---|
| 22 |
BOOL OptGetStr (const Opt *opt, UDWORD flag, const char **res DEBUGPARAM); |
|---|
| 23 |
BOOL OptSetStr (Opt *opt, UDWORD flag, const char *val DEBUGPARAM); |
|---|
| 24 |
|
|---|
| 25 |
#define OptGetVal(o,f,v) OptGetVal(o,f,v DEBUGARGS) |
|---|
| 26 |
#define OptSetVal(o,f,v) OptSetVal(o,f,v DEBUGARGS) |
|---|
| 27 |
#define OptUndef(o,f) OptUndef(o,f DEBUGARGS) |
|---|
| 28 |
#define OptGetStr(o,f,r) OptGetStr(o,f,r DEBUGARGS) |
|---|
| 29 |
#define OptSetStr(o,f,r) OptSetStr(o,f,r DEBUGARGS) |
|---|
| 30 |
|
|---|
| 31 |
const char *OptC2S (const char *color); |
|---|
| 32 |
const char *OptS2C (const char *str); |
|---|
| 33 |
|
|---|
| 34 |
int OptImport (Opt *opts, const char *args); |
|---|
| 35 |
const char *OptString (const Opt *opts); |
|---|
| 36 |
|
|---|
| 37 |
struct OptEntry_s |
|---|
| 38 |
{ |
|---|
| 39 |
const char *name; |
|---|
| 40 |
UDWORD flag; |
|---|
| 41 |
}; |
|---|
| 42 |
|
|---|
| 43 |
extern struct OptEntry_s OptList[]; |
|---|
| 44 |
|
|---|
| 45 |
#define COF_BOOL 0x80000000UL |
|---|
| 46 |
#define COF_NUMERIC 0x40000000UL |
|---|
| 47 |
#define COF_COLOR 0x20000000UL |
|---|
| 48 |
#define COF_STRING 0x10000000UL |
|---|
| 49 |
|
|---|
| 50 |
#define CO_BOOLMASK 0x00ffff00UL |
|---|
| 51 |
|
|---|
| 52 |
#define COF_GLOBAL 0x08000000UL |
|---|
| 53 |
#define COF_SERVER 0x04000000UL |
|---|
| 54 |
#define COF_GROUP 0x02000000UL |
|---|
| 55 |
#define COF_CONTACT 0x01000000UL |
|---|
| 56 |
|
|---|
| 57 |
#define CO_CONTACT (COF_GLOBAL | COF_GROUP | COF_SERVER | COF_CONTACT) |
|---|
| 58 |
#define CO_SERVER (COF_GLOBAL | COF_GROUP | COF_SERVER) |
|---|
| 59 |
#define CO_GROUP (COF_GLOBAL | COF_GROUP) |
|---|
| 60 |
#define CO_GLOBAL COF_GLOBAL |
|---|
| 61 |
|
|---|
| 62 |
#define CO_IGNORE (COF_BOOL | CO_CONTACT | 0x000101UL) |
|---|
| 63 |
#define CO_HIDEFROM (COF_BOOL | CO_CONTACT | 0x000401UL) |
|---|
| 64 |
#define CO_INTIMATE (COF_BOOL | CO_CONTACT | 0x001001UL) |
|---|
| 65 |
#define CO_LOGONOFF (COF_BOOL | CO_CONTACT | 0x004001UL) |
|---|
| 66 |
#define CO_LOGCHANGE (COF_BOOL | CO_CONTACT | 0x010001UL) |
|---|
| 67 |
#define CO_LOGMESS (COF_BOOL | CO_CONTACT | 0x040001UL) |
|---|
| 68 |
#define CO_SHOWONOFF (COF_BOOL | CO_CONTACT | 0x100001UL) |
|---|
| 69 |
#define CO_SHOWCHANGE (COF_BOOL | CO_CONTACT | 0x400001UL) |
|---|
| 70 |
|
|---|
| 71 |
#define CO_ISSBL (COF_BOOL | CO_CONTACT | 0x000102UL) |
|---|
| 72 |
#define CO_WANTSBL (COF_BOOL | CO_CONTACT | 0x000402UL) |
|---|
| 73 |
#define CO_SHADOW (COF_BOOL | CO_CONTACT | 0x001002UL) |
|---|
| 74 |
#define CO_HIDEACK (COF_BOOL | CO_CONTACT | 0x010002UL) |
|---|
| 75 |
#define CO_TALKEDTO (COF_BOOL | CO_CONTACT | 0x040002UL) |
|---|
| 76 |
#define CO_AUTOAUTO (COF_BOOL | CO_CONTACT | 0x100002UL) |
|---|
| 77 |
#define CO_PEEKME (COF_BOOL | CO_CONTACT | 0x400002UL) |
|---|
| 78 |
|
|---|
| 79 |
#define CO_WEBAWARE (COF_BOOL | CO_SERVER | 0x000103UL) |
|---|
| 80 |
#define CO_HIDEIP (COF_BOOL | CO_SERVER | 0x000403UL) |
|---|
| 81 |
#define CO_DCAUTH (COF_BOOL | CO_SERVER | 0x001003UL) |
|---|
| 82 |
#define CO_DCCONT (COF_BOOL | CO_SERVER | 0x004003UL) |
|---|
| 83 |
#define CO_OBEYSBL (COF_BOOL | CO_SERVER | 0x010003UL) |
|---|
| 84 |
#define CO_AWAYCOUNT (COF_BOOL | CO_SERVER | 0x100003UL) |
|---|
| 85 |
#define CO_LOGSTREAM (COF_BOOL | CO_SERVER | 0x400003UL) |
|---|
| 86 |
|
|---|
| 87 |
#define CO_SCRIPT (COF_BOOL | CO_GLOBAL | 0x000104UL) |
|---|
| 88 |
#define CO_S5USE (COF_BOOL | CO_SERVER | 0x000404UL) |
|---|
| 89 |
#define CO_TAGRESSOURCE (COF_BOOL | CO_SERVER | 0x001004UL) |
|---|
| 90 |
#define CO_AUTOTAGRES (COF_BOOL | CO_SERVER | 0x004004UL) |
|---|
| 91 |
|
|---|
| 92 |
#define CO_LOCAL (COF_BOOL | CO_CONTACT | 0x000105UL) |
|---|
| 93 |
#define CO_ASK_SBL (COF_BOOL | CO_CONTACT | 0x000105UL) |
|---|
| 94 |
#define CO_TO_SBL (COF_BOOL | CO_CONTACT | 0x001005UL) |
|---|
| 95 |
#define CO_FROM_SBL (COF_BOOL | CO_CONTACT | 0x004005UL) |
|---|
| 96 |
|
|---|
| 97 |
|
|---|
| 98 |
#define CO_ENCODING (COF_NUMERIC | CO_CONTACT | 0x06UL) |
|---|
| 99 |
#define CO_ENCODINGSTR (COF_STRING | CO_CONTACT | 0x07UL) |
|---|
| 100 |
#define CO_CSCHEME (COF_NUMERIC | CO_GLOBAL | 0x08UL) |
|---|
| 101 |
#define CO_TABSPOOL (COF_NUMERIC | CO_CONTACT | 0x09UL) |
|---|
| 102 |
|
|---|
| 103 |
#define CO_TIMESEEN (COF_NUMERIC | COF_CONTACT| 0x0aUL) |
|---|
| 104 |
#define CO_TIMEONLINE (COF_NUMERIC | COF_CONTACT| 0x0bUL) |
|---|
| 105 |
#define CO_TIMECLIMM (COF_NUMERIC | COF_CONTACT| 0x0cUL) |
|---|
| 106 |
#define CO_REVEALTIME (COF_NUMERIC | CO_CONTACT | 0x0dUL) |
|---|
| 107 |
|
|---|
| 108 |
#define CO_SCRIPT_PATH (COF_STRING | CO_GLOBAL | 0x0eUL) |
|---|
| 109 |
|
|---|
| 110 |
#define CO_OSCAR_DC_MODE (COF_NUMERIC | CO_SERVER | 0x10UL) |
|---|
| 111 |
#define CO_OSCAR_DC_PORT (COF_NUMERIC | CO_SERVER | 0x11UL) |
|---|
| 112 |
|
|---|
| 113 |
#define CO_AUTOAWAY (COF_STRING | CO_CONTACT | 0x20UL) |
|---|
| 114 |
#define CO_AUTONA (COF_STRING | CO_CONTACT | 0x21UL) |
|---|
| 115 |
#define CO_AUTOOCC (COF_STRING | CO_CONTACT | 0x22UL) |
|---|
| 116 |
#define CO_AUTODND (COF_STRING | CO_CONTACT | 0x23UL) |
|---|
| 117 |
#define CO_AUTOFFC (COF_STRING | CO_CONTACT | 0x24UL) |
|---|
| 118 |
#define CO_AUTOINV (COF_STRING | CO_CONTACT | 0x25UL) |
|---|
| 119 |
|
|---|
| 120 |
#define CO_TAUTOAWAY (COF_STRING | CO_CONTACT | 0x30UL) |
|---|
| 121 |
#define CO_TAUTONA (COF_STRING | CO_CONTACT | 0x31UL) |
|---|
| 122 |
#define CO_TAUTOOCC (COF_STRING | CO_CONTACT | 0x32UL) |
|---|
| 123 |
#define CO_TAUTODND (COF_STRING | CO_CONTACT | 0x33UL) |
|---|
| 124 |
#define CO_TAUTOFFC (COF_STRING | CO_CONTACT | 0x34UL) |
|---|
| 125 |
#define CO_TAUTOINV (COF_STRING | CO_CONTACT | 0x35UL) |
|---|
| 126 |
|
|---|
| 127 |
#define CO_OTRPOLICY (COF_STRING | CO_CONTACT | 0x40UL) |
|---|
| 128 |
|
|---|
| 129 |
#define CO_S5HOST (COF_STRING | CO_SERVER | 0x50UL) |
|---|
| 130 |
#define CO_S5PORT (COF_NUMERIC | CO_SERVER | 0x51UL) |
|---|
| 131 |
#define CO_S5NAME (COF_STRING | CO_SERVER | 0x52UL) |
|---|
| 132 |
#define CO_S5PASS (COF_STRING | CO_SERVER | 0x53UL) |
|---|
| 133 |
|
|---|
| 134 |
#define CO_COLORNONE (COF_COLOR | CO_GLOBAL | 0x80UL) |
|---|
| 135 |
#define CO_COLORSERVER (COF_COLOR | CO_GLOBAL | 0x81UL) |
|---|
| 136 |
#define CO_COLORCLIENT (COF_COLOR | CO_GLOBAL | 0x82UL) |
|---|
| 137 |
#define CO_COLORINVCHAR (COF_COLOR | CO_GLOBAL | 0x83UL) |
|---|
| 138 |
#define CO_COLORERROR (COF_COLOR | CO_GLOBAL | 0x84UL) |
|---|
| 139 |
#define CO_COLORDEBUG (COF_COLOR | CO_GLOBAL | 0x85UL) |
|---|
| 140 |
#define CO_COLORQUOTE (COF_COLOR | CO_GLOBAL | 0x86UL) |
|---|
| 141 |
#define CO_COLORMESSAGE (COF_COLOR | CO_CONTACT | 0x87UL) |
|---|
| 142 |
#define CO_COLORSENT (COF_COLOR | CO_CONTACT | 0x88UL) |
|---|
| 143 |
#define CO_COLORACK (COF_COLOR | CO_CONTACT | 0x89UL) |
|---|
| 144 |
#define CO_COLORINCOMING (COF_COLOR | CO_CONTACT | 0x8aUL) |
|---|
| 145 |
#define CO_COLORCONTACT (COF_COLOR | CO_CONTACT | 0x8bUL) |
|---|
| 146 |
|
|---|
| 147 |
#define CO_CLIMMCOMMAND (COF_STRING | 0x30UL) |
|---|
| 148 |
|
|---|
| 149 |
#define CO_MSGTEXT (COF_STRING | 0x20UL) |
|---|
| 150 |
#define CO_MSGTYPE (COF_NUMERIC | 0x21UL) |
|---|
| 151 |
#define CO_MSGTRANS (COF_NUMERIC | 0x22UL) |
|---|
| 152 |
#define CO_ORIGIN (COF_NUMERIC | 0x23UL) |
|---|
| 153 |
#define CO_STATUS (COF_NUMERIC | 0x24UL) |
|---|
| 154 |
#define CO_BYTES (COF_NUMERIC | 0x25UL) |
|---|
| 155 |
#define CO_REF (COF_NUMERIC | 0x27UL) |
|---|
| 156 |
#define CO_FORCE (COF_NUMERIC | 0x28UL) |
|---|
| 157 |
#define CO_FILENAME (COF_STRING | 0x29UL) |
|---|
| 158 |
#define CO_FILEACCEPT (COF_NUMERIC | 0x2aUL) |
|---|
| 159 |
#define CO_REFUSE (COF_STRING | 0x2bUL) |
|---|
| 160 |
#define CO_SUBJECT (COF_STRING | 0x2cUL) |
|---|
| 161 |
#define CO_OTRINJECT (COF_NUMERIC | 0x2dUL) |
|---|
| 162 |
#define CO_SAMEHTML (COF_NUMERIC | 0x2eUL) |
|---|
| 163 |
|
|---|
| 164 |
#define CV_ORIGIN_v5 8 |
|---|
| 165 |
#define CV_ORIGIN_v8 2 |
|---|
| 166 |
#define CV_ORIGIN_dc 1 |
|---|
| 167 |
#define CV_ORIGIN_ssl 16 |
|---|
| 168 |
|
|---|
| 169 |
#define CV_MSGTRANS_DC 1 |
|---|
| 170 |
#define CV_MSGTRANS_TYPE2 2 |
|---|
| 171 |
#define CV_MSGTRANS_ICQv8 4 |
|---|
| 172 |
#define CV_MSGTRANS_ICQv5 8 |
|---|
| 173 |
#define CV_MSGTRANS_XMPP 16 |
|---|
| 174 |
#define CV_MSGTRANS_ANY 31 |
|---|
| 175 |
|
|---|
| 176 |
#endif |
|---|