Skip to content

Instantly share code, notes, and snippets.

@mayank33
Created June 17, 2016 19:43
Show Gist options
  • Save mayank33/ddb832a8b4d9494c17c54042cb79b23f to your computer and use it in GitHub Desktop.
Save mayank33/ddb832a8b4d9494c17c54042cb79b23f to your computer and use it in GitHub Desktop.
pugi::xml_node menu_items_menu_node = menu_items_node.child("menu");
while( menu_items_menu_node ) {
/* submenu creation */
Wt::WPopupMenu *nextLevel = new Wt::WPopupMenu();
firstLevel->addMenu(menu_items_menu_node.child_value("label"), nextLevel);
/* iteration over second occurance of items */
pugi::xml_node menu_items_menu_items_node = menu_items_menu_node.child("items");
while ( menu_items_menu_items_node ) {
/* iteration over internal occurance of menuitem */
pugi::xml_node menu_items_menu_items_menuitem_node = menu_items_menu_items_node.child("menuitem");
while( menu_items_menu_items_menuitem_node ) {
//string* tt="haha";
//nextLevel->addItem(menu_items_menu_items_menuitem_node.child_value("label"));
nextLevel->addItem(menu_items_menu_items_menuitem_node.child_value("label"),menu_items_menu_items_menuitem_node.child_value("command"))->triggered().connect(this, &MainUI::click);
menu_items_menu_items_menuitem_node = menu_items_menu_items_menuitem_node.next_sibling("menuitem");
}
menu_items_menu_items_node = menu_items_menu_items_node.next_sibling("items");
}
menu_items_menu_node = menu_items_menu_node.next_sibling("menu");
}
/* iteration over outer occurance of menuitem */
pugi::xml_node menu_items_menuitem_node = menu_items_node.child("menuitem");
while ( menu_items_menuitem_node ) {
firstLevel->addItem(menu_items_menuitem_node.child_value("label"));
menu_items_menuitem_node = menu_items_menuitem_node.next_sibling("menuitem");
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment