- Setting->Type = PrefType;
- if (PrefType->OnLoad != NULL)
- PrefType->OnLoad(Setting->Val, Setting->lval);
+ Pref->Type = PrefType;
+
+ lprintf(1, "Loading [%s]with type [%ld] [\"%s\"]\n",
+ ChrPtr(Pref->Key),
+ Pref->Type->Type,
+ ChrPtr(Pref->Val));
+
+ switch (Pref->Type->Type)
+ {
+
+ case PRF_STRING:
+ break;
+ case PRF_INT:
+ Pref->lval = StrTol(Pref->Val);
+ Pref->decoded = 1;
+ break;
+ case PRF_QP_STRING:
+ Pref->DeQPed = NewStrBufPlain(NULL, StrLength(Pref->Val));
+ StrBufEUid_unescapize(Pref->DeQPed, Pref->Val);
+ Pref->decoded = 1;
+ break;
+ case PRF_YESNO:
+ Pref->lval = strcmp(ChrPtr(Pref->Val), "yes") == 0;
+ Pref->decoded = 1;
+ break;
+ }
+
+ if (PrefType->OnLoad != NULL){
+
+ lprintf(1, "Loading with: -> %s(\"%s\", %ld)\n",
+ ChrPtr(PrefType->OnLoadName),
+ ChrPtr(Pref->Val),
+ Pref->lval);
+ PrefType->OnLoad(Pref->Val, Pref->lval);
+ }