The Menu Manipulation example demonstrates how to manipulate the menu, changing it from the system default.
using namespace makVrf;
{
virtual bool shouldAddCreationItem(
const DtEntityPaletteItem& item,
const QString& category,
const QString& deployedCountry,
int force)
const
{
if ((force == DtForceFriendly) && (item.myMapperKey == DtEntityType(1, 1, 225, 1, 1, 3, 0)))
{
return false;
}
return true;
}
};
void DtCreateMenuConfigurationLoaded(makVrv::DtDe* de,
const DtFilename&,
DtVrfModelSetManager* mgr)
{
DtListItem* item = copySet.first();
while (item)
{
{
}
else if (entry->
label() ==
"Route")
{
}
item = item->next();
}
}
void removeMenuItems(makVrv::DtDe& de)
{
(boost::bind(&DtCreateMenuConfigurationLoaded, &de, _1, _2));
}
void DtTaskMenuConfigurationLoaded(makVrv::DtDe* de)
{
}
void reorganizeTaskMenuItems(makVrv::DtDe& de)
{
makVrv::DtMenuPath::mainMenu(
DtTaskMenuId).menu(
"DtEmbarkSubmenu"));
(boost::bind(&DtTaskMenuConfigurationLoaded, &de));
}
void exampleMenuItemTrigger(makVrv::DtDe& de, void* usr)
{
QMessageBox::information(NULL, QObject::tr("Example Menu Item Pressed"), QObject::tr("Your menu item works!"));
}
void addToCreateMenu(makVrv::DtDe& de)
{
makVrv::DtMenuPath::mainMenu(
DtCreateMenuId).item(
"DtExampleMenuItem"),
makVrv::DtMenuPath::mainMenu(
DtCreateMenuId).item(
"Obstacle"), &exampleMenuItemTrigger);
makVrv::DtMenuPath::menu("DtExampleMenu").item("M1A2"),
}
void DtSetMenuConfigurationLoaded(makVrv::DtDe* de)
{
}
void reorganizeSetMenuItems(makVrv::DtDe& de)
{
makVrv::DtMenuPath::mainMenu(
DtSetMenuId).menu(
"DtPositioningSetSubmenu"),
(boost::bind(&DtSetMenuConfigurationLoaded, &de));
}
void addMenu(makVrv::DtDe& de)
{
makVrv::DtMenuPath::mainMenu("DtExampleMenu"),
makVrv::DtMenuPath::mainMenu("DtExampleMenu").item("DtExampleMenuItem"),
&exampleMenuItemTrigger);
}
void modifyRightClick(makVrv::DtDe& de)
{
}
{
removeMenuItems(*de);
reorganizeTaskMenuItems(*de);
reorganizeSetMenuItems(*de);
addToCreateMenu(*de);
addMenu(*de);
modifyRightClick(*de);
return true;
}
{
}