/[ghosts]/ghosts/gedcomviewer/src/BakeryGateway/View.cpp
ViewVC logotype

Diff of /ghosts/gedcomviewer/src/BakeryGateway/View.cpp

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

revision 1.1 by cpcp, Tue Oct 1 15:08:30 2002 UTC revision 1.2 by cpcp, Tue Nov 12 21:25:22 2002 UTC
# Line 1  Line 1 
1    /**
2        Copyright 2002 Cyril Picard
3    
4        This file is part of the GEDCOMViewer tool
5        (developed within the Genealogy Free Software Tools project).
6    
7        The GEDCOMViewer tool is free software; you can redistribute it and/or modify
8        it under the terms of the GNU General Public License as published by
9        the Free Software Foundation; either version 2 of the License, or
10        (at your option) any later version.
11    
12        The GEDCOMViewer tool is distributed in the hope that it will be useful,
13        but WITHOUT ANY WARRANTY; without even the implied warranty of
14        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15        GNU General Public License for more details.
16    
17        You should have received a copy of the GNU General Public License
18        along with the GEDCOMViewer tool ; if not, write to the Free Software
19        Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
20    
21    **/
22  #include "BakeryGateway/View.hh"  #include "BakeryGateway/View.hh"
23  #include "BakeryGateway/ViewSpouseToFamilyLinkNoteFactory.hh"  #include "BakeryGateway/ViewSpouseToFamilyLinkNoteFactory.hh"
24  #include "BakeryGateway/ViewChildToFamilyLinkNoteFactory.hh"  #include "BakeryGateway/ViewChildToFamilyLinkNoteFactory.hh"
# Line 6  Line 27 
27    
28  BakeryGateway::View::View() :  BakeryGateway::View::View() :
29    _view_tree_browser(0),    _view_tree_browser(0),
30    _view_list_browser(0)    _view_list_browser(0),
31      _view_header(0)
32  {  {
33    _view_individualrecord = new BakeryGateway::ViewIndividualRecord(MMIIndividualRecord);    _view_individualrecord = new BakeryGateway::ViewIndividualRecord(MMIIndividualRecord);
34    _view_personalname = new BakeryGateway::ViewPersonalName(MMIIndividualRecord->MMIPersonalName);    _view_personalname = new BakeryGateway::ViewPersonalName(MMIIndividualRecord->MMIPersonalName);
# Line 36  BakeryGateway::View::~View() Line 58  BakeryGateway::View::~View()
58  {  {
59    DeleteViewTreeBrowser();    DeleteViewTreeBrowser();
60    DeleteViewListBrowser();    DeleteViewListBrowser();
61      DeleteViewDataHeader();
62    return;    return;
63  }  }
64    
# Line 46  void BakeryGateway::View::on_menu_TreeBr Line 69  void BakeryGateway::View::on_menu_TreeBr
69      {      {
70        _view_tree_browser = new BakeryGateway::ViewTreeBrowser();        _view_tree_browser = new BakeryGateway::ViewTreeBrowser();
71        _view_individualrecord->subscribe_view(_view_tree_browser);        _view_individualrecord->subscribe_view(_view_tree_browser);
72          _view_individualrecord->notify_subscribees();
73        _view_tree_browser->setTarget(_view_individualrecord);        _view_tree_browser->setTarget(_view_individualrecord);
74        _view_tree_browser->getMMI().delete_event.connect(slot(this, &BakeryGateway::View::cb_DeleteViewTreeBrowser));        _view_tree_browser->getMMI().delete_event.connect(slot(this, &BakeryGateway::View::cb_DeleteViewTreeBrowser));
75        if (!get_document()->get_is_new())        if (!get_document()->get_is_new())
# Line 56  void BakeryGateway::View::on_menu_TreeBr Line 80  void BakeryGateway::View::on_menu_TreeBr
80    return;    return;
81  }  }
82    
83    
84  void BakeryGateway::View::on_menu_ListBrowser(void)  void BakeryGateway::View::on_menu_ListBrowser(void)
85  {  {
86    if (_view_list_browser == 0)    if (_view_list_browser == 0)
87      {      {
88        _view_list_browser = new BakeryGateway::ViewListBrowser();        _view_list_browser = new BakeryGateway::ViewListBrowser();
89        _view_individualrecord->subscribe_view(_view_list_browser);        _view_individualrecord->subscribe_view(_view_list_browser);
90          _view_individualrecord->notify_subscribees();
91        _view_list_browser->setTarget(_view_individualrecord);        _view_list_browser->setTarget(_view_individualrecord);
92        _view_list_browser->getMMI().delete_event.connect(slot(this, &BakeryGateway::View::cb_DeleteViewListBrowser));        _view_list_browser->getMMI().delete_event.connect(slot(this, &BakeryGateway::View::cb_DeleteViewListBrowser));
93        if (!get_document()->get_is_new())        if (!get_document()->get_is_new())
# Line 72  void BakeryGateway::View::on_menu_ListBr Line 98  void BakeryGateway::View::on_menu_ListBr
98    return;    return;
99  }  }
100    
101    void BakeryGateway::View::on_menu_DataHeader(void)
102    {
103      if (_view_header == 0)
104        {
105          _view_header = new BakeryGateway::ViewHeader();
106          add_view(_view_header);
107          _view_header->getMMI()->delete_event.connect(slot(this, &BakeryGateway::View::cb_DeleteViewDataHeader));
108          if (!get_document()->get_is_new())
109            {
110              _view_header->load_from_document();
111            }
112        }
113      return;
114    }
115    
116    void BakeryGateway::View::DeleteViewDataHeader(void)
117    {
118      remove_view(_view_header);
119      delete _view_header; _view_header = 0;
120      return;
121    }
122    
123  void BakeryGateway::View::DeleteViewTreeBrowser(void)  void BakeryGateway::View::DeleteViewTreeBrowser(void)
124  {  {
125    _view_individualrecord->unsubscribe_view(_view_tree_browser);    _view_individualrecord->unsubscribe_view(_view_tree_browser);
# Line 98  int BakeryGateway::View::cb_DeleteViewLi Line 146  int BakeryGateway::View::cb_DeleteViewLi
146    return 0;    return 0;
147  }  }
148    
149    int BakeryGateway::View::cb_DeleteViewDataHeader(GdkEventAny * event)
150    {
151      DeleteViewDataHeader();
152      return 0;
153    }
154    
155    
156    

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