diff options
author | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2012-11-29 22:08:47 +0000 |
---|---|---|
committer | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2012-11-29 22:08:47 +0000 |
commit | d66e9c34a8e5e6081541c2b7bfd1e97012289494 (patch) | |
tree | 7a0b465997360be856b97eebf8ae5ac09d0805b8 | |
parent | ec79063155c809d52e54812e0045900bbad53532 (diff) | |
download | netsurf-d66e9c34a8e5e6081541c2b7bfd1e97012289494.tar.gz netsurf-d66e9c34a8e5e6081541c2b7bfd1e97012289494.tar.bz2 |
Create "menu" and "toolbar" directories in the hotlist if they don't exist on startup
-rwxr-xr-x | amiga/hotlist.c | 37 | ||||
-rw-r--r-- | resources/FatMessages | 13 |
2 files changed, 49 insertions, 1 deletions
diff --git a/amiga/hotlist.c b/amiga/hotlist.c index 6469cbd90..b67e10fd4 100755 --- a/amiga/hotlist.c +++ b/amiga/hotlist.c @@ -18,8 +18,41 @@ #include <proto/exec.h> #include "amiga/hotlist.h" -#include "desktop/hotlist.h" #include "amiga/tree.h" +#include "desktop/hotlist.h" +#include "utils/messages.h" + +bool ami_hotlist_find_dir(struct tree *tree, const char *dir_name) +{ + struct node *root = tree_node_get_child(tree_get_root(tree)); + struct node *node; + struct node_element *element; + + for (node = root; node; node = tree_node_get_next(node)) + { + element = tree_node_find_element(node, TREE_ELEMENT_TITLE, NULL); + if(!element) element = tree_node_find_element(node, TREE_ELEMENT_TITLE, NULL); + if(element && (strcmp(tree_node_element_get_text(element), dir_name) == 0)) + { + return true; + } + } + + return false; +} + +void ami_hotlist_add_default_dirs(struct tree *tree) +{ + if(ami_hotlist_find_dir(tree, messages_get("HotlistMenu")) == false) { + tree_create_folder_node(tree, tree_get_root(tree), + messages_get("HotlistMenu"), true, false, false); + } + + if(ami_hotlist_find_dir(tree, messages_get("HotlistToolbar")) == false) { + tree_create_folder_node(tree, tree_get_root(tree), + messages_get("HotlistToolbar"), true, false, false); + } +} void ami_hotlist_initialise(const char *hotlist_file) { @@ -30,6 +63,8 @@ void ami_hotlist_initialise(const char *hotlist_file) hotlist_initialise(ami_tree_get_tree(hotlist_window), hotlist_file, tree_directory_icon_name); + + ami_hotlist_add_default_dirs(ami_tree_get_tree(hotlist_window)); } void ami_hotlist_free(const char *hotlist_file) diff --git a/resources/FatMessages b/resources/FatMessages index 45b308662..e8f22aaf0 100644 --- a/resources/FatMessages +++ b/resources/FatMessages @@ -1207,6 +1207,19 @@ fr.all.HotlistFeatureRequest:Demandes de nouvelles fonctions de Netsurf it.all.HotlistFeatureRequest:Suggerimenti per NetSurf nl.all.HotlistFeatureRequest:NetSurf feature requests +# Default (Amiga) hotlist folder names +# +en.ami.HotlistMenu:Hotlist menu +de.ami.HotlistMenu:Hotlist menu +fr.ami.HotlistMenu:Hotlist menu +it.ami.HotlistMenu:Hotlist menu +nl.ami.HotlistMenu:Hotlist menu +en.ami.HotlistToolbar:Hotlist toolbar +de.ami.HotlistToolbar:Hotlist toolbar +fr.ami.HotlistToolbar:Hotlist toolbar +it.ami.HotlistToolbar:Hotlist toolbar +nl.ami.HotlistToolbar:Hotlist toolbar + # Global history user interface tokens # ==================================== |