AgetoAge4 Daybook
Daybook
Back
09/05/2008 - Edith har designet et nytt vindu "Word for the day..." og jeg har funnet en brukbar teknikk for å programmere dette. Vinduet blir vist i mode for vindu og ikke som en dialogboks. Det blir skapt et nytt vindu for hver gang man velger å vise "Word for the day..." og ved å flytte litt på dem kan man se flere på en gang. Vindet kan lukkes ved at man klikker i det og presser ENTER eller ESC. Man kan flytte vinduet ved å klikke i den øverste delen av det og holde nede venstre musknapp mens man drar.
06/05/2008 - Forandret listen som viser alle punkter i Worldmap til Virtual mode. Virtual mode gjør at det blir praktisk talt null ventetid på at listen genereres selv om listen består av tusenvis av elementer....
05/05/2008 - Oppdatert Worldmap med hjelpelinjer i XOR mode ved flytting av punkter. Rettet en feil i funksjonen "Insert point". Edith er i gang med å lage hjelpeside.
04/05/2008 - Etter forespørsel har jeg lagt til en funksjon som tester om brukeren har endret personer som er satt som foreldre på familie skjemaet. Dette har vel vært en forglemmelse fra min side, eller hadde ikke prioritert det. (Egentlig skulle det ikke være nødvendig men siden jeg ikke så noen direkte hindringer for å tilate dette føyde jeg til en rutine som sjekker om disse personene har blitt endret). Har også oppdatert Worldmap i Edit mode. Det blir nå vist hjelpelinjer ved tegning av nye polygoner (blir tegnet med XOR teknikk slik at de ikke berører bakgrunnen). Edith har føyd til flere norske sitater.
01/05/2008 - Laget en til tabell for alle punkter i et polygon, dette kan vises fra dialogen for Polygon properties. Lagt til en form som viser en logo laget av Edith. Logen vises ved hjelp av OpenGL som er et brukbart library for 3D grafikk. Lagt til en funksjon som setter inn et nytt punkt midt mellom selected point og det neste....ellers litt oppdatering av edit funksjonene i Worldmap.
22/04/2008 - Laget funksjoner i Worldmap som gjør at man kan editere polygonene, utvide dem med flere punkter, eller slette noen punkter. Edith har føyd til flere Quotes for Tagalog. Tilsammen har hun skrevet inn 261 quotes nå.
15/04/2008 - Har laget funksjoner som skalerer worldmap slik at det stemmer med et bilde av et kart som settes som bakgrunn. Dette brukes som en sjablon til å tegne kart (digitalisering av kart)
04/04/2008 - Edith og jeg har laget et nytt Quote vindu og brukeren kan nå velge hvilket vindu som skal vises....
31/03/2008 - Man kan også vise Properties for AgetoAge4 (i samme vindu som for OS properties)
27/03/2008 - Lagt til en boks som viser Systeminfo properties. (properties for operativsystemet) + en boks som viser litt Assembly informasjon. Oppdatert Easter funksjonen.
26/03/2008 - Oppdatert personskjemaet. Når man presser Enter i Firstname boksen settes fokus til Lastname boksen. Presser man Enter i Lastname boksen settes fokus til der man velger kjønn og presser man så Enter etter å ha valgt kjønn, settes fokus til OK knappen.
16/03/2008 - Oppdatert Info igjen, lagt til egne knapper for å vise RAM, prosessor, computer, program info. Har også oppdatert plassering av nylaget familieboks.
13/03/2008 - Edith har laget også noen engelske Quotes. Jeg har oppdatert visningen og lagt til et par funksjoner som kopierer tekstene til Clipboard. Har også oppdatert "Info".
10/03/2008 - Edith har laget Quotes både på norsk og tagalog (holder nå på med engelsk version) og jeg har programmert systemet for å vise det. Har også føyd til en funksjon som viser tilgjengelig RAM, og system informasjon (blir vist på menyen "Tools/Info").
06/03/2008 - Programmert en funksjon som kalkulerer når tid første påskedag kommer for et valgt år. Funksjonen er basert på Spencer Jones formel.
04/03/2008 - Lagt til en Check function i hovedvinduet (File/Check). Her kan man teste om alle familer som er registert for personene finnes, om alle childrens finnes og om foreldre finnes.
03/03/2008 - Oppdatert ID Serie Manager med liste over familie IDer. Rettet en feil ved lesing av GED filer. (med lengde på navn) + rettet en feil ved lesing av husband/wife for enkelte GED filer.
27/02/2008 - Begynt med Export/Import utviklingen. Jeg bruker nå en ny teknikk...jeg laget et nytt dataobject og kopierer aktuelle personer/familier til dette og kaller så opp den vanlige prosedyren for lagring hvis brukeren ønsker å lagre resultatet. Dette betyr at en eksportert fil behandles på samme måte som vanlige datafiler og brukeren kan åpne den exporterte filen som en vanlig .ata fil og redigere den ytterligere. Ved import blir same prosedyre for åpning av en .ata fil brukt og den eneste forskjellen er at datane som ligger inne fra før blir ikke slettet. Personer/familier fra fil A blir stående ved import av personer/familier fra fil B. Brukeren må konvertere ID'er til personer og familier i fil B slik at disse ikke kommer i konflikt med personer/familier i fil A. Denne teknikken gjør det svært enkelt å slå sammen mange filer til en eneste fil.
25/02/2008 - Revidert prosedyrene som lagrer posisjon til famileboksene og skrevet en egen prosedyre som oppdaterer dataene før filen blir lagret.
23/02/2008 - Bruker nå en egen thread for lydavspilling, dette gjør at programmet ikke merker at lydfilen kjøres..
22/02/2008 - Laget funksjon som fjerner et barn i en familie.
21/02/2008 - Har lagt inn en test variabel i Descendants funksjonen som tester om en person allerede har blitt lagt til og i såfall avbryter den forgreningen. Dette fenomenet kan forekomme der det er personer i slekt som har giftet seg.
20/02/2008 - Forbedret visningen av de egen definerte knappene. Laget en Screenshot funksjon som kan kalles opp på de fleste steder. Det blir lagret på Clipboard slik at man kan lime det inn i et Paint program etterpå.
17/02/2008 - Redigert valideringen av datoer på personskjemaet, alt er nå tillatt..men hvis det ikke er en gyldig dato vil man bli informert om at datoen vil bli behandlet som tekst. Lagt inn en velkomst lyd (stemme) ved oppstart av ATA.
14/02/2008 - Oppdatert sorterings rutinen i personlisten for datoer.
10/02/2008 - Edith har laget noen nye knapper og jeg har korrigert litt på birthday reminder slik at negative differanser blir trukket fra antall dager i et år. Har også føyd til en knapp der som viser alle personer som har bursdag "denne dagen".
28/01/2008 - Oppdatert Mailboxen + en del korrigeringer av tekster.
27/01/2008 - Lagt inn Birthday reminder, her kan man legge til personer som man ønsker å ha oversikt over fødselsdager til. Edith har laget hjelpeside for dette. Man kan også sende fødselsdagskort, eget vindu for å velge kort, disse kortene har Edith funnet, og redigert. Man kan også lese mail fra File/Mailbox i hovedvinduet. Har man en internet leverandør. f.eks Online.no kan man sette denne opp som mailserver...ellers kjører jeg et eget program HMailServer på maskinen min og man kan da bruke "AgetoAge4.no-ip.org" som mailserver. Men det betinger at serveren min er oppe og kjører da...og foreløpig håndterer den bare mailaddresser som jeg setter opp. Man må da kontakte meg for å få mailaddresse. Laget også et oversiktsvindu for alle fotografier som ligger i folderen som er angitt i Tools/Options/Photo path.
19/01/2008 - Lagt til flere kolonner i "Available fields" i "Setup columns" i personlista. Man kan nå ha totalt 18 kolonner oppe. Fant også en forglemmelse, noen variabler var ikke satt opp riktig. Slik at personlisten antagelig virket dårlig hvis man åpnet en GED fil. Dette er nå rettet.
15/01/2008 - Familielisten er nå også lagd med DataViewGrid i Virtual Mode. Har også lagd en begynnelse på statestikk vinduer.
13/01/2008 - Lagd ny personliste, denne benytter den innebygde kontrollen DataViewGrid som her kjøres i Virtual Mode. Virtual Mode betyr at listen ikke fylles med alle personer (hvis man har registrert f.eks 100 000 personer ville det jo tatt en del tid å fylle listen), men personene i listen blir skiftet ut etterhvert som man scroller.
Jeg har skrevet egne sorteringsrutiner for de kolonnene som jeg har lagt inn. Med tiden kan det vel bli slik at brukeren velger kolonner selv som skal vises.
Har også rettet en forglemmelse på personkortet, her ble ikke Occupation lagret tidligere. En feil med Search in Comments førte til problemer hvis man prøvde å søke når det ikke var registert en eneste kommentar. Er nå rettet. Edith har vært så snill å oppdatere personliste hjelpe fila.
06/01/2008 - Rettet en feil i funksjonen i personlisten som viser alle comments. Utvidet listen over polygoner i Worldmap til å vise felter med fargene som er valgt for area og border.
03/01/2008 - Laget et vindu som viser alle polygoner i WorldMap. Man kan sortere dem på nummer, navn eller antall punkter i polygonet ved å klikke på kolonnen.
17/12/2007 - Worldmap kan nå vise hvert enkelt polygon i sin egen farve og texture. Videre kan man nå også tegne opp flere polygoner og det vil bli mulig etterhvert å redigere polygonene, slette linjer og tegne nye.... en liten oppdatering i Relationship rapporten også, ID til personene blir nå vist til høyre for navnene.
09/12/2007 - Laget et Query vindu for Fields slik at man kan sette en verdi for feltene som vil avgjøre om settet av data vil bli føyd til i rapporten. Dette gjelder foreløbig for Ancestor og Person rapportene.
04/12/2007 - Laget Field Setup for Person- og Familie rapporten. Edith har laget hjelpe sider for disse.
02/12/2007 - Laget Field Setup, denne er for Ancestor- og Descendant Rapporter. Man velger hvilke felter man vil vise og i hvilken rekkefølge, videre kan man sette et alias for dette (bestemme selv hva feltet skal hete) og sette bredde og justering (venstre, senter eller høyrejustering).
Man kan nå også velge bakgrunns- og tekstfarve for overskrifts feltene (Table Setup).
28/11/2007 - Laget rapporter for locations, all locataions, visible locations (steder som vises i Worldmap). Føyd til antall personer/familier på rapportene.
26/11/2007 - Laget valg i Report Setup for å velge enten PDF, HTM eller RTF som filtype for rapportene og arbeidet mer på selve rapportene. Edith har skrevet noen definisjoner for this filtypene i hjelpefila.
21/11/2007 - Edith har designed alle topics i hjelpefila nå og jeg har laget Color meny på WorldMap, kan sette bakgrunnsfarge og farge for landarealer.
18/11/2007 - Påbegynt arbeidet med å lage setup skjema for rapporter, For properties for tabellene er det praktisk å ha et eget setupskjema.
11/11/2007 - Laget et lite verktøy som kan lage PDF filer av en liste med bilder. Finnes på menyen "Tools" i hovedvinduet. Man kan velge flere bilder på en gang med å presse SHIFT for å velge alle fra det første valgte bildet til det man klikker på mens man holder SHIFT nede eller man kan presse CTRL og klikke på de bildene man vil ha med i listen. Man kan også velge om man vil ha A4 liggende eller A4 stående format.
05/11/2007 - Etter å ha testet iTextSharp som er et library for å programmere dokumenter i PDF, RTF og HTM har jeg blitt så positivt overrasket at jeg vurderer å kun benytte dette librariet til rapporter. iTextSharp er Open Source og er et veldig interessant prosjekt i seg selv. Det er også effektivt og genererer uten problem meget store rapporter. Edith har oppdatert help med fine bilder! Jeg har også lagd en funksjon som "samler" alle kommentarer for alle personer og viser dette i et vindu der man kan søke etter ord og setninger.
28/10/2007 - Redigert person rapporten og lagd det slik at man velger "All persons" med undervalg "Table" eller "Pages", eller "Selected persons" med undervalg
"Table" eller "Pages". Man kan også fra Worldmap "dra" en selection og alle personer med tilknytning til dette stedet eller stedene kommer opp som Selected people i Person rapporten.
27/10/2007 - Redigert koden i relationinfo slik at hvis A og B ikke har felles ancestorer men at A er stamfar til B eller omvendt så vil en "path" fra A eller B til B eller A vises.
25/10/2007 - Lagt inn Relation report i PDF format. Har også redigert koden i relationship så denne funksjonen returnerer en liste over kun de reelle ancestorene til A og B som fører til de første felles ancestorene.
21/10/2007 - Lagt inn Descendant Report i PDF format og redigert funksjonen som finner alle descendants slik at den også setter en "sti" på formen "1.1.1.2".
20/10/2007 - Lagt inn Ancestor Report i PDF format og redigert funksjonen som finner ancestorer slik at den også finner en "sti" på formen "MMFF" til subject.
17/10/2007 - Lagt inn et library (to .dll filer, Gios Pdf.NET.dll og ICSharpCode.SharpZipLib.dll) som gjør det mulig å lage PDF rapporter.
Gios Pdf.NET - A library for exporting Pdf Documents in C# Copyright (C) 2005 Paolo Gios - www.paologios.com.
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
14/10/2007 - Oppdatert dato Search i personlisten og lagt inn TAB i listene der.
08/10/2007 - Laget event historikk slik at alle events blir lagret til "AgetoAge_events.txt". Dermed kan man se tilbake så langt man vil helt fra man installerte AgetoAge og se hva man har gjort og til hvilket tidspunkt.. Hendelser som f.eks at man forandrer navn, datoer etc. på personer blir nå registert i loggfilen. Comments er utelatt foreløpig. Har også laget noen rapporter i Locations. Man kan sortere dataene slik man vil og så velge å skrive rapport til en fil.
06/10/2007 - Laget prosedyre som sørger for korrekt sortering i lattitude og longitude feltene i Locations. Hvis verdiene som sammenlignes er like blir stedsnavnene sammenlignet. Gjort det samme i Sources, men her på datofeltet.
04/10/2007 - Laget source item vinduet større og lagt til en knapp for lagring av selve source filen. Ved åpning av source kan man nå skrive inn et filnavn som ikke er der. Man får da spørsmål om man vil at denne filen skal bli laget når man klikker OK på filedialogen. Lagt inn en Dato Picker. Forandret DataGridView til å vise kun filnavnet og ikke hele pathen. Laget en ny klasse som skal registrere alle hendelser med dataene og laget en form som viser noen hendelser.
03/10/2007 - Byttet ut listboksen i Sources med en DataGridView kontroll.
02/10/2007 - Fått Sources så ferdig at det kan brukes.
30/09/2007 - Begynner å få ferdig det meste på locations systemet. Sources systemet er også under utvikling nå.
24/09/2007 - Nå blir locations navnene vist i Worldmap hvis man har en zoom verdi på 32 eller mer.
24/09/2007 - Begynt å tenke på sources og lagd noen testskjemaer.
23/09/2007 - Arbeidet mer på Locations systemet. En liste over alle locations vil bli generert ved åpning av datafil og man kan presse F11 i personskjemaet for å få opp denne listen og velge en location. Hvis denne location ikke finnes i listen eller man vet at denne location ikke er i listen kan man bare enkelt skrive teksten for denne location i f.eks Birthplace feltet i personskjemaet. Den vil bli lagt til automatisk i locationlisten når man klikker OK på personsskjemaet. Laget funksjon i Worldmap som viser alle personer innenfor seleksjons rammen man kan bruke der. Edith har laget en masse fancy logoer...blir veldig vanskelig å velge logo nå.
Laget også en funksjon som finner korteste distanse mellom to punkter i Worldmap. Benyttet vanlig formel for storsirkelkurs for denne.
19/09/2007 - Arbeider på Locations systemet. Locations vil vise alle forskjellige steder (hvor en person er født, eller gravlagt) på WorldMap. En location har attributtene Text, latitude, longitude, comment og IsActive. En person som har fødselssted eller gravsted lik Text i en location får denne location's attributter.
18/09/2007 - When the worldmap is zoomed out so the whole map is displayed its unneccesary to show every point of it, therefore i have made a function that interpolate between 8 points and calculate the median through these points. However you can change the steps...the standard is 8 but it can be increased with F8 and decreased with F9.
17/09/2007 - Worldmap is now on the way to be developed. It can already be displayed and zoomed in and out with F5 and F6 while holding your mouse over the interesting part. Jeg bruker nå en helt ny teknikk....når hele kartet vises...interpolerer jeg mellom hvert 8 punkt da det bare er tull å tegne opp 280 000 punkter. (Legger bare sammen alle x og y verdier for punktene 1..8 og deler på 8). Hvis man zoomer inn blir derimot alle punktene vist...Locations is also on the way to be developed. Edith have made a lot of very nice and interesting logos.
13/09/2007 - Edith og Torill lager nye logoer. Jeg har programmert ID series Manager og laget funksjon som kan konvertere ID'er for personer. Dette kommer til nytte ved export/import av personer.
04/09/2007 - Laget knapp på person skjemaet som kan legge til foreldre hvis dem ikke er registrert allerede + knapp for "Add marriage".
Lagt til en innersirkel i Circle of Ancestors som skiller subject fra foreldrene. Man kan også nå høyreklikke og velge å vise person skjema for subject.
02/09/2007 - Laget Circle of Ancestors. Visual C# har innebygget en fin funksjon for å definere origo (det punktet i vinduet som er 0,0) og for å scalere og rotere vinduet. Etter litt prøving og feiling fant jeg ut hvordan man bruker dette til å skrive text i alle mulige vinkler og retninger. En "stil" editor ble også laget slik at man kan lage og lagre forskjellige oppsett av farver i sirkelen. Edith testet dette og laget diverse stiler..
26/08/2007 - Laget funksjon i personlisten som finner den personen som har flest descendants.
24/08/2007 - Laget funksjon som bygger et tre i hovedvinduet. Man velger en familie man vil bygge tre for og velger "Edit/Build Tree/Center".
22/08/2007 - Laget funksjon i personlisten for å finne gamlest og yngste person + funksjon som finner den personen som har flest ancestorer. Dette er en nyttig funksjon ved åpning av ukjente filer (GED filer). Man vil da kanskje se descendanttree for "rota" i den filen....men vet ikke hvem denne personen er... man velger da "Find/Person with most ancestors" og velger så å vise Ancestors for denne personen. I bunnen på denne listen vil den personen som har flest etterkommere ligge og kan sette denne personen som root i Descendant Tree.
21/08/2007 - Laget mulighet for å laste inn GED filer. GED filer er velkjent i genealogy verdenen og svært nyttig å kunne lese og lagre disse filene. Laget en klasse clsGEDFileReader som tar et filnavn som et parameter ved initializing av et objekt av denne klassen. Dette objektet leser da den GED filen som ble angitt som parameter. GED filer lastes ved å velge filtype "GED files" i dialogboksen for å velge fil. Neste skrittt blir da å lage en annen klasse clsGEDFileSaver.
17/08/2007 - Forbedret sentreringen i Descendant Tree. Laget Style Play, dette vil gå gjennom listen for user defines styles og sette hver Style
automatisk ved et valgt interval.
12/08/2007 - Programmert Descendant Tree, og har definert en egen klasse som brukes til å lage et DescendantTree object av, bruk av objecter fører til
at man enkelt kan legge f.eks inn flere descendant trær i det samme vinduet hvis det skulle dukke opp behov for det. Videre kan man lage et object av typen
DescendantTree når man har behov for å vite alle descendanter av en person, man behøver ikke å vise selve treet, men kan bruke objectet til å finne den informasjonen
man trenger. I vinduet Descendant Tree kan man zoome inn og ut akkurat som i hovedvinduet og hurtigtaster for å gå til venstre ende av treet, til sentrum
(rootperson) og til høyre ende av treet er laget. Man kan også legge inn flere personer og familier ved å kalle opp Family Card direkte fra Descendant Tree.
07/08/2007 - Man kan nå velge Person Card fra descendant og ancestor listen.
06/08/2007 - Forandret Group View slik at man kan bevege seg med piltastene hvis subjektet har fokus. (man har klikket på det, eller man har dobbelklikket en person slik at denne kommer opp som subjekt, da vil subjektet automatisk få fokus.) Venstre piltast setter faren til subjektet som subjekt og høyre piltast setter mor til subjekt som subjekt. Man kan også presse talltastene 1...9 for å sette et barn av subjektet som subjekt. F.eks presser man 5 og subjektet har 5 eller flere barn kommer barn nr 5 opp som subjekt. Man kan også bruke opp og nedpiltastene (når subjektet har fokus) for å gå tilbake eller frem.
05/08/2007 - Laget Group View. Dette har jeg tidligere programmert i AgetoAge2 men har programmert det helt fra bunn
av og oppdaget da at tidligere versjon ikke viste alle personer under spesielle omstendigheter. Man kan dobbelklikke en person for å sette den som subject og man kan presse "B" for back og "F" for forward.
29/07/2007 - Laget en egen klasse RelationInfo, som inneholder den nye teknikken for å bestemme relasjoner. Ved hjelp av denne klassen kan også ikke relaterte personer gi en opplysing om hvordan dem henger sammen. For eksempel... person A er bror til en søster som er gift med onkelen til person B.
AgetoAge4 vil nå gi like mye informasjon om sammenhengen mellom to personer som AgetoAge2 og vil gi svar mye hurtigere.
02/07/2007 - Utviklet en ny teknikk for å finne relasjoner (slektskap) mellom to personer. Denne metoden lager seg en liste over alle ancestorer til hver av de to personene og hver ancestor får en merkelapp som viser hvor mange generasjoner den er fra subjectet.
Ved hjelp av denne avstanden i generajoner mellom første felles ancestor og til hver av de to personene man ønsker å finne slektskap mellom kan dette finnes. Hvis vi kaller disse avstandene G1 og G2 og vi ordner personene slik at G1 er lik eller større enn G2 kan vi finne xCousin ved xCousin = G1 - (G1 - G2) - 1 og xRemoved finnes ved xRemoved = G1 - G2.
Hvis xCousin er større enn 0 da har vi en Cousin relasjon, hvis ikke er det et nærmere slektskap som kan finnes ved å sammenligne G1 og G2. Er f.eks xCousin = 0 og G1 - G2 = 0 er personene søsken. Har lagd et Relationship skjema som benytter denne teknikken. Metoden kan (under programmeringen) kalles fra ethvert sted i programmet.
20/06/2007 - Tatt i bruk en ny metode for datoer. Bruker nå C# innebygde funksjon for å gjøre om en streng til en dato variabel. Man kan nå velge å skrive datoer som f.eks 31.01.1500, 31 jan 1500, 31-01-1500.
18/06/2007 - Fått ferdig det meste på familie skjemaet.. skrevet 780 linjer med kode bare der. Dette skjemaet
får nå et mere funksjonelt preg, man jobber i det samme skjemaet og legger fortløpende til nye personer og familier og alt blir lagret i programmet automatisk. En ny teknikk er tatt i bruk for å unngå kopiering av personer, f.eks får barn i en familie en referense til denne personen i person kolleksjonen. Har lagd en ny mekanisme for å fylle person og familielisten. Disse har listbox komponenter som kunne ha blitt fylt med alle personer/familier, men har man kanskje 20 000 personer så vil det ta litt tid å fylle listene.. jeg uviklet derfor et object ListPage som kun fyller det antall elementer i listbox'en som kan vises på en gang. ListPage har en peker for det første og siste elementet i listbox'en og disse går videre.... ettesom man scroller ned/oppover.. dermed fylles listbox aldri med flere elementer enn det som kan vises på en gang.
22/05/2007 - Har studert verktøyet Microsoft Visual C# 2005 Express. Dette kan lastes ned fritt fra Microsofts hjemmeside
og har allerede begynt å skrive koden i ATA for C# språket.
Ove Kjærstadbakk