Hi gregor,I agree with your post and we have also stopped use of the extJS
family of products. Fortunately it was still a proof-of-concept phase. We
had to make a different technology choice due to timelines and various
technical and strategic reasons. However I really like GWT and the fact that
programming is in Java. As you mention users should understand the
consequences and alternatives. Dismissing third party libraries
categorically and making it sound like stying is a breeze and the current
GWT widgets are all that a user might need is also not quite right.

For some users having polished and feature rich widgets without extra
styling effort might be more important than the extra initial download time
since size is not of much consequence in an intranet application. It would
be an interesting stat to see what percentage of users are building
GWT applications for intranet vs. internet applications. We pretty much hear
about most GWT internet based sites from ongwt or gwtsite but based on the
GWT userbase I would imagine that a majority of GWT applications are
intranet applications.

I'm not going to try to sell any third party library, but some do provide
rich capabilities like grouping, custom formatting like expandable rows that
are not simple to accomplish out-of-the-box with GWT. (at least when I last
looked) .

Cheers,
-Jeremy

On Tue, Dec 9, 2008 at 3:07 PM, gregor <[EMAIL PROTECTED]> wrote:

>
> Hi Jeremy,
>
> I can't speak for Arthur, but I also interject occasionally on the Ext
> issue (usually with the rider that I tried MyGWT for only a short
> while and walked away from it after I realized what was going on). The
> reason is simply this: many people just post links on this group to
> Ext family demos, and for the unwary one look at those beautifully
> designed desktop emulation widgets will turn their heads before they
> have an inclination of what the consequences are, or the alternatives
> approaches.
>
> So the issue is one of balance. No one argues Ext widgets don't look
> very pretty or that you don't get this look out of the box lickerty
> spit compared with straight GWT - the point is there is a price to pay
> (and I don't mean license $'s), and people need to know about that.
> For some the price maybe worth worth paying, for others maybe not, but
> everyone should understand the nature of the trade off so they can
> make informed decisions for their own situations.
>
> I certainly don't want to criticize you for choosing to use Ext, I
> only have one bugbear with you post: the use of the word "rich". What
> do you mean by "rich and highly dynamic widgets"?  Are you suggesting,
> for example, that there is something you can do with the Ext family's
> data grid that you cannot do with PagingScrollTable?
>
> regards
> gregor
>
>
>
> On Dec 9, 5:10 pm, "Jeremy Cohen" <[EMAIL PROTECTED]> wrote:
> > Arthur,I see that you jump into all threads involving third party
> libraries
> > and tell users how bad they are. I'm not even sure you've used them
> enough
> > to make an informed decision. There is after all a learning curve
> involved
> > in learning any third party library and their API's.
> >
> > You do realize that these third party libraries provide rich any highly
> > dynamic widgets that are required by many real world applications. With
> > increased functionality comes increased size. Are you saying that your
> > application only uses the widgets available in GWT core and the incubator
> > project? If so, I doubt it will come anywhere close to the functionality
> > delivered to users by any of these third party libraries. Remember, what
> > ultimately counts functionality delivered to the end user and not whether
> > the developer of the application used only widgets in GWT, or third party
> > libraries. Or whether they use Spring / ORM library, or core JDK / JDBC
> > API's. Does your application provide a rich grid widget? Or are you
> building
> > inhouse custom components? (if so, please do share). From an end users
> > perspective what makes it any better than the ones already available.
> >
> > I'm sure you're a real smart guy, but it would be great if you put your
> > money where your mouth is and allow users to see the application you have
> > been working on, the complexity of the application, along with detail on
> > number of developers, and duration of project. We can then draw a
> comparison
> > between the two approaches.
> >
> > Cheers,
> > -Jeremy
> >
> > On Tue, Dec 9, 2008 at 9:31 AM, Arthur Kalmenson <[EMAIL PROTECTED]
> >wrote:
> >
> >
> >
> > > Hello David and tomato,
> >
> > > I highly recommend you stay as far away from Ext-GWT, SmartGWT and
> > > GWT-ext as you can. Gregor said it best, while they might look shiny,
> > > they are as slow as molasses and a huge PITA to work with. Once you
> > > start using them, you fall into their overly complex and inconsistent
> > > event models, you completely forgo most of GWT since these libraries
> > > can't work with GWT widgets, and give up the simplicity and high
> > > quality you come to expect from GWT. I say this from experience.
> >
> > > --
> > > Arthur Kalmenson
> >
> > > On Mon, Dec 8, 2008 at 9:38 AM, Miles T. <[EMAIL PROTECTED]>
> wrote:
> >
> > > > Hi David and tomato,
> >
> > > > We also didn't (and still don't) want to write HTML or CSS for our
> > > > application (it aims to be an internal application, not a public
> > > > website). Consider using Ext GWT, SmartGWT or GWT-Ext, I guess this
> is
> > > > what you're looking for. These libraries provide a set of widgets and
> > > > look and feels and let you define your own. They also allow you to
> > > > devlop in a Swing-style by using standard layouts (BorderLayout,
> > > > CenterLayout,...).
> >
> > > > We choose Ext GWT because it is a full GWT library (others are
> > > > wrapping a JS library), it provides a simple MVC layer and has more
> > > > documentation.
> >
> > > > Regards
> >
> > > > On 8 déc, 14:34, "David Hoffer" <[EMAIL PROTECTED]> wrote:
> > > >> Hi Gregor,
> >
> > > >> Thanks for the detailed response I will give this a try today.
> >
> > > >> As I read this I thought of a couple questions.
> >
> > > >> 1. Does my CSS file have to have a particular name?  You say it goes
> > > >> next to the HTML file.  Do I just name it the same but with css
> > > >> extension and it will be found or do I have to reference it somehow
> in
> > > >> my HTML/XML?
> >
> > > >> 2. You mentioned to look at the showcase examples to get CSS to use.
> > > >> I looked at all these yesterday and found that most do not show the
> > > >> CSS used (I think most of the widgets did but most containers did
> > > >> not).  I then looked at the source code for showcase given in the
> GWT
> > > >> examples and it seems they are using annotations to bring in styling
> > > >> information.  What's up with this?  It seems there is more than one
> > > >> way to apply CSS in GWT.  This makes it harder to learn how one is
> to
> > > >> do this.
> >
> > > >> As an example of what currently looks really bad...DialogBox and
> > > >> VerticalSplitPanel.  The former has no border so it doesn't even
> look
> > > >> remotely like a DialogBox and VerticalSplitPanel only has a splitter
> > > >> bar...no border.  So unless you really know there is a split panel
> you
> > > >> have no idea what you are looking at.  For these examples the
> showcase
> > > >> shows no CSS so apparently it is using annotations to bring in
> > > >> styling.  BTW, for these cases I am using the standard theme.
> >
> > > >> Thanks much, I will look at your example.
> > > >> -Dave
> >
> > > >> On Sun, Dec 7, 2008 at 7:57 PM, gregor <
> [EMAIL PROTECTED]>
> > > wrote:
> >
> > > >> > Hi Dave,
> >
> > > >> > 1) I think this might have something to do with debugging client
> > > >> > javascript at run time using Firebug or something - I've never
> used it
> > > >> > to be honest.
> >
> > > >> > 2) I happen to have a simple CSS example to hand, so this might
> help -
> > > >> > apologies if its too simplistic....
> >
> > > >> > Your module will have its own CSS file next to its HTML file in
> the
> > > >> > public folder.
> >
> > > >> > If you check the standard theme GWT CSS for DisclosurePanel it
> looks
> > > >> > like this:
> >
> > > >> > .gwt-DisclosurePanel {
> > > >> > }
> > > >> > .gwt-DisclosurePanel-open {
> > > >> > }
> > > >> > .gwt-DisclosurePanel-closed {
> > > >> > }
> > > >> > .gwt-DisclosurePanel .header,
> > > >> > .gwt-DisclosurePanel .header a,
> > > >> > .gwt-DisclosurePanel .header td {
> > > >> >  text-decoration: none;  /* Remove underline from header */
> > > >> >  color: black;
> > > >> >  cursor: pointer;
> > > >> >  cursor: hand;
> > > >> > }
> > > >> > .gwt-DisclosurePanel .content {
> > > >> >  border-left: 3px solid #e8eef7;
> > > >> >  padding: 4px 0px 4px 8px;
> > > >> >  margin-left: 6px;
> > > >> > }
> >
> > > >> > Notice that it starts with gwt-DisclosurePanel - this is the
> primary
> > > >> > style name given to this widget. In the DisclosurePanel source
> > > >> > somewhere you will find setStylePrimaryStyleName("gwt-
> > > >> > DisclosurePanel"). Elsewhere in the code you will find they assign
> the
> > > >> > various sub-styles to individual components of DisplosurePanel
> using
> > > >> > add/removeStyleName(styleName) or add/removeStyleDependentName
> > > >> > (styleSuffix) corresponding to e.g.gwt-DisclosurePanel-open and
> e.g.
> > > >> > gwt-DisclosurePanel .header respectively (or is it the other way
> > > >> > round, it's late). So the java code switches between the -open and
> -
> > > >> > closed styles in response to user clicks etc, but the primary
> style is
> > > >> > always the same.
> >
> > > >> > (This is how to go about using CSS when you design your own
> composite
> > > >> > widgets - follow what they do)
> >
> > > >> > Now you have two choices how to proceed to start with.
> >
> > > >> > 1) don't use a standard theme, but keep a copy of one of them
> (i.e.
> > > >> > the CSS files) handy so you can cut and paste the CSS format for
> each
> > > >> > widget into your own module CSS file where you can edit it how you
> > > >> > like - you just need to do each one as you need it.
> > > >> > 2) Put <inherits
> name='com.google.gwt.user.theme.standard.Standard'/>
> > > >> > (or chrome/dark) in your module gwt.xml file which will activate
> the
> > > >> > theme. Now however you are stuck with what they give you - well,
> no,
> > > >> > you are not......
> >
> > > >> > Notice that the .gwt-DisclosurePanel .content style has got
> borders
> > > >> > and padding etc. Now I was happy with most of the standard theme
> for
> > > >> > what I was doing, but I did not want the contents of the
> disclosure
> > > >> > panel to be so indented - I wanted it flush with the outer border
> of
> > > >> > the panel. So I stuck this in my own module CSS file:
> >
> > > >> > .my-DisclosurePanel {
> > > >> > }
> > > >> > .my-DisclosurePanel-open {
> >
> > > >> >    width: 100%;
> > > >> >    height: 100%
> > > >> > }
> > > >> > .my-DisclosurePanel-closed {
> >
> > > >> > }
> > > >> > .my-DisclosurePanel .header,
> > > >> > .my-DisclosurePanel .header a,
> > > >> > .my-DisclosurePanel .header td {
> > > >> >  text-decoration: none;  /* Remove underline from header */
> > > >> >  color: black;
> > > >> >  cursor: pointer;
> > > >> >  cursor: hand;
> > > >> > }
> > > >> > .my-DisclosurePanel .content {
> > > >> >    width: 100%;
> > > >> >    height: 100%
> > > >> >    /*border-left: 3px solid #e8eef7;
> > > >> >  padding: 4px 0px 4px 8px;
> > > >> >  margin-left: 6px;*/
> >
> > > >> > }
> >
> > > >> > Then in my Java class code:
> >
> > > >> > private DisclosurePanel myDiscPanel = new DisclosurePanel();
> > > >> > ...
> > > >> > myDiscPanel .setStylePrimaryName("my-DisclosurePanel");
> >
> > > >> > et viola the annoying indents have gone for this particular
> > > >> > DisclosurePanel, but I still have the main GWT theme running for
> all
> > > >> > other widgets (including any other DisclosurePanels I don't choose
> to
> > > >> > doctor like this) which is useful otherwise everything really does
> > > >> > look awful to start with. Notice how just changing the primary
> style
> > > >> > name achieves this (which is why you should design your own
> widgets
> > > >> > like this: it enables wholesale alterations to L&F with minimal
> effort
> > > >> > and it is truly amazing what you can do CSS styling when you get
> the
> > > >> > hang of it. It makes Swing look stupid in some respects).
> >
> > > >> > It may drive you mad for a bit but I assure you there is method in
> > > >> > this madness. A good tip when you get a bit lost is to fire up the
> > > >> > showcase demo, choose an example widget that vaguely resembles
> what
> > > >> > you need to do and look up it's source code and CSS.
> >
> > > >> > regards
> > > >> > gregor
> >
> > > >> > On Dec 7, 11:05 pm, "David Hoffer" <[EMAIL PROTECTED]> wrote:
> > > >> >> Thanks for stating the obvious, I hadn't seen that web site yet.
> > > >> >> Okay, I have a couple of CSS newbie questions.
> >
> > > >> >> 1. What are calls like
> > > >> >> disabledButton.ensureDebugId("cwBasicButton-disabled") for?  This
> > > >> >> isn't a Java like thing.
> > > >> >> 2. Where do I paste the CSS Style code?
> >
> > > >> >> Thanks!
> > > >> >> -Dave
> >
> > > >> >> On Sun, Dec 7, 2008 at 10:45 AM, tomato
> >
> > ...
> >
> > read more »
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to