/*
Silky - A GTK+ client for SILC.
Copyright (C) 2003, 2004, 2005 Toni Willberg
- Arrays defining layout of xml config files
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
http://silky.sourceforge.net/
*/
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <string.h>
#include "silcincludes.h"
#include "silcclient.h"
/* some of our support functions */
#include "support.h"
/* config files */
#include "xmlconfig.h"
#include "xmllayout.h"
#include "common.h"
/* arrays for xml elements and attributes definitions follow... */
/* attribute number, name used in xml, default value */
SilkyXMLAttribute xml_attributes[] = {
{ ATTR_VERSION, "version", SILKY_VERSION },
{ ATTR_CONFIG_VERSION, "config-version", SILKY_CONFIG_VERSION },
};
gint xml_attr_bits[] = {
ATTR_VERSION,
ATTR_CONFIG_VERSION,
};
/* { name, type, parent, additional attributes,
default value
Keep this in same order as enums
*/
/* using number of main config elements here, because it's largest */
SilkyXMLElement xml_elements[NUM_CONFIG][NUM_CM] = {
/**************** MAIN */
{
{ NULL, 0, 0, NULL },
{ "silky", 0, ATTR_VERSION | ATTR_CONFIG_VERSION, NULL },
{ "userinfo", CM_ROOT, 0, NULL },
{ "nickname", CM_USERINFO, 0, "" }, /* empty, system should provide this */
{ "realname", CM_USERINFO, 0, "Silky User" },
{ "quitmessage", CM_USERINFO, 0, N_("Another happy Silky user") },
{ "gui", CM_ROOT, 0, NULL },
{ "colors", CM_GUI, 0, NULL },
{ "mynickname", CM_GUI_COLORS, 0, "default" },
{ "mytext", CM_GUI_COLORS, 0, "default" },
{ "myaction", CM_GUI_COLORS, 0, "default" },
{ "nicknames", CM_GUI_COLORS, 0, "default" },
{ "text", CM_GUI_COLORS, 0, "default" },
{ "actions", CM_GUI_COLORS, 0, "default" },
{ "timestamp", CM_GUI_COLORS, 0, "default" },
{ "servermessages", CM_GUI_COLORS, 0, "default" },
{ "inputbox", CM_GUI_COLORS, 0, "default" },
{ "background", CM_GUI_COLORS, 0, "default" },
{ "highlight-words", CM_GUI_COLORS, 0, "default" },
{ "highlight-mynick", CM_GUI_COLORS, 0, "default" },
{ "highlights", CM_GUI, 0, NULL },
{ "own-nick", CM_GUI_HIGHLIGHTS, 0, "ON" },
{ "words", CM_GUI_HIGHLIGHTS, 0, "" },
{ "font", CM_GUI, 0, "" },
{ "debug-usec", CM_GUI, 0, "OFF" },
{ "cmdhistory-depth", CM_GUI, 0, "50" },
{ "tips", CM_GUI, 0, "ON" },
{ "security", CM_ROOT, 0, NULL },
{ "message-signing", CM_SECURITY, 0, NULL },
{ "channel-messages", CM_SECURITY_MESSAGE_SIGNING, 0, "ON" },
{ "private-messages", CM_SECURITY_MESSAGE_SIGNING, 0, "ON" },
{ "channel-actions", CM_SECURITY_MESSAGE_SIGNING, 0, "ON" },
{ "private-actions", CM_SECURITY_MESSAGE_SIGNING, 0, "ON" },
},
/****** SERVERS */
{
{ NULL, 0, 0, NULL },
{ "silky", 0, ATTR_VERSION | ATTR_CONFIG_VERSION, NULL },
{ "server", CS_ROOT, 0, NULL },
{ "hostname", CS_SERVER, 0, "" },
{ "port", CS_SERVER, 0, "706" },
{ "autoconnect", CS_SERVER, 0, "OFF" },
},
/****** BUDDIES */
{
{ NULL, 0, 0, NULL },
{ "silky", 0, ATTR_VERSION | ATTR_CONFIG_VERSION, NULL },
{ "buddy", CB_ROOT, 0, NULL },
{ "nickname", CB_BUDDY, 0, "" },
{ "realname", CB_BUDDY, 0, "" },
{ "fingerprint", CB_BUDDY, 0, "" },
{ "keyverified", CB_BUDDY, 0, "" },
{ "notes", CB_BUDDY, 0, "" },
{ "attributes", CB_BUDDY, 0, NULL },
{ "languages", CB_BUDDY_ATTR, 0, "" },
{ "preferred-contact", CB_BUDDY_ATTR, 0, "" },
{ "timezone", CB_BUDDY_ATTR, 0, "" },
{ "geolocation", CB_BUDDY_ATTR, 0, "" }
}
};
syntax highlighted by Code2HTML, v. 0.9.1