Added theme files support with /theme command

This commit is contained in:
James Booth
2012-11-21 22:33:07 +00:00
parent e8b2b7196c
commit cd4465394b
6 changed files with 118 additions and 30 deletions

View File

@@ -40,6 +40,7 @@
#include "preferences.h"
#include "prof_autocomplete.h"
#include "profanity.h"
#include "theme.h"
#include "tinyurl.h"
#include "ui.h"
@@ -124,6 +125,7 @@ static gboolean _cmd_xa(gchar **args, struct cmd_help_t help);
static gboolean _cmd_info(gchar **args, struct cmd_help_t help);
static gboolean _cmd_wins(gchar **args, struct cmd_help_t help);
static gboolean _cmd_nick(gchar **args, struct cmd_help_t help);
static gboolean _cmd_theme(gchar **args, struct cmd_help_t help);
/*
* The commands are broken down into three groups:
@@ -191,6 +193,18 @@ static struct cmd_t main_commands[] =
"you will need to restart Profanity for config file edits to take effect.",
NULL } } },
{ "/theme",
_cmd_theme, parse_args, 1, 1,
{ "/theme [theme-name]", "Change colour theme.",
{ "/theme [theme-name]",
"--------------",
"Change the colour setting as defined in:",
"",
" ~/.profanity/themes/theme-name",
"",
"Using \"default\" as the theme name will reset to the default colours.",
NULL } } },
{ "/msg",
_cmd_msg, parse_args_with_freetext, 2, 2,
{ "/msg user@host mesg", "Send mesg to user.",
@@ -1077,6 +1091,20 @@ _cmd_prefs(gchar **args, struct cmd_help_t help)
return TRUE;
}
static gboolean
_cmd_theme(gchar **args, struct cmd_help_t help)
{
if (theme_change(args[0])) {
win_load_colours();
prefs_set_theme(args[0]);
cons_show("Loaded theme: %s", args[0]);
} else {
cons_show("Couldn't find theme: %s", args[0]);
}
return TRUE;
}
static gboolean
_cmd_who(gchar **args, struct cmd_help_t help)
{