📄 pref.c
字号:
/* * gsms - global preferences - loading & saving configuration data * * Authors: Michael Jochum <e9725005@stud3.tuwien.ac.at> * * TODO: * * Fixes: * * For license terms, see the file COPYING in the project directory. */#include <gnome.h>#include "pref.h"Preferences configuration;void pref_init(void){ memset(&configuration, 0, sizeof(Preferences));}void pref_load(void){ Preferences *s; s = &configuration; gnome_config_push_prefix ("/gsms/Preferences/");#define pref_load_string(key, to) \ g_free(to); to=NULL; \ if((to = gnome_config_get_string(key)) == NULL ) \ to = g_strdup(""); pref_load_string("mail_receive_method=none", s->mail_receive_method); pref_load_string("mail_send_method=none", s->mail_send_method); s->net_timeout = gnome_config_get_int("net_timeout=30"); s->http_proxy_enabled = gnome_config_get_bool( "http_proxy_enabled=false"); pref_load_string("http_proxy", s->http_proxy); s->http_proxy_port = gnome_config_get_int("http_proxy_port=8000"); s->max_threads = gnome_config_get_int("max_threads=4"); pref_load_string("pop3_server", s->pop3_server); s->pop3_port = gnome_config_get_int("pop3_port=110"); pref_load_string("pop3_user", s->pop3_user); pref_load_string("pop3_passwd", s->pop3_passwd); s->pop3_check = gnome_config_get_int("pop3_check_period=-1"); s->pop3_store = gnome_config_get_bool("pop3_store"); s->pop3_delete = gnome_config_get_bool("pop3_delete"); pref_load_string("smtp_server", s->smtp_server); s->smtp_port = gnome_config_get_int("smtp_port=25"); pref_load_string("smtp_email", s->smtp_email); pref_load_string("smtp_host", s->smtp_host); pref_load_string("textfont", s->fontname);#undef pref_load_string gnome_config_pop_prefix ();}void pref_save(void){ Preferences *s = &configuration; gnome_config_push_prefix ("/gsms/Preferences/"); gnome_config_set_string("mail_receive_method", s->mail_receive_method); gnome_config_set_string("mail_send_method", s->mail_send_method); /* Network */ gnome_config_set_int("net_timeout", s->net_timeout); gnome_config_set_bool("http_proxy_enabled", s->http_proxy_enabled); gnome_config_set_string("http_proxy", s->http_proxy); gnome_config_set_int("http_proxy_port", s->http_proxy_port); gnome_config_set_int("max_threads", s->max_threads); /* POP3 */ gnome_config_set_string("pop3_server", s->pop3_server); gnome_config_set_int("pop3_port", s->pop3_port); gnome_config_set_string("pop3_user", s->pop3_user); gnome_config_set_string("pop3_passwd", s->pop3_passwd); gnome_config_set_int("pop3_check_period", s->pop3_check); gnome_config_set_bool("pop3_store", s->pop3_store); gnome_config_set_bool("pop3_delete", s->pop3_delete); /* SMTP */ gnome_config_set_string("smtp_server", s->smtp_server); gnome_config_set_int("smtp_port", s->smtp_port); gnome_config_set_string("smtp_email", s->smtp_email); gnome_config_set_string("smtp_host", s->smtp_host); /* Font */ gnome_config_set_string("textfont", s->fontname); gnome_config_pop_prefix (); gnome_config_sync ();}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -