summaryrefslogtreecommitdiff
path: root/riscos/configure
diff options
context:
space:
mode:
authorVincent Sanders <vince@netsurf-browser.org>2012-03-22 09:34:34 +0000
committerVincent Sanders <vince@netsurf-browser.org>2012-03-22 09:34:34 +0000
commit1490b52a6b96b6a69a0c4fe9e0515dc717425128 (patch)
tree8caba44a9da98e6cebf4f188e3232534b1596a4d /riscos/configure
parent0797bf5a5731b2c8d55105b453530584ea4e1f5b (diff)
downloadnetsurf-1490b52a6b96b6a69a0c4fe9e0515dc717425128.tar.gz
netsurf-1490b52a6b96b6a69a0c4fe9e0515dc717425128.tar.bz2
NetSurf options rework (a=vince r=daniels,jmb)
svn path=/trunk/netsurf/; revision=13548
Diffstat (limited to 'riscos/configure')
-rw-r--r--riscos/configure/con_cache.c8
-rw-r--r--riscos/configure/con_connect.c82
-rw-r--r--riscos/configure/con_content.c27
-rw-r--r--riscos/configure/con_fonts.c61
-rw-r--r--riscos/configure/con_home.c18
-rw-r--r--riscos/configure/con_image.c25
-rw-r--r--riscos/configure/con_inter.c58
-rw-r--r--riscos/configure/con_language.c22
-rw-r--r--riscos/configure/con_memory.c17
-rw-r--r--riscos/configure/con_secure.c14
-rw-r--r--riscos/configure/con_theme.c15
11 files changed, 184 insertions, 163 deletions
diff --git a/riscos/configure/con_cache.c b/riscos/configure/con_cache.c
index 45a952cdb..cd211236e 100644
--- a/riscos/configure/con_cache.c
+++ b/riscos/configure/con_cache.c
@@ -21,7 +21,6 @@
#include "desktop/options.h"
#include "riscos/dialog.h"
#include "riscos/gui.h"
-#include "riscos/options.h"
#include "riscos/wimp.h"
#include "riscos/wimp_event.h"
#include "riscos/configure.h"
@@ -45,7 +44,7 @@ bool ro_gui_options_cache_initialise(wimp_w w)
{
/* set the current values */
ro_gui_set_icon_decimal(w, CACHE_MEMORY_SIZE,
- (option_memory_cache_size * 10) >> 20, 1);
+ (nsoption_int(memory_cache_size) * 10) >> 20, 1);
/* initialise all functions for a newly created window */
ro_gui_wimp_event_register_numeric_field(w, CACHE_MEMORY_SIZE,
@@ -74,8 +73,9 @@ bool ro_gui_options_cache_click(wimp_pointer *pointer)
bool ro_gui_options_cache_ok(wimp_w w)
{
- option_memory_cache_size = (((ro_gui_get_icon_decimal(w,
- CACHE_MEMORY_SIZE, 1) + 1) << 20) - 1) / 10;
+ nsoption_set_int(memory_cache_size,
+ (((ro_gui_get_icon_decimal(w,
+ CACHE_MEMORY_SIZE, 1) + 1) << 20) - 1) / 10);
ro_gui_save_options();
return true;
diff --git a/riscos/configure/con_connect.c b/riscos/configure/con_connect.c
index fd74155bd..c47e90419 100644
--- a/riscos/configure/con_connect.c
+++ b/riscos/configure/con_connect.c
@@ -24,7 +24,6 @@
#include "riscos/configure/configure.h"
#include "riscos/dialog.h"
#include "riscos/menus.h"
-#include "riscos/options.h"
#include "riscos/tinct.h"
#include "riscos/wimp.h"
#include "riscos/wimp_event.h"
@@ -55,7 +54,7 @@
#define CONNECTION_CANCEL_BUTTON 28
#define CONNECTION_OK_BUTTON 29
-#define http_proxy_type (option_http_proxy ? (option_http_proxy_auth + 1) : 0)
+#define http_proxy_type (nsoption_bool(http_proxy) ? (nsoption_int(http_proxy_auth) + 1) : 0)
static int ro_gui_options_connection_proxy_type(wimp_w w);
static void ro_gui_options_connection_default(wimp_pointer *pointer);
@@ -68,27 +67,27 @@ bool ro_gui_options_connection_initialise(wimp_w w)
int proxy_type;
/* set the current values */
- proxy_type = (option_http_proxy ? (option_http_proxy_auth + 1) : 0);
+ proxy_type = (nsoption_bool(http_proxy) ? (nsoption_int(http_proxy_auth) + 1) : 0);
ro_gui_set_icon_string(w, CONNECTION_PROXY_FIELD,
proxy_type_menu->entries[proxy_type].
data.indirected_text.text, true);
ro_gui_set_icon_string(w, CONNECTION_PROXY_HOST,
- option_http_proxy_host ?
- option_http_proxy_host : "", true);
+ nsoption_charp(http_proxy_host) ?
+ nsoption_charp(http_proxy_host) : "", true);
ro_gui_set_icon_integer(w, CONNECTION_PROXY_PORT,
- option_http_proxy_port);
+ nsoption_int(http_proxy_port));
ro_gui_set_icon_string(w, CONNECTION_PROXY_USERNAME,
- option_http_proxy_auth_user ?
- option_http_proxy_auth_user : "", true);
+ nsoption_charp(http_proxy_auth_user) ?
+ nsoption_charp(http_proxy_auth_user) : "", true);
ro_gui_set_icon_string(w, CONNECTION_PROXY_PASSWORD,
- option_http_proxy_auth_pass ?
- option_http_proxy_auth_pass : "", true);
+ nsoption_charp(http_proxy_auth_pass) ?
+ nsoption_charp(http_proxy_auth_pass) : "", true);
ro_gui_set_icon_integer(w, CONNECTION_MAX_FETCH_FIELD,
- option_max_fetchers);
+ nsoption_int(max_fetchers));
ro_gui_set_icon_integer(w, CONNECTION_HOST_FETCH_FIELD,
- option_max_fetchers_per_host);
+ nsoption_int(max_fetchers_per_host));
ro_gui_set_icon_integer(w, CONNECTION_CACHE_FETCH_FIELD,
- option_max_cached_fetch_handles);
+ nsoption_int(max_cached_fetch_handles));
ro_gui_options_connection_update(w, -1, NULL, NULL, NO_ACTION);
/* register icons */
@@ -181,32 +180,39 @@ bool ro_gui_options_connection_ok(wimp_w w)
int proxy_type;
proxy_type = ro_gui_options_connection_proxy_type(w);
- if (proxy_type == 0)
- option_http_proxy = false;
- else {
- option_http_proxy = true;
- option_http_proxy_auth = proxy_type - 1;
+ if (proxy_type == 0) {
+ nsoption_set_bool(http_proxy, false);
+ } else {
+ nsoption_set_bool(http_proxy, true);
+ nsoption_set_int(http_proxy_auth, proxy_type - 1);
}
- if (option_http_proxy_host)
- free(option_http_proxy_host);
- option_http_proxy_host = strdup(ro_gui_get_icon_string(w,
- CONNECTION_PROXY_HOST));
- option_http_proxy_port = ro_gui_get_icon_decimal(w,
- CONNECTION_PROXY_PORT, 0);
- if (option_http_proxy_auth_user)
- free(option_http_proxy_auth_user);
- option_http_proxy_auth_user = strdup(ro_gui_get_icon_string(w,
- CONNECTION_PROXY_USERNAME));
- if (option_http_proxy_auth_pass)
- free(option_http_proxy_auth_pass);
- option_http_proxy_auth_pass = strdup(ro_gui_get_icon_string(w,
- CONNECTION_PROXY_PASSWORD));
- option_max_fetchers = ro_gui_get_icon_decimal(w,
- CONNECTION_MAX_FETCH_FIELD, 0);
- option_max_fetchers_per_host = ro_gui_get_icon_decimal(w,
- CONNECTION_HOST_FETCH_FIELD, 0);
- option_max_cached_fetch_handles = ro_gui_get_icon_decimal(w,
- CONNECTION_CACHE_FETCH_FIELD, 0);
+
+ nsoption_set_charp(http_proxy_host,
+ strdup(ro_gui_get_icon_string(w,
+ CONNECTION_PROXY_HOST)));
+
+ nsoption_set_int(http_proxy_port,
+ ro_gui_get_icon_decimal(w, CONNECTION_PROXY_PORT, 0));
+
+ nsoption_set_charp(http_proxy_auth_user,
+ strdup(ro_gui_get_icon_string(w,
+ CONNECTION_PROXY_USERNAME)));
+
+ nsoption_set_charp(http_proxy_auth_pass,
+ strdup(ro_gui_get_icon_string(w,
+ CONNECTION_PROXY_PASSWORD)));
+
+ nsoption_set_int(max_fetchers,
+ ro_gui_get_icon_decimal(w,
+ CONNECTION_MAX_FETCH_FIELD, 0));
+
+ nsoption_set_int(max_fetchers_per_host,
+ ro_gui_get_icon_decimal(w,
+ CONNECTION_HOST_FETCH_FIELD, 0));
+
+ nsoption_set_int(max_cached_fetch_handles,
+ ro_gui_get_icon_decimal(w,
+ CONNECTION_CACHE_FETCH_FIELD, 0));
ro_gui_save_options();
return true;
diff --git a/riscos/configure/con_content.c b/riscos/configure/con_content.c
index bda7b6d57..a8e9f78b4 100644
--- a/riscos/configure/con_content.c
+++ b/riscos/configure/con_content.c
@@ -20,7 +20,6 @@
#include "desktop/options.h"
#include "riscos/dialog.h"
#include "riscos/gui.h"
-#include "riscos/options.h"
#include "riscos/wimp.h"
#include "riscos/wimp_event.h"
#include "riscos/configure.h"
@@ -44,13 +43,13 @@ bool ro_gui_options_content_initialise(wimp_w w)
{
/* set the current values */
ro_gui_set_icon_selected_state(w, CONTENT_BLOCK_ADVERTISEMENTS,
- option_block_ads);
+ nsoption_bool(block_ads));
ro_gui_set_icon_selected_state(w, CONTENT_BLOCK_POPUPS,
- option_block_popups);
+ nsoption_bool(block_popups));
ro_gui_set_icon_selected_state(w, CONTENT_NO_PLUGINS,
- option_no_plugins);
+ nsoption_bool(no_plugins));
ro_gui_set_icon_selected_state(w, CONTENT_TARGET_BLANK,
- option_target_blank);
+ nsoption_bool(target_blank));
/* initialise all functions for a newly created window */
ro_gui_wimp_event_register_checkbox(w, CONTENT_BLOCK_ADVERTISEMENTS);
@@ -83,14 +82,16 @@ void ro_gui_options_content_default(wimp_pointer *pointer)
bool ro_gui_options_content_ok(wimp_w w)
{
- option_block_ads = ro_gui_get_icon_selected_state(w,
- CONTENT_BLOCK_ADVERTISEMENTS);
- option_block_popups = ro_gui_get_icon_selected_state(w,
- CONTENT_BLOCK_POPUPS);
- option_no_plugins = ro_gui_get_icon_selected_state(w,
- CONTENT_NO_PLUGINS);
- option_target_blank = ro_gui_get_icon_selected_state(w,
- CONTENT_TARGET_BLANK);
+ nsoption_set_bool(block_ads,
+ ro_gui_get_icon_selected_state(w, CONTENT_BLOCK_ADVERTISEMENTS));
+
+ nsoption_set_bool(block_popups,
+ ro_gui_get_icon_selected_state(w, CONTENT_BLOCK_POPUPS));
+ nsoption_set_bool(no_plugins,
+ ro_gui_get_icon_selected_state(w, CONTENT_NO_PLUGINS));
+
+ nsoption_set_bool(target_blank,
+ ro_gui_get_icon_selected_state(w, CONTENT_TARGET_BLANK));
ro_gui_save_options();
return true;
diff --git a/riscos/configure/con_fonts.c b/riscos/configure/con_fonts.c
index b420b26e5..0bd13ce2a 100644
--- a/riscos/configure/con_fonts.c
+++ b/riscos/configure/con_fonts.c
@@ -23,7 +23,6 @@
#include "riscos/dialog.h"
#include "riscos/gui.h"
#include "riscos/menus.h"
-#include "riscos/options.h"
#include "riscos/wimp.h"
#include "riscos/wimp_event.h"
#include "riscos/configure.h"
@@ -74,15 +73,15 @@ static bool ro_gui_options_fonts_init_menu(void);
bool ro_gui_options_fonts_initialise(wimp_w w)
{
/* set the current values */
- ro_gui_set_icon_decimal(w, FONT_DEFAULT_SIZE, option_font_size, 1);
- ro_gui_set_icon_decimal(w, FONT_MINIMUM_SIZE, option_font_min_size, 1);
- ro_gui_set_icon_string(w, FONT_SANS_FIELD, option_font_sans, true);
- ro_gui_set_icon_string(w, FONT_SERIF_FIELD, option_font_serif, true);
- ro_gui_set_icon_string(w, FONT_MONOSPACE_FIELD, option_font_mono, true);
- ro_gui_set_icon_string(w, FONT_CURSIVE_FIELD, option_font_cursive, true);
- ro_gui_set_icon_string(w, FONT_FANTASY_FIELD, option_font_fantasy, true);
+ ro_gui_set_icon_decimal(w, FONT_DEFAULT_SIZE, nsoption_int(font_size), 1);
+ ro_gui_set_icon_decimal(w, FONT_MINIMUM_SIZE, nsoption_int(font_min_size), 1);
+ ro_gui_set_icon_string(w, FONT_SANS_FIELD, nsoption_charp(font_sans), true);
+ ro_gui_set_icon_string(w, FONT_SERIF_FIELD, nsoption_charp(font_serif), true);
+ ro_gui_set_icon_string(w, FONT_MONOSPACE_FIELD, nsoption_charp(font_mono), true);
+ ro_gui_set_icon_string(w, FONT_CURSIVE_FIELD, nsoption_charp(font_cursive), true);
+ ro_gui_set_icon_string(w, FONT_FANTASY_FIELD, nsoption_charp(font_fantasy), true);
ro_gui_set_icon_string(w, FONT_DEFAULT_FIELD,
- font_names[option_font_default], true);
+ font_names[nsoption_int(font_default)], true);
if (!ro_gui_options_fonts_init_menu())
return false;
@@ -140,22 +139,32 @@ bool ro_gui_options_fonts_ok(wimp_w w)
{
unsigned int i;
- option_font_size = ro_gui_get_icon_decimal(w, FONT_DEFAULT_SIZE, 1);
- option_font_min_size = ro_gui_get_icon_decimal(w, FONT_MINIMUM_SIZE, 1);
- if (option_font_size < option_font_min_size) {
- option_font_size = option_font_min_size;
- ro_gui_set_icon_decimal(w, FONT_DEFAULT_SIZE, option_font_size, 1);
- }
- free(option_font_sans);
- option_font_sans = strdup(ro_gui_get_icon_string(w, FONT_SANS_FIELD));
- free(option_font_serif);
- option_font_serif = strdup(ro_gui_get_icon_string(w, FONT_SERIF_FIELD));
- free(option_font_mono);
- option_font_mono = strdup(ro_gui_get_icon_string(w, FONT_MONOSPACE_FIELD));
- free(option_font_cursive);
- option_font_cursive = strdup(ro_gui_get_icon_string(w, FONT_CURSIVE_FIELD));
- free(option_font_fantasy);
- option_font_fantasy = strdup(ro_gui_get_icon_string(w, FONT_FANTASY_FIELD));
+ nsoption_set_int(font_size,
+ ro_gui_get_icon_decimal(w, FONT_DEFAULT_SIZE, 1));
+
+ nsoption_set_int(font_min_size,
+ ro_gui_get_icon_decimal(w, FONT_MINIMUM_SIZE, 1));
+
+ if (nsoption_int(font_size) < nsoption_int(font_min_size)) {
+ nsoption_set_int(font_size, nsoption_int(font_min_size));
+ ro_gui_set_icon_decimal(w, FONT_DEFAULT_SIZE, nsoption_int(font_size), 1);
+
+}
+
+ nsoption_set_charp(font_sans,
+ strdup(ro_gui_get_icon_string(w, FONT_SANS_FIELD)));
+
+ nsoption_set_charp(font_serif,
+ strdup(ro_gui_get_icon_string(w, FONT_SERIF_FIELD)));
+
+ nsoption_set_charp(font_mono,
+ strdup(ro_gui_get_icon_string(w, FONT_MONOSPACE_FIELD)));
+
+ nsoption_set_charp(font_cursive,
+ strdup(ro_gui_get_icon_string(w, FONT_CURSIVE_FIELD)));
+
+ nsoption_set_charp(font_fantasy,
+ strdup(ro_gui_get_icon_string(w, FONT_FANTASY_FIELD)));
for (i = 0; i != 5; i++) {
if (!strcmp(font_names[i], ro_gui_get_icon_string(w,
@@ -166,7 +175,7 @@ bool ro_gui_options_fonts_ok(wimp_w w)
/* this should never happen, but still */
i = 0;
- option_font_default = i;
+ nsoption_set_int(font_default, i);
ro_gui_save_options();
return true;
diff --git a/riscos/configure/con_home.c b/riscos/configure/con_home.c
index 65cc4e39a..9e966b96e 100644
--- a/riscos/configure/con_home.c
+++ b/riscos/configure/con_home.c
@@ -21,7 +21,6 @@
#include "riscos/dialog.h"
#include "riscos/gui.h"
#include "riscos/menus.h"
-#include "riscos/options.h"
#include "riscos/url_suggest.h"
#include "riscos/wimp.h"
#include "riscos/wimp_event.h"
@@ -46,9 +45,12 @@ bool ro_gui_options_home_initialise(wimp_w w)
{
/* set the current values */
ro_gui_set_icon_string(w, HOME_URL_FIELD,
- option_homepage_url ? option_homepage_url : "", true);
+ nsoption_charp(homepage_url) ?
+ nsoption_charp(homepage_url) : "", true);
+
ro_gui_set_icon_selected_state(w, HOME_OPEN_STARTUP,
- option_open_browser_at_startup);
+ nsoption_bool(open_browser_at_startup));
+
ro_gui_set_icon_shaded_state(w,
HOME_URL_GRIGHT, !ro_gui_url_suggest_prepare_menu());
@@ -78,11 +80,11 @@ void ro_gui_options_home_default(wimp_pointer *pointer)
bool ro_gui_options_home_ok(wimp_w w)
{
- if (option_homepage_url)
- free(option_homepage_url);
- option_homepage_url = strdup(ro_gui_get_icon_string(w, HOME_URL_FIELD));
- option_open_browser_at_startup = ro_gui_get_icon_selected_state(w,
- HOME_OPEN_STARTUP);
+ nsoption_set_charp(homepage_url,
+ strdup(ro_gui_get_icon_string(w, HOME_URL_FIELD)));
+
+ nsoption_set_bool(open_browser_at_startup,
+ ro_gui_get_icon_selected_state(w, HOME_OPEN_STARTUP));
ro_gui_save_options();
return true;
diff --git a/riscos/configure/con_image.c b/riscos/configure/con_image.c
index 1cb29a267..8617e6d2e 100644
--- a/riscos/configure/con_image.c
+++ b/riscos/configure/con_image.c
@@ -24,7 +24,6 @@
#include "riscos/configure/configure.h"
#include "riscos/dialog.h"
#include "riscos/menus.h"
-#include "riscos/options.h"
#include "riscos/tinct.h"
#include "riscos/wimp.h"
#include "riscos/wimp_event.h"
@@ -78,19 +77,19 @@ bool ro_gui_options_image_initialise(wimp_w w)
/* set the current values */
for (i = 0; (i < 4); i++) {
- if ((unsigned int)option_fg_plot_style == tinct_options[i])
+ if ((unsigned int)nsoption_int(fg_plot_style) == tinct_options[i])
ro_gui_set_icon_string(w, IMAGE_FOREGROUND_FIELD,
image_quality_menu->entries[i].
data.indirected_text.text, true);
- if ((unsigned int)option_bg_plot_style == tinct_options[i])
+ if ((unsigned int)nsoption_int(bg_plot_style) == tinct_options[i])
ro_gui_set_icon_string(w, IMAGE_BACKGROUND_FIELD,
image_quality_menu->entries[i].
data.indirected_text.text, true);
}
ro_gui_set_icon_decimal(w, IMAGE_SPEED_FIELD,
- option_minimum_gif_delay, 2);
+ nsoption_int(minimum_gif_delay), 2);
ro_gui_set_icon_selected_state(w, IMAGE_DISABLE_ANIMATION,
- !option_animate_images);
+ !nsoption_bool(animate_images));
ro_gui_options_update_shading(w);
/* register icons */
@@ -252,12 +251,16 @@ void ro_gui_options_update_shading(wimp_w w)
bool ro_gui_options_image_ok(wimp_w w)
{
- ro_gui_options_image_read(w, (unsigned int *) &option_bg_plot_style,
- (unsigned int *) &option_fg_plot_style);
- option_minimum_gif_delay = ro_gui_get_icon_decimal(w,
- IMAGE_SPEED_FIELD, 2);
- option_animate_images = !ro_gui_get_icon_selected_state(w,
- IMAGE_DISABLE_ANIMATION);
+ ro_gui_options_image_read(w,
+ (unsigned int *)&nsoption_int(bg_plot_style),
+ (unsigned int *)&nsoption_int(fg_plot_style));
+
+ nsoption_set_int(minimum_gif_delay,
+ ro_gui_get_icon_decimal(w, IMAGE_SPEED_FIELD, 2));
+
+ nsoption_set_bool(animate_images,
+ !ro_gui_get_icon_selected_state(w,
+ IMAGE_DISABLE_ANIMATION));
ro_gui_save_options();
return true;
diff --git a/riscos/configure/con_inter.c b/riscos/configure/con_inter.c
index 570ba5782..be2114b05 100644
--- a/riscos/configure/con_inter.c
+++ b/riscos/configure/con_inter.c
@@ -19,7 +19,7 @@
#include <stdbool.h>
#include "riscos/dialog.h"
#include "riscos/gui.h"
-#include "riscos/options.h"
+#include "desktop/options.h"
#include "riscos/wimp.h"
#include "riscos/wimp_event.h"
#include "riscos/configure.h"
@@ -46,23 +46,23 @@ bool ro_gui_options_interface_initialise(wimp_w w)
{
/* set the current values */
ro_gui_set_icon_selected_state(w, INTERFACE_STRIP_EXTNS_OPTION,
- option_strip_extensions);
+ nsoption_bool(strip_extensions));
ro_gui_set_icon_selected_state(w, INTERFACE_CONFIRM_OVWR_OPTION,
- option_confirm_overwrite);
+ nsoption_bool(confirm_overwrite));
ro_gui_set_icon_selected_state(w, INTERFACE_URL_COMPLETE_OPTION,
- option_url_suggestion);
+ nsoption_bool(url_suggestion));
ro_gui_set_icon_selected_state(w, INTERFACE_HISTORY_TOOLTIP_OPTION,
- option_history_tooltip);
+ nsoption_bool(history_tooltip));
ro_gui_set_icon_selected_state(w, INTERFACE_THUMBNAIL_ICONISE_OPTION,
- option_thumbnail_iconise);
+ nsoption_bool(thumbnail_iconise));
ro_gui_set_icon_selected_state(w, INTERFACE_USE_EXTERNAL_HOTLIST,
- option_external_hotlists);
+ nsoption_bool(external_hotlists));
ro_gui_set_icon_string(w, INTERFACE_EXTERNAL_HOTLIST_APP,
- (option_external_hotlist_app) ?
- option_external_hotlist_app : "", false);
+ (nsoption_charp(external_hotlist_app)) ?
+ nsoption_charp(external_hotlist_app) : "", false);
ro_gui_set_icon_shaded_state(w, INTERFACE_EXTERNAL_HOTLIST_APP,
- !option_external_hotlists);
+ !nsoption_bool(external_hotlists));
/* initialise all functions for a newly created window */
ro_gui_wimp_event_register_mouse_click(w,
@@ -117,23 +117,27 @@ void ro_gui_options_interface_default(wimp_pointer *pointer)
bool ro_gui_options_interface_ok(wimp_w w)
{
- option_strip_extensions = ro_gui_get_icon_selected_state(w,
- INTERFACE_STRIP_EXTNS_OPTION);
- option_confirm_overwrite = ro_gui_get_icon_selected_state(w,
- INTERFACE_CONFIRM_OVWR_OPTION);
- option_url_suggestion = ro_gui_get_icon_selected_state(w,
- INTERFACE_URL_COMPLETE_OPTION);
- option_history_tooltip = ro_gui_get_icon_selected_state(w,
- INTERFACE_HISTORY_TOOLTIP_OPTION);
- option_thumbnail_iconise = ro_gui_get_icon_selected_state(w,
- INTERFACE_THUMBNAIL_ICONISE_OPTION);
- option_external_hotlists = ro_gui_get_icon_selected_state(w,
- INTERFACE_USE_EXTERNAL_HOTLIST);
- if (option_external_hotlist_app)
- free(option_external_hotlist_app);
- option_external_hotlist_app =
- strdup(ro_gui_get_icon_string(w,
- INTERFACE_EXTERNAL_HOTLIST_APP));
+ nsoption_set_bool(strip_extensions,
+ ro_gui_get_icon_selected_state(w,
+ INTERFACE_STRIP_EXTNS_OPTION));
+ nsoption_set_bool(confirm_overwrite,
+ ro_gui_get_icon_selected_state(w,
+ INTERFACE_CONFIRM_OVWR_OPTION));
+ nsoption_set_bool(url_suggestion,
+ ro_gui_get_icon_selected_state(w,
+ INTERFACE_URL_COMPLETE_OPTION));
+ nsoption_set_bool(history_tooltip,
+ ro_gui_get_icon_selected_state(w,
+ INTERFACE_HISTORY_TOOLTIP_OPTION));
+ nsoption_set_bool(thumbnail_iconise,
+ ro_gui_get_icon_selected_state(w,
+ INTERFACE_THUMBNAIL_ICONISE_OPTION));
+ nsoption_set_bool(external_hotlists,
+ ro_gui_get_icon_selected_state(w,
+ INTERFACE_USE_EXTERNAL_HOTLIST));
+ nsoption_set_charp(external_hotlist_app,
+ strdup(ro_gui_get_icon_string(w,
+ INTERFACE_EXTERNAL_HOTLIST_APP)));
ro_gui_save_options();
return true;
diff --git a/riscos/configure/con_language.c b/riscos/configure/con_language.c
index 4e8490055..be40b1c39 100644
--- a/riscos/configure/con_language.c
+++ b/riscos/configure/con_language.c
@@ -22,7 +22,6 @@
#include "riscos/dialog.h"
#include "riscos/gui.h"
#include "riscos/menus.h"
-#include "riscos/options.h"
#include "riscos/wimp.h"
#include "riscos/wimp_event.h"
#include "riscos/configure.h"
@@ -48,11 +47,11 @@ bool ro_gui_options_language_initialise(wimp_w w)
{
/* set the current values */
ro_gui_set_icon_string(w, LANGUAGE_INTERFACE_FIELD,
- ro_gui_options_language_name(option_language ?
- option_language : "en"), true);
+ ro_gui_options_language_name(nsoption_charp(language) ?
+ nsoption_charp(language) : "en"), true);
ro_gui_set_icon_string(w, LANGUAGE_WEB_PAGES_FIELD,
- ro_gui_options_language_name(option_accept_language ?
- option_accept_language : "en"), true);
+ ro_gui_options_language_name(nsoption_charp(accept_language) ?
+ nsoption_charp(accept_language) : "en"), true);
/* initialise all functions for a newly created window */
ro_gui_wimp_event_register_menu_gright(w, LANGUAGE_INTERFACE_FIELD,
@@ -92,11 +91,11 @@ bool ro_gui_options_language_ok(wimp_w w)
ro_gui_get_icon_string(w, LANGUAGE_INTERFACE_FIELD));
if (code) {
code += 5; /* skip 'lang_' */
- if ((!option_language) || (strcmp(option_language, code))) {
+ if ((!nsoption_charp(language)) ||
+ (strcmp(nsoption_charp(language), code))) {
temp = strdup(code);
if (temp) {
- free(option_language);
- option_language = temp;
+ nsoption_set_charp(language, temp);
} else {
LOG(("No memory to duplicate language code"));
warn_user("NoMemory", 0);
@@ -107,12 +106,11 @@ bool ro_gui_options_language_ok(wimp_w w)
ro_gui_get_icon_string(w, LANGUAGE_WEB_PAGES_FIELD));
if (code) {
code += 5; /* skip 'lang_' */
- if ((!option_accept_language) ||
- (strcmp(option_accept_language, code))) {
+ if ((!nsoption_charp(accept_language)) ||
+ (strcmp(nsoption_charp(accept_language), code))) {
temp = strdup(code);
if (temp) {
- free(option_accept_language);
- option_accept_language = temp;
+ nsoption_set_charp(accept_language,temp);
} else {
LOG(("No memory to duplicate language code"));
warn_user("NoMemory", 0);
diff --git a/riscos/configure/con_memory.c b/riscos/configure/con_memory.c
index 65d9bed26..5bf890597 100644
--- a/riscos/configure/con_memory.c
+++ b/riscos/configure/con_memory.c
@@ -19,7 +19,6 @@
#include <stdbool.h>
#include "desktop/options.h"
#include "riscos/bitmap.h"
-#include "riscos/options.h"
#include "riscos/wimp.h"
#include "riscos/wimp_event.h"
#include "riscos/dialog.h"
@@ -52,9 +51,9 @@ bool ro_gui_options_memory_initialise(wimp_w w)
ro_gui_set_icon_decimal(w, MEMORY_COMPRESSED_FIELD,
(bitmap_compressed_size * 10) >> 20, 1);
ro_gui_set_icon_selected_state(w, MEMORY_DIRECT_AUTO,
- (option_image_memory_direct == -1));
+ (nsoption_int(image_memory_direct) == -1));
ro_gui_set_icon_selected_state(w, MEMORY_COMPRESSED_AUTO,
- (option_image_memory_compressed == -1));
+ (nsoption_int(image_memory_compressed) == -1));
ro_gui_options_update_shading(w);
/* register icons */
@@ -123,17 +122,17 @@ bool ro_gui_options_memory_ok(wimp_w w)
{
/* set the option values */
if (ro_gui_get_icon_selected_state(w, MEMORY_DIRECT_AUTO))
- option_image_memory_direct = -1;
+ nsoption_set_int(image_memory_direct, -1);
else
- option_image_memory_direct =
+ nsoption_set_int(image_memory_direct,
(((ro_gui_get_icon_decimal(w, MEMORY_DIRECT_FIELD, 1)
- << 10) + 1023) / 10);
+ << 10) + 1023) / 10));
if (ro_gui_get_icon_selected_state(w, MEMORY_COMPRESSED_AUTO))
- option_image_memory_compressed = -1;
+ nsoption_set_int(image_memory_compressed, -1);
else
- option_image_memory_compressed =
+ nsoption_set_int(image_memory_compressed,
(((ro_gui_get_icon_decimal(w, MEMORY_COMPRESSED_FIELD, 1)
- << 10) + 1023) / 10);
+ << 10) + 1023) / 10));
/* update the memory usage */
bitmap_initialise_memory();
ro_gui_set_icon_decimal(w, MEMORY_DIRECT_FIELD,
diff --git a/riscos/configure/con_secure.c b/riscos/configure/con_secure.c
index c3b289b45..568a03ddd 100644
--- a/riscos/configure/con_secure.c
+++ b/riscos/configure/con_secure.c
@@ -20,7 +20,6 @@
#include "desktop/options.h"
#include "riscos/dialog.h"
#include "riscos/gui.h"
-#include "riscos/options.h"
#include "riscos/wimp.h"
#include "riscos/wimp_event.h"
#include "riscos/configure.h"
@@ -44,9 +43,9 @@ bool ro_gui_options_security_initialise(wimp_w w)
{
/* set the current values */
ro_gui_set_icon_selected_state(w, SECURITY_REFERRER,
- option_send_referer);
+ nsoption_bool(send_referer));
ro_gui_set_icon_integer(w, SECURITY_DURATION_FIELD,
- option_expire_url);
+ nsoption_int(expire_url));
/* initialise all functions for a newly created window */
ro_gui_wimp_event_register_checkbox(w, SECURITY_REFERRER);
@@ -73,10 +72,11 @@ void ro_gui_options_security_default(wimp_pointer *pointer)
bool ro_gui_options_security_ok(wimp_w w)
{
- option_send_referer = ro_gui_get_icon_selected_state(w,
- SECURITY_REFERRER);
- option_expire_url = ro_gui_get_icon_decimal(w,
- SECURITY_DURATION_FIELD, 0);
+ nsoption_set_bool(send_referer,
+ ro_gui_get_icon_selected_state(w, SECURITY_REFERRER));
+
+ nsoption_set_int(expire_url,
+ ro_gui_get_icon_decimal(w,SECURITY_DURATION_FIELD, 0));
ro_gui_save_options();
return true;
diff --git a/riscos/configure/con_theme.c b/riscos/configure/con_theme.c
index a6dc98265..b41484be0 100644
--- a/riscos/configure/con_theme.c
+++ b/riscos/configure/con_theme.c
@@ -23,11 +23,11 @@
#include "oslib/wimp.h"
#include "oslib/wimpspriteop.h"
#include "utils/config.h"
+#include "desktop/options.h"
#include "riscos/configure/configure.h"
#include "riscos/configure.h"
#include "riscos/dialog.h"
#include "riscos/menus.h"
-#include "riscos/options.h"
#include "riscos/theme.h"
#include "riscos/toolbar.h"
#include "riscos/url_complete.h"
@@ -151,7 +151,7 @@ bool ro_gui_options_theme_initialise(wimp_w w)
ro_gui_options_theme_load();
/* set the current selection */
- theme_choice = ro_gui_theme_find(option_theme);
+ theme_choice = ro_gui_theme_find(nsoption_charp(theme));
if (!theme_choice)
theme_choice = ro_gui_theme_find("Aletheia");
for (toolbar = toolbars; toolbar; toolbar = toolbar->next)
@@ -202,13 +202,12 @@ bool ro_gui_options_theme_ok(wimp_w w)
}
/* set the options */
- if (option_theme)
- free(option_theme);
if (theme_new) {
- option_theme = strdup(theme_new->leafname);
+ nsoption_set_charp(theme, strdup(theme_new->leafname));
ro_gui_theme_apply(theme_new);
- } else
- option_theme = NULL;
+ } else {
+ nsoption_set_charp(theme, NULL);
+ }
ro_gui_save_options();
/* store the pane status */
@@ -269,7 +268,7 @@ void ro_gui_options_theme_load(void)
TOOLBAR_FLAGS_DISPLAY, NULL, NULL, NULL);
if (toolbar != NULL) {
ro_toolbar_add_buttons(toolbar, brower_toolbar_buttons,
- option_toolbar_browser);
+ nsoption_charp(toolbar_browser));
ro_toolbar_add_url(toolbar);
ro_toolbar_add_throbber(toolbar);
ro_toolbar_rebuild(toolbar);