Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #13961

Re: JOutlookBar

From Peter Cheung <cmk128@gmail.com>
Newsgroups comp.lang.java.programmer
Subject Re: JOutlookBar
Date 2012-04-28 03:10 -0700
Organization http://groups.google.com
Message-ID <32783489.320.1335607830761.JavaMail.geo-discussion-forums@pbbpz9> (permalink)
References (1 earlier) <15997725.898.1335482389670.JavaMail.geo-discussion-forums@pbbps5> <7588566.806.1335496661608.JavaMail.geo-discussion-forums@pbqv7> <GqAmr.21580$FQ1.19656@newsfe12.iad> <jnes9f$145$1@dont-email.me> <29372748.3.1335559861001.JavaMail.geo-discussion-forums@pbfk7>

Show all headers | View raw


Lew於 2012年4月28日星期六UTC+8上午4時51分00秒寫道:
> markspace wrote:
> > Daniel Pitts wrote:
> >> Peter Cheung wrote:
> >>> I already set it to 1ms, but it still runs slowly.
> >>>
> >>> So the animation is not smooth.
> > 
> > 
> >> You're timer simply calls draw. Also, 1ms is really too fast, and will
> >> cause more harm than good. You should aim for closer to 30hz->60hz. Try
> >> around 33ms timer.
> > 
> > 
> > I happen to know a little about animation (graphics is a personal hobby 
> > of mine).  The gold standard in animation is 25 frames per second, or 40 
> > ms in between frames.
> > 
> > However, as a practical matter, much lower frames rates are acceptable. 
> >   Some cheaper animation, like some of the early so-called 
> > "japanimation," used as little as 4 or 6 frames per second in parts of 
> > their work.
> > 
> > I'd start at 250 ms.  1 ms will clearly overwhelm any normal desktop 
> > system with too much work.  Get 250 ms working, then see if it can be 
> > improved.
> > 
> > 
> >> Ideally, the "work" for your animation should be done in the timer
> >> handler too (so that your state changes on the timer, not just a redraw).
> > 
> > This.
> > 
> > Peter, what I've looked at in your code base is pretty bad.  Most of it 
> > is really ugly generated code.  Nothing has comments.  There's no test 
> > harness that I saw.  You need to slow down and write some code by hand, 
> > try to understand what is really going on.  One good class is better 
> > than 100 cruddy classes, and it is certainly my impression that the 
> > latter is what you have.
> 
> Looking at this part of your code, Peter:
> 
> public class OutlookBarLayout implements LayoutManager2, java.io.Serializable, ActionListener 
> 
> // Why not import Serializable?
> // Where is the 'serialVersionUID'?
> 
> {
>         public Hashtable<String, Component> components = new Hashtable<String, Component>();
> 
> // Don't use Hashtable
> 
>         public int buttonHeight = 31;
>         private int separatorHeight = 8;
> 
>         private int totalHeight;
>         private int noOfButtonLeft;
>         private int top;
>         private int left;
> 
> // bad scope, AFAICT, should be a local variable - how is this part of the instance state?
> 
>         private int right;
>         private Timer timer = new Timer(1, this);
> 
> // Shouldn't this be 'final'?
> 
>         private Container target;
>         private int currentY;
> 
>         public OutlookBarLayout() {
>         }
> ... 
> 
> You don't need to specify a no-argument, empty constructor.
> 
> Where are your Javadoc comments?
> 
> Have you gone over every line of this class and gained comprehension of what it does?
> 
> Please answer the questions in detail.
> 
> -- 
> Lew

I don't have any javadoc, all the documents I wrote are in here http://code.google.com/p/peter-swing/w/list

I use Jigloo plugins to generate the UI code for pas few years, comfortable with it and I usually won't review the generated-code. 

I was a traditional-java-programmer, I write all swing code by myself and didn't use any plugins to generate code. But now I changed, I use plugin to generate UI code. I don't care much about the generated-code by Jigloo plugin, if it works, everything fine to me.

peter-swing's components and theme seems working, so i don't brother jigloo's code.

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

JOutlookBar Peter Cheung <cmk128@gmail.com> - 2012-04-26 15:29 -0700
  Re: JOutlookBar Lew <lewbloch@gmail.com> - 2012-04-26 16:19 -0700
    Re: JOutlookBar Peter Cheung <cmk128@gmail.com> - 2012-04-26 20:17 -0700
      Re: JOutlookBar Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-04-27 10:11 -0700
        Re: JOutlookBar markspace <-@.> - 2012-04-27 12:33 -0700
          Re: JOutlookBar Lew <lewbloch@gmail.com> - 2012-04-27 13:51 -0700
            Re: JOutlookBar Peter Cheung <cmk128@gmail.com> - 2012-04-28 03:10 -0700
              Re: JOutlookBar Arne Vajhøj <arne@vajhoej.dk> - 2012-04-28 18:03 -0400
          Re: JOutlookBar Peter Cheung <cmk128@gmail.com> - 2012-04-28 03:06 -0700
            Re: JOutlookBar Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-04-28 15:06 -0700
              Re: JOutlookBar Lew <noone@lewscanon.com> - 2012-04-28 21:08 -0700
                Re: JOutlookBar Peter Cheung <cmk128@gmail.com> - 2012-04-29 00:13 -0700
                Re: JOutlookBar Peter Cheung <cmk128@gmail.com> - 2012-04-29 00:31 -0700
                Re: JOutlookBar Lew <noone@lewscanon.com> - 2012-04-29 01:56 -0700
                Re: JOutlookBar Peter Cheung <cmk128@gmail.com> - 2012-04-29 07:37 -0700
                Re: JOutlookBar Patricia Shanahan <pats@acm.org> - 2012-04-29 07:51 -0700
                Re: JOutlookBar Lew <noone@lewscanon.com> - 2012-04-29 12:01 -0700
                Re: JOutlookBar Arne Vajhøj <arne@vajhoej.dk> - 2012-05-05 19:53 -0400

csiph-web