Копирование - вырезание - вставка - удаление.

Чтобы скопировать/вырезать/удалить одного родственника можно щелкнуть на рамке родственника правой кнопкой мыши и выбрать соответствующий пункт меню.

Чтобы скопировать/вырезать/удалить несколько родственников, необходимо сначала выделить их, затем или а) щелкнуть на рамке одного из выделенных родственников правой кнопкой мыши и выбрать соответствующий пункт выпадающего меню или б) выбрать соответствующий пункт из меню "Правка".

Вставить родственника или группу родственников из буфера обмена можно только через выпадающее меню - щелкните правой кнопкой мыши на свободном от рамок месте и выберите пункт "Вставить" - содержимое буфера обмена будет вставлено таким образом, что левый верхний угол родственника или всей группы будет находиться в месте щелчка.

Удалить семью можно только в Списке семей - см. Список семей. При этом удаляются только семейные связи, а не сами члены семьи.

Особенности операций копирования, вырезания, вставки и удаления.

Все эти операции производятся только над родственниками. Единственное исключение - удаление семьи в Списке семей.
При всех этих операциях поддерживается логическая целостность ссылок. Вот как это происходит при разных операциях:

    При копировании одного родственника:
  • Выбранный родственник копируется в буфер обмена и у этой копии удаляются все семейные связи.
  • Все записи общего пользования, на которые у этого родственника есть ссылки, также копируются в буфер обмена, а у копии сохраняются ссылки на них.
    При копировании группы родственников:
  • Копии выбранных родственников помещаются в буфер обмена.
  • У всех этих копий проверяются все семейные связи. Если эти связи - между членами данной группы, то они сохраняются, а копии этих семей также помещаются в буфер обмена.
  • У каждой копии семьи проверяются ссылки на всех её членов, и, если члены эти не попали в данную группу, то ссылки на них удаляются.
  • Все записи общего пользования, на которых у скопированных родственников и семей есть ссылки, также копируются в буфер обмена, а у копий сохраняются ссылки на них.
    При удалении одного родственника:
  • Выбранный родственник удаляется, а у всех семей, где он был членом, удаляются ссылки на него.
  • Если у какой-либо семьи в результате этого остается менее 2-х членов, то такая семья также удаляется.
    При удалении группы родственников:
  • Выбранные родственники удаляются, а у всех семей, где они были членами, удаляются ссылки на них.
  • Если у какой-либо семьи в результате этого остается менее 2-х членов, то такая семья также удаляется.
    При удалении семьи:
  • Семья удаляется из дерева.
  • У всех членов семьи удаляются ссылки на эту семью.
    Вырезание является комбинацией двух вышеприведенных операций.
    При вставке из буфера обмена:
  • Содержащиеся в буфере обмена родственники и семьи добавляются в дерево с новыми идентификационными номерами (ID).
  • Относительно записей общего пользования, которые были связаны с копируемыми родственниками и семьями и потому попали в буфер обмена, применяются следующие правила:
    1) Если в том дереве, куда вставляется содержимое буфера, нет записи общего пользования с таким же ID (это ведь может быть другой файл!), то запись из буфера добавляется в дерево;
    2) Если запись с таким ID существует, но содержимое её отличается от вставляемой, то запись из буфера также добавляется в дерево, но уже с новым ID;
    3) Если и ID и содержимое записей совпадают, то запись из буфера в дерево не добавляется - ссылки будут указывать на уже имеющуюся запись.