]> code.citadel.org Git - citadel.git/blobdiff - webcit/preferences.h
BSTR: add method to run-time add numbers
[citadel.git] / webcit / preferences.h
index 64d0c04ed4ad95101964dc4c31dde5e7f30f4903..7a3c04300ec5923da5abdf6eb6c40b59da870add 100644 (file)
@@ -1,17 +1,18 @@
 
-
-#define PRF_STRING 1
-#define PRF_INT 2
-#define PRF_QP_STRING 3
-#define PRF_YESNO 4
-
+typedef enum _ePrefType{
+       PRF_UNSET = 0,
+       PRF_STRING = 1,
+       PRF_INT = 2,
+       PRF_QP_STRING = 3,
+       PRF_YESNO = 4
+} ePrefType;
 
 
 typedef void (*PrefEvalFunc)(StrBuf *Preference, long lvalue); 
 
 void _RegisterPreference(const char *Setting, long SettingLen, 
                         const char *PrefStr, 
-                        long Type, 
+                        ePrefType Type, 
                         PrefEvalFunc OnLoad, 
                         const char *OnLoadName);
 
@@ -41,6 +42,8 @@ StrBuf *get_ROOM_PREFS(const char *key, size_t keylen);
 
 #define set_room_pref(a, b, c) set_ROOM_PREFS(a, sizeof(a) - 1, b, c)
 void set_ROOM_PREFS(const char *key, size_t keylen, StrBuf *value, int save_to_server);
+#define get_room_pref_long(a, b, c) get_ROOM_PREFS_LONG(a, sizeof(a) - 1, b, c)
+long get_ROOM_PREFS_LONG(const char *key, size_t keylen, long *value, long Default);
 
 
 #define get_x_pref(a, b) get_ROOM_PREFS(a, sizeof(a) - 1, b, sizeof(b) - 1)
@@ -49,3 +52,5 @@ const StrBuf *get_X_PREFS(const char *key, size_t keylen,
 
 #define set_x_pref(a, b, c) set_ROOM_PREFS(a, sizeof(a) - 1, b, sizeof(b) - 1, c, d)
 void set_X_PREFS(const char *key, size_t keylen, const char *xkey, size_t xkeylen, StrBuf *value, int save_to_server);
+
+int goto_config_room(StrBuf *Buf, folder *room);