/[ghosts]/ghosts/gedcomviewer/src/MMIglade/src/MMIMenuLinkEditor.cc
ViewVC logotype

Diff of /ghosts/gedcomviewer/src/MMIglade/src/MMIMenuLinkEditor.cc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by cpcp, Mon Mar 24 14:35:59 2003 UTC revision 1.2 by cpcp, Wed Mar 26 10:37:36 2003 UTC
# Line 27  Line 27 
27  #include <gtk--/menuitem.h>  #include <gtk--/menuitem.h>
28  #include <iostream>  #include <iostream>
29    
30  MMIMenuLinkEditor::MMIMenuLinkEditor(LinkEditorMenu_t const &menus) :  MMIMenuLinkEditor::MMIMenuLinkEditor(LinkEditorMenu_t const &menus, OneFamilyLink * const mmi) :
31    Menu()    Menu()
32  {  {
33    std::cerr << "Entree dans MMIMenuLinkEditor()" << std::endl;    Gtk::Menu * submenu = 0;
   Gtk::Menu * submenu = this;  
34    for (LinkEditorMenu_t::const_iterator submenu_iter = menus.begin();    for (LinkEditorMenu_t::const_iterator submenu_iter = menus.begin();
35         submenu_iter != menus.end(); submenu_iter++)         submenu_iter != menus.end(); submenu_iter++)
36      {      {
37        for (MenuItems_t::const_iterator menu_iter = submenu_iter->begin();        if (submenu == 0)
            menu_iter != submenu_iter->end(); menu_iter++)  
38          {          {
39            Gtk::MenuItem * menu_item = manage(new Gtk::MenuItem(*menu_iter));            submenu = this;
           submenu->append(*menu_item);  
40          }          }
41        Gtk::MenuItem * menu_item = manage(new Gtk::MenuItem(_("More")));        else
       if (submenu_iter + 1 != menus.end())  
42          {          {
43              Gtk::MenuItem * menu_item = manage(new Gtk::MenuItem(_("More")));
44              submenu->append(*menu_item);
45            submenu = manage(new Gtk::Menu());            submenu = manage(new Gtk::Menu());
46            menu_item->set_submenu(*submenu);            menu_item->set_submenu(*submenu);
47          }          }
48          for (MenuItems_t::const_iterator menu_iter = submenu_iter->begin();
49               menu_iter != submenu_iter->end(); menu_iter++)
50            {
51              std::string menu_label = menu_iter->first;
52              std::string menu_id = menu_iter->second;
53              Gtk::MenuItem * menu_item = manage(new Gtk::MenuItem(menu_label));
54              menu_item->activate.connect(SigC::bind(SigC::slot(mmi, &OneFamilyLink::menu_link_editor_activated), menu_id));
55              submenu->append(*menu_item);
56            }
57      }      }
58    show_all();    show_all();
   std::cerr << "MMIMenuLinkEditor() done" << std::endl;  
59    return;    return;
60  }  }

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26