> (1) Simplicity, especially from the plug-in developers perspective. I > don't think it would be wise to require plug-in developers learn an > additional GUI toolkit. If we can use the toolkit in the core without > requiring it for plug-ins, I'd feel better.
In the way I imagine that, the plugin developper would just have to add an xml element to the configuration file <menuitem name="myplugin" plugin="mypluginclass"> instead of a line in the JUMPConfiguration class This way, anyone could move the menuitem or desactive it from the xml file. > (2) Dependability. I'm discovering that the GUI of a program is the > hardest part to test, and no matter how you slice it we're adding > another layer were problems could creep in. Yes, it is not an easy part, that's what I concluded trying to adapt jump's code to make it fit to swixml lib. That's why I wonder if it is a better way to create a special xml which keep things close to jump's model in order to change jump's code a minima. Anyway, I will not start change on my own, at least not in CVS, that's why I like to discuss this with you guys. > > I took a look at both SwiXML and Bouy. SwiXML seems to be simpler, and > is used only for the generation of the GUI, while Bouy seems to > actually wrap Swing functionality. Bouy has some type of IDE/GUI > Builder, but it ins't released under an open source license for > commercial uses. This doesn't prevent you from using the library, but > it is something to consider. Buoy is in public domain, and a very cool application called AOI has been made with it. But I think an adaptation of JUMP to this library would need changes in hundreds of classes, which is surely not reasonable. > > If we were to use a library to support XML defined GUI components I > think I'd be leaning towards SwiXML. Does anyone know how well > supported the development of the library is? I think support is OK, with a new version 1.6 announced on the web page. > > We can always try out SwiXML or Bouy in a plug-in before attempting > something with the core. This will let us get a feel for it. I think the need is not at the plugin level, but at the main application level, to associate main menus and main toolbar with plugins. For specific plugin design, xml configuration is not so important (IMHO) > If we get serious about this change we should see what other type of > GUI improvements developers might be experimenting with so we don't > derail their plans. Yes, I totally agree Michaël > > The Sunburned Surveyor > > > On 5/8/07, * Larry Becker* <[EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]>> wrote: > > Hmm, I'm with you on installing plugins, but I'm not sure I agree that > the UI stuff should (or could) be configurable in the same way. > > How about I get plugin support working and you can take it from > there? > Perhaps I'll like the UI stuff after I see it in action. > > regards, > Larry > > On 5/8/07, Michaël Michaud < [EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]>> wrote: > > Hi Larry, > > > > I must admit I even did not think about extending > workbench-properties.xml. > > The feature request you refer to and your proposition meet > exactly my > > questions. > > I understand that you think about extending > workbench-properties.xml with > > specific tags representing jump's plugins and ui elements like > > menu-items and tools > > without using a specific library. > > I'm still not sure about the best approach, but it would be a great > > feature for OpenJUMP. > > > > Michaël > > > > Larry Becker a écrit : > > > > >Hi Michaël, > > > > > > I believe the OJ feature request that you are referring to was > > >submitted by Steve Tanner: > > > "Have JUMPConfiguration.java in XML file. > > > > > > Ugo added the following comment: > > > > > >Ugo Taddei: �Has anyone thought about changing the > > >JUMPConfiguration.java to an xml-based config? That is, > > >instead of hard-coding all those plug-ins at compile > > >time, the app would generate them a runtime. I say this > > >because (1) JUMPConfiguration is rather long and (2) in > > >a project we only had to change the order and > > >availability of plug-ins, and commenting them out was a > > >solutions. It'd have been more elegant to do that with > > >a text file�. > > > > > >If I understand this feature request right, it is referring to > > >supporting something like the development-only > > >workbench-properties.xml file (or perhaps just it). > > > > > >I think this would be a great idea and have been considering > working > > >on it. If I could get runtime support for > workbench-properties, would > > >that meet your requirements too? > > > > > >regards, > > >Larry > > > > > > > > >On 5/8/07, Michaël Michaud < [EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]>> wrote: > > > > > > > > >>Hi, > > >> > > >>I take advantage of this mail to extend the question to a more > general > > >>feature request... > > >> > > >>I have noticed that the oldest OJ's feature request is having > an xml > > >>configuration file for OpenJUMP (feature request from Jon). A > few days > > >>ago, I decided to have a look in some of OpenJUMP's classes > where the UI > > >>initialization happens to see how difficult it would be to do it. > > >>There are two libraries I am interested in for UI design : > swixml and > > >>buoy (I think E. Soldin used swixml for one of his plugins and > I used > > >>buoy for 'simple query' plugin). > > >>Modifying OpenJUMP to use buoy would be a great project, but > far too big > > >>for me, so I started to look how to benefit from swixml. > > >>After some hours trying to figure out how to put jump's UI > elements into > > >>a swixml hierarchy, I still had no result, and started to > wonder what is > > >>the better solution : to refactor some of OpenJUMP's ui > classes and > > >>maybe create some specific swixml tag until I find a way to > make OJ ui > > >>fit the swixml model, or to create a specific xml > representation of > > >>OpenJUMP's ui elements. > > >> > > >>If JUMP's designers or swing gurus have some advices to give > me or some > > >>experience about this problem, they are welcome. > > >> > > >>Michaël > > >> > > >>Stefan Steiniger a écrit : > > >> > > >> > > >> > > >>>adding menu items to existing ones is one of the great things > of JUMP .. > > >>>thanx to Martin and Jon > > >>> > > >>>Geoffrey G Roy schrieb: > > >>> > > >>> > > >>> > > >>> > > >>>>To the Gurus > > >>>> > > >>>>I understand how to create a Main menu item, and to add one > or more > > >>>>items to it when a plugin is loaded. What should happen if > two plugins > > >>>>create the same Main Menu item, and try to add different > items to it??? > > >>>> > > >>>>My initial testing seems to indicate that the last loaded > plugin appears > > >>>>to replace the menu created with the first loaded > plugin. Is this > > >>>>behaviour correct, or can be be avoided. > > >>>> > > >>>>Geoff > > >>>> > > >>>> > > >>>> > > >>>> > > >>>> > > > > >>>------------------------------------------------------------------------- > > >>>This SF.net email is sponsored by DB2 Express > > >>>Download DB2 Express C - the FREE version of DB2 express and take > > >>>control of your XML. No limits. Just data. Click to get it now. > > >>> http://sourceforge.net/powerbar/db2/ > > >>>_______________________________________________ > > >>>Jump-pilot-devel mailing list > > >>> Jump-pilot-devel@lists.sourceforge.net > <mailto:Jump-pilot-devel@lists.sourceforge.net> > > >>> > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > <https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel> > > >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > > > >>------------------------------------------------------------------------- > > > >>This SF.net email is sponsored by DB2 Express > > >>Download DB2 Express C - the FREE version of DB2 express and take > > >>control of your XML. No limits. Just data. Click to get it now. > > >>http://sourceforge.net/powerbar/db2/ > > >>_______________________________________________ > > >>Jump-pilot-devel mailing list > > >> Jump-pilot-devel@lists.sourceforge.net > <mailto:Jump-pilot-devel@lists.sourceforge.net> > > >> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > <https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel> > > >> > > >> > > >> > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by DB2 Express > > Download DB2 Express C - the FREE version of DB2 express and take > > control of your XML. No limits. Just data. Click to get it now. > > http://sourceforge.net/powerbar/db2/ > > _______________________________________________ > > Jump-pilot-devel mailing list > > Jump-pilot-devel@lists.sourceforge.net > <mailto:Jump-pilot-devel@lists.sourceforge.net> > > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > > > > > -- > http://amusingprogrammer.blogspot.com/ > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > <http://sourceforge.net/powerbar/db2/> > _______________________________________________ > Jump-pilot-devel mailing list > Jump-pilot-devel@lists.sourceforge.net > <mailto:Jump-pilot-devel@lists.sourceforge.net> > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > <https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel> > > >------------------------------------------------------------------------ > >------------------------------------------------------------------------- >This SF.net email is sponsored by DB2 Express >Download DB2 Express C - the FREE version of DB2 express and take >control of your XML. No limits. Just data. Click to get it now. >http://sourceforge.net/powerbar/db2/ > >------------------------------------------------------------------------ > >_______________________________________________ >Jump-pilot-devel mailing list >Jump-pilot-devel@lists.sourceforge.net >https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > > ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel