added: some ezc functions in menu plugin

git-svn-id: svn://ttmath.org/publicrep/winix/trunk@859 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
Tomasz Sowa 2012-07-02 19:15:50 +00:00
parent 5a6d1991ac
commit f76a0ca3e9
1 changed files with 37 additions and 0 deletions

View File

@ -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<StackItem*>(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<StackItem*>(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<StackItem*>(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);
}