21 |
**/ |
**/ |
22 |
#include "BakeryGateway/ViewIndividualAttributes.hh" |
#include "BakeryGateway/ViewIndividualAttributes.hh" |
23 |
#include "GEDCOMParser/IndividualAttribute.hh" |
#include "GEDCOMParser/IndividualAttribute.hh" |
24 |
|
#include "GEDCOMHelper/IndividualRecordHelper.hh" |
25 |
#include <functional> |
#include <functional> |
26 |
#include <algorithm> |
#include <algorithm> |
27 |
#include <iostream> |
#include <iostream> |
39 |
{ |
{ |
40 |
if ((! _during_load) && (_parent_entity != 0)) |
if ((! _during_load) && (_parent_entity != 0)) |
41 |
{ |
{ |
42 |
|
GEDCOMHelper::IndividualRecordHelper helper(_parent_entity, get_document()); |
43 |
std::string const new_occupation = _mmi_individual_attributes->getOccupation(); |
std::string const new_occupation = _mmi_individual_attributes->getOccupation(); |
44 |
if (_parent_entity->getOccupation() != 0) |
if (helper.getOccupation() != new_occupation) |
45 |
{ |
{ |
46 |
if (new_occupation != _parent_entity->getOccupation()->getValue()) |
helper.setOccupation(new_occupation); |
|
{ |
|
|
_parent_entity->getOccupation()->setValue(new_occupation); |
|
|
} |
|
|
} |
|
|
else |
|
|
{ |
|
|
GEDCOMParser::IndividualAttribute * ia = _parent_entity->addIndividualAttribute(); |
|
|
ia->setType(GEDCOMParser::IndividualAttribute::e_Occu); |
|
|
ia->setValue(new_occupation); |
|
47 |
} |
} |
48 |
} |
} |
49 |
return; |
return; |
63 |
void BakeryGateway::ViewIndividualAttributes::load_from_document(void) |
void BakeryGateway::ViewIndividualAttributes::load_from_document(void) |
64 |
{ |
{ |
65 |
_during_load = true; |
_during_load = true; |
|
_mmi_individual_attributes->setOccupation(""); |
|
66 |
std::string occupation = ""; |
std::string occupation = ""; |
67 |
if (_parent_entity != 0) |
if (_parent_entity != 0) |
68 |
{ |
{ |
69 |
if (_parent_entity->getOccupation() != 0) |
GEDCOMHelper::IndividualRecordHelper individual_record_helper(_parent_entity, get_document()); |
70 |
{ |
occupation = individual_record_helper.getOccupation(); |
|
occupation = _parent_entity->getOccupation()->getValue(); |
|
|
} |
|
|
_mmi_individual_attributes->setOccupation(occupation); |
|
71 |
} |
} |
72 |
|
_mmi_individual_attributes->setOccupation(occupation); |
73 |
_during_load = false; |
_during_load = false; |
74 |
return; |
return; |
75 |
} |
} |