Version 0.3.5 [2004-04-23] ========================== MULTIPLE SELECTION GenTle enables to select more persons on the canvas and perform some operation over the selection. Not every operation can be performed over the multiple selection of persons, for instance editig data has meaning for one person only. With more persons selected, you can do the following: * move persons * delete persons You can select more persons in the well known way using mouse, Shift or Control button or their combination. I'll write about it just in short since you know the multiple selections from other applications as well (detailed and boring specification will be introduced in mini user manual): * clicking on person with left mouse button (LMB) selects the person * clicking on person with LMB while holding CONTROL key + selects not selected person + un-selects already selected person * clicking on person with LMB while holding SHIFT key makes rectangular selection between last two selected persons. In other words, if you have two last selected persons and you would create a rectangle in that way that one person is upper left corner and the second person is bottom right corner of the rectangle, all persons within the rectangle are selected. * clicking on empty canvas with LMB starts rectangular selection. Hold LMB pressed and move the mouse. Selection rectangle is visible on the screen. After you release LMB, any person that collides with the selection rectangle is selected. GENEALOGY GRAPHS GenTle enables to display several genealogy graphs. You can display graph by right mouse clicking on a person and select specific graph from menu View. Following graphs are supported: * Family Tree: GenTle will automaticaly find the oldest progenitor of family and will display consanguinity male for this parent (see Consanguinity Male for more info) * Lineage: All descendants born from specified person are displayed. * Ancestry: All persons that participated in progeniture of specified person are displayed * Consanguinity Male: conjungal descendants of all sons of specified persons are displayed, including all descendants of NOT married daughters. * Consanguinity Female: all descendants of all daughters are displayed. If you want to display all persons, right click on empty canvas and select menu item Show All Persons. PERSON NAVIGATION GenTle enables person navigation according to their roles. For a selected person, it is possible to determine: * father: if defined, father of selected person is selected * mother: if defined, mother of selected person is selected * all children: all children of person are selected * next child: next child of person is selected. * all siblings: all siblings of person are selected. * next sibling: next sibling of person is selected. You can use menu/toolbar buttons or short-cuts to navigate persons. Short-cuts are defined in the following way: * go to father: F * go to mother: M * all children: C * next child: I * all siblings: S * next sibling: B Note that navigation works for visible persons only. Some persons can be hidden, for instance, due to displaying genealogy graphs. These persons are not taken into the account when navigating. I had a following reason to implement the behaviour of navigation in this way: if you want to see some graph, you want to see only persons that belong to this graph. Adding new persons to such a graph (as a result of navigation) would confuse user. SMALL CHANGES * Go To botton functionality was implemented for Find dialog. * Clicking middle mouse button will make the selected point center of the view. * When middle mouse button is pressed and mouse is moved, canvas is scrolled until middle mouse button is released. * Code for canvas view handling improved. * Selected person has different color of brush. * Tollbar is splited in several toolbars so that it can be configured in more convenient way. * BUG931149 corrected * BUG931716 corrected * BUG931770 corrected * BUG939807 corrected Version 0.3.4 [2004-04-06] ========================== GROUP BROWSER GenTle provides possibility to manage groups of persons. To create or edit group, open Group Browser (via menu or toolbar button). The Groups dialog appears. It gatheres all the group present in the system. To view groups where specified person takes a part, just right click the person and select Groups menu item from View menu. EXPORT TO GEDCOM FILES GenTle enables to export project to following GEDCOM file formats: + GEDCOM XML 6 + GEDCOM 5.5 If you want to export your project to GEDCOM file, select respective menu item in File-->Export menu. GenTle will ask you for location and name of the output file and the it will export your project data to this file. IMPORTANT NOTE: Note that GenTle's file format contains more information than GEDCOM files do, so whenever you export your project to GEDCOM file, you loose some information. In addition to this, some information (like research) is completely omitted when exporting to GEDCOM files since GEDCOM doesn't have any research (and some others) records defined. If you will export to GEDCOM 5.5, you will lose even more information. Since GEDCOM 5.5 and GEDCOM XML 6 file formats are not completely compatible, some information can be omitted during export to GEDCOM 5.5 file. If you will find any problems with exported files, please send me an e-mail (or write bug report on sourceforge.net). I didn't test exported files for interoperability but I have used "gedchk.exe" utility to test format of generated GEDCOM 5.5 file. This utility check only "gramatical" structure of GEDCOM 5.5 file, so some content problem may arise. Please report it, if you'll find any. ANOTHER IMPORTANT NOTE: As for export to GEDCOM 5, I have checked the exported file against GEDCOM 5.5 grammar using gedchk.exe utility. I have found some differences between grammar defined for gedchk.exe utility and GEDCOM 5.5 grammar. I have adapted gedchk.exe grammar to correspond with GEDOM 5.5 grammar I have found on internet. But I cannot be sure that this action is correct. I you will face any problem with exported GEDCOM 5 file, please report it. SURETY SCHEMES GenTle enables to create, manage and assign to data SURETY SCHEMES (SS). SS provides user with possibility to express level of information certainity. User can define as much SS as she wants, but only one SS can be used in a time. Each SS consists of an arbitrary number of SURETY SCHEME PARTS (SSP). Each SSP exress one level of certainity. You can assign SS to a project and then use it's SSPs to evaluate data. Surety Schemes are SHARED DATA so you can define it only once and use it in all projects stored in depository. Let's have a complete example: (01) first of all, you need to define SS and SSP. you can do it via Surety Schemes dialog in the obvious way. (02) having SS and SSP structure defined, you need to assign SS to a project. This is done via Options->Configure Project menu item. Select Surety Schemes on the dialog and select SS from combo-box. You can note that there is SSP combo-box as well. You can select preferred SSP, if any. This SSP will be offered, if no other SSP was selected. For both SS and SSP you can specify it's name and description. In addition to this, you can define sequence number for SSP. (03) To evaluate data, just open appropriate edit dialog (e.g. Individual dialog for persons) and select SSP from Surety Scheme Part combo-box. If you have defined preferred SSP as described above, specified SSP will appear in combo-box if you didn't specify another SSP previously. (04) For practical purposes, one well-defined SS is far enought. Despite you can define as much SSs as you want. You can even change the SS during project's life cycle but I discourage from doing so because whenever you change SS, you loose all surety information from previously used SS that you have already introduced for your data. Adding and/or removing SSPs within SS is safe. (05) Following data structures can be evaluated using surety schemes: + Individual record + Personal information + Association + Duplication + Events + Groups SMALL CHANGES * GT_DataBrowser doesn't show information in bold font * BUG914212 corrected * BUG914944 corrected * BUG921144 corrected * BUG927378 corrected * GT_CommonFunction::makeDateOf* methods upgraded * It is possible to used HTML tags in GenTle's edit fields now. They will be rendered properly in DATA BROWSER. * GT_PlaceRefWdg contains "Clear" button to remove place selected. * first usable ID was changed to value of 1000. This is done due to sorting. I hope this will make no problems :-) Version 0.3.3 [2004-03-09] ========================== * FAMILY BROWSER GenTle provides FAMILY BROWSER. Families are mostly generated automatically but some additional information can be introduced about families manually. To open FAMILY BROWSER for all families, use menu item/toolbar button/Alt+M hot-key. Families dialog will be executed. Families are represented by root tree-view items with children -- family members. Members of family are identified by icons as father, mother or child. You can edit family record by selecting some and pressing Edit button. It is not possible to edit persons (family members) from this dialog. Using this dialog, you can introduce following information about family: + note + submitter + external Id + enrichment + evidence + changed You can use FAMILY BROWSER to display only families for specified person. Just right-click on a person and select View --> Families menu item. The same FAMILY BROWSER is displayed with only families where specified person takes a place. * DATA BROWSER GenTle provides DATA BROWSER to provide user with possibility to browse information in a convenient way. DATA BROWSER uses hyper text navigation for browsing information so that you can access desired information quickly. You can open DATA BROWSER in several ways: + to display information about a person, right click on it and select View --> Data menu item. + to display information about events, resources, places, etc. use View button with selected item You can have DATA BROWSER window opened during the work with GenTle and access information you have already provided but you need it on another place or you can use it to look for information quickly. DATA BROWSER implements typical functionality for hyper text navigation like moving backward, moving forward, refreshing of page and "go home" functionality (where "home" is the very first page you selected). GenTle creates HTML output in temp directory for DATA BROWSER. Pages are created on-the-fly whenever users asks for displaying it. In other words, whenever you click a link, page output is created in temp directory firsts and DATA BROWSER displays it then. Whenever you press Home, Forward or Backward toolbar buttons, no new page is generated but the already generated is used. If you need the page to be regenerated, press Refresh button (you may want this in the case that you have changed some information about person and you want to see this change in DATA BROWSER). SMALL CHANGES * BUG909020 corrected * BUG909025 corrected * GT_WindowHandler class added to provide convenient interface for accessing GenTle's windows (main window and data browser at this time, but the number of windows can increase) * GT_Application class added to handle application's need conveniently. Version 0.3.2 [2004-02-06] ========================== Note: there is no 0.3.1 release since 3.1 reminds me of windows. There will be no release containing numbers 95, 98, 2000, 2003 as well. Maybe M$ have this numbers patented (or M$ can patent these numbers in the future without leting me know about it) and I don't want to spend my youth in prison :-). * SPECIAL PERSONS GenTle provides functionality for entering persons that will never be visible on the canvas. This persons, like godfather, godmother, best man, etc. are considered to be "special persons". You can use them only for participants in events. The idea behind this is as follows: + you create an event and you want to add participants + if participating person is already placed on canvas, select this person from "Person" combo-box of Participant dialog. + if there is no such person and you don't want to create it on canvas, you can use New Person button on the same dialog and you can enter the new person's data in the way you are used to do this with GenTle. This person will appear in Person combo box and you can use it for participants in all events. Since you cannot see spesial persons on the canvas, GenTle manages them in the following way. Whenever the special person is participating to some event, it will exist in memory. But if you remove such a person from all events, it will be deleted by GenTle automatically. It saves memory and prevents zombie persons to bother you. As you can see, it is possible to edit persons from Participant dialog as well. * FIND FUNCTIONALITY FOR PERSONS GenTle provides functionality for searching of persons. You open Find dialog via toolbar, menu or Ctrl+F hot-key. Select Find Person tab and enter data you want to look for. You can search in all persons (default), visible or invisible persons. You can specify Mode of search -- you can look either for exact string or substring. If you don't specify any data, all persons will be found. Following information is displayed for persons found: + ID + Name of person + Date of person's birth and death + Gender of person You can edit these person by selecting it and presing Edit button. Note that there are two aditional buttons on the dialog -- Go To button and View button. Functionality of this buttons is not implemented yet. * FIND FUNCTIONALITY FOR EVENT GenTle provides functionality for searching of events. You open Find dialog via toolbar, menu or Ctrl+F hot-key. Select Find Event tab and enter data you want to look for. You can specify date of event, type of event and mode. If you will not provide any date, all events will match. You can specify event type to search for particular event or "Unknown" type to search for all event's types. Mode determines, how GenTle understands date. You can select either Exact mode or Interpret mode. The first one, Exact mode, will search for events that have date exactly the same as you have specified it, calendar type included. In interpret mode, GenTle interprets date specified as time interval. For instance, if you specify both dates, FROM and TO, GenTle will look for events that happened in this time interval (including date you specified). If you specify FROM date only, all events that happend AFTER this date will match and similary, if you specify TO date only, all events that happend before this date will match. Qualifiers are not considered in neither mode. Following information is displayed for events found: + ID + Type of event + Date of event + Participants SMALL CHANGES * BUG 885413 corrected * BUG 886029 corrected * BUG 890423 corrected * BUG 890425 corrected * BUG 890426 corrected * BUG 890429 corrected * BUG 890853 corrected * role mess on EVENT dialog is corrected * deleting of CANVAS LINKS is made more safe and clear Version 0.2.3 [2004-01-23] ========================== This version doesn't bring new functionality. The release is done to save all small changes and bug corrections before 0.3.X series. * SPECIAL PERSON SETTINGS removed from GenTle. After consultation with genealogs, more elegant solution was found for SPECIAL PERSONS. SMALL CHANGES * participants are referenced by IDs rather than pointers. This approach gives more safety since it is possible to detect dangling references. * dangling references are removed when saving file. This makes files smaller and performs "cleaning" of data. In that case, less parsing effort is needed when parsing files to restore data. * BUG 881328 corrected * BUG 882226 corrected * some code clearing Version 0.2.2 [2003-01-14] ========================== * settings for GenTle GenTle provides user with possibility to set several GenTle features that influence whole application. These are following: + predefined user: this user will be offered whenever no user is explicitly specified (e.g. for new persons) + language: enables to change language dynamicaly. Translation file (*.qm) must be provided in GenTle language directory. Language is then displayed in the Language combo box and can be selected. If language file is correct, the change will be visible after pressig Apply or Ok button. + application font: GenTle enables to set selected font for application. This doesn't influence fonts of person's rectangles in the application's view. + depository path: enables to set where GenTle will look for project depository. Change will be visible *AFTER* GenTle is restarted. + external viewers: GenTle enables to assign external viewer (application) for displaying medium files assigned with resources. User can specify extention and application that will be used when medium file with specified extention is to be displayed. You can use any file you want for medium file (audio, video, sound, html, ps, pdf etc.) + auto comments: GenTle enables to set if autocoments will be created or not. When enabled, autocomments are added when creating relations between persons, e.g. when father-child relation is specified, comment for father is added in the form: Son Name Surname and date of child's birth is added into the date group box of personal information record for father. This has some drawbacks: # first of all, these autocomments are not updated if name of associated person is changed (e.g. when name of child is changed, automaticaly created comment will contain still the old name) # autocomments are created always in the same language as GenTle runs. It is not possible to use english version of GenTle with czech auto comments. For users (like me) that like to use english software, this feature will be probably annoying. In any case, I do not recommend to use auto comments now. I plan for the future imlement updating of auto comments so the first drawback will be no problem. + compress: this option determines whether shared data will be compressed or not. If enabled, shared data will be compressed when being written to the disc. This approach saves a lot of disc space. If user wants to edit content of shated data files, it is better to disable this option and data will be stored in plain text form. + double buffering: this option influences displaying of application view. It defines trade-off between effective displaying and flickering. If enabled, no flickering of rectangles appears when moving them, but displaying is little bit unefficient in that case. * settings for project + general: here you can set whether gzip compression should be used when saving files to the disc. If enabled (default) nearly all files saved will be commpressed. This significantly saves disc space. + fonts: here you can change fonts that are used to display names and dates in person's rectangles in the application's view. + colors: here you can set colors used to draw person's rectangles. You can set different colors for different kind of persons. + lines: here you can change the color and stly of lines that are used to represent relations between persons. + sizes: here you can change sizes of person's rectangles. You can set this feature for normal persons and special persons. Note: Don't be confused with special persons now -- they are not introduced yet, but I will do so (probably) in the next version. I am just preparing some background to introduce this kind of person so that the code doesn't need to be changed later. I will explain meaning of special persons later. * media viewer I have implemented MEDIA VIEWER for SOURCES and CITATIONS. You can assign a medium file (containing multimedia information) to SOURCE and CITATIONS and you can preview it in the MEDIA VIEWVER (just for supported graphic formats). You can view this files in external viewer, if assigned. To assign external viewer for a media file, you need to add application corresponding to media file extention in GenTle's configuration dialog. This can be done for anyn file extention you want. SMALL CHANGES * code reorganization in GT_CanvasView to be more readable * BUG 684953 correction * GTDEPOSITORY environment handling removed. This variable is not used any more, DEPOSITORY dialog is used instead. * ID of person displayed on status-bar when clicked a person Version 0.2.1 [2003-12-11] ========================== * multi-project support GenTle enables to manage multiple projects now. It defines a project depository where all project data and shared data is stored. Shared data is data that is shared between all projects. This enables to enter some data only once and use it in all projects. The following data is shared: + IDs management + CONTACT records + RESEARCH planning + RESOURCES (repositories, sources, citations) + PLACES management * RESOURCES Resource management was changed significantly. You can create arbitrary structure of tour RESOURCES, using following rules: + Root entry is always REPOSITORY element + SOURCE items can be added into the REPOSITORY element + SOURCE items can be added into the SOURCE item (here you can build arbitrary structure that will fit your needs) + CITATION items can be added into the SOURCE item You create your RESOURCES and this RESOURCES are sheared between all projects within DEPOSITORY so when you want to add CITATION to e.g. person or event, you need just to select CITATION from your RESOURCES. The following must still be done: + MEDIUM browser: there is a possibility to assign digital medium (picture, sound, viedo) to your SOURCE (and the same MEDIUM is displayed for all CITATIONS of the specified SOURCE, so you can conveniently create an EXTRACT of your CITATION). The MEDIUM browser must be implemented. * RESEARCH Research planning was modified to fit GENTECH standard. It is possible to do planning for all projects contained in DEPOSITORY. It is possible to add RESEARCH OBJECTIVES and divide activities that must be done for it into RESEARCH ACTIVITIES items. There is possibility to assign ACTIVITY to a researcher. Following views on RESEARCH are implemented: + PROJECT view: displays all OBJECTIVES for a project and all ACTIVITIES for every OBJECTIVE + RESEARCHER view: displays all ACTIVITIES for RESEARCHER The following must be still done: + CALENDAR view (will display time arrangement of ACTIVITIES) + EXPORT functionality (for exporting RESEARCH information into files) * PLACES PLACES management is shared now. User can define a PLACE with an arbitrary structure (see below) and specify its historical evolution. PLACE can be referenced from e.g. PERSONAL INFO structures or from EVENTs. User can edit PLACEs already defined and referenced and changes done will be visible at all reference places so user doesn't need to care about consistency of data. PLACEs are organized in following way: There is an tree structure where places can be placed. There is predefined tree-node called .PLACE (this kind of node is called PLACE TYPE) where places for referencing are placed. If you want to create a PLACE that can be referenced from personal info, events etc., create this PLACE in .PLACE tree-node. In other words all cities, towns, villages etc. should be defined in the .PLACE tree-node. User can define her own PLACE TYPES and use it to describe other PLACES. PLACEs defined in user-defined PLACE TYPE tree-nodes cannot be referenced from personal info or events. They are defined to describe other PLACEs only. In addition to defining PLACEs, user can specify historical evolution of a PLACE and some other attributes of a PLACE like associated PLACEs. One example to clear it: Let's define a place DEDKOV (small village). (1) You can create node DEDKOV in .PLACES and define time range of its validity (1521 -- NOW) From now you can reference this place in other dialogs. If you don't need to specify other features of the PLACE, it is good enough (put in a better way, you can specify just DEDKOV to be able to reference this PLACE). (2) But you want to specify that DEDKOV was a part of some other "places". Let's define DEDKOV as a part of parish MERIN. You need to define PLACE TYPE Parish and define a place in this node. You can do it bu pressing Add button with selection placed at the node where you want to add a PLACE in. After creating Parish node, you can define a PLACE as mentioned before with time range and associated PLACEs (let's name it "Parish of MERIN"). (3) Now you can edit record for DEDKOV in .PLACES tree-node and (in Places tab) you can associate DEDKOV with "Parish of MERIN". You can create an arbitrary number of PLACE TYPE nodes and associate it as you wish. The only association is not enabled -- recursive association of a place. * FAMILIES I have introduced an algorithm for family building. This is done automatically when you build family tree. This is stored into the GT file (note that this data is *NOT* shared, of course). At this time, no "FAMILY browser" is implemented, but this will be done in some later version). SMALL CHANGES * ID displayed for all items that have ID * GTDEPOSITORY environment variable defined and handled in GenTle. This variable determines path to DEPOSITORY directory. * several bug corrections * Implemented saving of project in the case that there is no project opened Version 0.1.3 [not released, stored in CVS only] ================================================ READ CAREFULY! This release is intended for functionality testing for developers. Do *NOT* use it for creating any kind of "sensitive" information since data format will be changed to introduce "multi-project mode". This version is *NOT* release using standard sourceforge.net release mechanisms. To get it, check-out CVS branch with GT_TAG_BRANCH_0_1 tag. * plugin support Plugin interface was introduced into the GenTle. In addition to this, empty plugins (single and multiple plugin) including base for plugin and plugin library were inserted to help plugin developers to develop plugins. First version of gtpluginHOWTO document was added. this document will be enhanced to cover all problems that you can face when developing plugins. Feel free to ask if anything is not clear. First simple working plugin was created and added to demonstrate plugin functionality. This plugin is called "Simple FT" and it enables to store family tree into bitmap file. Plugins are introduced to enhance functionality of GenTle especialy in exporting information domain. As you can see it with "Simple FT" plugin that implements export of family tree into the bitmap. The export is done "as it is", that means that exported bitmap contains the very same image you can see on your screen. But you can do any magic you want, you can change outfit of rectangles, fonts, colors etc. You can even change position of person's rectangles and/or change information displayed on the screen by default. Just feel free to do what you want, that's why we have plugins. * export to GEDCOM XML file GenTle enables exporting of genealogical data into GEDCOM XML file. This can be done using menu item File->Export->GEDCOM XML. This is not finished completely (family record missing). It will be finished after introducing "multi-project mode" into the GenTle (after necessary data format change). * support for family record I have introduced an algorithm for automatic building family records. Families are build during the work with GenTle when specifying relations between persons. This is *NOT* store neither in GT file nor in exported files! This is not done due to planned change of data format. At this time, algorimth works and storing of family records will be done after introducing "multi-project mode" that needs change of data format. SMALL CHANGES * directory validity check is performed before opening project * GT_PercentStateWdg widget was improved to show percentage when moving slider * bug 800228 corrected * bug 800915 corrected Version 0.1.2 [2003-08-29] ========================== * research support added Further research can be planned using research records for persons. For each person, research records can be defined using "Research" tab in "Individual Record" dialog. If a person has (at lease one) opened research record (i.e. a research record with finished stat < 100%), is displayed in light color so that persons where further research is needed can be allocated in family tree very easy. Research record holds following information: + person that is related to the research + caption + date where it is planned to start + priority + note + state of research Research records can be exported to a text file using "Export" button. If you need to manage all research records for all persons, you can use "Research List" dialog. It can be invoked from menu/toolbar or by pressing Alt+R key. It gatheres all research records for all persons and you can add/edit/delete research records. You can export all research records to a text file using "Export" button. * repository support Informaiton about repository where documents are stored can be managed by GenTle. For this purpose, "Repository" dialog is defined. It can be invoked from menu/toolbar/Alt+T key. * source support Information about source (book, CD, DVD, etc.) can be managed by GenTle now. For this purpose, "Source" dialog is defined. It can be invoked from menu/toolbar/Alt+S key. SMALL CHANGES * introduced icons for dialogs * simple error handling within xml parser (will be improved and generalized) * help dialog changed to show some usefull information * About Qt item added to the Help menu * correction of few small peculiarities and bugs Version 0.1.1 2003-08-08 ======================== This is the first version to be released. It supports following sections of GEDCOM XML 6: * HeaderRec * IndividualRec * EventRec * ContactRec It has been tested by author only. See TODO for information on work to be done. enjoy;-).