diff options
author | Richard Wilson <rjw@netsurf-browser.org> | 2005-03-21 17:11:07 +0000 |
---|---|---|
committer | Richard Wilson <rjw@netsurf-browser.org> | 2005-03-21 17:11:07 +0000 |
commit | 6e5913f873d8fb76d6561e86fecabed2a4cfb653 (patch) | |
tree | 70fa31574bb3ddb216097bf810435120dc637bda | |
parent | 803f5179ab828aacec5776f2bcda888770fcee5d (diff) | |
download | nstheme-6e5913f873d8fb76d6561e86fecabed2a4cfb653.tar.gz nstheme-6e5913f873d8fb76d6561e86fecabed2a4cfb653.tar.bz2 |
[project @ 2005-03-21 17:11:07 by rjw]
Support version 2 themes (load/save)
svn path=/import/nstheme/; revision=2440
-rw-r--r-- | !NSTheme/Resources/en/Templates,fec | bin | 2365 -> 2388 bytes | |||
-rw-r--r-- | riscos/gui.h | 23 | ||||
-rw-r--r-- | riscos/save.c | 27 |
3 files changed, 31 insertions, 19 deletions
diff --git a/!NSTheme/Resources/en/Templates,fec b/!NSTheme/Resources/en/Templates,fec Binary files differindex 24e34a5..bef3a15 100644 --- a/!NSTheme/Resources/en/Templates,fec +++ b/!NSTheme/Resources/en/Templates,fec diff --git a/riscos/gui.h b/riscos/gui.h index 78ac3cb..aac383b 100644 --- a/riscos/gui.h +++ b/riscos/gui.h @@ -37,7 +37,7 @@ struct theme_file_header { char hotlist_bg; char status_bg; char status_fg; - char throbber_left; + char theme_flags; char future_expansion_1; char future_expansion_2; char future_expansion_3; @@ -77,16 +77,17 @@ bool ro_gui_load_theme(char *path); #define ICON_MAIN_NAME 3 #define ICON_MAIN_AUTHOR 5 #define ICON_MAIN_THROBBER_LEFT 8 -#define ICON_MAIN_REPORT 11 -#define ICON_MAIN_REMOVE 12 -#define ICON_MAIN_BROWSER_COLOUR 16 -#define ICON_MAIN_BROWSER_MENU 17 -#define ICON_MAIN_HOTLIST_COLOUR 19 -#define ICON_MAIN_HOTLIST_MENU 20 -#define ICON_MAIN_STATUSBG_COLOUR 22 -#define ICON_MAIN_STATUSBG_MENU 23 -#define ICON_MAIN_STATUSFG_COLOUR 25 -#define ICON_MAIN_STATUSFG_MENU 26 +#define ICON_MAIN_THROBBER_REDRAW 9 +#define ICON_MAIN_REPORT 10 +#define ICON_MAIN_REMOVE 11 +#define ICON_MAIN_BROWSER_COLOUR 15 +#define ICON_MAIN_BROWSER_MENU 16 +#define ICON_MAIN_HOTLIST_COLOUR 18 +#define ICON_MAIN_HOTLIST_MENU 19 +#define ICON_MAIN_STATUSBG_COLOUR 21 +#define ICON_MAIN_STATUSBG_MENU 22 +#define ICON_MAIN_STATUSFG_COLOUR 24 +#define ICON_MAIN_STATUSFG_MENU 25 #define ICON_SAVE_ICON 0 #define ICON_SAVE_PATH 1 diff --git a/riscos/save.c b/riscos/save.c index c6bc06f..acf6ba9 100644 --- a/riscos/save.c +++ b/riscos/save.c @@ -311,7 +311,7 @@ bool ro_gui_load_theme(char *path) { /* Check the header is OK */ if ((file_header->magic_value != 0x4d54534e) || - (file_header->parser_version > 1)) return false; + (file_header->parser_version > 2)) return false; /* Try to load the sprite file */ @@ -413,8 +413,17 @@ bool ro_gui_load_theme(char *path) { file_header->status_bg); ro_gui_set_icon_background_colour(dialog_main, ICON_MAIN_STATUSFG_COLOUR, file_header->status_fg); - ro_gui_set_icon_selected_state(dialog_main, ICON_MAIN_THROBBER_LEFT, - file_header->throbber_left); + if (file_header->parser_version >= 2) { + ro_gui_set_icon_selected_state(dialog_main, ICON_MAIN_THROBBER_LEFT, + file_header->theme_flags & (1 << 0)); + ro_gui_set_icon_selected_state(dialog_main, ICON_MAIN_THROBBER_REDRAW, + file_header->theme_flags & (1 << 1)); + } else { + ro_gui_set_icon_selected_state(dialog_main, ICON_MAIN_THROBBER_LEFT, + file_header->theme_flags); + ro_gui_set_icon_selected_state(dialog_main, ICON_MAIN_THROBBER_REDRAW, + true); + } /* Remember the filename for saving later on */ @@ -450,7 +459,7 @@ bool ro_gui_save_theme(char *path) { /* Complete the header */ file_header->magic_value = 0x4d54534e; - file_header->parser_version = 1; + file_header->parser_version = 2; strcpy(file_header->name, ro_gui_get_icon_string(dialog_main, ICON_MAIN_NAME)); strcpy(file_header->author, ro_gui_get_icon_string(dialog_main, ICON_MAIN_AUTHOR)); file_header->browser_bg = ro_gui_get_icon_background_colour(dialog_main, @@ -461,10 +470,12 @@ bool ro_gui_save_theme(char *path) { ICON_MAIN_STATUSBG_COLOUR); file_header->status_fg = ro_gui_get_icon_background_colour(dialog_main, ICON_MAIN_STATUSFG_COLOUR); - if (ro_gui_get_icon_selected_state(dialog_main, ICON_MAIN_THROBBER_LEFT)) { - file_header->throbber_left = 0xff; - } - + if (ro_gui_get_icon_selected_state(dialog_main, ICON_MAIN_THROBBER_LEFT)) + file_header->theme_flags = (1 << 0); + if (ro_gui_get_icon_selected_state(dialog_main, ICON_MAIN_THROBBER_REDRAW)) + file_header->theme_flags = (1 << 1); + + /* Append the compressed sprites */ if (theme_sprites) { |