[xwiki-devs] [Proposal] Create xwiki-gwt-user module
Hi devs, I'd like to create a xwiki-gwt-user module in platform-web which will contain classes from the util and widget WYSIWYG packages. This module corresponds to the com.google.gwt.user package which contains utility and UI-related classed. The module will have this structure: org.xwiki.gwt.user.client.* (classes from the current util package) org.xwiki.gwt.user.client.widget.* (classes from the current widget package) Since I want this module to be generic (an extension of what GWT currently provides) I'd like to exclude the following class/packages which are XWiki specific: * util.Attachment * widget.explorer.* * widget.wizard.util.* * widget.PageSelector * widget.SpaceSelector * widget.WikiSelector These can remain in the WYSIWYG source tree for the moment but I'm considering moving them to the gwt module which is XWiki specific. You can see the current sources here http://svn.xwiki.org/svnroot/xwiki/platform/web/trunk/wysiwyg/src/main/java/... Here's my +1. WDYT? Thanks, Marius
On 10/19/2009 03:37 PM, Marius Dumitru Florea wrote:
Hi devs,
I'd like to create a xwiki-gwt-user module in platform-web which will contain classes from the util and widget WYSIWYG packages. This module corresponds to the com.google.gwt.user package which contains utility and UI-related classed. The module will have this structure:
org.xwiki.gwt.user.client.* (classes from the current util package) org.xwiki.gwt.user.client.widget.* (classes from the current widget package)
Since I want this module to be generic (an extension of what GWT currently provides) I'd like to exclude the following class/packages which are XWiki specific:
* util.Attachment * widget.explorer.* * widget.wizard.util.* * widget.PageSelector * widget.SpaceSelector * widget.WikiSelector
These can remain in the WYSIWYG source tree for the moment but I'm considering moving them to the gwt module which is XWiki specific.
You can see the current sources here http://svn.xwiki.org/svnroot/xwiki/platform/web/trunk/wysiwyg/src/main/java/...
Here's my +1. WDYT?
Why "user"? It doesn't look like a user thing to me, perhaps I'm wrong. Can you explain what this code does in more details? -- Sergiu Dumitriu http://purl.org/net/sergiu/
Hi Sergiu, Sergiu Dumitriu wrote:
On 10/19/2009 03:37 PM, Marius Dumitru Florea wrote:
Hi devs,
I'd like to create a xwiki-gwt-user module in platform-web which will contain classes from the util and widget WYSIWYG packages. This module corresponds to the com.google.gwt.user package which contains utility and UI-related classed. The module will have this structure:
org.xwiki.gwt.user.client.* (classes from the current util package) org.xwiki.gwt.user.client.widget.* (classes from the current widget package)
Since I want this module to be generic (an extension of what GWT currently provides) I'd like to exclude the following class/packages which are XWiki specific:
* util.Attachment
util.ResourceName too
* widget.explorer.* * widget.wizard.util.* * widget.PageSelector * widget.SpaceSelector * widget.WikiSelector
These can remain in the WYSIWYG source tree for the moment but I'm considering moving them to the gwt module which is XWiki specific.
You can see the current sources here http://svn.xwiki.org/svnroot/xwiki/platform/web/trunk/wysiwyg/src/main/java/...
Here's my +1. WDYT?
Why "user"? It doesn't look like a user thing to me, perhaps I'm wrong. Can you explain what this code does in more details?
GWT has 3 main jars: gwt-servlet-1.7.0.jar gwt-user-1.7.0.jar gwt-dev-1.7.0-linux.jar Some of the main packages from the user jar are: com.google.gwt.dom com.google.gwt.emul com.google.gwt.user The dom package exposes, obviously, the JavaScript DOM API in Java code. We have extended what this package offers and created the xwiki-gwt-dom module. The user package contains utility classes like Timer, Random or DeferredCommand and basic widgets (ui.* package) like CheckBox or RichTextArea. We have extended what this package offers with other useful utility classes like Console, ShortcutKeyManager or DeferredUpdater and other widgets (widget.* package) like VerticalResizePanel, improved RichTextArea, generic dialog wizard. In order to be consistent I proposed a xwiki-gwt-user module. I'm open to your suggestions regarding the name. Anyway, this module will be generic (reusable in any GWT application) without any XWiki specific code. Hope it's clear now, Marius
On 10/19/2009 09:41 PM, Marius Dumitru Florea wrote:
Hi Sergiu,
Sergiu Dumitriu wrote:
On 10/19/2009 03:37 PM, Marius Dumitru Florea wrote:
Hi devs,
I'd like to create a xwiki-gwt-user module in platform-web which will contain classes from the util and widget WYSIWYG packages. This module corresponds to the com.google.gwt.user package which contains utility and UI-related classed. The module will have this structure:
org.xwiki.gwt.user.client.* (classes from the current util package) org.xwiki.gwt.user.client.widget.* (classes from the current widget package)
Since I want this module to be generic (an extension of what GWT currently provides) I'd like to exclude the following class/packages which are XWiki specific:
* util.Attachment
util.ResourceName too
* widget.explorer.* * widget.wizard.util.* * widget.PageSelector * widget.SpaceSelector * widget.WikiSelector
These can remain in the WYSIWYG source tree for the moment but I'm considering moving them to the gwt module which is XWiki specific.
You can see the current sources here http://svn.xwiki.org/svnroot/xwiki/platform/web/trunk/wysiwyg/src/main/java/...
Here's my +1. WDYT?
Why "user"? It doesn't look like a user thing to me, perhaps I'm wrong. Can you explain what this code does in more details?
GWT has 3 main jars:
gwt-servlet-1.7.0.jar gwt-user-1.7.0.jar gwt-dev-1.7.0-linux.jar
Some of the main packages from the user jar are:
com.google.gwt.dom com.google.gwt.emul com.google.gwt.user
The dom package exposes, obviously, the JavaScript DOM API in Java code. We have extended what this package offers and created the xwiki-gwt-dom module.
The user package contains utility classes like Timer, Random or DeferredCommand and basic widgets (ui.* package) like CheckBox or RichTextArea. We have extended what this package offers with other useful utility classes like Console, ShortcutKeyManager or DeferredUpdater and other widgets (widget.* package) like VerticalResizePanel, improved RichTextArea, generic dialog wizard.
In order to be consistent I proposed a xwiki-gwt-user module. I'm open to your suggestions regarding the name.
Anyway, this module will be generic (reusable in any GWT application) without any XWiki specific code.
Hope it's clear now, Marius
OK, so the "user" name comes from GWT. I agree with the consistency reason, but my problem is that for those that don't know GWT (like me), this name is misleading, since it doesn't suggest utility classes and user interface elements. OK, maybe it could suggest *user* interface a little, but only if you're searching for this connection. So, should we stick with the "user" name for consistency, which would make users of the editor coming from the GWT world happy, but which is misleading for those that aren't familiar with GWT. or should we choose something more meaningful? How about org.xwiki.gwt.utils and org.xwiki.gwt.widgets as two distinct modules? Can this work from a dependency PoV, or are the two modules tightly connected? -- Sergiu Dumitriu http://purl.org/net/sergiu/
Sergiu Dumitriu wrote:
On 10/19/2009 09:41 PM, Marius Dumitru Florea wrote:
Hi Sergiu,
Sergiu Dumitriu wrote:
On 10/19/2009 03:37 PM, Marius Dumitru Florea wrote:
Hi devs,
I'd like to create a xwiki-gwt-user module in platform-web which will contain classes from the util and widget WYSIWYG packages. This module corresponds to the com.google.gwt.user package which contains utility and UI-related classed. The module will have this structure:
org.xwiki.gwt.user.client.* (classes from the current util package) org.xwiki.gwt.user.client.widget.* (classes from the current widget package)
Since I want this module to be generic (an extension of what GWT currently provides) I'd like to exclude the following class/packages which are XWiki specific:
* util.Attachment util.ResourceName too
* widget.explorer.* * widget.wizard.util.* * widget.PageSelector * widget.SpaceSelector * widget.WikiSelector
These can remain in the WYSIWYG source tree for the moment but I'm considering moving them to the gwt module which is XWiki specific.
You can see the current sources here http://svn.xwiki.org/svnroot/xwiki/platform/web/trunk/wysiwyg/src/main/java/...
Here's my +1. WDYT? Why "user"? It doesn't look like a user thing to me, perhaps I'm wrong. Can you explain what this code does in more details? GWT has 3 main jars:
gwt-servlet-1.7.0.jar gwt-user-1.7.0.jar gwt-dev-1.7.0-linux.jar
Some of the main packages from the user jar are:
com.google.gwt.dom com.google.gwt.emul com.google.gwt.user
The dom package exposes, obviously, the JavaScript DOM API in Java code. We have extended what this package offers and created the xwiki-gwt-dom module.
The user package contains utility classes like Timer, Random or DeferredCommand and basic widgets (ui.* package) like CheckBox or RichTextArea. We have extended what this package offers with other useful utility classes like Console, ShortcutKeyManager or DeferredUpdater and other widgets (widget.* package) like VerticalResizePanel, improved RichTextArea, generic dialog wizard.
In order to be consistent I proposed a xwiki-gwt-user module. I'm open to your suggestions regarding the name.
Anyway, this module will be generic (reusable in any GWT application) without any XWiki specific code.
Hope it's clear now, Marius
OK, so the "user" name comes from GWT. I agree with the consistency reason, but my problem is that for those that don't know GWT (like me), this name is misleading, since it doesn't suggest utility classes and user interface elements. OK, maybe it could suggest *user* interface a little, but only if you're searching for this connection. So, should we stick with the "user" name for consistency, which would make users of the editor coming from the GWT world happy, but which is misleading for those that aren't familiar with GWT. or should we choose something more meaningful?
I'm fine with both options. Let's see what others think.
How about org.xwiki.gwt.utils and org.xwiki.gwt.widgets as two distinct modules? Can this work from a dependency PoV, or are the two modules tightly connected?
Right now there are only a few cross dependencies and I can fix them. But in general we can have: 1) a utility class used by two or more widgets (e.g. StringUtils) 2) a utility class that uses one or more widgets (e.g. TextBoxNumberFilter) In other words, if I write a widget and I discover that I need a generic utility class that might be useful for other widgets too then I'm going to place that utility class in the utility package. On the other hand, if I write an application and I discover that I need a generic utility class that makes my life easier while working with a specific widget then I'm going to place that utility class also in the utility package. I could move it in the widgets module under that specific widget but then the widgets module will become widgets&widgetUtilities and I'm going to ask myself why I have these two separate modules. If we agree to fix 2) by moving those utility classes in the widgets module then I'm fine with having two modules: utils and widgets. Otherwise I'm more for having a single module. Thanks, Marius
On Tue, Oct 20, 2009 at 09:04, Marius Dumitru Florea <[email protected]> wrote:
Sergiu Dumitriu wrote:
On 10/19/2009 09:41 PM, Marius Dumitru Florea wrote:
Hi Sergiu,
Sergiu Dumitriu wrote:
On 10/19/2009 03:37 PM, Marius Dumitru Florea wrote:
Hi devs,
I'd like to create a xwiki-gwt-user module in platform-web which will contain classes from the util and widget WYSIWYG packages. This module corresponds to the com.google.gwt.user package which contains utility and UI-related classed. The module will have this structure:
org.xwiki.gwt.user.client.* (classes from the current util package) org.xwiki.gwt.user.client.widget.* (classes from the current widget package)
Since I want this module to be generic (an extension of what GWT currently provides) I'd like to exclude the following class/packages which are XWiki specific:
* util.Attachment util.ResourceName too
* widget.explorer.* * widget.wizard.util.* * widget.PageSelector * widget.SpaceSelector * widget.WikiSelector
These can remain in the WYSIWYG source tree for the moment but I'm considering moving them to the gwt module which is XWiki specific.
You can see the current sources here http://svn.xwiki.org/svnroot/xwiki/platform/web/trunk/wysiwyg/src/main/java/...
Here's my +1. WDYT? Why "user"? It doesn't look like a user thing to me, perhaps I'm wrong. Can you explain what this code does in more details? GWT has 3 main jars:
gwt-servlet-1.7.0.jar gwt-user-1.7.0.jar gwt-dev-1.7.0-linux.jar
Some of the main packages from the user jar are:
com.google.gwt.dom com.google.gwt.emul com.google.gwt.user
The dom package exposes, obviously, the JavaScript DOM API in Java code. We have extended what this package offers and created the xwiki-gwt-dom module.
The user package contains utility classes like Timer, Random or DeferredCommand and basic widgets (ui.* package) like CheckBox or RichTextArea. We have extended what this package offers with other useful utility classes like Console, ShortcutKeyManager or DeferredUpdater and other widgets (widget.* package) like VerticalResizePanel, improved RichTextArea, generic dialog wizard.
In order to be consistent I proposed a xwiki-gwt-user module. I'm open to your suggestions regarding the name.
Anyway, this module will be generic (reusable in any GWT application) without any XWiki specific code.
Hope it's clear now, Marius
OK, so the "user" name comes from GWT. I agree with the consistency reason, but my problem is that for those that don't know GWT (like me), this name is misleading, since it doesn't suggest utility classes and user interface elements. OK, maybe it could suggest *user* interface a little, but only if you're searching for this connection. So, should we stick with the "user" name for consistency, which would make users of the editor coming from the GWT world happy, but which is misleading for those that aren't familiar with GWT. or should we choose something more meaningful?
I'm fine with both options. Let's see what others think.
If it extends gwt-user it's should be xwiki-gwt-user IMO even if i don't like the name that much it's GWT choice so we should follow it when extending it.
How about org.xwiki.gwt.utils and org.xwiki.gwt.widgets as two distinct modules? Can this work from a dependency PoV, or are the two modules tightly connected?
Right now there are only a few cross dependencies and I can fix them. But in general we can have:
1) a utility class used by two or more widgets (e.g. StringUtils) 2) a utility class that uses one or more widgets (e.g. TextBoxNumberFilter)
In other words, if I write a widget and I discover that I need a generic utility class that might be useful for other widgets too then I'm going to place that utility class in the utility package. On the other hand, if I write an application and I discover that I need a generic utility class that makes my life easier while working with a specific widget then I'm going to place that utility class also in the utility package. I could move it in the widgets module under that specific widget but then the widgets module will become widgets&widgetUtilities and I'm going to ask myself why I have these two separate modules.
If we agree to fix 2) by moving those utility classes in the widgets module then I'm fine with having two modules: utils and widgets. Otherwise I'm more for having a single module.
Thanks, Marius _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne
I'm going to proceed with creating the xwiki-gwt-user module. If anyone has something against it please reply. Thanks, Marius Marius Dumitru Florea wrote:
Hi devs,
I'd like to create a xwiki-gwt-user module in platform-web which will contain classes from the util and widget WYSIWYG packages. This module corresponds to the com.google.gwt.user package which contains utility and UI-related classed. The module will have this structure:
org.xwiki.gwt.user.client.* (classes from the current util package) org.xwiki.gwt.user.client.widget.* (classes from the current widget package)
Since I want this module to be generic (an extension of what GWT currently provides) I'd like to exclude the following class/packages which are XWiki specific:
* util.Attachment * widget.explorer.* * widget.wizard.util.* * widget.PageSelector * widget.SpaceSelector * widget.WikiSelector
These can remain in the WYSIWYG source tree for the moment but I'm considering moving them to the gwt module which is XWiki specific.
You can see the current sources here http://svn.xwiki.org/svnroot/xwiki/platform/web/trunk/wysiwyg/src/main/java/...
Here's my +1. WDYT?
Thanks, Marius _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
participants (3)
-
Marius Dumitru Florea -
Sergiu Dumitriu -
Thomas Mortagne