/[ghosts]/ghosts/gedcomviewer/src/BakeryGateway/ViewFamilyLink.hh
ViewVC logotype

Diff of /ghosts/gedcomviewer/src/BakeryGateway/ViewFamilyLink.hh

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

revision 1.2 by cpcp, Mon Mar 3 21:39:24 2003 UTC revision 1.3 by cpcp, Wed Mar 26 10:37:36 2003 UTC
# Line 34  Line 34 
34  #include <string>  #include <string>
35  #include "GEDCOMParser/FamilyRecord.hh"  #include "GEDCOMParser/FamilyRecord.hh"
36  #include "BakeryGateway/ViewFamilyRecordNoteFactory.hh"  #include "BakeryGateway/ViewFamilyRecordNoteFactory.hh"
37    #include "MMIFamilyLink.hh"
38    #include <iostream>
39    
40    #define BUTTON_LEFT 1
41    #define BUTTON_RIGHT 3
42    
43  namespace BakeryGateway {  namespace BakeryGateway {
44    template < class T_FamilyLink >    template < class T_FamilyLink >
# Line 47  namespace BakeryGateway { Line 52  namespace BakeryGateway {
52        _during_load(false)        _during_load(false)
53      {};      {};
54    protected:    protected:
55      OneFamilyLinkHandler::ReturnHandler_t ButtonPressed(GdkEventButton * event, std::string const * key)      OneFamilyLinkHandler::PopdownLinkEditionReturnHandler_t RightButtonPressed(GdkEventButton * event, std::string const * src_key)
56      {      {
57          std::cerr << "entering RightButtonPressed " << std::endl;
58          if (event->button == BUTTON_RIGHT)
59            {
60              MMIFamilyLink * mmi_family_link = getMMIFamilyLink();
61              OneFamilyLink * one_family_link = mmi_family_link->getOneFamilyLink();
62              LinkEditorMenu_t menus;
63              MenuItems_t menus_items;
64              menus_items.push_back(MenuItem_t("New","-1"));
65              menus_items.push_back(MenuItem_t("Alfred","1"));
66              menus_items.push_back(MenuItem_t("Jean","2"));
67              menus.push_back(menus_items);
68              menus_items.clear();
69              menus_items.push_back(MenuItem_t("Thierry","3"));
70              menus_items.push_back(MenuItem_t("Mathieu","4"));
71              menus.push_back(menus_items);
72              menus.push_back(menus_items);
73              one_family_link->PopupLinkEditorMenu(menus);
74            }
75          return 1;
76        };
77        
78        OneFamilyLinkHandler::NavigationReturnHandler_t LeftButtonPressed(GdkEventButton * event, std::string const * target_key)
79        {
80          
81        bool new_win = false;        bool new_win = false;
82        if (event->state & GDK_CONTROL_MASK)        if (event->button == BUTTON_LEFT)
83          {          {
84            new_win = true;            if (event->state & GDK_CONTROL_MASK)
85                {
86                  new_win = true;
87                }
88              if (*target_key != "")
89                {
90                  Navigate(*target_key, new_win);
91                }
92          }          }
93        Navigate(*key, new_win);        return 1;
       return false;  
94      };      };
95            
96      std::string get_name_individual(GEDCOMParser::IndividualRecords_t const &individuals, std::string const &individual_id) const      std::string get_name_individual(GEDCOMParser::IndividualRecords_t const &individuals, std::string const &individual_id) const
# Line 76  namespace BakeryGateway { Line 111  namespace BakeryGateway {
111        return *individual_name;        return *individual_name;
112      };      };
113            
114      OneFamilyLinkHandler::SlotHandler_t * getSlotHandler(std::string * individu_id)      OneFamilyLinkHandler::NavigationSlotHandler_t * getNavigationSlotHandler(std::string * target_individu_id)
115        {
116          return new OneFamilyLinkHandler::NavigationSlotHandler_t(SigC::bind(SigC::slot(this, &BakeryGateway::ViewFamilyLink < T_FamilyLink > ::LeftButtonPressed), target_individu_id));
117        };
118    
119        OneFamilyLinkHandler::PopdownLinkEditionSlotHandler_t * getPopdownLinkEditionSlotHandler(std::string * src_individu_id)
120      {      {
121        return new OneFamilyLinkHandler::SlotHandler_t(SigC::bind(SigC::slot(this, &BakeryGateway::ViewFamilyLink < T_FamilyLink > ::ButtonPressed), individu_id));        return new OneFamilyLinkHandler::PopdownLinkEditionSlotHandler_t(SigC::bind(SigC::slot(this, &BakeryGateway::ViewFamilyLink < T_FamilyLink > ::RightButtonPressed), src_individu_id));
122      };      };
123            
124      void ManageFamilyRecordNote(OneFamilyLink * family_link, GEDCOMParser::FamilyRecord * family_record)      void ManageFamilyRecordNote(OneFamilyLink * family_link, GEDCOMParser::FamilyRecord * family_record)
# Line 94  namespace BakeryGateway { Line 134  namespace BakeryGateway {
134      bool _during_load;      bool _during_load;
135      virtual void family_added(void) = 0;      virtual void family_added(void) = 0;
136      virtual void family_deleted(int family_index) = 0;      virtual void family_deleted(int family_index) = 0;
137        virtual void family_edited(std::string id) = 0;
138        virtual MMIFamilyLink * getMMIFamilyLink(void) const = 0;
139    };    };
140  };  };
141    

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

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