Beispiel #1
0
        private void ModifyReposSheet(object sender, ModifyEventArgs eArgs)
        {
            GDMRepositoryCitation cit = eArgs.ItemData as GDMRepositoryCitation;

            if (eArgs.Action == RecordAction.raJump && cit != null)
            {
                fController.JumpToRecord(cit);
            }
        }
Beispiel #2
0
        public override void Modify(object sender, ModifyEventArgs eArgs)
        {
            var source = fDataOwner as GDMSourceRecord;

            if (fBaseWin == null || fSheetList == null || source == null)
            {
                return;
            }

            GDMRepositoryCitation cit = eArgs.ItemData as GDMRepositoryCitation;

            bool result = false;

            switch (eArgs.Action)
            {
            case RecordAction.raAdd:
                GDMRepositoryRecord rep = fBaseWin.Context.SelectRecord(GDMRecordType.rtRepository, null) as GDMRepositoryRecord;
                if (rep != null)
                {
                    result = fUndoman.DoOrdinaryOperation(OperationType.otSourceRepositoryCitationAdd, source, rep);
                }
                break;

            case RecordAction.raDelete:
                if (cit != null && AppHost.StdDialogs.ShowQuestionYN(LangMan.LS(LSID.LSID_DetachRepositoryQuery)))
                {
                    var repRec = fBaseContext.Tree.GetPtrValue <GDMRepositoryRecord>(cit);
                    result = fUndoman.DoOrdinaryOperation(OperationType.otSourceRepositoryCitationRemove, source, repRec);
                }
                break;
            }

            if (result)
            {
                fBaseWin.Context.Modified = true;
                eArgs.IsChanged           = true;
            }
        }
Beispiel #3
0
 public static GDMRepositoryRecord GetPtrValue(this GDMTree tree, GDMRepositoryCitation ptr)
 {
     return(tree.GetPtrValue <GDMRepositoryRecord>(ptr));
 }