From f76a0ca3e93dcdf538fe21f20d6839200feb3270 Mon Sep 17 00:00:00 2001 From: Tomasz Sowa Date: Mon, 2 Jul 2012 19:15:50 +0000 Subject: [PATCH] added: some ezc functions in menu plugin git-svn-id: svn://ttmath.org/publicrep/winix/trunk@859 e52654a7-88a9-db11-a3e9-0013d4bc506e --- plugins/menu/templates.cpp | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/plugins/menu/templates.cpp b/plugins/menu/templates.cpp index 7d7af40..597f862 100755 --- a/plugins/menu/templates.cpp +++ b/plugins/menu/templates.cpp @@ -326,6 +326,28 @@ void menu_dir_tab_is_dir(Info & i) } +void menu_dir_tab_is_file(Info & i) +{ + if( stack->fun_data ) + { + StackItem * sitem = reinterpret_cast(stack->fun_data); + + if( stack->iter < sitem->citem->menu_items.size() ) + i.res = (sitem->citem->menu_items[stack->iter].type == Item::file); + } +} + + +void menu_dir_tab_is_symlink(Info & i) +{ + if( stack->fun_data ) + { + StackItem * sitem = reinterpret_cast(stack->fun_data); + + if( stack->iter < sitem->citem->menu_items.size() ) + i.res = (sitem->citem->menu_items[stack->iter].type == Item::symlink); + } +} void menu_dir_tab_is_current(Info & i) { @@ -339,6 +361,18 @@ void menu_dir_tab_is_current(Info & i) } +void menu_dir_tab_is_current_the_same_dir(Info & i) +{ + if( stack->fun_data ) + { + StackItem * sitem = reinterpret_cast(stack->fun_data); + + if( stack->iter < sitem->citem->menu_items.size() ) + i.res = (sitem->citem->menu_items[stack->iter].id == cur->request->dir_tab.back()->id); + } +} + + // returning true if the dir tab element is a first parent for current item @@ -398,7 +432,10 @@ void AddEzcFunctions(PluginInfo & info) fun->Insert("menu_dir_tab_url", menu_dir_tab_url); fun->Insert("menu_dir_tab_link", menu_dir_tab_link); fun->Insert("menu_dir_tab_is_dir", menu_dir_tab_is_dir); + fun->Insert("menu_dir_tab_is_file", menu_dir_tab_is_file); + fun->Insert("menu_dir_tab_is_symlink", menu_dir_tab_is_symlink); fun->Insert("menu_dir_tab_is_current", menu_dir_tab_is_current); + fun->Insert("menu_dir_tab_is_current_the_same_dir", menu_dir_tab_is_current_the_same_dir); fun->Insert("menu_dir_tab_is_first_parent_for_current_item", menu_dir_tab_is_first_parent_for_current_item); fun->Insert("menu_dir_tab_is_parent_for_current_item", menu_dir_tab_is_parent_for_current_item); }