Traditional MDI GUI for GenJ

Anything GenJ related from the developer's point of view
Anonymous

Traditional MDI GUI for GenJ

Postby Anonymous » Sun Jun 06, 2004 0:43:42

Hi,

My name is Ken Mraz. I have been working on a new GUI frontend for GenJ that is a more traditional interface. My wife became interested in genealogy last year and needed some software so I (of course) did a search on Sourceforge. I was quite impressed with GenJ, but my wife found it confusing; too many windows. So as an excuse to do some GUI programming, I put together a new GUI layout based on the things I like about the Eclipse IDE. I wasted some time thinking about converting to SWT but quickly realized that would be too complicated. So I switched to using the JGoodies Looks library.

I contacted Nils about a month ago to see if he was interested and he suggested posting here. A summary of what I have changed can be found at http://home.comcast.net/~kenmraz/genj/ as well as screenshots and a download of my code. I orginally just started by overriding certain classes as well as adding new ones to my own library that sits on top of the existing GenJ distribution.

Please feel free to look over the information and images and give me feedback. If there is enough interest, I will continue to work on cleaning up my code and integrating it into CVS for everyone else.

Cheers!

:D

Image[/url]

Anonymous

Postby Anonymous » Sun Jun 06, 2004 8:39:56

Ken,

the new GUI looks fantastic. Please don't stop your excellent work. Merging your code into the CVS when it's stable would be great.

Kind regards,

Carsten

User avatar
island
Posts: 506
Joined: Sat Feb 28, 2004 16:07:30
Location: Groix island, France
Contact:

Re: Traditional MDI GUI for GenJ

Postby island » Mon Jun 07, 2004 3:55:31

kmraz wrote:Hi,

My name is Ken Mraz. I have been working on a new GUI frontend for GenJ that is a more traditional interface. My wife
../.
Please feel free to look over the information and images and give me feedback. If there is enough interest, I will continue to work on cleaning up my code and integrating it into CVS for everyone else.



It looks great. As Carsten, please go on with that excellent work. It 's great Ken.
If we can get both approaches, yours and of course Nils' , you will make us the happiest people :P
Thank you for that excellent work. Francois
Ancestris Genealogy program: http://www.ancestris.org
http://www.ancestris.org/ancestris_users/ancestris_localisation_utilisateurs_en.html

User avatar
nmeier
Site Admin
Posts: 2159
Joined: Mon Feb 02, 2004 21:35:23
Location: Toronto, Canada
Contact:

Postby nmeier » Sat Jun 12, 2004 5:11:08

Ken

really cool look that you've created there - as a fan of eclipse this indeed looks pretty sleek to me. I haven't played with jgoodies myself but i heard it's pretty close to what swt can deliver.

I'm wondering
- did you envision the user to rearrange the views you've layouted as shown in the screenshot himself
- if no, what decision making is behind putting the layout the way it is (or not)
- should the user still be able (is he) to open more than one of the same views
- how are new views opened (if that's initiated by the user at all)?

I know there are some users who have objected to a MDI approach before so I'm wondering what they would say about this. There also has been discussions about getting rid of controlcenter (the current start-window) before so that would definately be desirable.

good discussion point to pick up with - and a good preview of how it could look like (I will have a look at your code if available because I'm curious how you plugged that togeher as well :) )

Cheers
Nils

Anonymous

Postby Anonymous » Sat Jun 19, 2004 3:11:53

nmeier wrote:Ken

really cool look that you've created there


Thanks, it was easy! :D The source code was very well organized and easy to understand, so it didn't take me long to figure out what I had to change.

I'm wondering
- did you envision the user to rearrange the views you've layouted as shown in the screenshot himself

Yes

- should the user still be able (is he) to open more than one of the same views

Eventually I wanted to make it a user preference. Currently it is not available in the MDI version (clarification: user cannot open more than 1 view panel for a given GEDCOM)

- how are new views opened (if that's initiated by the user at all)?


Clicking on the icons in the toolbar will currently open the view in the predefined location ONCE for a given GEDCOM file. Exceptions are the Navigator, Editor, and GEDCOM table views. At the time, I envisioned these as being closable by the user, but currently they cannot be closed. There is always 1 editor and 1 navigator TAB for each GEDCOM, as well as 1 GEDCOM table view. Ultimately I envision these as being completely configurable panels that can be added/moved/resized/removed.

I know there are some users who have objected to a MDI approach before ... There also has been discussions about getting rid of controlcenter (the current start-window) before so that would definately be desirable.

The current control window IS the MDI window. I simply moved the GEDCOM table view and inserted my own panel manager "widget" that manages all of the panels. And as it stands, with my code sitting on top of the current GenJ Jar file, you can run the current "SDI" view by executing the existing run.jar instead of run-mdi.jar. I figured that if it is done properly, the user could specify a preference and the application will launch in the current or MDI view. Haven't messed with the preferences screens yet tho...

good discussion point to pick up with - and a good preview of how it could look like (I will have a look at your code if available because I'm curious how you plugged that togeher as well :) )

The executable jar file is available on my web site along with instructions. It should be pretty easy to set up. I would make a separate GenJ install from whatever you are running and layer my jar over the top of it per the instructions. Also, note that I modified the way that FAMC and ADOP tags are handled, so you may not want to save any files with this version.

I also updated my page with several known issues with my 0.5 build, as well as other enhancements that my wife has requested. You may want to check it out.

Once I get my code checked into my local CVS repository, I will post the source code on my website too. I'll put a note here once that is complete.

Take care!

Ken

Anonymous

Postby Anonymous » Sat Jun 19, 2004 3:48:09

kmraz wrote:Once I get my code checked into my local CVS repository, I will post the source code on my website too. I'll put a note here once that is complete.


I'm really looking forward to seeing your codein CVS. The MDI GUI looks so good. Did you already contact Nils for CVS access?

Anonymous

Postby Anonymous » Sat Jun 19, 2004 11:26:30

cmuessig wrote:Did you already contact Nils for CVS access?

No, not yet. My original code existed as a "copy" of the repository for GenJ. Then I re-wrote several classes in my copy, deleted all of the rest that I did not need to modify, then set out hacking my code together to create the MDI version.

I have since been merging my changes and additions into my anonymous checkout of GenJ source. Once that is complete and everything still runs, I will merge the code into the official GenJ repository.

I will try to get the current code bundled up and posted on my website within the next week, so people can look at it. In the meantime, it should be possible for you to at least run it (if you haven't already) to get a feel for how it works and feels.

Later,

Ken

Anonymous

Postby Anonymous » Sat Jun 19, 2004 12:13:49

Ken,

I was on your homepage and read that you and your wife also thought about GEDCOM merging beside the GUI stuff. In my opinion this is an important feature. So please don't forget about it.

A similar feature are numbering systems.

Both things are already requested in our tracker at #932938 and #649764: http://sourceforge.net/tracker/?group_id=46817&atid=447497

Anonymous

Back from vacation and almost ready to post my code

Postby Anonymous » Sat Jul 17, 2004 0:40:28

FYI, I have just returned from my extended vacation and should be about ready to post my code on my website. Once I have done that, I will look to updating it to the current CVS trunk in preparation for submission. I was in the process of splitting off some of my code and refactoring when I started this thread, and my code was in serious need of clean-up, but it is close.

Watch for more info in the next week (part of the reason I am posting this is to put the pressure on myself to get this done!)

Later,

Ken

Anonymous

Posting MDI source code on July 25...

Postby Anonymous » Sun Jul 25, 2004 1:54:17

FYI, I am going to push a zip file that contains my source code, but to minimize confusion, I will put in it ONLY the new and modified files from the GenJ 2.2 release. It should be on my site by the end of the day, so you may want to wait until Monday (7/26) before you check for it as I'm not sure when I will post it.

Currently there are some issues, the biggest being that I still have a number of hacks that will not merge nicely with the CVS code without globally changing the rest of GenJ. Due to that, it is probably not a good time to merge the code into CVS just yet, but I wanted to make the code available as I indicated in my last post.

For the record, here are the stats on the modifications:

30 modified icon images
3 modified properties files (including grammar.properties)
10 modified java source files
32 new java source files
11 new icon images

I haven't completed an audit of new java source and icon images that are NOT used, nor have I completed my refactor of the new UIF classes, but it is not very big even as is and may be a good starting point for others to see how I did what I did.

Ken

Anonymous

When I will merge into CVS

Postby Anonymous » Sun Jul 25, 2004 9:45:24

I received an email that expressed (what sounded like) a little dismay:

I saw your post on the forum, about the fact you won't be able to merge it in a close future.
It would have been a good improvement, specially for beginners to get both approaches.
Maybe you could add the splash screen.


Just to be a little more clear, I don't forsee this as being a long time. Here was my response:

I guess it depends on what one means by "near future"; currently, I don't believe there are any issues that I cannot resolve in a few weeks. So at this point, I still plan to merge my code into CVS within the next month. The issues revolve around:

** Making it so that the icons don't OVERRIDE the default icons in GenJ; put them in a different package so that the icons for the old GenJ are still there when a user runs the old GUI

** Add a NEW option so that users can specify which icon set to use, so people can use the old or the new.

** Fixing the About screen so that users can modify settings without having to revert to the old GUI

** Add a NEW option so that users can specify which GUI to run from the About dialog instead of having to run a different jar file.

Once I do these things, I figure I can put my code into CVS. There have been a number of people who indicated that they want to be able to use either GUI, so I want to make sure that the original interface is still available UNALTERED :wink:

So don't think that it is going to be TOO long before it is merged. I mainly put the posts out there to force myself to get the code available to all interested parties. The problem I have been having in making everything available has been *time*; I haven't had much available in the last few months! Also, I am still awaiting CVS access in SourceForge. I requested it a few days ago, but Nils hasn't processed it yet. I figure he is probably busy or vacationing. In any event, I may have everything ready by the time I have access anyhow.

Regarding the splash screen, my current splash is nowhere as feature rich as what you describe, although it does provide a point in the GUI where that could be put. I will think about that a bit more now that you have pointed it out to me.


Ken

Anonymous

Postby Anonymous » Sun Jul 25, 2004 11:05:36

I don't see any problems. If you're stuck with anything regarding "normal" GenJ source code just ask Nils. When I had questions he was always very helpful and replied within a few days. And that merging your code into the CVS branch takes some time is normal. So please keep up your excellent work. I think nearly eveybody here is looking forward to seeing your MDI interface in the GenJ distribution.

User avatar
nmeier
Site Admin
Posts: 2159
Joined: Mon Feb 02, 2004 21:35:23
Location: Toronto, Canada
Contact:

Postby nmeier » Sun Jul 25, 2004 16:53:22

I think we should take this one step at a time - if there are general improvements that make GenJ better in handling with things (e.g. grammar - Gedcom changes) we should add those as they benefit GenJ itself.

In terms of the UI we should be cautious - changes like switching to a MDI model (that some people love and others hate) has to be really understood. Personally I definately like the MDI look but from my perspective entering genealogic information it doesn't change anything - really.

The core functionality is what I'm working on (e.g. undo/redo right now) and important user functionality (like the basic-mode editor coming up which should helper folks not really accustomed to gedcom itself). The rest is more 'sugar' IMHO that might change how genj looks only.

I personally would rather have one ui for GenJ only (rather than switchable) because the help and screenshots and overall vision would be unified. Having both MDI and the traditional approach makes things more difficult imho. So we'll have to make up our mind once and then stick to it imho

my .2c

Anonymous

Source code available and other comments...

Postby Anonymous » Mon Jul 26, 2004 0:56:41

FYI,

An updated MDI distribution, as well as the source code (diff from GenJv2.2) is now available on my site here as well as general comment updates on my main GenJ-MDI page.

Nils, you indicated that you would rather have a single UI for GenJ. I guess I can understand your concern regarding the documentation and maintenance issues, but I personally like flexibility (from a user perspective). The Netbeans GUI is similar to what I had in mind regarding the user option to switch between SDI/MDI; NB asks the first time you run which UI you want. After that, you can switch by simply running the setup wizard again. Here is a hacked together picture of a possible starting point for this wizard in GenJ:

Image

With regards to documentation, they simply show the panels in the doco pages; the panels are the same in the SDI and MDI interfaces, so the doco maintenance really needn't change. It seems this is pretty much how the GenJ doco is organized already. A section would need to be added describing the differences between the two UIs and the different benefits found in each. A sample of the Netbeans doco can be found here.

Also, while I agree to a certain extent that the UI can be considered as not as important as the core functions, I also consider my wife to be a good example of a typical user. If we want to get them to use the app, it needs to behave in a way that they are comfortable with, or they (at least she) won't use it. If it isn't used, then all the functionality in the world won't matter. JMHO. (Besides, if she won't use it, I'll have to enter all that data she is collecting :shock:)

In any event, I agree that it is best to take our time. I have a number of things I want to fix/add to create a generally reusable window manager framework. But based on the positive feedback I have been getting so far, if we can address the issues around breaking or otherwise modifying GenJ itself, I think it might be beneficial to get the code into CVS where it can be managed and others contribute to it.

I hope everyone enjoys the code; I will probably be updating it here and there over the next few weeks to fix some little bugs that are annoying my wife :wink: so if you are enjoying this thread check back...

Ken

User avatar
nmeier
Site Admin
Posts: 2159
Joined: Mon Feb 02, 2004 21:35:23
Location: Toronto, Canada
Contact:

Re: Source code available and other comments...

Postby nmeier » Mon Jul 26, 2004 14:34:16

Ken,

first thanks for being so constructive in discussing this :)

kmraz wrote:Nils, you indicated that you would rather have a single UI for GenJ. ... I personally like flexibility ... to switch between SDI/MDI... you can switch by simply running the setup wizard again.


yes, I can see where you're coming from. imho it does make things more complicated though and adds to issues around what was the user's settings when running into a problem, issues that might show up in one but not the other mode etc.

We also don't have a setup wizard like you propose - a simple option could do the trick but that might be too hidden(?) - in short: this kind of additional feature adds way more than visible at first glance.

kmraz wrote:If we want to get them to use the app, it needs to behave in a way that they are comfortable with


agreed - i wonder though if a different windowing paradigm is all that keeps certain users away from GenJ. personal preference is one thing (e.g. in regard to windowing) but isn't it the features that make people stay or not?

kmraz wrote:I have a number of things I want to fix/add


and I have to understand more of the implications of the changes ... how does it feel to open 'one' view only for a given gedcom file as opposed to 'many' of the traditional look. How can we make sure that we use the same images and 'concepts' so there's no big gap between mdi and traditional. how does your docking mdi concept work when after my new basic edit view mode that makes edit view less tree-like and more like a normal dialog-big-flat-surface-oriented panel that needs more space then the current shown in your screenshot on the left side

i'll also try to setup a poll to give folks a chance to say what windowing system they like best

thanks
nils

Anonymous

Updated jar and source on my site...

Postby Anonymous » Fri Jul 30, 2004 1:13:41

FYI,

I have posted a new (cleaner) version of my stuff on my site. I fixed a number of bugs as well as added some new things. Feel free to check it out and give me comments. I also list a summary of my goals for my windowing changes, including this, which may help with the SDI-MDI discussion:

Update the window manager to track windows both inside and outside the main MDI window, so a panel can be dragged and re-docked anywhere in the main window, or completely "torn off" the MDI frame and made floating. (Would need a redock button as well).

This could be the best answer to the SDI-MDI issue: the SDI world is just the MDI world with all of the panels "torn off" the main window, and the user option to create new panels "undocked". In effect, the system is always in a hybrid mode that is completely configurable.


Comments on this approach?

A quick summary of the changes in the current build on my site:
    * There is now ONLY ONE (1) Application! The two apps are merged. To launch, simply run the genj.app.App class. If you put "mdi" on the command line, the app will run the MDI version, regardless of preference (see next change)
    * Fixed the "About" menu; it now works. This was due to the dueling application classes, and was what made me do the previous change.
    * The "About" menu has a new option in the Look and Feel tab: Window Mode. You can use this to switch back and forth from SDI to MDI and back. It requires a restart. This is the default way to change it. This will add a new property to the genj.properties file, so the app remembers your mode.
    * The "About" menu will let you pick look and feel, even without the LnF library. If the library is present, it will use that; if that is not available, the following options will still be available: Metal, Windows, Motif, JGoodies Plastic, JGoodies Windows
    * Fixed the bug where toolbars are not ALWAYS horizontal when merged into the Gradient Panel header. When in MDI mode, the system will ignore the properties file settings that were causing some people to get vertical bars.
    * Fixed the callback on the panels; now double clicking the header of the panels will maximize the panel (like Eclipse); the main window tabs can also be double clicked to maximize, but that wasn't broken in the previous code dump.
    * Updated the splash screen to display the GenJ logo from website. Updated the copyright, et.al. to be the same as the GenJ properties; indicates this is not a *new* project; now has Nils' name back in the copyright - I don't want my own project ;)
    * Started the clean-up of unused junk; some unused classes that were obsoleted during my first round of refactoring are removed from the source libraries as well as the binaries.

Anonymous

Committed the ADOP tag changes to the main trunk

Postby Anonymous » Sat Aug 07, 2004 0:31:17

I committed the ADOP tag changes to the main trunk. The files modified for this change are listed below:

language/en/genj/gedcom/resources.properties

src/core/genj/tree/Parser.java
src/core/genj/gedcom/grammar.properties
src/core/genj/gedcom/Indi.java
src/core/genj/gedcom/PropertyChild.java
src/core/genj/gedcom/PropertyFamilyChild.java
src/core/genj/gedcom/PropertyFamilySpouse.java

I also fixed an indexOutOfBounds exception during a drag and drop operation in
src/core/genj/gedcom/Property.java

Right now the main effect of this ADOP tag change is the following:

1) The ADOP tag can have a FAMC tag in it;

2) The nested FAMC tag can have an ADOP tag in it indicating who adopted the child (HUSB, WIFE, BOTH)

3) When creating an ADOP tag, it appears you can add a FAMC tag, but it won't work right. The proper way to create it is to add the person to the family, create the ADOP tag, and cut/paste or DnD the FAMC tag into the ADOP tag. Then the second ADOP tag can be added to the nested FAMC tag. (It might be good to add some sort of wizard or something to the editor to make this easier for people to add the nested family)

4) When loading a GEDCOM with the ADOP tag as specified in the GEDCOM spec, the ADOP tag will create everything nested as appropriate

5) When displaying a family with adopted children, they will appear in the descendants tree if descendants are displayed.

6) When displaying the ancestors of an adopted child, the adoptive family is currently NOT displayed (no change)

Also, I did some studying of the branch merging in CVS so I think I am about ready to put my MDI stuff on an experimental branch off of 2.2; then I will merge the trunk back onto my experimental branch and begin working on getting it to work against the current HEAD source.

Since the ADOP tag changes don't really impact the windowing, those changes went into the HEAD branch. At this point, I won't be doing much else with them, until the discussion around the editor touches on the ADOP tag.

Later...

Ken

Anonymous

Postby Anonymous » Sat Aug 07, 2004 0:41:54

Also completed the following actions related to the windowing code:

Created a new branch off of the version of code for v2dot2: mdi_experimental

Modified the contents of the branch with my original MDI version of the code and committed it to the new branch.

Tagged that with a new version: v2dot2_mdi

So the MDI code based on the version 2.2 of GenJ is now in CVS. You can get to the current version on the new branch, or get back to the release that is on this web site via the version tag.

I am now going to refactor the code to account for refactoring that Nils has made to the HEAD branch (ViewWidget -> ViewContainer, etc.) to make it easier for the next step.

Then I will merge the current HEAD branch onto the mdi_experimental branch to get all of Nils current changes. Then I will proceed with getting the code to work.

Ken

User avatar
nmeier
Site Admin
Posts: 2159
Joined: Mon Feb 02, 2004 21:35:23
Location: Toronto, Canada
Contact:

Postby nmeier » Sat Aug 07, 2004 13:34:24

thanks for all your work ken - looks like i'll learn a lot more about cvs branching after this is done :wink:

i won't be able to look into the checked in code this weekend and am travelling next week (job-interview in Toronto).

Hope to be back at a permanent DSL line for my laptop soon though :shock:

Anonymous

Postby Anonymous » Sat Aug 07, 2004 22:06:56

nmeier wrote:i won't be able to look into the checked in code this weekend and am travelling next week (job-interview in Toronto)

No problem; I sent you an e-mail with info on the image issue (looks like it may not be a bug...) and some links re: CVS branching that I found useful.

Good luck with your interview...

Ken

Guest

Postby Guest » Fri Aug 20, 2004 20:14:34

Between the Kens' version of Genj and the existing one how do we keep updating Genj code coherently working on genalogy issues and coding issues in parallell ? ; I have not followed this thead from the very beginning but can we start from the same code and let the people choose between those 2 basic version of Genj we a Java installer for example if not I think a fork in development code cannot be avoided can it.

Anonymous

Postby Anonymous » Fri Aug 20, 2004 22:54:53

Anonymous wrote:... how do we keep updating Genj code coherently working on genalogy issues and coding issues in parallell ?


From my perspective, coding in parallel is not really a big issue. It happens all the time, and I do it all the time on my job. There are maintenance branches, experimental branches, design branches, all in parallel. The point being is that there is a general goal that is being worked towards, and at some point branches terminate, or merge back into the main line of development.

I'm not sure what you mean by working on genealogy issues versus coding issues; from my perspective it is all coding issues. If I understand what you mean, you are saying "working on issues related to the genealogy data and support for GEDCOM, output of the data, and how you edit it" versus "how the application works and looks with regard to windowing". My view is that how it looks and works with regard to windowing drives the entire paradigm regarding editing and viewing the data, so it is closely related. However, the windowing must be done with a mind towards what the application is going to be used for and its target audience, and cannot be done in a vacuum.

Anonymous wrote:I have not followed this thead from the very beginning but can we start from the same code and let the people choose between those 2 basic version of Genj we a Java installer for example if not I think a fork in development code cannot be avoided can it.


Regarding this, I agree with Nils that to have a single consistent code base is ultimately best. The question is, should that single code base support SDI, MDI, or allow either? I posit the last option is the best if it can be achieved. However, maintaining both separate branches off of the 2.2 release (SDI and MDI branches) is not really an option. I certainly am not going to tackle the work to go it alone and fork my own project, because I know I don't know it all regarding the Genealogy/GEDCOM stuff and do not have the time to dedicate to it :shock: . So I will work on this windowing stuff until it is merged successfully in or decided to drop it. After that, I may reuse the code myself or not; I may work on other parts of GenJ or not, but I'm not going to create a fork.

Using an installer to install one or the other version is not really an option, as it assumes that the code will stay separate. If that happens, the work necessary to merge the new developments in the original version would rapidly become too much for me to keep up with.

Just my 2 cents...

User avatar
island
Posts: 506
Joined: Sat Feb 28, 2004 16:07:30
Location: Groix island, France
Contact:

Postby island » Sat Aug 21, 2004 1:49:29

kmraz wrote:Regarding this, I agree with Nils that to have a single consistent code base is ultimately best. The question is, should that single code base support SDI, MDI, or allow either? I posit the last option is the best if it can be achieved.

I agree with you Ken, to allow SDI and MDI and switch between them from the options menu, is the best way to go IMHO. Francois
Ancestris Genealogy program: http://www.ancestris.org
http://www.ancestris.org/ancestris_users/ancestris_localisation_utilisateurs_en.html

Anonymous

Getting back to work...

Postby Anonymous » Mon Oct 11, 2004 13:22:15

Well, I haven't got anything done on GenJ for at least a month. I was in the process of evaluating a new job offer and was involved in a bad car accident. Fortunately no one was seriously injured, but it took me out of sorts for a couple of weeks. Then I accepted the new job offer and have been getting up to speed on my new job. One of the things is that they program in C, C++ and their own internally developed object oriented language, so I have been re-learning C/C++ and learning the new language. All of which has taken me away from GenJ.

However, things are starting to settle down so it is probably time to get back to what I was doing here. It will help keep my Java skills sharp before I take the certification exam for one thing!

However, there are that many more changes to deal with in merging my code, so it may take a little while. I need to review the postings as well as the code changes since I was last in here to see what I need to do to complete the merging of the current code base into the experimental branch.

Later,


Ken

Anonymous

Back at it...

Postby Anonymous » Thu Aug 25, 2005 12:27:36

Well, I have responed to a few emails, and thought I would post a note here as well. I have started to revisit the windowing stuff (work slowed down a bit and kids are going back to school). I tried to merge the trunk onto the experimental branch, but they are WAY to out of synch; too many "architectural" changes in the windowing and preferences to merge.

I am now in the process of taking the main trunk and manually doing the updates to it. However, I stumbled onto another opensource project that I may use instead of my own windowing framework (Flexdock). More information on my status can be followed at my website here.

Later,

Ken

Anonymous

Ready to post new docking MDI to CVS soon?

Postby Anonymous » Mon Aug 29, 2005 23:52:15

FYI, I have made considerable progress in only a few days with the Flexdock framework on the MDI version. I have posted more info on my website.

I have almost replace my entire codebase, and have only had to tweek a few existing (on the trunk) files to get this to work, so it is much less intrusive than the experimental code. I expect that I will put a new branch off the current trunk HEAD with the new code and abandon my old code as a learning experience, so the new docking version will have all of the current HEAD content.

One nice thing about the Flexdock framework is that it supports floating views, so I should be able to make it support both the old "SDI" style and the new "MDI/Docking" paradigm with minimal effort.

Current screenshots can be seen here. I have also invested some thought in the merge / renumber of GEDCOMs; see the link to my website for more info.

Later,

Ken
Image

Image

User avatar
nmeier
Site Admin
Posts: 2159
Joined: Mon Feb 02, 2004 21:35:23
Location: Toronto, Canada
Contact:

Postby nmeier » Wed Aug 31, 2005 21:24:31

Hi Ken

I've seen you've been busy :) I wanted to get the latest version of another docking framework to you as well (we talked about my brother Sven's framework some time back I believe).

Version 2.4 was supposed to be around the corner by now but there's big delays mostly to too much stuff going on in the office and me having to move. Therefor I won't be much of help in discussing the MDI/SDI stuff ...
hoping to get the to-dos for 2.4 addressed at this point.

Cheers
Nils

dmoyne
Posts: 147
Joined: Wed Feb 04, 2004 9:15:47
Location: Pau (France)

Postby dmoyne » Fri Sep 02, 2005 6:08:03

Ken the issue to make Genj really attractive is not only with the way you display Windows though like you I do feel there are too many windows ; here a few points to discuss :
(1) besides the fact that we have 2 modes the standard one : you work directly on records and it is very power full as you can mode CHIL for example from one FAM to another FAM and the mode you want to improve more like HEREDIS that some people would prefer,
(2) I think an approach like any text software or drawing software would really be welcome by the whole community : I mean people do not like a tool box when opening the application but very likely would appreciate working directly on the Tree View as an end product though the real one is the data base Gedcom formatted that is built in the background ; for me this issue is the real one ! ; on top of the Tree view you would find typical menus like "Edit", like "File" to open a new Tree (with another family), etc... ; most of the applications used by people on computers are based on this principal ; when you start the app the first question is "New Tree", "Existing ones " from a list with the most recent Trees opened as a reminder and the way you handle the app follows what is commonly used nowadays !
Regards.

Anonymous

Docking version of GenJ making progress

Postby Anonymous » Mon Oct 31, 2005 15:32:31

FYI,

The "docking" version of GenJ has made some good progress in the last month. I have a few outstanding issues that I am tracking and working on, but I'm thinking it may be time to start to look at where we go from here.

Nils, when you get a chance, if you haven't already, please pull the docking branch down and play around with it. Also, you should be able to compare the code with HEAD, just diff HEAD with latest on "docking" with the branch point of "Root_docking". Let me know what you think, as well as any specific issues you find.

There are a few issues with Flexdock that I am tracking, but for the most part, it has stabilized fairly well, at least for the stuff I have done. If you want to send me the other docking framework source, I'll take a look at it and kind of compare the two to see if one has any definite advantage over the other. At this point, with the Flexdock mods I have made, it has at least one advantage for me: I am basically done! :shock:

I would like to figure out if we are going to merge this line back to HEAD or not. I know there were issues regarding the window paradigm that need to be discussed, but I would like to get them resolved and merge back into one development line if that is what we are going to do.

Later,

Ken

User avatar
nmeier
Site Admin
Posts: 2159
Joined: Mon Feb 02, 2004 21:35:23
Location: Toronto, Canada
Contact:

Postby nmeier » Mon Oct 31, 2005 18:55:58

Good to hear from you Ken

Version 2.4 of GenJ is still outstanding and I haven't had enough time recently to fix the outstanding issues & to-dos. I've just put in the necessary code for GeoView's v2.4 and will address the rest for core hopefully shortly.

Once 2.4 is out I'll have to time to compare to the MDI branch again - we should probably try to merge into trunk at that point.

If you could have a look at the other docking code here that would be great. My brother wrote the code and it looks good - I haven't used it much though but it seems to have an interesting story on how the position of docklets can be persisted.

You're the expert on docking though so ymmv :)

Cheers
Nils

Anonymous

FYI-Closing out MDI-Docking branch. Terminating development

Postby Anonymous » Thu Feb 23, 2006 22:28:45

FYI, to those who are interested in the MDI/Docking UI discussion. Based on recent e-mails with Nils, the docking version that I have been working on to merge into GenJ after version 2.4 is not going to go in. Nils has a number of other things he wishes to focus on, and doesn't foresee integrating this, or even addressing it any time soon. Since maintenance of the other branch is already becoming very difficult without a merge to HEAD, I don't see any point in continuing the branch.

If anyone is still interested in the docking code, I will be maintaining a build of it off of the current release for my wife, and will make the source and binaries available on my website at my home page. I will NOT be merging current developments into it, but rather just building off of stable releases, so there won't be any weekly/daily builds as there were by Francois in the past.

As this has been the main thrust of my involvement since the beginning, I will be dropping out of the formal development process. I have enjoyed being involved and hope that I was able to bring something to the discussion :D

God bless,

Ken

User avatar
Daniel Durand
Posts: 268
Joined: Thu Feb 05, 2004 15:37:43
Contact:

Re: FYI-Closing out MDI-Docking branch. Terminating develop

Postby Daniel Durand » Sun Feb 26, 2006 2:21:16

kmraz wrote:FYI,
to those who are interested in the MDI/Docking UI discussion. Based on recent e-mails with Nils, the docking version that I have been working on to merge into GenJ after version 2.4 is not going to go in. Nils has a number of other things he wishes to focus on, and doesn't foresee integrating this, or even addressing it any time soon. Since maintenance of the other branch is already becoming very difficult without a merge to HEAD, I don't see any point in continuing the branch.


It's a very bad new. J'm using docking version since six months and considers that this version is the only (?) way to have a soft userfrinendly for "Aunt'marta" public and not only for "happy few" experts...
I would like to say to Niels that I grantly appreciate his hard work to improve GenJ on many ways but keep in mind some priorities ! The building of a friendly UI and interface must be on the top of developpement priority : some improvement as geo capacitees or so can wait....
I hope that a solution to integrate Docking will be found in the vry next future. If not, I don't know yet if I'll continue to use GenJ with it confuse multi-window interface...

As this has been the main thrust of my involvement since the beginning, I will be dropping out of the formal development process.

Ken, I hope that you'll accept to reconsider your posiition : GenJ need to continue to receive your imaginative and creaive ideas and collaboration. thanks also for the excellent done.

Regards
Daniel Durand

Anonymous

Postby Anonymous » Sun Feb 26, 2006 4:01:08

I would like to see an integration of Ken's work in the next version as well. I think that GenJ can only benefit if a MDI / docking UI is on offer. Sure, there are other areas which can be improved as well, but due to the work and effort put into this, I don't see the point to postpone / refuse his work.

Anonymous

Postby Anonymous » Sun Feb 26, 2006 4:24:12

Je partage tout a fait l'avis de cmuessig.
Si Ken a proposé son developpement en pensant en premier lieu a sa femme, je pense a tous les utilisateurs qui se sont familiarisés avec genj en utilisant la version docking, utilisateurs qui risquent de ressentir une grande deception de ne pas voir leur outil maintenu de l'ensemble des developpements futurs.

chaque fois que je le peux, je réalise la promotion de cet outil autour de moi en demontrant tous les bénéfices que l'on peut en retirer, promotion realisée sur la version docking qui me parait plus abordable pour les neo utilisateurs.

Realiser cette integration va permettre, j'en suis sur, de reconcilier les differentes approches et couvrir donc un public plus large, source de richesse pour vos developpement futurs

Cordialement

Cartes

Simon
Posts: 46
Joined: Tue Jan 04, 2005 12:11:35

Postby Simon » Sun Feb 26, 2006 18:49:23

This is a metoo. The single window variant of GenJ is much easier to use (less hassle with windows when switching forth and back with other apps), even for power users.

User avatar
MWH
Posts: 124
Joined: Sat Aug 07, 2004 18:05:17
Location: Arkansas

Article

Postby MWH » Sun Mar 12, 2006 22:52:53

Although it isn't about GenJ, I thought I'd post an article that I think is quite related to this topic:

http://software.newsforge.com/software/ ... ml?tid=131

M

Anonymous

Postby Anonymous » Sun Mar 18, 2007 2:55:53

i just discovered this thread and although i haven't seen the MDI view, i can say, as a Linux user, that if we could improve the basic GUI it would be a great help!

i have problems even seeing the icons on my computer and am finding that inputting children and families to be pretty awkward.

Plus, i was under the impression that OpenSource pretty much allowed and even encouraged developers to contribute so that the end product would not only be powerful (as GedCom already is) but very userfriendly as well.

i find that discouraging the addition of another way of viewing and using the program to be very disheartening but is perhaps inevitable given our western outlook on and encouragement of rugged individualism instead of cooperation and colaboration for the common weal.

User avatar
nmeier
Site Admin
Posts: 2159
Joined: Mon Feb 02, 2004 21:35:23
Location: Toronto, Canada
Contact:

Postby nmeier » Sun Mar 18, 2007 12:55:13

Hi

MDI vs. non-MDI is an age-old discussion - I'm sure this will come back in one form or other at some point. Just because we scrapped a prototype for reasons that not everybody followed doesn't mean this it out of the window for ever.

So thanks for the feedback of those who like to raise their hand in favour.

Regarding your post, frazelle

frazelle09 wrote:i was under the impression that OpenSource pretty much allowed and even encouraged developers to contribute


you're wrong - opensource means just that - the source is open for everone to read. The license we publish it under allows you or anyone to change, build and distribute based on that.

This projects lives of volunteers submitting their contributions though ... that doesn't mean that every volunteer's contribution will make it through acceptance testing, code review and applicability studies. This is not a house where everybody can come in and put windows wherever they want ... it's pretty simple really. This is not a random process but a software development project.

frazelle09 wrote:disheartening ... perhaps inevitable given our western outlook on and encouragement of rugged individualism instead of cooperation and colaboration for the common weal


ahem, that sounds a little bit too theatric for me. Look, this is a team-effort. We don't make money but we still do work as a team with seniors, steering members and individual contributors. Does everything everyone wants get done/added everytime? No, of course not (western or not).

Get over it - that's life.

Cheers
Nils

Anonymous

I am for MDI also

Postby Anonymous » Sun Apr 22, 2007 21:53:16

I think this would help in user-friendly'ness area.

I understand the priority stuff and unfortunately can not help with development, but if this topic come back to to the top of priorities, I would like to contribute to the desine (at least).

Don't need the answer, just count my vote ;-)


Return to “Dev - Project, Design & Technology”

Who is online

Users browsing this forum: No registered users and 1 guest