public static bool AddIndividualPortrait(IBaseWindow baseWin, GEDCOMIndividualRecord iRec) { bool result = false; GEDCOMMultimediaRecord mmRec = baseWin.Context.SelectRecord(GEDCOMRecordType.rtMultimedia, null) as GEDCOMMultimediaRecord; if (mmRec == null) { return(false); } // remove previous portrait link GEDCOMMultimediaLink mmLink = iRec.GetPrimaryMultimediaLink(); if (mmLink != null) { mmLink.IsPrimary = false; } // set new portrait link mmLink = iRec.SetPrimaryMultimediaLink(mmRec); // select portrait area using (var selectDlg = AppHost.Container.Resolve <IPortraitSelectDlg>()) { selectDlg.InitDialog(baseWin); selectDlg.MultimediaLink = mmLink; result = AppHost.Instance.ShowModalX(selectDlg, false); } return(result); }
private void SetMultimediaLink(GEDCOMMultimediaLink value) { fMultimediaLink = value; if (fMultimediaLink == null || fMultimediaLink.Value == null) { return; } GEDCOMMultimediaRecord mmRec = (GEDCOMMultimediaRecord)fMultimediaLink.Value; IImage img = fBase.Context.LoadMediaImage(mmRec.FileReferences[0], false); if (img == null) { return; } imageView1.OpenImage(((ImageHandler)img).Handle); if (fMultimediaLink.IsPrimaryCutout) { ExtRect rt = fMultimediaLink.CutoutPosition.Value; imageView1.SelectionRegion = new RectangleF(rt.Left, rt.Top, rt.GetWidth(), rt.GetHeight()); } }
public void Test_Video() { string targetName = TestUtils.GetTempFilePath("test_video.3gp"); Assembly assembly = typeof(CoreTests).Assembly; Stream vidstm = assembly.GetManifestResourceStream("GKTests.Resources.test_video.3gp"); GKUtils.CopyFile(vidstm, new FileInfo(targetName), null); Assert.IsTrue(File.Exists(targetName)); GEDCOMMultimediaRecord mmRecV = fBase.Context.Tree.CreateMultimedia(); mmRecV.AddTag("FILE", "", null); var fileRefV = mmRecV.FileReferences[0]; fileRefV.Title = "File Title 2"; fileRefV.LinkFile(targetName); fileRefV.MediaType = GEDCOMMediaType.mtVideo; fileRefV.MultimediaFormat = GEDCOMMultimediaFormat.mfMKV; fDialog.FileRef = fileRefV; Assert.AreEqual(fileRefV, fDialog.FileRef); fDialog.SetViewMedia(targetName); fDialog.Refresh(); ClickButton("btnPlay", fDialog); ClickButton("btnPause", fDialog); ClickButton("btnMute", fDialog); ClickButton("btnStop", fDialog); KeyDownForm(fDialog.Name, Keys.Escape); }
public static bool AddIndividualPortrait(IBaseWindow baseWin, ChangeTracker localUndoman, GEDCOMIndividualRecord iRec) { bool result = false; GEDCOMMultimediaRecord mmRec = baseWin.Context.SelectRecord(GEDCOMRecordType.rtMultimedia, null) as GEDCOMMultimediaRecord; if (mmRec == null) { return(false); } // remove previous portrait link GEDCOMMultimediaLink mmLink = iRec.GetPrimaryMultimediaLink(); if (mmLink != null) { mmLink.IsPrimary = false; } // set new portrait link mmLink = iRec.SetPrimaryMultimediaLink(mmRec); // select portrait area using (var selectDlg = AppHost.Container.Resolve <IPortraitSelectDlg>(baseWin)) { selectDlg.MultimediaLink = mmLink; result = AppHost.Instance.ShowModalX(selectDlg, false); } if (result) { result = localUndoman.DoOrdinaryOperation(OperationType.otIndividualPortraitAttach, iRec, mmLink); } return(result); }
public void ShowMedia(GEDCOMMultimediaRecord mediaRec, bool modal) { if (mediaRec == null) { throw new ArgumentNullException("mediaRec"); } GEDCOMFileReferenceWithTitle fileRef = mediaRec.FileReferences[0]; MultimediaKind mmKind = GKUtils.GetMultimediaKind(fileRef.MultimediaFormat); if (mmKind == MultimediaKind.mkNone) { return; } bool externalViewer = !GlobalOptions.Instance.EmbeddedMediaPlayer && ((mmKind == MultimediaKind.mkAudio || mmKind == MultimediaKind.mkVideo)); if (externalViewer) { string targetFile = fContext.MediaLoad(fileRef); GKUtils.LoadExtFile(targetFile); } else { //var mediaViewer = AppHost.Container.Resolve<IMediaViewerWin>(this); MediaViewerWin mediaViewer = new MediaViewerWin(this); try { try { mediaViewer.FileRef = fileRef; if (modal) { mediaViewer.Show(); } else { mediaViewer.ShowInTaskbar = true; mediaViewer.Show(); } } finally { if (modal) { mediaViewer.Dispose(); } } } catch (Exception ex) { if (mediaViewer != null) { mediaViewer.Dispose(); } Logger.LogWrite("BaseWinSDI.ShowMedia(): " + ex.Message); } } }
public override void Setup() { base.Setup(); WFAppHost.ConfigureBootstrap(false); fBase = new BaseWindowStub(); fMultimediaRecord = new GEDCOMMultimediaRecord(fBase.Context.Tree, fBase.Context.Tree, "", ""); fMultimediaRecord.FileReferences.Add(new GEDCOMFileReferenceWithTitle(fBase.Context.Tree, fMultimediaRecord, "", "")); fDialog = new MediaEditDlg(fBase); fDialog.MediaRec = fMultimediaRecord; fDialog.Show(); }
private void SetMediaRec(GEDCOMMultimediaRecord value) { fMediaRec = value; try { fNotesList.ListModel.DataOwner = fMediaRec; fSourcesList.ListModel.DataOwner = fMediaRec; ControlsRefresh(); //ActiveControl = txtName; txtName.Focus(); } catch (Exception ex) { Logger.LogWrite("MediaEditDlg.SetMediaRec(): " + ex.Message); } }
public static bool ModifyMedia(IBaseWindow baseWin, ref GEDCOMMultimediaRecord mediaRec) { bool result; try { baseWin.Context.BeginUpdate(); GEDCOMTree tree = baseWin.Context.Tree; using (var dlg = AppHost.Container.Resolve <IMediaEditDlg>()) { dlg.InitDialog(baseWin); bool exists = mediaRec != null; if (!exists) { mediaRec = new GEDCOMMultimediaRecord(tree, tree, "", ""); mediaRec.FileReferences.Add(new GEDCOMFileReferenceWithTitle(tree, mediaRec, "", "")); mediaRec.InitNew(); } try { baseWin.Context.LockRecord(mediaRec); dlg.MediaRec = mediaRec; result = (AppHost.Instance.ShowModalX(dlg, false)); } finally { baseWin.Context.UnlockRecord(mediaRec); } if (!exists) { if (result) { tree.AddRecord(mediaRec); } else { mediaRec.Dispose(); mediaRec = null; } } } } finally { baseWin.Context.EndUpdate(); } return(result); }
public void SelectSummaryLink(string linkName) { if (linkName.StartsWith("view_")) { string xref = linkName.Remove(0, 5); GEDCOMMultimediaRecord mmRec = fContext.Tree.XRefIndex_Find(xref) as GEDCOMMultimediaRecord; if (mmRec != null) { fView.ShowMedia(mmRec, false); } } else { SelectRecordByXRef(linkName); } }
private void LoadList() { GEDCOMRecord record; var enumerator = fBase.Context.Tree.GetEnumerator(GEDCOMRecordType.rtMultimedia); while (enumerator.MoveNext(out record)) { GEDCOMMultimediaRecord mediaRec = (GEDCOMMultimediaRecord)record; GEDCOMFileReferenceWithTitle fileRef = mediaRec.FileReferences[0]; MultimediaKind mmKind = GKUtils.GetMultimediaKind(fileRef.MultimediaFormat); if (mmKind == MultimediaKind.mkImage) { fFileRefs.Add(fileRef); } } }
public override void Setup() { base.Setup(); fBase = new BaseWindowStub(); GEDCOMMultimediaRecord mmRec = fBase.Context.Tree.CreateMultimedia(); mmRec.AddTag("FILE", "", null); fileRef = mmRec.FileReferences[0]; fileRef.Title = "File Title 2"; fileRef.LinkFile("shaytan_plant.jpg"); fileRef.MediaType = GEDCOMMediaType.mtPhoto; fDialog = new MediaViewerWin(fBase); fDialog.Show(); }
private bool ProcessRecordMediaAdd(bool redo) { IGEDCOMStructWithLists swl = fObj as IGEDCOMStructWithLists; GEDCOMMultimediaRecord mediaRec = fNewVal as GEDCOMMultimediaRecord; bool result = (swl != null && mediaRec != null); if (result) { if (redo) { GEDCOMMultimediaLink mmLink = swl.AddMultimedia(mediaRec); fOldVal = mmLink; } else { GEDCOMMultimediaLink mmLink = fOldVal as GEDCOMMultimediaLink; swl.MultimediaLinks.Delete(mmLink); } } return(result); }
public override void UpdateView() { if (fMultimediaLink == null || fMultimediaLink.Value == null) { return; } GEDCOMMultimediaRecord mmRec = (GEDCOMMultimediaRecord)fMultimediaLink.Value; IImage img = fBase.Context.LoadMediaImage(mmRec.FileReferences[0], false); if (img == null) { return; } fView.ImageCtl.OpenImage(img); if (fMultimediaLink.IsPrimaryCutout) { fView.ImageCtl.SelectionRegion = fMultimediaLink.CutoutPosition.Value; } }
public void Test_MediaLoadSave() { string sourFile = TestUtils.PrepareTestFile("shaytan_plant.jpg"); string gedFile = TestUtils.GetTempFilePath("test_mm.ged"); using (BaseContext ctx = new BaseContext(null)) { Assert.IsTrue(ctx.IsUnknown()); Assert.AreEqual(false, ctx.MediaSave(null, "", MediaStoreType.mstReference)); Assert.AreEqual(null, ctx.LoadMediaImage(null, false)); Assert.AreEqual(null, ctx.LoadMediaImage(null, 0, 0, ExtRect.Empty, false)); Assert.AreEqual(null, ctx.GetPrimaryBitmap(null, 0, 0, false)); Assert.AreEqual(null, ctx.GetPrimaryBitmapUID(null)); ctx.FileSave(gedFile); Assert.AreEqual(true, ctx.CheckBasePath()); // need path for archive and storage var mmRecR = new GEDCOMMultimediaRecord(ctx.Tree, ctx.Tree, "", ""); mmRecR.FileReferences.Add(new GEDCOMFileReferenceWithTitle(ctx.Tree, mmRecR, "", "")); Assert.AreEqual(true, ctx.MediaSave(mmRecR.FileReferences[0], sourFile, MediaStoreType.mstReference)); Assert.IsNotNull(ctx.LoadMediaImage(mmRecR.FileReferences[0], false)); Assert.IsNotNull(ctx.MediaLoad(mmRecR.FileReferences[0])); var mmRecA = new GEDCOMMultimediaRecord(ctx.Tree, ctx.Tree, "", ""); mmRecA.FileReferences.Add(new GEDCOMFileReferenceWithTitle(ctx.Tree, mmRecA, "", "")); Assert.AreEqual(true, ctx.MediaSave(mmRecA.FileReferences[0], sourFile, MediaStoreType.mstArchive)); Assert.IsNotNull(ctx.LoadMediaImage(mmRecA.FileReferences[0], false)); Assert.IsNotNull(ctx.MediaLoad(mmRecA.FileReferences[0])); var mmRecS = new GEDCOMMultimediaRecord(ctx.Tree, ctx.Tree, "", ""); mmRecS.FileReferences.Add(new GEDCOMFileReferenceWithTitle(ctx.Tree, mmRecS, "", "")); Assert.AreEqual(true, ctx.MediaSave(mmRecS.FileReferences[0], sourFile, MediaStoreType.mstStorage)); Assert.IsNotNull(ctx.LoadMediaImage(mmRecS.FileReferences[0], false)); Assert.IsNotNull(ctx.MediaLoad(mmRecS.FileReferences[0])); } }
public override void UpdateContents() { var dataOwner = fDataOwner as IGEDCOMStructWithLists; if (fSheetList == null || dataOwner == null) { return; } try { fSheetList.ClearItems(); foreach (GEDCOMMultimediaLink mmLink in dataOwner.MultimediaLinks) { GEDCOMMultimediaRecord mmRec = mmLink.Value as GEDCOMMultimediaRecord; if (mmRec == null) { continue; } if (mmRec.FileReferences.Count == 0) { continue; } GEDCOMFileReferenceWithTitle fileRef = mmRec.FileReferences[0]; fSheetList.AddItem(mmLink, new object[] { fileRef.Title, LangMan.LS(GKData.MediaTypes[(int)fileRef.MediaType]) }); } } catch (Exception ex) { Logger.LogWrite("MediaLinksListModel.UpdateContents(): " + ex.Message); } }
public void Test_LMMultimedia() { var listManager = new MultimediaListMan(fContext); Assert.IsNotNull(listManager); GEDCOMMultimediaRecord mediaRec = fContext.Tree.XRefIndex_Find("O1") as GEDCOMMultimediaRecord; listManager.Fetch(mediaRec); listManager.QuickFilter = "*"; Assert.IsTrue(listManager.CheckFilter()); listManager.QuickFilter = "*media*"; Assert.IsTrue(listManager.CheckFilter()); listManager.QuickFilter = "*xxxx*"; Assert.IsFalse(listManager.CheckFilter()); var lvMock = new ListViewMock(); listManager.UpdateColumns(lvMock); var listItem = new GKListItem("", null); listManager.UpdateItem(0, listItem, mediaRec); }
public void ShowMedia(GEDCOMMultimediaRecord mediaRec, bool modal) { }
public static GEDCOMRecord AddRecord(IBaseWindow baseWin, GEDCOMRecordType rt, Target target) { bool result = false; GEDCOMRecord rec = null; switch (rt) { case GEDCOMRecordType.rtIndividual: { // FIXME: legacy code, checkit if (target == null) { target = new Target(); target.TargetMode = TargetMode.tmParent; } GEDCOMIndividualRecord indivRec = null; result = ModifyIndividual(baseWin, ref indivRec, target.TargetIndividual, target.TargetMode, target.NeedSex); rec = indivRec; break; } case GEDCOMRecordType.rtFamily: { if (target == null) { target = new Target(); } TargetMode famTarget = (target.TargetMode != TargetMode.tmFamilyChild) ? TargetMode.tmNone : target.TargetMode; GEDCOMFamilyRecord fam = null; result = ModifyFamily(baseWin, ref fam, famTarget, target.TargetIndividual); rec = fam; break; } case GEDCOMRecordType.rtNote: { GEDCOMNoteRecord note = null; result = ModifyNote(baseWin, ref note); rec = note; break; } case GEDCOMRecordType.rtMultimedia: { GEDCOMMultimediaRecord mmRec = null; result = ModifyMedia(baseWin, ref mmRec); rec = mmRec; break; } case GEDCOMRecordType.rtSource: { GEDCOMSourceRecord src = null; result = ModifySource(baseWin, ref src); rec = src; break; } case GEDCOMRecordType.rtRepository: { GEDCOMRepositoryRecord rep = null; result = ModifyRepository(baseWin, ref rep); rec = rep; break; } case GEDCOMRecordType.rtGroup: { GEDCOMGroupRecord grp = null; result = ModifyGroup(baseWin, ref grp); rec = grp; break; } case GEDCOMRecordType.rtResearch: { GEDCOMResearchRecord rsr = null; result = ModifyResearch(baseWin, ref rsr); rec = rsr; break; } case GEDCOMRecordType.rtTask: { GEDCOMTaskRecord tsk = null; result = ModifyTask(baseWin, ref tsk); rec = tsk; break; } case GEDCOMRecordType.rtCommunication: { GEDCOMCommunicationRecord comm = null; result = ModifyCommunication(baseWin, ref comm); rec = comm; break; } case GEDCOMRecordType.rtLocation: { GEDCOMLocationRecord loc = null; result = ModifyLocation(baseWin, ref loc); rec = loc; break; } } return((result) ? rec : null); }
public static bool EditRecord(IBaseWindow baseWin, GEDCOMRecord rec) { bool result = false; switch (rec.RecordType) { case GEDCOMRecordType.rtIndividual: GEDCOMIndividualRecord ind = rec as GEDCOMIndividualRecord; result = ModifyIndividual(baseWin, ref ind, null, TargetMode.tmNone, GEDCOMSex.svNone); break; case GEDCOMRecordType.rtFamily: GEDCOMFamilyRecord fam = rec as GEDCOMFamilyRecord; result = ModifyFamily(baseWin, ref fam, TargetMode.tmNone, null); break; case GEDCOMRecordType.rtNote: GEDCOMNoteRecord note = rec as GEDCOMNoteRecord; result = ModifyNote(baseWin, ref note); break; case GEDCOMRecordType.rtMultimedia: GEDCOMMultimediaRecord mmRec = rec as GEDCOMMultimediaRecord; result = ModifyMedia(baseWin, ref mmRec); break; case GEDCOMRecordType.rtSource: GEDCOMSourceRecord src = rec as GEDCOMSourceRecord; result = ModifySource(baseWin, ref src); break; case GEDCOMRecordType.rtRepository: GEDCOMRepositoryRecord rep = rec as GEDCOMRepositoryRecord; result = ModifyRepository(baseWin, ref rep); break; case GEDCOMRecordType.rtGroup: GEDCOMGroupRecord grp = rec as GEDCOMGroupRecord; result = ModifyGroup(baseWin, ref grp); break; case GEDCOMRecordType.rtResearch: GEDCOMResearchRecord rsr = rec as GEDCOMResearchRecord; result = ModifyResearch(baseWin, ref rsr); break; case GEDCOMRecordType.rtTask: GEDCOMTaskRecord tsk = rec as GEDCOMTaskRecord; result = ModifyTask(baseWin, ref tsk); break; case GEDCOMRecordType.rtCommunication: GEDCOMCommunicationRecord comm = rec as GEDCOMCommunicationRecord; result = ModifyCommunication(baseWin, ref comm); break; case GEDCOMRecordType.rtLocation: GEDCOMLocationRecord loc = rec as GEDCOMLocationRecord; result = ModifyLocation(baseWin, ref loc); break; } return(result); }
public void Test_ShowXInfo() { StringList summary = new StringList(); summary.Clear(); GKUtils.ShowFamilyInfo(fContext, null, null); GEDCOMFamilyRecord famRec = fContext.Tree.XRefIndex_Find("F1") as GEDCOMFamilyRecord; GKUtils.ShowFamilyInfo(fContext, famRec, summary); summary.Clear(); GKUtils.ShowGroupInfo(null, null); GEDCOMGroupRecord grpRec = fContext.Tree.XRefIndex_Find("G1") as GEDCOMGroupRecord; GKUtils.ShowGroupInfo(grpRec, summary); summary.Clear(); GKUtils.ShowMultimediaInfo(null, null); GEDCOMMultimediaRecord mmRec = fContext.Tree.XRefIndex_Find("O1") as GEDCOMMultimediaRecord; GKUtils.ShowMultimediaInfo(mmRec, summary); summary.Clear(); GKUtils.ShowNoteInfo(null, null); GEDCOMNoteRecord noteRec = fContext.Tree.XRefIndex_Find("N1") as GEDCOMNoteRecord; GKUtils.ShowNoteInfo(noteRec, summary); summary.Clear(); GKUtils.ShowPersonInfo(fContext, null, null); GEDCOMIndividualRecord indRec = fContext.Tree.XRefIndex_Find("I1") as GEDCOMIndividualRecord; GKUtils.ShowPersonInfo(fContext, indRec, summary); summary.Clear(); GKUtils.ShowSourceInfo(null, null); GEDCOMSourceRecord srcRec = fContext.Tree.XRefIndex_Find("S1") as GEDCOMSourceRecord; GKUtils.ShowSourceInfo(srcRec, summary); summary.Clear(); GKUtils.ShowRepositoryInfo(null, null); GEDCOMRepositoryRecord repRec = fContext.Tree.XRefIndex_Find("R1") as GEDCOMRepositoryRecord; GKUtils.ShowRepositoryInfo(repRec, summary); summary.Clear(); GKUtils.ShowResearchInfo(null, null); GEDCOMResearchRecord resRec = fContext.Tree.XRefIndex_Find("RS1") as GEDCOMResearchRecord; GKUtils.ShowResearchInfo(resRec, summary); summary.Clear(); GKUtils.ShowTaskInfo(null, null); GEDCOMTaskRecord taskRec = fContext.Tree.XRefIndex_Find("TK1") as GEDCOMTaskRecord; GKUtils.ShowTaskInfo(taskRec, summary); summary.Clear(); GKUtils.ShowCommunicationInfo(null, null); GEDCOMCommunicationRecord commRec = fContext.Tree.XRefIndex_Find("CM1") as GEDCOMCommunicationRecord; GKUtils.ShowCommunicationInfo(commRec, summary); summary.Clear(); GKUtils.ShowLocationInfo(null, null); GEDCOMLocationRecord locRec = fContext.Tree.XRefIndex_Find("L1") as GEDCOMLocationRecord; GKUtils.ShowLocationInfo(locRec, summary); }
public static void FillContext(IBaseContext context) { // a null result if the record is not defined GEDCOMCustomEvent evt = context.CreateEventEx(null, "BIRT", "xxxxx", "xxxxx"); Assert.IsNull(evt); // first individual GEDCOMIndividualRecord iRec = context.CreatePersonEx("Ivan", "Ivanovich", "Ivanov", GEDCOMSex.svMale, true); Assert.IsNotNull(iRec); evt = iRec.FindEvent("BIRT"); Assert.IsNotNull(evt); evt.Date.ParseString("28 DEC 1990"); evt.Place.StringValue = "Ivanovo"; GEDCOMCustomEvent evtd = context.CreateEventEx(iRec, "DEAT", "28 DEC 2010", "Ivanovo"); Assert.IsNotNull(evtd); // second individual, wife GEDCOMIndividualRecord iRec2 = context.CreatePersonEx("Maria", "Petrovna", "Ivanova", GEDCOMSex.svFemale, true); evt = iRec2.FindEvent("BIRT"); Assert.IsNotNull(evt); evt.Date.ParseString("17 MAR 1990"); evt.Place.StringValue = "Ivanovo"; iRec.AddAssociation("spouse", iRec2); // third individual, child GEDCOMIndividualRecord iRec3 = context.CreatePersonEx("Anna", "Ivanovna", "Ivanova", GEDCOMSex.svFemale, true); evt = iRec3.FindEvent("BIRT"); Assert.IsNotNull(evt); evt.Date.ParseString("11 FEB 2010"); evt.Place.StringValue = "Ivanovo"; // their family GEDCOMFamilyRecord famRec = context.Tree.CreateFamily(); Assert.IsNotNull(famRec); famRec.AddSpouse(iRec); famRec.AddSpouse(iRec2); famRec.AddChild(iRec3); context.CreateEventEx(famRec, "MARR", "01 JAN 2000", "unknown"); // individual outside the family GEDCOMIndividualRecord iRec4 = context.CreatePersonEx("Alex", "", "Petrov", GEDCOMSex.svMale, true); evt = iRec4.FindEvent("BIRT"); Assert.IsNotNull(evt); evt.Date.ParseString("15 JUN 1989"); evt.Place.StringValue = "Far Forest"; evt = context.CreateEventEx(iRec4, "RESI", "12 FEB", "Far Forest"); Assert.IsNotNull(evt); // fifth GEDCOMIndividualRecord iRec5 = context.CreatePersonEx("Anna", "", "Jones", GEDCOMSex.svFemale, false); Assert.IsNotNull(iRec5); // group for tests GEDCOMGroupRecord groupRec = context.Tree.CreateGroup(); groupRec.GroupName = "GroupTest"; Assert.IsNotNull(groupRec, "group1 != null"); groupRec.AddMember(iRec); // location for tests GEDCOMLocationRecord locRec = context.Tree.CreateLocation(); locRec.LocationName = "Test Location"; locRec.Map.Lati = 5.11111; locRec.Map.Long = 7.99999; Assert.IsNotNull(locRec, "locRec != null"); // repository for tests GEDCOMRepositoryRecord repoRec = context.Tree.CreateRepository(); repoRec.RepositoryName = "Test repository"; Assert.IsNotNull(repoRec, "repoRec != null"); // research for tests GEDCOMResearchRecord resRec = context.Tree.CreateResearch(); resRec.ResearchName = "Test research"; Assert.IsNotNull(resRec, "resRec != null"); // source for tests GEDCOMSourceRecord srcRec = context.Tree.CreateSource(); srcRec.FiledByEntry = "Test source"; Assert.IsNotNull(srcRec, "srcRec != null"); iRec.AddSource(srcRec, "p1", 0); // note for tests GEDCOMNoteRecord noteRec = context.Tree.CreateNote(); noteRec.SetNoteText("Test note"); Assert.IsNotNull(noteRec, "noteRec != null"); iRec.AddNote(noteRec); // task for tests GEDCOMTaskRecord tskRec = context.Tree.CreateTask(); tskRec.Goal = "Test task"; Assert.IsNotNull(tskRec, "tskRec != null"); // media for tests GEDCOMMultimediaRecord mediaRec = context.Tree.CreateMultimedia(); mediaRec.AddTag("FILE", "", null); GEDCOMFileReferenceWithTitle fileRef = mediaRec.FileReferences[0]; fileRef.Title = "Test multimedia"; fileRef.LinkFile("sample.png"); Assert.IsNotNull(mediaRec, "mediaRec != null"); iRec.AddMultimedia(mediaRec); // communication for tests GEDCOMCommunicationRecord commRec = context.Tree.CreateCommunication(); commRec.CommName = "Test communication"; Assert.IsNotNull(commRec, "commRec != null"); }
public override void Fetch(GEDCOMRecord aRec) { fRec = (aRec as GEDCOMMultimediaRecord); }