winix/plugins/menu/init.cpp

79 lines
1.2 KiB
C++
Executable File

/*
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2011, Tomasz Sowa
* All rights reserved.
*
*/
#include "core/log.h"
#include "core/plugin.h"
extern "C" void Init(PluginInfo &);
namespace Menu
{
const wchar_t plugin_name[] = L"menu";
int mount_par_menu_skip = -1;
void AddMountParams(PluginInfo & info)
{
using TemplatesFunctions::system;
mount_par_menu_skip = system->mounts.AddMountPar(L"menu_skip");
}
void FstabChanged(PluginInfo & info)
{
if( mount_par_menu_skip == -1 )
return;
/*
// GetMountTab() returns a const pointer so we cannot sort menu_skip parameters
// may change it to non-const in the future?
const Mounts::MountTab * mt = system->mounts.GetMountTab();
Mounts::MountTab::const_iterator i;
for(i = mt->begin() ; i != mt->end() ; ++i)
SortMenuSkip(i->second);
*/
}
void AddEzcFunctions(PluginInfo & info);
} // namespace
void Init(PluginInfo & info)
{
using namespace Menu;
plugin.Assign(WINIX_TEMPLATES_CREATEFUNCTIONS, AddEzcFunctions);
plugin.Assign(WINIX_ADD_MOUNTS, AddMountParams);
plugin.Assign(WINIX_FSTAB_CHANGED, FstabChanged);
info.p1 = (void*)(plugin_name);
}