Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Best way to force a JComponent to repaint itself

85 views
Skip to first unread message

zerg

unread,
Aug 13, 2008, 10:21:17 PM8/13/08
to
What's the best way to force a JComponent to repaint itself? I've got
three candidates:

revalidate()
repaint()
update()

Roedy Green

unread,
Aug 13, 2008, 10:33:57 PM8/13/08
to
On Wed, 13 Aug 2008 22:21:17 -0400, zerg <ze...@zerg.org> wrote, quoted
or indirectly quoted someone who said :

look those words up in the Java glossary so you understand what each
are for.
--

Roedy Green Canadian Mind Products
The Java Glossary
http://mindprod.com

Knute Johnson

unread,
Aug 14, 2008, 12:00:31 AM8/14/08
to

Read Roedy's post and then tell us what you really want to do and what
you've been doing before that.

--

Knute Johnson
email s/nospam/knute2008/

--
Posted via NewsDemon.com - Premium Uncensored Newsgroup Service
------->>>>>>http://www.NewsDemon.com<<<<<<------
Unlimited Access, Anonymous Accounts, Uncensored Broadband Access

zerg

unread,
Aug 14, 2008, 12:35:50 AM8/14/08
to
Knute Johnson wrote:
> zerg wrote:
>> What's the best way to force a JComponent to repaint itself? I've got
>> three candidates:
>>
>> revalidate()
>> repaint()
>> update()
>
> Read Roedy's post and then tell us what you really want to do and what
> you've been doing before that.

I begin to suspect that there's some sort of unwritten code here that
forbids the giving of a straight answer.

In case it somehow matters, I've implemented a custom JList subclass
with a custom cell renderer and some other custom behavior. In response
to certain new set methods, the behavior of the cell renderer changes,
and the visible portion of the list obviously needs to be repainted when
this occurs.

I suppose I could do something hackish like set the list's ListModel to
the existing ListModel ... :P

(Also, is there a way to get the NetBeans GUI editor to recognize new
component classes? Or, perhaps better, to simply bypass it and code the
UI manually, but still get the FrameView saving and restoring of window
state? And is the list definitely only going to call on the cell
renderer to paint the visible cells at any given time? I would prefer
this to be able to scale well with large lists, potentially 10,000 items
or more, with the ListModel storing say 10,000 Integers or other such
handles rather than larger objects that may be retrieved from disk or a
DB on demand.)

zerg

unread,
Aug 14, 2008, 12:43:46 AM8/14/08
to
zerg wrote:
> Knute Johnson wrote:
>> zerg wrote:
>>> What's the best way to force a JComponent to repaint itself? I've got
>>> three candidates:
>>>
>>> revalidate()
>>> repaint()
>>> update()
>>
>> Read Roedy's post and then tell us what you really want to do and what
>> you've been doing before that.
>
> I begin to suspect that there's some sort of unwritten code here that
> forbids the giving of a straight answer.

Which maybe extends to Sun itself -- I found the API docs less than 100%
clear here, and even the Java Tutorial.

Provisionally, I'm using "repaint(getBounds())"; why there isn't a
no-args repaint-the-whole-thing method will probably remain an enduring
mystery long after my app has matured, had its heyday, and become
obsolete...

Peter Duniho

unread,
Aug 14, 2008, 12:53:43 AM8/14/08
to
On Wed, 13 Aug 2008 21:35:50 -0700, zerg <ze...@zerg.org> wrote:

> Knute Johnson wrote:
>> zerg wrote:
>>> What's the best way to force a JComponent to repaint itself? I've got
>>> three candidates:
>>>
>>> revalidate()
>>> repaint()
>>> update()
>> Read Roedy's post and then tell us what you really want to do and what
>> you've been doing before that.
>
> I begin to suspect that there's some sort of unwritten code here that
> forbids the giving of a straight answer.

Forgive us if we suspect that there's some sort of unwritten code among
questioners that forbids the inspection of the relevant documentation
before asking a question.

The documentation is reasonably clear on what each of those three methods
you describe are used for, and only one is intended for client code to
cause a JComponent to repaint itself.

Either you never bothered to even read the documentation, or there's
something more to your question than simply "what's the API-approved to
force a repaint?" Either way, your question isn't a well-formed one.

If I understand your follow-up correctly, you simply have some sort of
custom component that needs to be redrawn when internal state changes that
would be reflected visually. Assuming that's the correct interpretation,
then the documentation does in fact provide all of the necessary
information you need.

If there's something about the documentation that is confusing you,
there's no shame in being specific about that and asking for help with
it. If you have read the documentation and need some help, then say so
and be specific about what kind of help you need. If you simply ask a
question that the documentation does in fact answer, the most obvious
explanation is that you haven't bothered to look at the documentation at
all.

Pete

Peter Duniho

unread,
Aug 14, 2008, 1:03:32 AM8/14/08
to
On Wed, 13 Aug 2008 21:43:46 -0700, zerg <ze...@zerg.org> wrote:

>> I begin to suspect that there's some sort of unwritten code here that
>> forbids the giving of a straight answer.
>
> Which maybe extends to Sun itself -- I found the API docs less than 100%
> clear here, and even the Java Tutorial.

I admit that the Java SDK docs aren't the best docs I've ever seen. But
in this case, you know the exact names of the methods in question and can
easily examine the documentation for each to learn what each is for. I
don't see any ambiguity that would lead to a misunderstanding here.

> Provisionally, I'm using "repaint(getBounds())"; why there isn't a
> no-args repaint-the-whole-thing method will probably remain an enduring
> mystery long after my app has matured, had its heyday, and become
> obsolete...

The only mystery is how you missed it:
http://java.sun.com/javase/6/docs/api/java/awt/Component.html#repaint()

Pete

zerg

unread,
Aug 14, 2008, 1:12:33 AM8/14/08
to
Peter Duniho wrote:
> On Wed, 13 Aug 2008 21:35:50 -0700, zerg <ze...@zerg.org> wrote:
>> I begin to suspect that there's some sort of unwritten code here that
>> forbids the giving of a straight answer.
>
> Forgive us if we suspect that there's some sort of unwritten code among
> questioners that forbids the inspection of the relevant documentation
> before asking a question.

Suspect what you will, but I did indeed examine the JComponent API docs,
and there were three public methods associated with repainting -- not
counting that repaint() had two overloads.

I may have been somewhat biased by what I was specifically searching
for, namely a no-argument method for "repaint the whole component". It
looks like maybe that is simply lacking.

> Either you never bothered to even read the documentation, or there's
> something more to your question than simply "what's the API-approved to
> force a repaint?" Either way, your question isn't a well-formed one.

Anything that I say is well-formed, and I am not in the mood to be
publicly insulted by you or anyone else here. I came here asking for
advice in good faith and I don't appreciate being treated in such a manner.

> If I understand your follow-up correctly, you simply have some sort of
> custom component that needs to be redrawn when internal state changes
> that would be reflected visually. Assuming that's the correct
> interpretation, then the documentation does in fact provide all of the
> necessary information you need.

Perhaps it does, but it is less than clear, for whatever reason.
Probably because the API docs are organized around a
what-this-thingamajig-does scheme, while the tutorial, though organized
around a how-to-do-X scheme, rather glosses over repainting of
components, other than to make it clear that to paint custom stuff
(rather than just at custom times) you override paintComponent.

> If there's something about the documentation that is confusing you,
> there's no shame in being specific about that and asking for help with
> it.

That's more or less what I did, except that I simply asked directly for
the answer to the question that I had, instead of for clarification of a
particular bit of the docs.

> If you have read the documentation and need some help, then say so
> and be specific about what kind of help you need.

Fine. From now on, when I have a highly specific question like "what is
the best way to force a JComponent to repaint itself?", instead of just
asking "what is the best way to force a JComponent to repaint itself?",
I will do as you advise here and say "I've read the documentation, but
still have a question: what is the best way to force a JComponent to
repaint itself?" -- satisfied?

> If you simply ask a question that the documentation does in fact
> answer, the most obvious explanation is that you haven't bothered
> to look at the documentation at all.

Sometimes the most obvious explanation is wrong. Regardless, what the
explanation is is not relevant. The question I asked was about
JComponent painting, not about what the most likely explanation was for
why I asked the question. If you'd please just focus on the actual
content of a post asking a question, and refrain from speculating about
why the poster might have asked it or other unimportant things like that
that have no bearing on things, I think people might appreciate that.
People post questions here to get them answered, not to get sidetracked
into unrelated topics to satisfy your curiosity as to peoples' motives
in asking questions or for any similar such reason.

It's best to just take peoples' questions at face value, and give them a
simple, correct answer that they can apply immediately. I don't know
about you, but when I have a question, I'm generally interested in
getting an answer as quickly as possible, and one that can be applied
immediately. Therefore I've already read all the obviously-relevant
documentation, since if it has the answer in a clear and unambiguous
form that will get me moving much quicker than waiting for someone to
reply on a Usenet group. If that doesn't suffice, then I ask a question
here, and at that point I'm not going to be pleased if instead of the
one iteration of post-reply that it SHOULD take for me to get an answer
back, it ends up taking two or three because people want to satisfy
their idle curiosity as to why I'm asking the question, and of course if
they simply answered it straight away, I might go away and not answer
their questions! So they withhold my answer until they have satisfied
their curiosity -- wasting my time and everyone's bandwidth with matters
that are tangential, at best, to the purpose of this newsgroup.

Please don't do that any more. I find it annoying. If I ask "how to do
X", please just tell me, in simple terms, how to do X. If you think the
documentation should have answered it for me, well, apparently it
didn't. If you want, you can certainly point to the bit of the
documentation that you think unambiguously answers the question and ask
me why I didn't apparently one of find it relevant enough to look at or
find it clear and certain enough to use, AT THE SAME TIME as supplying
the actual answer. Then, since I'll have the answer I need to continue
with my work without delay, I am likely to be able to find some time
later to satisfy your curiosity a bit, and therefore I am likely to
answer, and to be much less annoyed and irritated when I do.

Thank you.

Knute Johnson

unread,
Aug 14, 2008, 1:15:50 AM8/14/08
to
zerg wrote:
> Knute Johnson wrote:
>> zerg wrote:
>>> What's the best way to force a JComponent to repaint itself? I've got
>>> three candidates:
>>>
>>> revalidate()
>>> repaint()
>>> update()
>>
>> Read Roedy's post and then tell us what you really want to do and what
>> you've been doing before that.
>
> I begin to suspect that there's some sort of unwritten code here that
> forbids the giving of a straight answer.

Well forgive me but if you want to repaint() something repaint() it.

> In case it somehow matters, I've implemented a custom JList subclass
> with a custom cell renderer and some other custom behavior. In response
> to certain new set methods, the behavior of the cell renderer changes,
> and the visible portion of the list obviously needs to be repainted when
> this occurs.

So you are changing some data in your ListModel and it isn't being
reflected in your JList? You've got other problems than repaint(). Are
you adding or removing components? Are you making your changes to your
ListModel on the EDT?

> I suppose I could do something hackish like set the list's ListModel to
> the existing ListModel ... :P
>
> (Also, is there a way to get the NetBeans GUI editor to recognize new
> component classes? Or, perhaps better, to simply bypass it and code the
> UI manually, but still get the FrameView saving and restoring of window
> state? And is the list definitely only going to call on the cell
> renderer to paint the visible cells at any given time? I would prefer
> this to be able to scale well with large lists, potentially 10,000 items
> or more, with the ListModel storing say 10,000 Integers or other such
> handles rather than larger objects that may be retrieved from disk or a
> DB on demand.)

Knute Johnson

unread,
Aug 14, 2008, 1:17:15 AM8/14/08
to
zerg wrote:
> zerg wrote:
>> Knute Johnson wrote:
>>> zerg wrote:
>>>> What's the best way to force a JComponent to repaint itself? I've
>>>> got three candidates:
>>>>
>>>> revalidate()
>>>> repaint()
>>>> update()
>>>
>>> Read Roedy's post and then tell us what you really want to do and
>>> what you've been doing before that.
>>
>> I begin to suspect that there's some sort of unwritten code here that
>> forbids the giving of a straight answer.
>
> Which maybe extends to Sun itself -- I found the API docs less than 100%
> clear here, and even the Java Tutorial.

No doubt.

> Provisionally, I'm using "repaint(getBounds())"; why there isn't a
> no-args repaint-the-whole-thing method will probably remain an enduring
> mystery long after my app has matured, had its heyday, and become
> obsolete...

If you had looked at the docs you would have seen that the no-arg
repaint() belongs to Component.

So tell us, are you updating your ListModel on the EDT?

zerg

unread,
Aug 14, 2008, 1:27:01 AM8/14/08
to
Peter Duniho wrote:
> On Wed, 13 Aug 2008 21:43:46 -0700, zerg <ze...@zerg.org> wrote:
>> Which maybe extends to Sun itself -- I found the API docs less than
>> 100% clear here, and even the Java Tutorial.
>
> I admit that the Java SDK docs aren't the best docs I've ever seen. But
> in this case, you know the exact names of the methods in question and
> can easily examine the documentation for each to learn what each is
> for. I don't see any ambiguity that would lead to a misunderstanding here.

Let's see. And keep in mind that I was looking for "repaint the whole
shebang" here.

repaint(ints, or Rectangle)

Adds the specified region to the dirty region list if the component is
showing. The component will be repainted after all of the currently
pending events have been dispatched.

-- Looks promising, but I'm looking for something simpler than figuring
out some rectangle and then telling it to repaint that. Can't I just
tell it to repaint everything?

revalidate()

Supports deferred automatic layout.

Calls invalidate and then [technical details]

This method will automatically be called on this component when a
property value changes such that size, location, or internal layout of
this component has been affected.

-- My JList's internal layout may have changed, since the cell renderer
may be producing different-sized cells from before, but my set methods
don't actually change the cell renderer itself, only its behavior, so
this won't get called automatically without my doing something. Perhaps
I should call it, so that my JList subclass calls it automatically in
these circumstances? Another promising sign is that this is a zero-arg
method.

update(Graphics g)

Calls paint.

-- Calls paint. Called update. Issue: takes a parameter again, this time
a Graphics.


Perhaps now it's apparent why it's not clear from these whether, in this
particular case, I should use repaint itself or use one of these other
methods that are involved in getting the component to display itself
correctly after something has been updated.

>> Provisionally, I'm using "repaint(getBounds())"; why there isn't a
>> no-args repaint-the-whole-thing method will probably remain an
>> enduring mystery long after my app has matured, had its heyday, and
>> become obsolete...
>
> The only mystery is how you missed it:
> http://java.sun.com/javase/6/docs/api/java/awt/Component.html#repaint()

See above, though I take it you agree that repaint(getBounds()) is the
best method.

It looks like the API is missing a no-arg "repaint()" with a doc comment
of "Repaints this component." for these kinds of cases. "Adds a
rectangle to the dirty rectangle list" suggests something that is mainly
intended for a) subclasses that have custom-painting code and are
implementing a container or something similar and b) delegation from
higher-level update-notification methods, perhaps update or revalidate.
If this is not actually the case, as you appear to be implying, then the
docs are indeed less than clear -- not on what repaint() DOES, but on
who should be using it rather than using something else, perhaps at a
higher level of abstraction.

(I take it a JList doesn't need revalidating even if the cell size may
have changed?)

zerg

unread,
Aug 14, 2008, 1:29:06 AM8/14/08
to
Knute Johnson wrote:
> zerg wrote:
>> I begin to suspect that there's some sort of unwritten code here that
>> forbids the giving of a straight answer.
>
> Well forgive me but if you want to repaint() something repaint() it.

The question was whether it's better to repaint() it directly or by
calling a method at a higher level of abstraction that in turn calls
repaint().

> So you are changing some data in your ListModel and it isn't being
> reflected in your JList?

No. I'm changing a subclass-specific setting that affects presentation
of the data, and the change is visible to the cell renderer but not, of
course, to the pre-existing JList code.

>> (Also, is there a way to get the NetBeans GUI editor to recognize new
>> component classes? Or, perhaps better, to simply bypass it and code
>> the UI manually, but still get the FrameView saving and restoring of
>> window state? And is the list definitely only going to call on the
>> cell renderer to paint the visible cells at any given time? I would
>> prefer this to be able to scale well with large lists, potentially
>> 10,000 items or more, with the ListModel storing say 10,000 Integers
>> or other such handles rather than larger objects that may be retrieved
>> from disk or a DB on demand.)

Nobody has yet answered any of this.

zerg

unread,
Aug 14, 2008, 1:30:57 AM8/14/08
to
Knute Johnson wrote:
> If you had looked at the docs you would have seen that the no-arg
> repaint() belongs to Component.

I DID look at the docs -- the JList and JComponent docs. Why would I be
poking around in the AWT docs? I'm obviously using Swing.

> So tell us, are you updating your ListModel on the EDT?

I'm not updating it at all yet; I haven't gotten this class finished
yet. Testing begins tomorrow, and yes, I fully intend to only update
things on the EDT. :P

Knute Johnson

unread,
Aug 14, 2008, 1:31:52 AM8/14/08
to

You can get as mad as you want but people are really trying to help you.
And having been around here for a while, when someone asks "What
method do I use to repaint() a JComponent," we get sort of suspicious
because repainting is rarely the solution to anything.

And whether you believe it or not there IS a no-arg repaint() method.
It belongs to JComponent.

So, this is my last attempt to help you. Answer the questions or not,
your choice.

1) Are you updating your ListModel on the EDT?

2) Are you doing long running tasks on the EDT (in a listener for example)?

3) Are you adding or removing components to your JList?

zerg

unread,
Aug 14, 2008, 1:56:48 AM8/14/08
to
Knute Johnson wrote:
> You can get as mad as you want but people are really trying to help you.

That's not what bothers me. It's that they are often remarkably
unsuccessful at SUCCEEDING that bothers me, and in fairly silly ways.
For example, if you know, for sure, the exact answer to the question,
and you don't include it in your response, well, that's just plain silly!

> And having been around here for a while, when someone asks "What method
> do I use to repaint() a JComponent," we get sort of suspicious because
> repainting is rarely the solution to anything.

That's for the programmer to decide, not you. I know my code far better
than you do, and I don't see why you need to know jack about it in order
to provide a simple, straight answer for a simple question. If I had a
design-related conundrum I would ask a design-related question. When I
have a "how to do X very specific thing with Y" type of question, and
ask it, I want an equally specific answer, not some kind of inquest
based on some suspicion, based on very little evidence, that there's
some sort of problem with my design. I ask for what I want, but you
reply not with what I want but with your own mixture of suspicions, idle
questions, and sometimes outright insults.

My guess (and now I'm the one speculating about you with limited
information, instead of just giving a straightforward answer -- let's
see how you like it) is that it stems from a widespread belief among the
people here that nobody who asks a question here has the faintest clue
what the hell they're doing, and all need guidance as if from a teacher
or something instead of simple technical-support like responses that
directly answer specific questions.

Maybe many of the people who post here ARE that clueless. But it's
insulting to the rest of us when you treat us as if we ALL are, and it
obstructs just getting to the point as quickly as possible and then
moving on.

> And whether you believe it or not there IS a no-arg repaint() method. It
> belongs to JComponent.

JComponent has no no-arg repaint() method save, according to another
post to this thread, one it inherits from java.awt.Component. Of course,
since I was not looking at the AWT docs, only JList and JComponent, and
expecting anything generally useful for Swing components to be in the
latter in particular, I didn't know about it earlier.

> 1) Are you updating your ListModel on the EDT?
>
> 2) Are you doing long running tasks on the EDT (in a listener for example)?
>
> 3) Are you adding or removing components to your JList?

Perhaps I didn't make it clear enough in my previous post to this
thread. I have not finished the component and begun testing it yet. When
I do, I will of course observe normal Swing thread-safety procedures and
avoid doing long tasks on the EDT. (I am concerned about the need to
update the ListModel on the EDT though; it may be necessary eventually
to add large numbers of items, perhaps even tens of thousands, all in
one big bolus, which would tie up the EDT. Perhaps adding smaller
batches at a time, letting the EDT get some work done elsewhere, then
adding more, etc.; but then the list control is likely to keep
repainting itself until the job's done. Argh.)

The repaint issue has nothing to do with any observed problem with the
class. It occurred while still coding the first draft of the class, as I
wrote some methods to set some properties specific to my class that will
affect the cell renderer's rendering. Of course, this means that the
list should repaint itself, and at the same time since none of JList's
own setters have been invoked, the repaint won't have been triggered as
a side effect of anything in my setters, and so has to be scheduled
explicitly. (And I STILL don't know if I should revalidate in cases
where the cells may have changed size. Maybe it's time a better guide
specifically for component subclassers got written somewhere.)

(Convinced that I actually, honestly DO know what the heck I'm doing
now? :-P)

Peter Duniho

unread,
Aug 14, 2008, 1:58:58 AM8/14/08
to
On Wed, 13 Aug 2008 22:27:01 -0700, zerg <ze...@zerg.org> wrote:

> Let's see. And keep in mind that I was looking for "repaint the whole
> shebang" here.
>
> repaint(ints, or Rectangle)
>
> Adds the specified region to the dirty region list if the component is
> showing. The component will be repainted after all of the currently
> pending events have been dispatched.
>
> -- Looks promising,

Yes, it does. In fact, it looks just like what you asked for.

> but I'm looking for something simpler than figuring out some rectangle
> and then telling it to repaint that. Can't I just tell it to repaint
> everything?

Yes, you can. Even ignoring the fact that if you don't know what
rectangle describes the area in which you're drawing, you've got serious
problems, there is in fact a "no parameter" overload of the method (see
below).

> revalidate()
>
> Supports deferred automatic layout.
>
> Calls invalidate and then [technical details]
>
> This method will automatically be called on this component when a
> property value changes such that size, location, or internal layout of
> this component has been affected.

As the description says, this method is for things that affect layout.
Either the control itself has moved or changed size, or something in it
needs to go through layout again. This obviously has nothing to do with
simply forcing a repaint.

> -- My JList's internal layout may have changed, since the cell renderer
> may be producing different-sized cells from before, but my set methods
> don't actually change the cell renderer itself, only its behavior, so
> this won't get called automatically without my doing something. Perhaps
> I should call it, so that my JList subclass calls it automatically in
> these circumstances? Another promising sign is that this is a zero-arg
> method.

Would you rather have a method that has no arguments, or one that does
what you want?

> update(Graphics g)
>
> Calls paint.

And when you looked at the description of the paint() method, what did you
find?

> -- Calls paint. Called update. Issue: takes a parameter again, this time
> a Graphics.

Honestly, I don't know what your deal about the parameter is. The fact
is, a method that does exactly what you want exists, but you need to be
doing a better job looking at what the methods _do_ and stop worrying so
much about what signature they have. Once you find a method that has
_functionality_ that you want, then you can look for an overload with a
signature you prefer.

> Perhaps now it's apparent why it's not clear from these whether, in this
> particular case, I should use repaint itself or use one of these other
> methods that are involved in getting the component to display itself
> correctly after something has been updated.

No, it's not apparent to me at all why it's not clear to you. Of those
three methods, two are obviously not what you want, and of one of those
two, the documentation related to it even _explicitly_ says to not call it
directly and instead use the repaint() method for what you're trying to do.

>>> Provisionally, I'm using "repaint(getBounds())"; why there isn't a
>>> no-args repaint-the-whole-thing method will probably remain an
>>> enduring mystery long after my app has matured, had its heyday, and
>>> become obsolete...
>> The only mystery is how you missed it:
>> http://java.sun.com/javase/6/docs/api/java/awt/Component.html#repaint()
>
> See above, though I take it you agree that repaint(getBounds()) is the
> best method.

You keep saying you want a method without arguments. Did you bother to
look at the description of the method at the URL I provided? You even
quoted the URL, so really, you have no excuse for not having seen it.

> It looks like the API is missing a no-arg "repaint()" with a doc comment
> of "Repaints this component." for these kinds of cases.

I don't know how much clearer I can be. I gave you the URL for the exact
method you're looking for. If leading you by the nose to the exact method
you want doesn't work, then I suppose that could explain why you're having
so much trouble with the documentation. After all, it's true...using the
documentation does require _some_ involvement on the part of the reader.
It's not going to write your code for you.

Pete

Peter Duniho

unread,
Aug 14, 2008, 2:01:06 AM8/14/08
to
On Wed, 13 Aug 2008 22:30:57 -0700, zerg <ze...@zerg.org> wrote:

> Knute Johnson wrote:
>> If you had looked at the docs you would have seen that the no-arg
>> repaint() belongs to Component.
>
> I DID look at the docs -- the JList and JComponent docs. Why would I be
> poking around in the AWT docs? I'm obviously using Swing.

Because Swing is built on top of AWT.

JComponent inherits Component. You can't understand JComponent without
understanding Component.

>> So tell us, are you updating your ListModel on the EDT?
>
> I'm not updating it at all yet; I haven't gotten this class finished
> yet. Testing begins tomorrow, and yes, I fully intend to only update
> things on the EDT. :P

"Fully intend to" is silly. There's no excuse for not doing it that way
from the outset. It's _harder_ to write the code wrong and then fix it
than it is to just do it right in the first place.

Pete

Peter Duniho

unread,
Aug 14, 2008, 2:15:32 AM8/14/08
to
On Wed, 13 Aug 2008 22:12:33 -0700, zerg <ze...@zerg.org> wrote:

> Suspect what you will, but I did indeed examine the JComponent API docs,
> and there were three public methods associated with repainting -- not
> counting that repaint() had two overloads.

I count FIVE overloads of repaint().

Java is object-oriented programming. You have to look at the
super-classes as well as the immediate class to know what's in the
immediate class. The immediate class inherits all of the stuff that's in
the super-classes.

> [...]


> Anything that I say is well-formed, and I am not in the mood to be
> publicly insulted by you or anyone else here. I came here asking for
> advice in good faith and I don't appreciate being treated in such a
> manner.

Well, unfortunately for you, you're not in a position to dictate how your
question will be answered. People get tired of responding to questions
that are easily answered simply by looking at the documentation. When you
make your question look like one of those, you're not going to get the
answer you want, assuming you get one at all.

> [...]


>> If there's something about the documentation that is confusing you,
>> there's no shame in being specific about that and asking for help with
>> it.
>
> That's more or less what I did, except that I simply asked directly for
> the answer to the question that I had, instead of for clarification of a
> particular bit of the docs.

Or, in other words, what I said you should do is MUCH more than what you
actually did. There's nothing at all in your original post to suggest
that you had bothered to look at anything in the documentation.

>> If you have read the documentation and need some help, then say so and
>> be specific about what kind of help you need.
>
> Fine. From now on, when I have a highly specific question like "what is
> the best way to force a JComponent to repaint itself?", instead of just
> asking "what is the best way to force a JComponent to repaint itself?",
> I will do as you advise here and say "I've read the documentation, but
> still have a question: what is the best way to force a JComponent to
> repaint itself?" -- satisfied?

It's not a question of whether I'm satisfied. It's a question of whether
you have any interest in asking questions in a way that is likely to get
them answered.

As for your proposed alternative question format, no...that's not going to
get your question answered with any more enthusiasm. If you have a
question about what you've read in the documentation, you need to be
specific about that. Simply saying "I've read the documentation and I'd
like you to tell me the answer to this question that was answered by the
documentation" doesn't encourage people to be motivated to help you.

>> If you simply ask a question that the documentation does in fact
>> answer, the most obvious explanation is that you haven't bothered
>> to look at the documentation at all.
>
> Sometimes the most obvious explanation is wrong.

True, and irrelevant. The problem of people asking RTFM questions is far
too common for you to expect anyone to give you the benefit of the doubt.

> [...]


> People post questions here to get them answered, not to get sidetracked
> into unrelated topics to satisfy your curiosity as to peoples' motives
> in asking questions or for any similar such reason.

This isn't about satisfying curiosity. It's about trying to help you
understand why people aren't going to answer RTFM questions.

> It's best to just take peoples' questions at face value, and give them a
> simple, correct answer that they can apply immediately. I don't know
> about you, but when I have a question, I'm generally interested in
> getting an answer as quickly as possible, and one that can be applied

> immediately. [...]

The very fastest way for me to get the answer to any question would be to
just ask the expert. But, that can be a waste of the expert's time, and
as well I will learn more about the subject if I do some research myself.
As an added bonus, I become more practiced at using the documentation
myself, further helping me to be not so dependent on the expert in the
future.

Personally, I don't like wasting other people's time. Now, you may not be
so concerned about that. But the fact is, other people don't like YOU
wasting their time. When it looks like that's what you're doing, they
tend to ignore you rather than answering the question you want answered.

Again, I've no interest here in making you feel bad about your choices.
I'm simply trying to offer advice that will help you understand better
techniques for getting your questions answered.

Maybe if what I'm saying isn't making sense to you, you just need to wait
10 or 15 years. Hopefully your perspective and attitudes will have
changed by then, and this discussion will have more meaning to you.

Pete

Peter Duniho

unread,
Aug 14, 2008, 2:18:42 AM8/14/08
to
On Wed, 13 Aug 2008 22:56:48 -0700, zerg <ze...@zerg.org> wrote:

> [...]


> Maybe many of the people who post here ARE that clueless. But it's
> insulting to the rest of us when you treat us as if we ALL are, and it
> obstructs just getting to the point as quickly as possible and then
> moving on.

What's your definition of "clueless"? Because my definition, it includes
the kinds of people that _quote_ the answer they are looking for, while at
the same time claiming that what they are looking for does not exist.

Maybe your definition is different.

Andrew Thompson

unread,
Aug 14, 2008, 2:22:59 AM8/14/08
to
On Aug 14, 3:29 pm, zerg <z...@zerg.org> wrote:
>...

> Nobody has yet answered any of this.

<DWS>
Don't worry. if it's not answered within
30 minutes, and politely, it's free.
</DWS>

--
Andrew T.

zerg

unread,
Aug 14, 2008, 2:50:50 AM8/14/08
to
Peter Duniho wrote:
> On Wed, 13 Aug 2008 22:27:01 -0700, zerg <ze...@zerg.org> wrote:
>> repaint(ints, or Rectangle)
>>
>> Adds the specified region to the dirty region list if the component is
>> showing. The component will be repainted after all of the currently
>> pending events have been dispatched.
>>
>> -- Looks promising,
>
> Yes, it does. In fact, it looks just like what you asked for.

Not quite, since "what I asked for" was a simple, no-arg "repaint-me".

>> but I'm looking for something simpler than figuring out some rectangle
>> and then telling it to repaint that. Can't I just tell it to repaint
>> everything?
>
> Yes, you can. Even ignoring the fact that if you don't know what
> rectangle describes the area in which you're drawing, you've got serious
> problems

Could you PLEASE knock it off with the insults and frequent insinuations
that I don't know what the hell I'm doing? Trust me -- I do. I just
didn't want to have to MESS with digging up the component's bounds and
then passing them around if I didn't have to.

Stop second-guessing my motives or reasons for doing things!! That is
not why I came to this newsgroup.

> there is in fact a "no parameter" overload of the method (see
> below).

In an AWT class, apparently, where I of course didn't go looking for it
since I'm working with Swing.

>> revalidate()
>>
>> Supports deferred automatic layout.
>>
>> Calls invalidate and then [technical details]
>>
>> This method will automatically be called on this component when a
>> property value changes such that size, location, or internal layout of
>> this component has been affected.
>
> As the description says, this method is for things that affect layout.

Internal layout. My cell renderer may have changed size under these
circumstances. That would seem to change the internal layout of the
rendered JList.

> Either the control itself has moved or changed size, or something in it
> needs to go through layout again. This obviously has nothing to do with
> simply forcing a repaint.

It "obviously" no such thing. It clearly has to do with circumstances
that also clearly require a repaint.

What may be obvious to people that have been digging around in the guts
of Swing for ages may be less so to people that are knowledgeable about
Java in general, knowledgeable about more commonplace uses of Swing than
custom component creation, and have access to the API docs, but haven't
done much actual custom-component implementation before.

Must you subject everyone who has not done much custom-component
implementation before and then asks about a related topic to public,
implied insults? It seems rather pointless for you to do so.

> Would you rather have a method that has no arguments, or one that does
> what you want?

I would rather have one that has both traits, of course, since what I'm
looking for is simply a "repaint me completely" method.

>> update(Graphics g)
>>
>> Calls paint.
>
> And when you looked at the description of the paint() method, what did
> you find?

Nothing. I didn't look at the description of the paint method, because I
was not interested in the implementation details of the JComponent
class, only its interface to subclasses and its public interface.

>> -- Calls paint. Called update. Issue: takes a parameter again, this
>> time a Graphics.
>
> Honestly, I don't know what your deal about the parameter is. The fact
> is, a method that does exactly what you want exists, but you need to be
> doing a better job looking at what the methods _do_

I don't need to be doing a better job of anything, and I'll thank you to
quit publicly insuinuating or outright asserting otherwise!

I read all of the descriptions of what the methods do. It was clear that
repaint() could be employed to do what I wanted. What was NOT clear was
whether, for this case, that was the BEST way or if there was a
higher-abstraction-level method that was better-suited instead.
Unfortunately, getting an actual honest, friendly answer to that
question has proven to be unexpectedly difficult, though certainly not
for lack of trying on my part.

> Once you find a method that has
> _functionality_ that you want, then you can look for an overload with a
> signature you prefer.

I did that, and saw none in JComponent's method list. So I looked for
methods with other names that might call one of those two repaints.

>> Perhaps now it's apparent why it's not clear from these whether, in
>> this particular case, I should use repaint itself or use one of these
>> other methods that are involved in getting the component to display
>> itself correctly after something has been updated.
>
> No, it's not apparent to me at all why it's not clear to you.

Fine. It doesn't matter. I don't need you to understand why something
isn't clear to me or why I'm asking a particular question, just so long
as you're willing to ANSWER that question, as straightforwardly as
possible, and with none of the attitude or curmudgeonliness that most of
your replies veritably REEK of.

If you'd prefer not to answer a question, for some particular reason,
you could always not post any kind of response to it at all. One thing I
will certainly not tolerate, however, is any sort of response that
implies, in front of a worldwide audience no less, that you think I'm in
some way incompetent. Stop doing that!

> Of those three methods, two are obviously not what you want

They are not "obviously" not what I want, not based on a quick reading
of their Javadocs. Perhaps to someone with a lot of experience working
with Swing's internals, but not to someone who hasn't previously needed
to directly tell a component to repaint itself and is only now checking
the most obviously-relevant docs.

Since I didn't see a no-arg repaint() listed next to the two with
arguments, I looked for other methods that might represent a higher
level of abstraction for managing repainting than specifying particular
subsets to repaint. I don't think that I was in any way, shape, or form
wrong for doing so, and I resent your repeatedly and publicly
insinuating otherwise. Stop doing so.

> and of one of those two, the documentation related to it even
> _explicitly_ says to not call it directly and instead use the repaint()
> method for what you're trying to do.

That may be true in the copy of the documentation you looked at, but it
is not in mine. Don't assume that everyone is reading the same copy!

But why assume? I stated in an earlier post what my copy of the docs
said for those methods. To reiterate and elaborate, they said:

-- method #1 --

Supports deferred automatic layout.

Calls invalidate and then adds this component's validateRoot to a list
of components that need to be validated. Validation will occur after all
currently pending events have been dispatched. In other words after this
method is called, the first validateRoot (if any) found when walking up
the containment hierarchy of this component will be validated. By
default, JRootPane, JScrollPane, and JTextField return true from
isValidateRoot.

This method will automatically be called on this component when a
property value changes such that size, location, or internal layout of

this component has been affected. This automatic updating differs from
the AWT because programs generally no longer need to invoke validate to
get the contents of the GUI to update.

-- method #2 --

Calls paint. Doesn't clear the background but see ComponentUI.update,
which is called by paintComponent.

-- end --

The above are the full description blocks, quoted verbatim, from my copy
of the docs (Java™ Platform Standard Ed. 6 DRAFT rc-b104, so pretty up
to date I think, for what it's worth) -- no mention of calling repaint
instead in either block. See for yourself.

It's bad enough that you frequently and inexplicably insult me, even
though I've never done you any harm or been mean to you at all. It's
worse when you do so based on completely faulty premises, as occurred in
this particular instances. Please stop doing that. I did not ask anyone
here for their opinions on my competence or any other such opinions that
they might hold. I asked, instead, what the best method was for
repainting a component. A simple, straightforward question. So why the
heck have you turned it into an inquisition? It's like I asked whether
or not the Sun goes around the Earth during the goddamn Spanish
Inquisition! I thought humanity had outgrown that kind of behavior five
hundred goddamn years ago! Sheesh!

>> See above, though I take it you agree that repaint(getBounds()) is the
>> best method.
>
> You keep saying you want a method without arguments. Did you bother to
> look at the description of the method at the URL I provided?

You pointed to an AWT method for some reason. I was looking for a Swing
method, specifically a JComponent method. There were two repaint methods
in JComponent. Why would I go looking somewhere else entirely for a third?

> really, you have no excuse

This is exactly the kind of nasty, insulting, counter-productive, and
off-the-topic pointlessness that I have asked you repeatedly to dispense
with. Can we not focus on only what's relevant here? (Your personal
opinion of me is emphatically NOT relevant to ANYTHING here. By now, I'm
well aware of it, so the only reason I can think of for your repeating
it is that you want to ensure it reaches the widest possible audience,
which I emphatically do NOT want, so STOP IT. Grrr.)

>> It looks like the API is missing a no-arg "repaint()" with a doc
>> comment of "Repaints this component." for these kinds of cases.
>
> I don't know how much clearer I can be. I gave you the URL for the
> exact method you're looking for.

(The insulting and off-topic twaddle from the end of your post has been
deleted unread. Please don't waste my time with that sort of crap again.)

In a place where I didn't look, and where I had no reason to look, since
it's in a completely different section of the API documentation. Perhaps
if it had been listed right next to the other two repaint methods? But
no, it can't possibly be the case that the docs are GENUINELY not 100%
perfect in structure and content, can it? Oh, no, if anyone has a
question that the docs do sorta-obscurely answer, then that person is
automatically a complete idiot and the only reasonable response to their
question is to announce this, loudly and publicly! :-P

No, of course not. The only reasonable response to their question is to
answer it, maybe also mention where in the docs the answer IS found, and
leave your personal opinion of the person who asked the question
completely out of it. Those sorts of opinions should be kept to
yourself. It accomplishes nothing useful to publicly broadcast it, let
alone to do so frequently and repetitiously, and it does annoy people
and may even provoke a flamewar.

Fortunately for you, I'm not the type to stoop to that level and open up
with both barrels. Next time you behave this way when someone asks a
question in good faith, you may not be so fortunate, so watch it.

And while we're off-topic:
1. Is there a way to edit quoted text in Thunderbird to reflow it
after trimming it that doesn't cause it to get mangled OR
require jumping through hoops to make the edited quoted text
all stay blue?
2. Why does selecting something in Firefox and hitting control-C
seem to copy the selected text to the clipboard only some of
the time? This is a repeated nuisance when excerpting from
the javadocs for threads like this one.

zerg

unread,
Aug 14, 2008, 3:01:41 AM8/14/08
to
Peter Duniho wrote:
> On Wed, 13 Aug 2008 22:30:57 -0700, zerg <ze...@zerg.org> wrote:
>> I DID look at the docs -- the JList and JComponent docs. Why would I
>> be poking around in the AWT docs? I'm obviously using Swing.
>
> Because Swing is built on top of AWT.
>
> JComponent inherits Component. You can't understand JComponent without
> understanding Component.

The same mistake you've made several times before. You assume that I
seek to thoroughly understand JComponent. I don't. I seek to use it in a
particular way at this particular time.

You're not teaching school. You're answering specific questions posed in
a technical newsgroup. The object of the game is for the guy asking the
question to get a precise and specific answer in the shortest time
possible, not for you to turn them on to the wonders of learning and
ensure that they are prepared to pass the end-of-term exam.

There is no end-of-term exam. There is only whether or not, at the end
of the day, they have gotten their work done and have not fallen behind
any schedule that might apply. To whatever extent you waste their time
with irrelevancies and to-you-fascinating side diversions such as
learning the implementation and internals of a Java class in depth, you
are doing them a disservice.

Please just answer the question forthrightly, with perhaps a pointer to
any docs you found relevant that the question's asker apparently missed
or found unclear, and leave it at that, or else ignore the question
entirely.

If I want to thoroughly understand the internals of something from the
standard library I have the source and I'll go there before I ask you.
If I want to be insulted and have my motives questioned, I'll look up
psychologists in the yellow pages. They charge money but they also don't
blab their speculations and beliefs about their patients in a public
forum. :-P

(If I ever want to be insulted and have my motives questioned IN PUBLIC,
I'll run for public office. And start seeing a psychologist with a
self-evaluation-prompted suspected diagnosis of masochism. :-P)

>> I'm not updating it at all yet; I haven't gotten this class finished
>> yet. Testing begins tomorrow, and yes, I fully intend to only update
>> things on the EDT. :P
>
> "Fully intend to" is silly. There's no excuse for not doing it that way
> from the outset.

There you go again. I now suspect that you're intentionally twisting and
misinterpreting things purely for the purpose of insulting me.

If you'd bother to actually read my post IN ITS ENTIRETY, you'd know
that I haven't written any code that USES the new class at all yet. In
particular, nothing yet actually calls the thing with an actual
ListModel or does anything else to an instance either on or off the EDT.
I stated that I intend to only access these things on the EDT once I
have code that access them at all. You purposely selectively quoted and
twisted that to imply that I had non-working code that updates stuff off
the EDT that I plan to change tomorrow, which is emphatically NOT the case.

Stop this nonsense at once. I am no longer interested in anything you
have to say, and I have finally gotten answers to most of my questions,
so please do not post to this thread again.

> It's _harder_ to write the code wrong and then fix it
> than it is to just do it right in the first place.

I fully intend to do it right in the first place. The code you claim I
wrote wrong I have in fact not yet written at all, and I said as much in
my earlier post. You even quoted that bit, above: "I'm not updating it
at all yet".

Now, since it's become apparent that now your sole purpose in posting to
this thread is to insult me (whatever it might have been earlier) and
try to provoke a flamewar, and it should now be becoming quite apparent
to you that I refuse to oblige by losing my cool, perhaps you can let
this drop and go insult some OTHER newcomer to this newsgroup? :-P

Peter Duniho

unread,
Aug 14, 2008, 3:21:08 AM8/14/08
to
On Wed, 13 Aug 2008 23:50:50 -0700, zerg <ze...@zerg.org> wrote:

> Peter Duniho wrote:
>> On Wed, 13 Aug 2008 22:27:01 -0700, zerg <ze...@zerg.org> wrote:
>>> repaint(ints, or Rectangle)
>>>
>>> Adds the specified region to the dirty region list if the component is
>>> showing. The component will be repainted after all of the currently
>>> pending events have been dispatched.
>>>
>>> -- Looks promising,
>> Yes, it does. In fact, it looks just like what you asked for.
>
> Not quite, since "what I asked for" was a simple, no-arg "repaint-me".

Had you actually looked at all five overloads for repaint(), you would
have found the one you wanted.

> [...]


>>> update(Graphics g)
>>>
>>> Calls paint.
>> And when you looked at the description of the paint() method, what did
>> you find?
>
> Nothing. I didn't look at the description of the paint method, because I
> was not interested in the implementation details of the JComponent
> class, only its interface to subclasses and its public interface.

Well, I hope you've learned from that mistake.

The next time you are reading the documentation for a method and it says
that it basically just calls some other method, now you know that you need
to go read the documentation for that other method. Otherwise, you still
don't know what the first method actually does.

> [...]


> If you'd prefer not to answer a question, for some particular reason,
> you could always not post any kind of response to it at all. One thing I
> will certainly not tolerate, however, is any sort of response that
> implies, in front of a worldwide audience no less, that you think I'm in
> some way incompetent. Stop doing that!

You will not tolerate? Do you have any choice in the matter? As far as
whether _my_ posts imply that you are incompetent, they do no such thing.
I do clearly _state_ that you have made mistakes, but even competent
people do that sometimes. But, I think your own posts aren't helping your
case much.

> [...]


>> and of one of those two, the documentation related to it even
>> _explicitly_ says to not call it directly and instead use the repaint()
>> method for what you're trying to do.
>
> That may be true in the copy of the documentation you looked at, but it
> is not in mine. Don't assume that everyone is reading the same copy!

I'm reading the same documentation you are. It's just that I took the
time to actually follow the links that fully elaborate on the topics at
hand.

From the description of JComponent.paint() (the method called by update()):

Invoked by Swing to draw components. Applications should not
invoke paint directly, but should instead use the repaint
method to schedule the component for redrawing.

If you'd read that paragraph, didn't understand, and had posted a question
asking for clarification, that would have been one thing. But you
obviously never got as far as even reading that paragraph.

> [...]


> It's bad enough that you frequently and inexplicably insult me, even
> though I've never done you any harm or been mean to you at all.

I'm sorry if you feel insulted. It's not my intent. If you do, it's
simply a side-effect of me pointing out your mistakes. I see no reason
for you to feel insulted by your own mistakes. After all, mistakes can be
very good teaching tools. But you do have to be willing to accept them
and learn from them.

So far, you've failed miserably on that point.

> It's worse when you do so based on completely faulty premises, as
> occurred in this particular instances.

You've yet to show that I've made any false assumptions. It turns out
that you did in fact not read all of the documentation that you should
have in order to research your question, and that the answer to your
question is in fact stated clearly in the documenation.

> [...]


>>> See above, though I take it you agree that repaint(getBounds()) is the
>>> best method.
>> You keep saying you want a method without arguments. Did you bother
>> to look at the description of the method at the URL I provided?
>
> You pointed to an AWT method for some reason.

I pointed you to the AWT method BECAUSE IT IS THE ANSWER TO YOUR QUESTION.

Duh.

> I was looking for a Swing method, specifically a JComponent method.
> There were two repaint methods in JComponent. Why would I go looking
> somewhere else entirely for a third?

Because, as I already pointed out, Java is an OOP language, and that means
that every class inherits everything in its base classes, and so you
cannot understand a given class without also understanding its base
classes.

Swing is not completely independent of AWT. It is built on top of AWT and
you will, if you continue your Java education, find yourself repeatedly
using things from AWT, even though you're nominally using Swing.

>> really, you have no excuse
>
> This is exactly the kind of nasty, insulting, counter-productive, and
> off-the-topic pointlessness that I have asked you repeatedly to dispense
> with. Can we not focus on only what's relevant here?

Forgive me if I find it relevant that I _answered_ your question, and yet
you refused to bother looking at the answer because you made your own
premature, uninformed and ill-advised judgment that my answer wasn't what
you were looking for.

When you've already been given the answer, why would anyone do anything
more than keep pointing out that you've been given the answer?

> [...]


> (The insulting and off-topic twaddle from the end of your post has been
> deleted unread. Please don't waste my time with that sort of crap again.)

Not that your characterization of my post is accurate but, at worst,
whatever I write is only a waste of your time if you read it. No one's
forcing you to. If you find that you've wasted your time, you have no one
to blame but yourself.

> In a place where I didn't look,

True.

> and where I had no reason to look,

FALSE! Until you understand your mistake, you will keep making it. You
think I'm sitting here trying to insult you when in fact I'm trying to
point out the mistake so that you can LEARN from it.

> since it's in a completely different section of the API documentation.
> Perhaps if it had been listed right next to the other two repaint
> methods?

Define "right next to". There certainly are links to the Component
repaint() overloads from the JComponent documentation page. I'd call that
"right next to".

> But no, it can't possibly be the case that the docs are GENUINELY not
> 100% perfect in structure and content, can it?

No one's saying that the docs are perfect. But in this particular case,
they did not fail to provide the information you wanted. You simply
failed to look.

The Java doc format is consistent. Every class has a description, then a
summary of all its members, followed by simple lists of each member of
each base class, and finally the elaborated descriptions of each member.
All you had to do was scroll down to the base classes for JComponent,
looking at the members listed there, and you would have found the other
repaint() methods.

If you are inexperienced and did not understand that, that's not a problem
at all as long as you're willing to own up to that. But when you
repeatedly assert that you've made no mistake, that the method you're
looking for doesn't exist, even when someone has specifically pointed you
to it, then we come to...

> Oh, no, if anyone has a question that the docs do sorta-obscurely
> answer, then that person is automatically a complete idiot and the only
> reasonable response to their question is to announce this, loudly and
> publicly! :-P

I have announced nothing of the sort. You are doing a fine job yourself
on that matter.

Pete

Peter Duniho

unread,
Aug 14, 2008, 3:34:05 AM8/14/08
to
On Thu, 14 Aug 2008 00:01:41 -0700, zerg <ze...@zerg.org> wrote:

>> JComponent inherits Component. You can't understand JComponent
>> without understanding Component.
>
> The same mistake you've made several times before. You assume that I
> seek to thoroughly understand JComponent. I don't. I seek to use it in a
> particular way at this particular time.

I never suggested you intend to "thoroughly understand" the class, never
mind had made that mistake repeatedly. But you do _need_ to at least
understand the parts you're using. My statement stands valid as is.

> You're not teaching school.

I suppose that depends on your definition of "school". But if you think
this newsgroup is a place for you to just ask whatever questions pop into
your head, without any expectation that a) you should have to perform due
diligence to find the answer yourself first, and b) you might receive
feedback regarding _how_ you asked your question rather than the actual
answer to the question itself, you are in for a huge disappointment.

Here's the deal: people answer your questions at their own pleasure.
We're not here to serve your whims, nor to be ordered about by you. We do
as we please, and your ability to get a question answered will depend
heavily on your willingness to adhere to community standards and
expectations.

> You're answering specific questions posed in a technical newsgroup. The
> object of the game is for the guy asking the question to get a precise
> and specific answer in the shortest time possible, not for you to turn
> them on to the wonders of learning and ensure that they are prepared to
> pass the end-of-term exam.

You're simply mistaken about that. When the opportunity to help teach a
person to fish comes up, many of us will choose to do that, rather than to
just hand out fish. This isn't a game, and any of the regulars here have
a long-term view of the situation. Meaning, if we can somehow help you
help yourself, then that's more efficient in the long run and is a
worthwhile effort.

More importantly though, I will point out once again: you do not have the
privilege of dictating how your question is answered. The best you can do
is simply ignore answers you don't like. Throwing a tantrum just because
you aren't happy with the answers you get isn't going to have the effect
you seem to hope for.

> [...]


> Please just answer the question forthrightly, with perhaps a pointer to
> any docs you found relevant that the question's asker apparently missed
> or found unclear, and leave it at that, or else ignore the question
> entirely.

This, coming from the person who refused to look at the pointer that was
in fact provided to him.

> [...]


>>> I'm not updating it at all yet; I haven't gotten this class finished
>>> yet. Testing begins tomorrow, and yes, I fully intend to only update
>>> things on the EDT. :P
>> "Fully intend to" is silly. There's no excuse for not doing it that
>> way from the outset.
>
> There you go again. I now suspect that you're intentionally twisting and
> misinterpreting things purely for the purpose of insulting me.

Your suspicion is unfounded. If I misunderstood you, it's only because
most programmers aren't in the habit of describing code that's been
written as not actually doing something until it's been executed in the
target environment.

For example, what does this code do:

for (int i = 0; i < 5; i++) { }

You might be tempted to say "it iterates the variable i, executing the
empty block for values of i of 0 through 4". Well, maybe you wouldn't.
But I would and so would pretty much everyone else I know.

But by your way of speaking, that code doesn't do anything! It hasn't
been run yet, and I only "fully intend" for it to iterate the variable and
execute the empty block with the values of 0 through 4.

> [...]


> Stop this nonsense at once. I am no longer interested in anything you
> have to say, and I have finally gotten answers to most of my questions,
> so please do not post to this thread again.

Again, I will do as I please. Having you tell me NOT to do things just
makes me want to them all the more.

Pete

zerg

unread,
Aug 14, 2008, 3:53:20 AM8/14/08
to
Peter Duniho wrote:
> On Wed, 13 Aug 2008 22:12:33 -0700, zerg <ze...@zerg.org> wrote:
>
>> Suspect what you will, but I did indeed examine the JComponent API
>> docs, and there were three public methods associated with repainting
>> -- not counting that repaint() had two overloads.
>
> I count FIVE overloads of repaint().

In the classes themselves, yes. In the JComponent method listing in the
API documentation, there are two. It is the JComponent method listing in
the API documentation that I was consulting, for obvious reasons.

> Java is object-oriented programming. You have to look at

Rest of pedantic and rather insulting paragraph deleted. Have I not made
it abundantly clear by now that your condescending and insulting
attitude is unwelcome and you should not reply to me with such an
attitude again? Either reply neutrally, or reply in a friendly manner,
or do not reply at all. (How you reply to somebody other than me is, of
course, between you and them.)

>> Anything that I say is well-formed, and I am not in the mood to be
>> publicly insulted by you or anyone else here. I came here asking for
>> advice in good faith and I don't appreciate being treated in such a
>> manner.
>
> Well, unfortunately for you, you're not in a position to dictate

Rest of hostility deleted.

What the hell is your problem? Why are you being hostile toward me, when
I had never done anything malicious to you, or even inadvertently
slighted you?

Actually, don't answer that. It doesn't matter. Your opinion of me is
not of any interest to me. Only the answer to whatever question I asked.
When you have a nasty opinion of someone, for whatever reason, and it's
not a politician or some other important public figure, you should keep
it to yourself -- didn't your mother teach you any manners?

Please just answer each question or ignore it, WITHOUT slipping in any
snide remarks, off-topic asides, hostility, or other pointlessness that
can serve no useful purpose but does risk starting a fight.

> People get tired of responding to questions that are easily answered
> simply by looking at the documentation.

The problem is when people form opinions of PEOPLE, based on their
OPINION of what is "easily" answered "simply" by looking at the
documentation, and then BROADCAST that opinion for some stupid reason
instead of just keeping it to themselves!

> When you make your question look like one of those, you're not going
> to get the answer you want

I didn't make my question look like anything in particular. I simply
posted a good-faith question that had a simple and straightforward
answer, but not one that *I* found obvious from perusing the portions of
the docs that were immediately relevant.

If you will not answer properly questions that YOU THINK, in YOUR HUMBLE
OPINION, are "stupid", then you should not post any follow-up to those
questions at all. You should NOT post a bunch of insults, or pry into
other peoples' business, or tell the world that you refuse to answer
"stupid" questions like you just did above. You should simply ignore it
if you are unwilling to answer it properly, with an actual, honest answer.

What about that is so goddamn difficult for you to understand? It's
Manners 101, for God's sake. Everyone is supposed to learn basic manners
by the time their age is two digits long. Unfortunately, the internet
appears to be populated with a lot of people who either somehow missed
out on that particular part of their grade-school curriculum or seem to
think they needn't bother when they're online because "it's all just
numbers and code, not real people" (yes, I've actually heard this lame
excuse, and on more than one occasion, in various places for various
online misbehaviors) or because they simply feel they can get away with
it because whoever they're treating poorly isn't physically present to
punch them in the goddamn nose.

To which my answer is, "Would you be this rude over the goddamn phone?
No? Then you shouldn't be over the goddamn Internet, either!"

>> That's more or less what I did, except that I simply asked directly
>> for the answer to the question that I had, instead of for
>> clarification of a particular bit of the docs.
>
> Or, in other words, what I said you should do is MUCH more than what you
> actually did.

What you said I should do was completely irrelevant to the question that
I asked. (To be relevant, it would have to have taken the form of a
snippet of Java code.)

> There's nothing at all in your original post to suggest
> that you had bothered to look at anything in the documentation.

How utterly fascinating. And irrelevant. I asked a question about
something other than the documentation. Your role is then to answer it
or ignore it, whichever you please, not to answer something completely
unrelated to the question actually asked, ask questions of your own, or
(especially) start badmouthing people in public for no good reason.

If you insist that every question contain some remark asserting that the
poster did read some documentation, then I will happily oblige and add
boilerplate to that effect to every question that I ask here in the
future, silly though that seems to me.

And to top it off, you are WRONG. There IS something in my original post
to suggest that I looked at the documentation. There are three method
names. Where did you think I got my three candidates? Out of a hat? Of
course not -- I got them by browsing the list of JComponent methods in
the JComponent API docs. If I saw a question asking what method was best
to address a particular issue at a particular level of abstraction, and
that listed several that the poster thought might be applicable, my
first guess as to how they came by the list would be "by perusing the
class's API docs, specifically the method listing", if it occurred to me
to even wonder how they constructed the list at all. It probably
wouldn't, seeing as it's not relevant; I'd probably just answer the
question, given that I knew the answer or found the docs easier to
interpret than they presumably did.

I think a bit of IETF wisdom is applicable to human interaction online
every bit as much as it is to machine interaction online: "you should
very strictly follow the standard in what you send, but be liberal in
what you'll accept".

The former, applied to humans, means mind your manners; the latter means
try to remain civil and don't reject peoples' good-faith questions with
nasty responses analogous to error messages just because YOU think
there's something they should have done differently.

I follow that particular bit of advice. It is becoming quite apparent
that you not only do not, but seem to explicitly and willfully REFUSE to
do so out of sheer bloody-mindedness. I'd plonk you, but I have to wait
for this thread to die down first so that I can respond to any more
insulting nonsense you post to it and thereby reduce the risk of anyone
coming away from this thread with the mistaken impression that there's
any truth to what you've said about me. :-P

>> Fine. From now on, when I have a highly specific question like "what
>> is the best way to force a JComponent to repaint itself?", instead of
>> just asking "what is the best way to force a JComponent to repaint
>> itself?", I will do as you advise here and say "I've read the
>> documentation, but still have a question: what is the best way to
>> force a JComponent to repaint itself?" -- satisfied?
>
> It's not a question of whether I'm satisfied.

It sure seems like it, particularly when you threaten, above, to respond
in a way that someone "won't like" to any question that you find
unsatisfactory according to fairly vague criteria. Criteria that you
don't state up-front before attacking people, I might add, and that
furthermore can very easily be innocently violated by someone that is
acting in good faith.

Shame on you!

> It's a question of
> whether you have any interest in asking questions in a way that is
> likely to get them answered.

At this point, I couldn't possibly care less what ways of asking
questions will be most likely to get you to answer them. Indeed, I
couldn't care less if you never answered another question of mine again.

In fact, based on how you chose to answer this last one, I'd PREFER it
if you never answered another question of mine again!

Oh, and another unsolicited manners lesson for you: it is considered
rude when someone presumes to speak for everyone else in a large forum
of any sort. As you do above, when you say "likely to get them answered"
rather than "likely to get me to answer them", even though the only
person whose policy on answering questions that you can either control
or speak about with authority is your own personal one. Others will
answer whatever questions they please, including ones that you wouldn't
answer (or would answer in a nasty and useless way instead of properly),
whether you like it or not.

> As for your proposed alternative question format, no...that's not going
> to get your question answered with any more enthusiasm.

Fine, then please killfile me. Obviously you won't like my questions,
for whatever reason and despite the fact that there's nothing at all
wrong with them in any objective sense, and obviously you don't like me,
so do us both a favor and simply ignore me from now on. (That means
don't bother replying to this post, either.)

> If you have a question about what you've read in the documentation,
> you need to be specific about that.

I had a question about which method was best to do a particular job at a
particular level of abstraction, and I was specific about that. If you
interpreted it differently, that's down to YOU. If that interpretation
led you to conclude that there was a problem, then it is YOUR problem.
It is YOUR SUBJECTIVE OPINION. Your subjective opinions should have no
bearing on any technical information you post here, nor should it have
any influence on how polite you are to someone here -- you should either
be polite or say nothing at all. If you can't stand someone and can't
stomach making the effort to reply to them civilly then exercise the
latter option, and if you feel a knee-jerk impulse to lash out every
time you see a post by some person, you should killfile them. That is
Usenet etiquette 101.

> Simply saying "I've read the documentation and I'd
> like you to tell me the answer to this question that was answered by the
> documentation" doesn't encourage people to be motivated to help you.

But of course I never suggested that I'd say that. I said that I'd say
"I've read the documentation, but still have a question: <something
specific about doing something in Java>".

To this, the proper response (other than to write none at all) is a
straightforward answer to the question. If, for some reason, it
irrelevantly occurs to you to wonder why I didn't find the answer in the
documentation, then you may ask that AS WELL AS answering my question,
POLITELY, in particular this means WITHOUT implying that I'm some sort
of idiot or clueless newb. Perhaps, if you ask nicely, I'll even answer
your question, asked irrelevantly out of idle curiosity. Of course, it's
possible that for whatever reason you won't like the answer. If that
occurs, don't lash out at me; you asked, you got an answer to exactly
the question you asked.

If you are not willing to answer politely, or you are not willing to
answer without the answer being 100% irrelevant, then please do not post
any reply at all.

>>> If you simply ask a question that the documentation does in fact
>>> answer, the most obvious explanation is that you haven't bothered
>>> to look at the documentation at all.
>>
>> Sometimes the most obvious explanation is wrong.
>
> True, and irrelevant.

No, it is not irrelevant. The question of whether or not I read the
documentation, or why I didn't find some particular thing there (despite
looking), is what's irrelevant here. You don't need to know in order to
answer. You just need to know the answer to the question you were
actually posed.

Why are you so interested in who's read what documentation and why they
didn't find such-and-such in it, anyway? It has no bearing on what
someone asked, in typical cases, and you aren't to my knowledge involved
in any effort to actually improve the documentation quality, either.

> The problem of people asking RTFM questions is far too common

There is no problem here except for people like you being impolite
without cause, answering with purely off-topic and useless responses,
and generally being all-around jerks!

> for you to expect anyone to give you the benefit of the doubt.

I expect you to give EVERYONE the benefit of the doubt or else NOT REPLY
TO THEM! I expect you to do so because I expect you, as I expect all
human beings, to BE POLITE, ESPECIALLY IN PUBLIC! What part of that is
so difficult for you to understand?

>> People post questions here to get them answered, not to get
>> sidetracked into unrelated topics to satisfy your curiosity as to
>> peoples' motives in asking questions or for any similar such reason.
>
> This isn't about satisfying curiosity.

Then why did you ask me questions whose answers you did not need in
order to correctly and concisely and politely answer MY question?

> It's about trying to help you understand why people aren't going
> to answer RTFM questions.

Now you're being arrogant, rude, and condescending again.

Arrogant: presuming to speak for everyone in the world yet again.
Rude: I know bloody well what the "F" in "RTFM" stands for, among other
things.
Condescending: you are again assuming the role of patient teacher trying
to make backwards student understand something in time for the exam.

Let me make myself perfectly clear:

I DO NOT >>>CARE<<< WHY >>>YOU<<< AREN'T GOING TO ANSWER PARTICULAR
QUESTIONS.

Just answer them or not, as you see fit, but either answer them politely
and accurately or don't post any reply at all!

It's really that simple!

If someone wants to know what questions YOU are going to answer, they
will ask you what questions YOU are going to answer. If they do not ask
you what questions YOU are going to answer, don't tell them unsolicited,
especially not if you have some kind of inherited inability to do so
politely.

And if someone asks you what questions "people" are going to answer, the
only correct response will obviously be "whatever questions they,
individually and separately, FEEL like answering".

>> It's best to just take peoples' questions at face value, and give them
>> a simple, correct answer that they can apply immediately. I don't know
>> about you, but when I have a question, I'm generally interested in
>> getting an answer as quickly as possible, and one that can be applied
>> immediately. [...]
>
> The very fastest way for me to get the answer to any question would be
> to just ask the expert.

Funny -- I find it's faster to try to find the needed information in the
docs before posting something and then waiting for ages for an
as-likely-or-not snarky-and-unhelpful response from some jerk who thinks
his modem and sorta-anonymity gives him carte blance to tell all and
sundry exactly what he thinks of them and why. :-P

> But, that can be a waste of the expert's time,
> and as well I will learn more about the subject if I do some research
> myself.

And when you do so, but the answer is not apparent from the docs that
were most obviously relevant (such as, say, the long list of JComponent
methods)?

You ask, right?

Yet you fault me for doing the same in the same circumstances.

Shame on you!


> Personally, I don't like wasting other people's time.

Then please don't waste mine with any more useless, flamey, or otherwise
off-topic responses. In the future when you see a question by me please
either give it a straight answer with no extra added bonus "baggage" or
ignore it completely. And if you find me completely intolerable for any
reason please say nothing and just killfile me. Thank you.

> But the fact is, other people don't like YOU wasting their time.

If you think answering a particular question is a waste of your time,
then the most time-efficient thing you can possibly do is just mark it
read (or even killfile the thread) and move on, without posting any
reply at all.

The only reason to post snarky, useless, and insulting replies is if you
WANT to waste time, and your preferred form of time-wasting is to pick a
fight and then slug it out with someone.

If that's your cup of tea, there are newsgroups expressly for that sort
of purpose; comp.lang.java.programmer, however, is not one of them.

> When it looks like that's what you're doing,
> they tend to ignore you rather than answering the question you want
> answered.

Fine. It's when you do neither that I get bothered.

> Again, I've no interest here in making you feel bad about your choices.

Then why keep harassing and berating me? In public, at that?

> I'm simply trying to offer advice that will help you understand better
> techniques for getting your questions answered.

I didn't ask for advice on "better techniques for getting my questions
answered" by you. (And you can only speak with authority on what YOU
like in a question. You seem to be conflating your own opinion of what
questions YOU think are worth YOUR while to answer with some peculiar
idea of some sort of universally-held opinion on the matter, as if there
even were such a thing. I don't know why.

The gratuitously insulting paragraph where you imply that I'm some sort
of a child has been completely ignored, save to make this remark calling
you on your own childish behavior in including such pointless flamebait
in your post.

And since there's nothing left, I guess this is goodbye.

Unless, of course, you for some reason think there's anything left to
say here that you haven't already repeated several times. :-P

zerg

unread,
Aug 14, 2008, 3:54:51 AM8/14/08
to

This is another example of a pointless piece of off-topic,
bandwidth-wasting flamebait.

I only pointed it out because the post of mine with those questions had
replies, but none that addressed those specific questions, and I was
concerned that they'd gotten lost in the general clutter.

bugbear

unread,
Aug 14, 2008, 4:45:34 AM8/14/08
to
zerg wrote:
> Peter Duniho wrote:
>> On Wed, 13 Aug 2008 22:30:57 -0700, zerg <ze...@zerg.org> wrote:
>>> I DID look at the docs -- the JList and JComponent docs. Why would I
>>> be poking around in the AWT docs? I'm obviously using Swing.
>>
>> Because Swing is built on top of AWT.
>>
>> JComponent inherits Component. You can't understand JComponent
>> without understanding Component.
>
> The same mistake you've made several times before. You assume that I
> seek to thoroughly understand JComponent. I don't. I seek to use it in a
> particular way at this particular time.
>
> You're not teaching school. You're answering specific questions posed in
> a technical newsgroup. The object of the game is for the guy asking the
> question to get a precise and specific answer in the shortest time
> possible, not for you to turn them on to the wonders of learning and
> ensure that they are prepared to pass the end-of-term exam.

I strongly suspect the resident experts are actually
trying to prevent short term wrong design decisions,
inferred from your question, turning into long term,
had to fix pain.

They're actually trying to help you.

BugBear

zerg

unread,
Aug 14, 2008, 5:05:31 AM8/14/08
to
Peter Duniho wrote:
> On Wed, 13 Aug 2008 23:50:50 -0700, zerg <ze...@zerg.org> wrote:
>> Not quite, since "what I asked for" was a simple, no-arg "repaint-me".
>
> Had you actually looked at all five overloads for repaint(), you would
> have found the one you wanted.

I told you to stop posting attack posts, and to killfile me if you had
to in order to achieve that objective.

I'll repeat it again:

Stop posting attack posts. If you cannot resist replying to everything I
write with nasty nonsense, killfile me.

Where I looked, the JComponent method listing, I saw two overloads, not
five. I acted reasonably based on what I saw in the obvious place to
look. That I did not additionally look in some non-obvious place is of
no importance; furthermore it is no skin off your nose.

>> Nothing. I didn't look at the description of the paint method, because
>> I was not interested in the implementation details of the JComponent
>> class, only its interface to subclasses and its public interface.
>
> Well, I hope you've learned from that mistake.

I did not make any mistake. I do not make mistakes. Stop lying about me
in public.

The whole purpose of API documentation and object-oriented design, of
course, is to make users of a class not need to concern themselves with
the implementation details. Therefore, not concerning myself with the
implementation details when using object-oriented classes is not a
mistake; it is expected and normal behavior.

> The next time you are reading the documentation for a method and it says
> that it basically just calls some other method, now you know that you
> need to go read the documentation for that other method.

I don't share your opinion on what I do or do not need to do. I don't
care what your opinion is regarding what I do or do not need to do. I
doubt anyone else reading this newsgroup cares what your opinion is,
either. Why are you wasting time and bandwidth by broadcasting your
irrelevant, small-minded, and boring opinion to the world? If you want
your own personal soapbox from which to broadcast your own personal
opinions, blogger, livejournal, and several other web sites provide free
blogging space where you can opine away without wasting anyone's time
that isn't specifically interested in hearing your opinions. (Of course,
if you badmouth random ordinary peopl on your blog, it may come back to
haunt you in the form of the site getting yanked by the provider, or
even legal action, so you'd do so at your own risk!)

> Otherwise, you still don't know what the first method actually does.

That means that the docs are poorly written. I do not need to do
anything. The documentation writers need to better document that method.
Each public method's own javadoc should state what that method does,
without reference to the implementation; it may add supplementary
information regarding the implementation but it should never say ONLY
implementation-dependent things.

>> If you'd prefer not to answer a question, for some particular reason,
>> you could always not post any kind of response to it at all. One thing
>> I will certainly not tolerate, however, is any sort of response that
>> implies, in front of a worldwide audience no less, that you think I'm
>> in some way incompetent. Stop doing that!
>
> You will not tolerate?

You heard me. If I ever want your opinion of me I'll explicitly ask you
for it -- BY PRIVATE E-MAIL. This is a newsgroup for the discussion of
Java programming, not your own private pulpit from which to preach on
any random topic that pops into your head. Kindly remember that fact in
the future.

> Do you have any choice in the matter?

I don't take kindly to being threatened. If you don't like me, the
proper behavior is to killfile me, not to publicly badmouth me nor to
threaten to do so. This is not alt.flame. Please do not treat it as if
it were.

Another paragraph of insulting nonsense had come next, but I don't see
any reason to include it here. Suffice it to say that I have not made
any mistake, except, apparently, in your HUMBLE opinion, which a polite
person would have kept to himself.

>> That may be true in the copy of the documentation you looked at, but
>> it is not in mine. Don't assume that everyone is reading the same copy!
>
> I'm reading the same documentation you are.

Obviously not, as I have just demonstrated that the thing you said was
in your javadoc for one of those methods was not in the description text
for either of them in my copy of the javadoc.

> It's just that I took the time to actually follow the links

Are you now saying that you LIED when you said that the javadocs for one
of those two methods stated to use repaint instead? Because that IS what
you said.

> From the description of JComponent.paint()

That is not either of the two methods whose javadocs are at issue.

So, you DID lie.

I am definitely going to plonk you now, just as soon as this thread has
died down. It is now obvious that you are morally bankrupt and that
nothing that you write in response to any of my posts can be expected to
be at all useful to me.

> Invoked by Swing to draw components. Applications should not
> invoke paint directly

Invoking update() is, of course, not invoking paint() directly, and I
was, as I'd already stated, coding a custom JList descendant rather than
an application that was merely USING a JList, so this would not have
been relevant ANYWAY.

> If you'd read that paragraph, didn't understand, and had posted a
> question asking for clarification, that would have been one thing. But
> you obviously never got as far as even reading that paragraph.

No, I didn't, for reasons that I already explained. The javadoc for
update should have said all that it needed to say. If it did not, and
apparently in your opinion it did not, then that is a problem with the
documentation, not a problem with me.

And in neither case is it at ALL relevant to the question that I
originally asked!

>> It's bad enough that you frequently and inexplicably insult me, even
>> though I've never done you any harm or been mean to you at all.
>
> I'm sorry if you feel insulted. It's not my intent.

I now know that that is a lie, from your behavior in a couple of other
recent posts, so please don't bother with empty platitudes like this
again. It wastes bandwidth.

(The remainder of that paragraph went on to quite deliberately insult me
several more times, including by erroneously accusing me of having made
mistakes. I have not.)

> So far, you've failed miserably

In your ever-so-humble opinion, which I never asked you for and which,
if you'd not apparently been raised in a goddamn BARN, you would have
known to keep to yourself!

>> It's worse when you do so based on completely faulty premises, as
>> occurred in this particular instances.
>
> You've yet to show that I've made any false assumptions.

Well, apparently they weren't merely false assumptions after all -- they
were outright lies.

But you said that the javadoc for one of two specific methods stated
something that they did not. I charitably attributed this to your
version of the docs differing from mine, and your falsely assuming that
my version contained something if your version did. And then, on the
basis of that false assumption, you berated me for some supposed stupidity.

Now I know that what really happened was much worse -- worse for you,
that is. What actually happened was that you said that the javadocs for
one of two specific methods stated something that they didn't, period;
in your copy, AS WELL AS in mine, that something appears only in the
javadocs for a third method, not in either of the two methods for which
you claimed one of their javadocs mentioned it.

In other words, you didn't make a false assumption about my version; you
simply lied baldly about something being in a place where it wasn't!

And then, on the basis of that outright fabrication, you berated me.

I have now demonstrated that you are being intentionally hostile and
dishonest. Clearly your only purpose here is to try to provoke a
full-blown flamewar. Were I a lesser man, you might well have actually
succeeded.

> It turns out that you did in fact not read all of the documentation
> that you should have

In your humble opinion. The only documentation I can reasonably be
expected to read is what's obviously of immediate relevance to the
matter at hand. Particularly for a class with as large a list of methods
as JComponent.

My question was "which method to do X"; I quickly determined that JList
didn't deal with such matters directly but delegated to JComponent; so
the JComponent method list was the place to look. So I looked at the
JComponent method list, picked the likeliest candidates, clicked on
each, and thus looked at the descriptions of each. That I did not read
the whole thing cover-to-cover or read any OTHER classes' docs just
proves that I am not a man of infinite, saintly patience and possessed
of unlimited time. Hardly a crime.

> in order to research your question, and that the answer to your
> question is in fact stated clearly in the documenation.

No, it is not. I submit that the documentation does not, to my knowledge
based on any of this, state clearly what method should be used to
repaint an entire component, from inside a subclass, when coding a
library rather than an application.

Also, I would consider that for it to truly state something CLEARLY, it
must state it where people looking for that information are very likely
to FIND it, as well as state it unambiguously. Why would I look at a
method that wasn't one of the three I'd come up with, or look at the
superclass when it looked like JComponent had its own repaint methods
that, perhaps, superseded the AWT ones?

It doesn't even matter. It's not up to YOU to decide what I should or
should not have done. You can believe that I should have read every byte
of the entire api docs tree, for all that it matters -- it's completely
irrelevant! I asked a simple question with a straightforward answer. The
only correct ways to respond are a) with that answer or b) not at all.
There is nothing further to discuss.

>> You pointed to an AWT method for some reason.
>
> I pointed you to the AWT method BECAUSE IT IS THE ANSWER TO YOUR QUESTION.

And I am not disputing that. I am disputing your implicit claim that I
should have looked there instead of at the JComponent repaint method
cluster.

And the only reason I am doing so, given that where I should have looked
is completely irrelevant to my original question, is that since you have
publicly maligned me in a baseless manner, I must now point out, equally
publicly and in the same place, why you are wrong and the reason why
your maligning of me is, indeed, baseless.

>> I was looking for a Swing method, specifically a JComponent method.
>> There were two repaint methods in JComponent. Why would I go looking
>> somewhere else entirely for a third?
>
> Because, as I already pointed out, Java is an OOP language

Ridiculous. Where does it stop? All the way up at Object? I was asking a
question about a Swing JComponent. I think stopping at JComponent and
not looking into the IMPLEMENTATION DETAIL that JComponent is
implemented using AWT base classes is perfectly goddamn reasonable.

Oh, you disagree? So what? Go ahead and disagree. You have every right
to. It's your opinion. Where you cross the line into being a rude little
prig and a waste of time is when you decide, on the basis of A MERE
PERSONAL OPINION OF YOURS, to start badmouthing other people in public,
to post time-wasting useless unhelpful responses to questions, and to
generally act like a jerk in public!

I think maybe I need to drill it in directly and emphatically.

YOU ARE NOT GOD.

YOU do not decide what is or is not a good question, period; only what
is or is not a question that you, personally, feel like answering.

YOU are not the official arbiter of how someone should use the
documentation.

YOU are not the sole person in charge of deciding what questions are
acceptable on this newsgroup.

YOU are nobody!

Got it?

Step down off your high horse and start behaving like a plain old
citizen, the equal of everyone else, whose opinion counts for exactly as
much as anyone else's (usually nothing) and who should be held (and
should hold himself!) to the exact same standards of polite and civil
behavior that almost everyone's mother teaches them.

> you cannot understand a given class without also understanding its base
> classes.

Once again, you make the mistake of thinking that I'm trying to
understand JComponent in its entirety, implementation details and all,
rather than trying to simply use a JList in a particular instance.

Either that, or you make the more severe mistake of thinking that I am
SUPPOSED TO, and that I am not permitted to proceed with my work until I
DO, understand all of that. Along with the even WORSE mistake of
thinking that someone has put YOU, personally, in charge of deciding
these things and granting or denying such permissions!

Here's some news for you: nobody has done anything of the sort. Nobody
died and made you God. Your opinions on such matters are exactly that --
YOUR OWN PERSONAL OPINIONS. And as such, they are worth exactly what
such opinions are usually worth. And like it or not, I will treat them
as such.

> and you will, if you continue your Java education

This condescending nonsense can serve no useful purpose. It's just
gratuitous flamebait. Go away and leave me alone.

I have a fairly solid Java education, thank you very much. I just don't
have much experience subclassing JList! So sue me!

>>> really, you have no excuse
>>
>> This is exactly the kind of nasty, insulting, counter-productive, and
>> off-the-topic pointlessness that I have asked you repeatedly to
>> dispense with. Can we not focus on only what's relevant here?
>
> Forgive me if I find it relevant that I _answered_ your question

That's not what's at issue here! I asked can we not focus on ONLY what's
relevant here. You are constantly mixing your personal beliefs and
opinions, including (especially unfortunately) your personal negative
opinions of other people, into things instead of leaving such things
where they belong: locked safe and sound inside your own cranium. NOBODY
CARES what you think of me. NOBODY CARES what you, personally, think
people should have read or done. NOBODY CARES! Get it? Nobody cares
about anything except the answer to the question-du-jour! So please,
either oblige them or don't post anything at all.

> and yet you refused to bother looking at the answer

Wrong. I have already used the answer in my code. What I refused to do
is submit to your claims regarding my competence, and what I should or
should not have done. And that's because I STILL DO NOT AGREE WITH YOU
ABOUT THOSE THINGS. Got it?

> because you made your own premature, uninformed and ill-advised
> judgment that my answer wasn't what you were looking for.

I did nothing of the sort, you liar. I explained why I didn't find it in
the documentation. Apparently even that is not enough to meet your
exacting standards for how other people should behave. Well, tough.
You'll find that lots of people don't meet your exacting standards, and
you will have to learn to accept that and get along with such people or
face the consequences.

That's not a threat, by the way; that's just a warning. Being as boorish
as you have been will get you nowhere in life except, perhaps, someday
into a world of hurt when you insult the wrong six-foot-three,
two-hundred-pound person or get fired from your job or something for
being a jackass whenever someone doesn't live up to your oh-so-perfect
standards.

> When you've already been given the answer, why would anyone do anything
> more than keep pointing out that you've been given the answer?

I have no idea. Why do you? Yet here you are, repeatedly posting just to
sling various insults at me, and when I reply to patiently explain to
you (and to whoever else is reading this -- if it were just you, I'd
probably just let you stew in your own ignorance) that you're wrong
about me (and why), instead of just accepting that, or agreeing to
disagree, and moving on, you post ANOTHER post full of pointless insults
and vitriole.

Please stop doing so, and please treat my question ("why do you?") as
rhetorical and simply not post to this thread any more. You've said your
piece, and I've said mine, and the only reason for you to continue now
is if you feel you have some childish need to get the last word or
something equally silly.

>> (The insulting and off-topic twaddle from the end of your post has
>> been deleted unread. Please don't waste my time with that sort of crap
>> again.)
>
> Not that your characterization of my post is accurate

You might not like it, but it was, indeed, accurate. It had nothing to
do with the original topic (to wit, "Best way to force a JComponent to
repaint itself") or Java and it was you once again expressing your
by-now-well-known nasty and small-minded opinion of me, formed hastily
on the basis of nothing but a smattering of usenet posts and therefore
about as trustworthy as a politician's big shit-eating grin on
meet-the-press day during election season.

Why you even think anyone cares what your opinion of me is ... actually,
don't bother telling everyone. Nobody cares about THAT, either.

Just drop it. It can do neither of us any good for you to continue.

> but, at worst, whatever I write is only a waste of your time if you
> read it. No one's forcing you to.

Unfortunately, I have to read all of your posts to this thread now
because there is a statistically high probability that any such post
contains some baseless slur or another against my good character that
will require public correction.

>> and where I had no reason to look,
>
> FALSE!

No, you're the liar, as we've established previously.

> Until you understand your mistake, you will keep making it.

I.
DID.
NOT.
MAKE.
ANY.
MISTAKE!

I looked exactly where I was supposed to. That not all of the relevant
methods were grouped together in the documentation indicates a problem
with the documentation.

Your opinion may be different, but it is just that -- YOUR OPINION, AND
NO MORE. It has no place in any public inquiry into whether or not I've
done something wrong. In fact, there should not be any such public
inquiry. I haven't done anything wrong, and I haven't requested any such
inquiry myself. Why you seem to think there should be one ... but again,
let's not go there. It's irrelevant. It's apropos of nothing. This is a
newsgroup for discussing Java, not for discussing zerg and whether or
not he's bad, evil, wrong, stupid, or some such. Please get back on
topic now.

> You think I'm sitting here trying to insult you when in fact I'm
> trying to point out the mistake so that you can LEARN from it.

That's a lie, as established earlier. I made no mistake, except perhaps
according to your own, ill-founded opinion. I made none in fact. And you
are not trying to get me to LEARN anything; you are trying to start a
big fight, and you are becoming increasingly frustrated and angry that I
won't take the bait, stoop to your level, and start throwing the F word
around like you have done. That this is your intent is apparent simply
from the fact that you keep repeating yourself long after I have made it
clear that I have no interest in learning what you want me to learn,
which is, in fact, a bunch of YOUR OPINIONS and not really anything to
do with Java at all.

>> since it's in a completely different section of the API documentation.
>> Perhaps if it had been listed right next to the other two repaint
>> methods?
>
> Define "right next to".

As in, the two were physically adjacent in the web page. The third was
on another page entirely. There may be a link to there on the JComponent
page, but if so, it's buried in one of those very dense blocks of
nothing but links far away from where the two methods were that I did find.

I don't have time to minutely examine every single link in a page the
size of that one when looking for a specific bit of information and when
it has (if perhaps falsely) implied that I've already found all that
page has to offer on the subject.

But why am I explaining myself to you yet again? If I thought that you
might actually be acting in good faith, and willing to actually LISTEN
to what I have to say and try to understand my point of view, it would
make sense for me to do so, but you're clearly only here to HOLD FORTH,
expressing YOUR opinion; you clearly consider your opinion to have
supremacy and as a result you are completely uninterested in my point of
view. That, of course, is why you don't actually bother to read and
understand most of what I write, but reply anyway.

You've worn out the "benefit of the doubt" in my case.

Shoo! Go away! Be gone with you!

I won't respond to any further posts from you except to deny, for the
record, that there's any truth to any insults that you've included in
them. Any more elaborate response is now clearly a waste of time and
bandwidth and will only serve to encourage you to post yet another long
diatribe all about how evil zerg is. :-P

> There certainly are links to the Component
> repaint() overloads from the JComponent documentation page. I'd call
> that "right next to".

"On the same page" != "right next to" when a page is that size, of course.

>> But no, it can't possibly be the case that the docs are GENUINELY not
>> 100% perfect in structure and content, can it?
>
> No one's saying that the docs are perfect.

You are implying it when you blame ME for something that actually
resulted from the docs' limitations.

> But in this particular case, they did not fail to provide the
> information you wanted.

In a certain technical sense. They did fail to put it where it would be
likely to be seen, though, which means they only did half of the job.

Yes, I know, you disagree. I also don't care. Shut up about it, and shut
up about me. There is nothing further to say on this topic, so please
don't waste everyone's time.

> You simply failed to look.

Not true. I did look, in the appropriate place, alphabetically between Q
and S, under R. It simply wasn't there (between Q and S, under R, that is).

> The Java doc format is consistent.

Then it unfortunately might prove to be consistent in its flaws.

> Every class has a description, then a summary of all its members,
> followed by simple lists of each member of each base class, and
> finally the elaborated descriptions of each member.

And it is there, where I was supposed to, that I did indeed look. I
failed at nothing. I carried out the extent of my responsibility. And I
don't care that your opinion is otherwise, so don't bother saying so yet
again.

> All you had to do was scroll down to the base classes for
> JComponent, looking at the members listed there, and you would have
> found the other repaint() methods.

But why would I do that, particularly when it's an unpleasantly dense,
run-together solid block of links? (Someone clearly didn't read any
style guides about writing for readability or easy skimming/scanning!)

> If you are inexperienced and did not understand that, that's not a
> problem at all as long as you're willing to own up to that. But when
> you repeatedly assert that you've made no mistake, that the method
> you're looking for doesn't exist, even when someone has specifically
> pointed you to it, then we come to...

I have not done anything of the sort, you liar. I have only asserted
that I made no mistake (true) and that the method that I was looking for
wasn't listed in the obvious place, right beside the others. I never,
EVER claimed that it didn't even exist. I did, at one time or another,
indicate that someone ELSE had IMPLIED that it didn't in one or two
places, but that's a completely different matter. Evidently those
someone elses were wrong. Hardly my fault.

>> Oh, no, if anyone has a question that the docs do sorta-obscurely
>> answer, then that person is automatically a complete idiot and the
>> only reasonable response to their question is to announce this, loudly
>> and publicly! :-P
>
> I have announced nothing of the sort.

You have implied it.

Now take your unwelcome and off-topic opinions about me and shove them.
This is a Java programming newsgroup, not Geraldo and certainly not
Peter Duniho's Personal Soapbox.

Peter Duniho

unread,
Aug 14, 2008, 5:11:21 AM8/14/08
to
On Thu, 14 Aug 2008 00:53:20 -0700, zerg <ze...@zerg.org> wrote:

> Peter Duniho wrote:
>> On Wed, 13 Aug 2008 22:12:33 -0700, zerg <ze...@zerg.org> wrote:
>>
>>> Suspect what you will, but I did indeed examine the JComponent API
>>> docs, and there were three public methods associated with repainting
>>> -- not counting that repaint() had two overloads.
>> I count FIVE overloads of repaint().
>
> In the classes themselves, yes. In the JComponent method listing in the
> API documentation, there are two. It is the JComponent method listing in
> the API documentation that I was consulting, for obvious reasons.

And what reasons are those? Why would you not look at _all_ of the
methods a class might have, rather than just the ones implemented by
itself?

>> Java is object-oriented programming. You have to look at
>
> Rest of pedantic and rather insulting paragraph deleted. Have I not made
> it abundantly clear by now that your condescending and insulting
> attitude is unwelcome and you should not reply to me with such an
> attitude again? Either reply neutrally, or reply in a friendly manner,
> or do not reply at all.

Again with the imperatives. I will reply to you in any manner I see fit.

> [...]


> What the hell is your problem? Why are you being hostile toward me, when
> I had never done anything malicious to you, or even inadvertently
> slighted you?

Um, let's see. There's one person in this thread who is cursing, engaging
in name-calling, and just generally getting their panties in a twist for
no good reason.

Hint: it's not me.

The idea that you've not done anything to deserve ire from someone else is
laughable, but calling my posts "hostile" even more so.

It's funny. Looking back at various threads, you seem to accuse people of
hostile and other unsavory behavior to you quite often. And yet, the
people whom you accuse don't seem to be accused of that behavior by anyone
else. The only commonality is _you_.

You will probably think this is just coincidence, or perhaps some form of
persecution. But the fact is, you seem to have trouble getting along with
others, and seem to think that this newsgroup owes you much more than it
really does.

Good luck with that.

Pete

Daniele Futtorovic

unread,
Aug 14, 2008, 5:15:06 AM8/14/08
to
On 14/08/2008 04:21, zerg allegedly wrote:
> What's the best way to force a JComponent to repaint itself? I've got
> three candidates:
>
> revalidate()
> repaint()
> update()

The three are not equivalent.

repaint is sometimes used in client context, and sometimes in component
context.

revalidate is/should be for component context only.

update is only for paint context.

revalidate is functionally different from repaint and update.

-.-

If you want the engine to redraw your Component* completely, use
repaint() without arguments. If you want it to redraw a particular
section within its bounds, use the repaint overload that takes bounds
(directly or via a Rectangle).

In either case, if you're calling repaint very often**, you might want
to allow the calls to coalesce by calling one of the repaint overloads
that take a long as their first argument (something like hundred or two
hundred millisecs should be adequate).

If your custom component's layout (bounds, positions within) was
modified, call invalidate() and let the framework do the rest. Don't
call revalidate() at that point. The difference between revalidate() and
invalidate() is validate(), and that should be in client code.

Never call update unless you're in the paint() method chain -- i.e.
doing custom painting -- and even then only exceptionally.

*EVERY javax.swing.JComponent IS A java.awt.Component

**for specific values of "very often"


PS: I AM NOT INSULTING YOU!

--
DF.

zerg

unread,
Aug 14, 2008, 5:48:03 AM8/14/08
to
Peter Duniho wrote:
> On Thu, 14 Aug 2008 00:01:41 -0700, zerg <ze...@zerg.org> wrote:
>
>>> JComponent inherits Component. You can't understand JComponent
>>> without understanding Component.
>>
>> The same mistake you've made several times before. You assume that I
>> seek to thoroughly understand JComponent. I don't. I seek to use it in
>> a particular way at this particular time.
>
> I never suggested you intend to "thoroughly understand" the class

You suggested that either I intended to or that I actually MUST do so;
neither is correct.

> But you do _need_ to at least understand the parts you're using.
> My statement stands valid as is.

No. Nothing that you have said about me "stands valid", at least, not so
far.

To understand the parts I'm using I went and read the javadocs for the
two repaint methods that were in the expected place in the alphabetical
list, the revalidate method, and the update method, exactly as I should
have.

That your opinion differs is of no importance whatsoever. Your opinions,
in general, are of no importance whatsoever. Why you persist in
believing otherwise remains a mystery, given that you've had this
explained to you repeatedly now.

>> You're not teaching school.
>
> I suppose that depends on your definition of "school".

It depends on nothing. You're not teaching school here. You're
participating in an online community of Java programmers. Unfortunately,
your idea of participation is apparently to be really rude and boorish
to anyone whose opinions you happen to disagree with.

> But if you think
> this newsgroup is a place for you to just ask whatever questions pop

> into your head, without any expectation that you should have to

> perform due diligence to find the answer yourself first

I don't think anything of the sort and I DID perform due diligence. And
yes, once again, I have a pretty good guess what your opinion is on that
matter and yes, once again, I don't give a shit, and neither does anyone
else in all likelihood.

> you are in for a huge disappointment.

Threats are wasted on me. I don't care if you never answer a question
from me again. In fact, I'd prefer it if you didn't; I'd dearly love it
if you'd just killfile me right now. Obviously we mix about as well as
oil and water, and most of that is down to your abrasive and opinionated
nature and refusal to keep negative opinions to yourself in polite company.

> Here's the deal: people answer your questions at their own pleasure.

No problem. I'd just like it if they either answered straight, and
civilly, or said nothing at all, rather than writing any nasty thought
about me that might be suggested to them by whim!

> We're not here to serve your whims, nor to be ordered about by you.

Fine. The only time I've ordered anybody about rather than said "please"
was when someone pushed me far enough and I stopped prepending "please"
before "don't be rude to me" and the like, because it had become clear
that politeness was wasted on that person.

You being one such person.

The only "whim" I am "ordering" you about is my personal preference NOT
to be the subject of a lot of off-topic, pointless nonsense. This is a
Java newsgroup, not a zerg newsgroup. Stop posting about zerg and start
posting about Java please.

> We do as we please, and your ability to get a question answered will
> depend heavily on your willingness to adhere to community standards
> and expectations.

Hoo boy. It doesn't get much more arrogant than this.

Nobody died and appointed YOU supreme arbiter of community standards!
Your SOLE authority here is to decide what questions meet YOUR PERSONAL
standard for answering them, NOT to decide EVERYONE ELSE'S AS WELL.
Please get that through your thick skull and thereby save us all a lot
of grief.

In your OPINION my question may not have been up to some standard or
another. Fine. Ignore it, then. But don't accuse me of acting in bad
faith, especially in public, and don't waste countless hours and
megabytes BROADCASTING your stupid little narrow-minded irrelevant
opinions in a newsgroup where the topic is not "Peter Duniho's opinions"
but rather "Java programming"!

>> You're answering specific questions posed in a technical newsgroup.
>> The object of the game is for the guy asking the question to get a
>> precise and specific answer in the shortest time possible, not for you
>> to turn them on to the wonders of learning and ensure that they are
>> prepared to pass the end-of-term exam.
>
> You're simply mistaken about that.

NO. I AM NOT MISTAKEN.

If your OPINION about what this newsgroup is for differs radically from
the above, which states what this newsgroup ACTUALLY is for, then
perhaps you are better off not posting to this newsgroup at all.

Perhaps you actually teach a class in your working hours. It would
explain a few things. But if so, learn to separate your role at work
from your role on this newsgroup. They are distinct. Your classroom is
full of clueless newbies who need guidance and who need to learn a
course curriculum and not just get specific answers to specific
questions. This newsgroup is full of knowledgeable Java programmers (and
probably the occasional clueless newbie) who do not need guidance unless
they say they do, who do not need to learn a well-rounded curriculum
unless they say they do, and who do need to get specific answers to
specific questions.

Take specific questions at face value. Don't read anything else into
them, like imagined hidden pleas for help understanding some broader
thing or asking what your personal opinion is on how much digging into
the docs someone should arse around with before asking elsewhere. If
someone has such a question here I am sure they will ask it outright. I
know I will.

> When the opportunity to help teach a person to fish comes up, many
> of us will choose to do that, rather than to just hand out fish.

Not everyone has time to play your little scavenger hunt (or play to
your ego). Please answer a question directly, in your first reply to its
thread, if it hasn't already been answered. If you wish, go ahead and
ALSO point out any research tips or documentation things you think the
poster might have overlooked -- WITHOUT implying that they are an idiot
for having overlooked any such and without any other uncivil behavior.
That way EVERYONE gets their wish, you your stated desire to teach
someone and the original question asker an answer to their question,
plus what may or may not be a useful bonus for them.

Well, except that this assumes that you are acting on good faith. All
the evidence now indicates that your REAL wish is to start fights. Of
course, what I suggested is too reasonable and too non-fight-starting to
pass muster with you. (Prove otherwise -- accept it. I dare you! If you
reject it, I and doubtless many others here will take it as your tacit
admission that your real wish is, indeed, to start fights, and that
being reasonable just isn't your bag.)

> This isn't a game

Exactly. Someone asking a question here may be under time pressure. Did
you ever think of that?

> Meaning, if we can somehow help you help yourself, then that's more
> efficient in the long run and is a worthwhile effort.

That's for me to decide. It's for each individual person to decide what
is more efficient FOR THEM in terms of getting their particular tasks
accomplished. It is arrogant in the extreme for you to presume that YOUR
opinion of what would be most efficient for THEM supersedes THEIR
opinion of same. Particularly when you do not have direct knowledge of
their particular situation and context, while they do. Nor is that
context frankly any of your beeswax; you should just trust them to ask
where something might be documented/ask where something might be BETTER
documented/ask for research tips when that's what they feel will be most
efficient for them and to ask specific questions when THAT's what they
feel will be most efficient for them.

Second-guessing them instead only serves to insult them, work at
cross-purposes to them, and delay their getting what they ACTUALLY ASKED
FOR.

We are not children. We do not need you to play the parent and give us
"what we need, not what we want". We are adults that can make our own
choices without any more nannying from arrogant SOBs like yourself. We
decide what we need AND what we want, not you. If we want to eat food
high in saturated fat, we will do so and we will not be interested in
your opinion on the matter. If we want to ride without a helmet, we will
do so and we will not be interested in your opinion on the matter. If we
want to load up on sweets and skimp on fruits and vegetables, we will do
so and we will not be interested in your opinion on the matter. If we
want to only do the most basic, reasonably quick documentation searching
before asking a question on Usenet, we will do so and we will not be
interested in your opinion on the matter. If ever one of us actually IS
interested in your opinion on any such matter, rest assured that he will
actually ASK you your opinion on the matter. Until and unless someone
has done so, consider that it might be seen as unwelcome, ESPECIALLY if
it is condescendingly offered IN LIEU OF, instead of AS WELL AS, the
actual thing that was requested!

I think that is all that needs to be said on the matter. I don't think
there is any point in discussing the matter further; you have made your
opinion plain and I have done likewise. Killfile me if you must, and
move on.

> More importantly though, I will point out once again: you do not have
> the privilege of dictating how your question is answered.

I am doing no such thing. I am reminding you of how you should behave in
polite society, since you are repeatedly and flagrantly failing to
behave politely within my notice and your doing so is proving to be a
bother to me. I am putting you in your place, because you seem to have
gotten it into your head that you're in charge around here in some way,
and that your personal opinions somehow constitute "community standards"
that somehow even override the basic standards of how adults should
behave towards one another in polite company. I am reminding you that if
you prefer not to give a straight answer to a question, you can always
leave that "follow up" button alone instead of telling the world your
personal opinion of its asker. I am alerting you that your behavior is
offensive and rude. And last but not least I am reminding you that we
are adults that don't care to be condescended to, not school-children in
need of parenting and guidance whether we like it or not. We are grown
up. We will ask for what we think we need, and what we think we need is
more important to us than what YOU think we need.

Thank you for considering the above, if consider it you ever actually do.

> The best you can do is simply ignore answers you don't like.

No. The best YOU can do is simply ignore QUESTIONS you don't like.
(Responding to them to attack whoever posted them is certainly something
you can do, for shame, but it is certainly not anywhere near the BEST
thing you can do, nor even a good thing for you to do at all.)

> Throwing a tantrum

I didn't do anything of the sort and I resent this blatant and
intentional mischaracterization.

>> Please just answer the question forthrightly, with perhaps a pointer
>> to any docs you found relevant that the question's asker apparently
>> missed or found unclear, and leave it at that, or else ignore the
>> question entirely.
>
> This, coming from the person who refused to look at the pointer that was
> in fact provided to him.

I'm speaking generally now, in case you hadn't noticed. When someone
asks a question, in the future, please just answer the question

forthrightly, with perhaps a pointer to any docs you found relevant that
the question's asker apparently missed or found unclear, and leave it at
that, or else ignore the question entirely.

>>> "Fully intend to" is silly. There's no excuse for not doing it that

>>> way from the outset.
>>
>> There you go again. I now suspect that you're intentionally twisting
>> and misinterpreting things purely for the purpose of insulting me.
>
> Your suspicion is unfounded.

You have made it increasingly clear, if not by frank admission, that my
suspicion is indeed true. You are posting to this thread solely to
insult me in public, and your statement otherwise above is a bald-faced
lie, one of several I have now caught you in.

You are not acting in good faith at all. This discussion is pointless to
continue, since you are determined not to be reasonable or to act in
good faith, and since you have now been blatantly dishonest on several
occasions as well as ignoring repeated polite requests to keep your
negative opinions of me to yourself and to comport yourself in a
civilized and polite manner when out and about in public.

You are pointless. Your posts are pointless. I have no further interest
in anything that you have to say. Please do not say anything to, about,
or in a public reply to me again. Thank you.

> If I misunderstood you, it's only because
> most programmers aren't in the habit of describing code that's been
> written as not actually doing something until it's been executed in the
> target environment.

The code in question HAS NOT been written, as I have stated repeatedly.
Stop lying by implication! It is EXTREMELY rude to be dishonest like that.

I have been developing a JList-derived class. I have not yet written a
single line of code that actually instantiates one and calls upon it to
do anything, on any thread. All of the code that I HAVE written will run
on the EDT unless the caller to the JList-derivative's methods calls one
on another thread.

When I DO write code that instantiates one and uses it, I plan NOT to
make that error.

Clear enough now, asshole?

Oh, why do I bother. You have no intention of replying in good faith;
probably you never did. You don't read what I write, and when you do,
you intentionally misunderstand it and then attack it. All you're really
doing, of course, is attacking your own apparent stupidity in
misunderstanding it, and in public at that, but what do you care? This
is all just an entertaining game to you. You're a troll, as near as I
can figure from your steadfast refusal to actually be in the least bit
reasonable or to recognize the difference between universal FACTS and
YOUR PERSONAL OPINIONS.

> But by your way of speaking, that code doesn't do anything! It hasn't
> been run yet, and I only "fully intend" for it to iterate the variable
> and execute the empty block with the values of 0 through 4.

This is, of course, a complete mischaracterization, and what I have
heard called a "straw man argument". I never said anything remotely like
that. I said that code that HADN'T BEEN WRITTEN YET didn't do anything
YET. A completely different claim.

It IS true that my JList derivative will misbehave if its methods are
called from off the EDT. So what -- JList itself also will.

>> Stop this nonsense at once. I am no longer interested in anything you
>> have to say, and I have finally gotten answers to most of my
>> questions, so please do not post to this thread again.
>
> Again, I will do as I please. Having you tell me NOT to do things just
> makes me want to them all the more.

Your threats and admissions of childish motives do not help your case
any. Your explicit, repeated, and vehement refusals to abide by EITHER
a) the rules of polite society OR b) this newsgroup's charter* make you
look even worse. Stop now, before you dig yourself into an even deeper hole!

* where it says that the topic of this newsgroup is Java programming,
and zerg's purported evilness is therefore implied to be OFF-topic

zerg

unread,
Aug 14, 2008, 5:49:09 AM8/14/08
to

It isn't. However, nobody in this thread has done such a thing (at
least, not yet). You have claimed otherwise, but your claim was a lie.

Peter Duniho

unread,
Aug 14, 2008, 6:06:07 AM8/14/08
to
On Thu, 14 Aug 2008 02:05:31 -0700, zerg <ze...@zerg.org> wrote:

> I told you to stop posting attack posts, and to killfile me if you had
> to in order to achieve that objective.

That you did. Since I haven't posted any attack posts, there's nothing
for me to stop. But even if I had, so what? I hope you didn't expect
that I would take orders from you. That would be a mistake.

> I'll repeat it again:
>
> Stop posting attack posts. If you cannot resist replying to everything I
> write with nasty nonsense, killfile me.

I'll do as I please.

> Where I looked, the JComponent method listing, I saw two overloads, not
> five. I acted reasonably based on what I saw in the obvious place to
> look. That I did not additionally look in some non-obvious place is of
> no importance; furthermore it is no skin off your nose.

It's of no important, unless of course you want to know how to use the
Java API documentation.

>>> Nothing. I didn't look at the description of the paint method, because
>>> I was not interested in the implementation details of the JComponent
>>> class, only its interface to subclasses and its public interface.
>> Well, I hope you've learned from that mistake.
>
> I did not make any mistake. I do not make mistakes. Stop lying about me
> in public.

I haven't lied at all. As for you not making mistakes, okay...fine. Tell
me what word you'd prefer I use to describe your mistakes, and I'll use
that word instead.

> The whole purpose of API documentation and object-oriented design, of
> course, is to make users of a class not need to concern themselves with
> the implementation details. Therefore, not concerning myself with the
> implementation details when using object-oriented classes is not a
> mistake; it is expected and normal behavior.

You have a flawed understanding of OOP.

>> The next time you are reading the documentation for a method and it
>> says that it basically just calls some other method, now you know that
>> you need to go read the documentation for that other method.
>
> I don't share your opinion on what I do or do not need to do. I don't
> care what your opinion is regarding what I do or do not need to do. I
> doubt anyone else reading this newsgroup cares what your opinion is,
> either. Why are you wasting time and bandwidth by broadcasting your
> irrelevant, small-minded, and boring opinion to the world?

My purpose is in sharing information that you and others may find useful
in soliciting answers to questions. Your purpose, on the other hand,
seems to be solely aimed at shirking responsibility for your own mistakes
(sorry...you haven't told me the new word yet), and for making ridiculous
accusations of hostility.

I know why I'm posting. Why are you? What are you contributing?

> [...]


>> Otherwise, you still don't know what the first method actually does.
>
> That means that the docs are poorly written.

I never said the docs were perfect. But they are good enough that a
person with good strategies for using them can in fact find the
information they need. About 2/3rds of everything I know about Java, I
learned just by reading the API docs.

> I do not need to do anything. The documentation writers need to better
> document that method.

Sadly for you, you don't have control over the documentation writers any
more than you have control over me. If you want to improve the situation,
the only person whom you can control is yourself.

Whether the doc writes need to do a better job is irrelevant here. The
only thing that is guaranteed to improve your experience is a change in
your own approach to reading the documentation.

> [...]


>> That may be true in the copy of the documentation you looked at, but
>>> it is not in mine. Don't assume that everyone is reading the same copy!
>>
>> I'm reading the same documentation you are.
>
> Obviously not, as I have just demonstrated that the thing you said was
> in your javadoc for one of those methods was not in the description text
> for either of them in my copy of the javadoc.

It most certainly is. You just didn't (and still haven't) bothered to
look at the part where it is.

>> It's just that I took the time to actually follow the links
>
> Are you now saying that you LIED when you said that the javadocs for one
> of those two methods stated to use repaint instead? Because that IS what
> you said.

Actually, speaking of lying, it's not. Here's the actual quote:

Of those three methods, two are obviously not what you want,


and of one of those two, the documentation related to it even
_explicitly_ says to not call it directly and instead use the
repaint() method for what you're trying to do.

Nowhere in there did I say that the documentation for the method itself
says that. I wrote "the documentation related to it". That is, the part
that a diligent reader of the documentation would have seen.

>> From the description of JComponent.paint()
>
> That is not either of the two methods whose javadocs are at issue.
>
> So, you DID lie.

No, but you are doing so now.

> I am definitely going to plonk you now, just as soon as this thread has
> died down.

Why not just do it now?

> [...random mischaracterization about what I did or did not say
> deleted...]


>
> I have now demonstrated that you are being intentionally hostile and
> dishonest. Clearly your only purpose here is to try to provoke a
> full-blown flamewar. Were I a lesser man, you might well have actually
> succeeded.

Ego trip much?

> [...]


>>> You pointed to an AWT method for some reason.
>> I pointed you to the AWT method BECAUSE IT IS THE ANSWER TO YOUR
>> QUESTION.
>
> And I am not disputing that. I am disputing your implicit claim that I
> should have looked there instead of at the JComponent repaint method
> cluster.

No. My implicit claim is that you should have looked there when I
directed you there. You didn't even do that.

The fact is, because of the way the docs are structured, there is in fact
a standard methodology that would have led you to that part of the
documentation. And I have been _explicit_ about how you can adopt that
methodlogy to serve your needs better in the future.

But you couldn't even be bothered to go there when you were spoon-fed the
link. That's the "implicit claim" I made, if any.

> [...]


>>> I was looking for a Swing method, specifically a JComponent method.
>>> There were two repaint methods in JComponent. Why would I go looking
>>> somewhere else entirely for a third?
>>
>> Because, as I already pointed out, Java is an OOP language
>
> Ridiculous. Where does it stop? All the way up at Object?

Yes. All the way up to Object. You can't ignore the inherited members of
the base classes.

> I was asking a question about a Swing JComponent. I think stopping at
> JComponent and not looking into the IMPLEMENTATION DETAIL that
> JComponent is implemented using AWT base classes is perfectly goddamn
> reasonable.

It's not an implementation detail at all. It is a fundamental part of the
JComponent class. The implementation details are the code that's executed
when the method is called. But the presence of the method is part of the
design (or the "interface", if you like).

> Oh, you disagree? So what? Go ahead and disagree. You have every right
> to. It's your opinion. Where you cross the line into being a rude little
> prig and a waste of time is when you decide, on the basis of A MERE
> PERSONAL OPINION OF YOURS, to start badmouthing other people in public,
> to post time-wasting useless unhelpful responses to questions, and to
> generally act like a jerk in public!

Hmmm...can you find even a single regular here in this newsgroup that
believes the above paragraph describes me better than it does you?

> [...]


>> you cannot understand a given class without also understanding its base
>> classes.
>
> Once again, you make the mistake of thinking that I'm trying to
> understand JComponent in its entirety, implementation details and all,
> rather than trying to simply use a JList in a particular instance.

Whatever. I don't know how many times I have to point out that I've never
used words like "thoroughly" or "entirety" with respect that what sort of
understanding is needed. You can repeat yourself as much as you like, it
won't change what I actually wrote.

> [...]


>> and yet you refused to bother looking at the answer
>
> Wrong. I have already used the answer in my code.

Sure, after a few more posts that referred you back to the one with the
answer that you ignored the first time.

> What I refused to do is submit to your claims regarding my competence,
> and what I should or should not have done. And that's because I STILL DO
> NOT AGREE WITH YOU ABOUT THOSE THINGS. Got it?
>
>> because you made your own premature, uninformed and ill-advised
>> judgment that my answer wasn't what you were looking for.
>
> I did nothing of the sort, you liar.

Your immediate reply to my answer was:

See above, though I take it you agree that
repaint(getBounds()) is the best method.

It looks like the API is missing a no-arg "repaint()"

No one who had bothered to look at the link I provided would have written
such a thing.

So, not only did you do something of the sort, you did something exactly
as I stated.

> [...]


>> but, at worst, whatever I write is only a waste of your time if you
>> read it. No one's forcing you to.
>
> Unfortunately, I have to read all of your posts to this thread now
> because there is a statistically high probability that any such post
> contains some baseless slur or another against my good character that
> will require public correction.

What do you care? You're not even posting using a real name, and even if
you were, nothing I write has any possibility of actual harm to you.

> [...]


>> Until you understand your mistake, you will keep making it.
>
> I.
> DID.
> NOT.
> MAKE.
> ANY.
> MISTAKE!

Right, we're back to that. So again, what word would you prefer I use?

> [...]


>>> since it's in a completely different section of the API documentation.
>>> Perhaps if it had been listed right next to the other two repaint
>>> methods?
>> Define "right next to".
>
> As in, the two were physically adjacent in the web page. The third was
> on another page entirely. There may be a link to there on the JComponent
> page, but if so, it's buried in one of those very dense blocks of
> nothing but links far away from where the two methods were that I did
> find.

Those "very dense blocks of nothing but links" are very important. You
cannot be successful using the Java API documentation unless you are
willing to look at them.

> I don't have time to minutely examine every single link in a page the
> size of that one when looking for a specific bit of information and when
> it has (if perhaps falsely) implied that I've already found all that
> page has to offer on the subject.

You must be using one of those ancient web browsers that doesn't have a
search feature. On either of the two browsers _I_ use regularly, I just
tell the browser to find the text "repaint" for me, and it easily finds
all five overloads. On the same page.

> [...]


>>> But no, it can't possibly be the case that the docs are GENUINELY not
>>> 100% perfect in structure and content, can it?
>> No one's saying that the docs are perfect.
>
> You are implying it when you blame ME for something that actually
> resulted from the docs' limitations.

I'm not "blaming" you for anything. I'm offering advice to you that would
help you in the future, if only you would settle down long enough to
listen to it.

>> But in this particular case, they did not fail to provide the
>> information you wanted.
>
> In a certain technical sense. They did fail to put it where it would be
> likely to be seen, though, which means they only did half of the job.
>
> Yes, I know, you disagree.

Yes, I do.

> I also don't care. Shut up about it, and shut up about me. There is
> nothing further to say on this topic, so please don't waste everyone's
> time.

You know...I would've just let it go if you hadn't gone off and commanded
me to "shut up about it". But I so enjoy flauting your authority (such as
it is :) ).

> [...]


>> Every class has a description, then a summary of all its members,
>> followed by simple lists of each member of each base class, and
>> finally the elaborated descriptions of each member.
>
> And it is there, where I was supposed to, that I did indeed look. I
> failed at nothing. I carried out the extent of my responsibility. And I
> don't care that your opinion is otherwise, so don't bother saying so yet
> again.

Oh, it's no bother. My opinion is otherwise, and it's no trouble at all
for me to mention it.

The fact is, this isn't about your "responsibility" at all. The fact that
you view it that way is really, really twisted. This is about getting
answers, using the documentation and technology as best you can. There's
no one who's keeping track of whether you "met all of your assigned tasks"
or "fulfilled all of your responsibilities".

How you get any programming done at all, when you just stop at whatever
point it is that you decide you've done everything you're _supposed_ to,
as opposed to everything you could, I have no idea. It doesn't sound very
productive to me.

>> All you had to do was scroll down to the base classes for JComponent,
>> looking at the members listed there, and you would have found the other
>> repaint() methods.
>
> But why would I do that,

Because that's where the information is. When you lose your car keys on
the street, do you also always only look under the streetlamp because
that's where the light is?

> [...]


>> If you are inexperienced and did not understand that, that's not a
>> problem at all as long as you're willing to own up to that. But when
>> you repeatedly assert that you've made no mistake, that the method
>> you're looking for doesn't exist, even when someone has specifically
>> pointed you to it, then we come to...
>
> I have not done anything of the sort, you liar. I have only asserted
> that I made no mistake (true) and that the method that I was looking for
> wasn't listed in the obvious place, right beside the others. I never,
> EVER claimed that it didn't even exist.

Sure you did, and you managed to do it right after I had pointed you to
evidence to the contrary. See the quote above from your previous post,
where you wrote (and I'm paraphrasing here) "it doesn't exist".

> [...]


>>> Oh, no, if anyone has a question that the docs do sorta-obscurely
>>> answer, then that person is automatically a complete idiot and the
>>> only reasonable response to their question is to announce this, loudly
>>> and publicly! :-P
>>
>> I have announced nothing of the sort.
>
> You have implied it.

I disagree.

Pete

Peter Duniho

unread,
Aug 14, 2008, 6:11:52 AM8/14/08
to
On Thu, 14 Aug 2008 02:49:09 -0700, zerg <ze...@zerg.org> wrote:

>> [...]


>> What's your definition of "clueless"? Because my definition, it
>> includes the kinds of people that _quote_ the answer they are looking
>> for, while at the same time claiming that what they are looking for
>> does not exist.
>>
>> Maybe your definition is different.
>
> It isn't. However, nobody in this thread has done such a thing (at
> least, not yet). You have claimed otherwise, but your claim was a lie.

Let me refresh your memory:

On Wed, 13 Aug 2008 22:27:01 -0700, zerg <ze...@zerg.org> wrote:

> [...]


>>> Provisionally, I'm using "repaint(getBounds())"; why there isn't a
>>> no-args repaint-the-whole-thing method will probably remain an
>>> enduring mystery long after my app has matured, had its heyday, and
>>> become obsolete...
>>
>> The only mystery is how you missed it:
>> http://java.sun.com/javase/6/docs/api/java/awt/Component.html#repaint()
>

> See above, though I take it you agree that repaint(getBounds()) is the
> best method.
>

> It looks like the API is missing a no-arg "repaint()" [...]

What part about "It looks like the API is missing a no-arg repaint()" is
not a claim that what you were looking for doesn't exist?

Patricia Shanahan

unread,
Aug 14, 2008, 10:27:14 AM8/14/08
to
zerg wrote:
> Peter Duniho wrote:
>> On Wed, 13 Aug 2008 22:12:33 -0700, zerg <ze...@zerg.org> wrote:
>>
>>> Suspect what you will, but I did indeed examine the JComponent API
>>> docs, and there were three public methods associated with repainting
>>> -- not counting that repaint() had two overloads.
>>
>> I count FIVE overloads of repaint().
>
> In the classes themselves, yes. In the JComponent method listing in the
> API documentation, there are two. It is the JComponent method listing in
> the API documentation that I was consulting, for obvious reasons.
...

The list headed "Method Summary", despite its heading, is *not* a
complete list of methods, only of the ones the class directly declares.
If the class inherits any methods there is a list, immediately after the
"Method Summary", of the methods inherited from each superclass.

Those lists are just as important for finding the method you need as the
"Method Summary".

In the case of JComponent and repaint, there are two overloadings in the
"Method Summary". There are also three appearances in the list of
"Methods inherited from class java.awt.Component", documenting the fact
that JComponent inherits three additional overloadings.

Patricia

Knute Johnson

unread,
Aug 14, 2008, 11:29:18 AM8/14/08
to

Call repaint() and come back with a better attitude when it doesn't work.

zerg

unread,
Aug 14, 2008, 4:22:37 PM8/14/08
to
Daniele Futtorovic wrote:
> PS: I AM NOT INSULTING YOU!

No; indeed, this was a very good response, which explains in detail what
the differences among these are and how, when, and for what, exactly,
they should be used -- which the docs by themselves were a bit skimpy
on. This information would be good for adding to the Java Tutorial in
the section on JComponent.

This is the sort of response I would have preferred from those others.
Thank you.

Arne Vajhøj

unread,
Aug 14, 2008, 8:48:24 PM8/14/08
to
zerg wrote:
> Knute Johnson wrote:
>> zerg wrote:
>>> What's the best way to force a JComponent to repaint itself? I've got
>>> three candidates:
>>>
>>> revalidate()
>>> repaint()
>>> update()
>>
>> Read Roedy's post and then tell us what you really want to do and what
>> you've been doing before that.

>
> I begin to suspect that there's some sort of unwritten code here that
> forbids the giving of a straight answer.

No.

But maybe you will find cljh better than cljp.

Arne

zerg

unread,
Aug 15, 2008, 12:55:18 AM8/15/08
to
bugbear wrote:
> I strongly suspect the resident experts are actually
> trying to prevent short term wrong design decisions,
> inferred from your question, turning into long term,
> had to fix pain.

Unfortunately, they are inferring wrong.

zerg

unread,
Aug 15, 2008, 1:07:20 AM8/15/08
to
Peter Duniho wrote:
> On Thu, 14 Aug 2008 00:53:20 -0700, zerg <ze...@zerg.org> wrote:
>> Peter Duniho wrote:
>>> I count FIVE overloads of repaint().
>>
>> In the classes themselves, yes. In the JComponent method listing in
>> the API documentation, there are two. It is the JComponent method
>> listing in the API documentation that I was consulting, for obvious
>> reasons.
>
> And what reasons are those?

Because that's what leaps out at you when browsing the documentation
looking for promising method names in the alphabetized list?

>> Rest of pedantic and rather insulting paragraph deleted. Have I not
>> made it abundantly clear by now that your condescending and insulting
>> attitude is unwelcome and you should not reply to me with such an
>> attitude again? Either reply neutrally, or reply in a friendly manner,
>> or do not reply at all.
>
> Again with the imperatives. I will reply to you in any manner I see fit.

Again with the threats! You will comport yourself in a polite manner or
you will be sorry.

>> What the hell is your problem? Why are you being hostile toward me,
>> when I had never done anything malicious to you, or even inadvertently
>> slighted you?
>
> Um, let's see. There's one person in this thread who is cursing,
> engaging in name-calling, and just generally getting their panties in a
> twist for no good reason.

Yes, there is, and his name is Peter Duniho. Cursing: "RTFM", at least
twice. Name-calling: calling me incompetent, stupid, and several other
things, three or four in total at least. And counting. Panties in a
twist: you are exhibiting signs of being insistent upon having the last
word in an argument. Does that count?

> The idea that you've not done anything to deserve ire from someone else
> is

quite natural.

> It's funny. Looking back at various threads, you seem to accuse people
> of hostile and other unsavory behavior to you quite often.

There have been approximately three threads where I have done so, and
every time somebody had been treating me with some level or another of
verbal disrespect, without provocation, beforehand.

> And yet, the
> people whom you accuse don't seem to be accused of that behavior by
> anyone else.

That's not what a Google Groups search says. There have been a couple of
other people that have called people on being rude here over the years.
The sets of people that they've called rude have a fair degree of
overlap, too, particularly tending to include Andreas, Andrew, Arne, and
Lew. Interestingly, your own name has not turned up. Maybe you're fairly
new, too, and picked a poor choice of role models.

> You will probably think this is just coincidence, or perhaps some form
> of persecution. But the fact is, you seem to have trouble getting along
> with others

I don't have any trouble getting along with others so long as those
others treat me with a certain minimum level of respect. In other words,
I don't have any trouble getting along with others unless they have
trouble getting along with me first.

> and seem to think that this newsgroup owes you much more
> than it really does.

No, I think it owes me only the most basic and obvious things, in
particular that I be treated as a person, not a number, and with a
reasonable level of respect, similar to how you'd treat someone you
talked to on the phone or met face-to-face. In other words, my
expectations have been entirely reasonable, being limited as they have
been to basically "people will remember the manners their mothers taught
them and comport themselves appropriately for public dialogue with
strangers around".

Unfortunately, some people seem to think that politeness rules go out
the window as soon as they hook up a modem to their telephone line. But
it is those people that are in the wrong, not I.

zerg

unread,
Aug 15, 2008, 1:08:12 AM8/15/08
to
Knute Johnson wrote:
> Call repaint() and come back with a better attitude when it doesn't work.

My attitude is fine. It is Peter's attitude that leaves much to be desired.

Are you now contradicting Peter and claiming that repaint() WON'T work?
Because he indicated that it WILL.

zerg

unread,
Aug 15, 2008, 1:09:42 AM8/15/08
to
Peter Duniho wrote:
> On Thu, 14 Aug 2008 02:49:09 -0700, zerg <ze...@zerg.org> wrote:
>> It isn't. However, nobody in this thread has done such a thing (at
>> least, not yet). You have claimed otherwise, but your claim was a lie.
>
>> It looks like the API is missing a no-arg "repaint()" [...]
>
> What part about "It looks like the API is missing a no-arg repaint()" is
> not a claim that what you were looking for doesn't exist?

It's a claim that what I was looking for doesn't exist IN THAT
ALPHABETIC LIST OF JCOMPONENT METHODS.

It turns out to exist, SOMEWHERE ELSE.

There is no contradiction here.

Peter Duniho

unread,
Aug 15, 2008, 1:28:42 AM8/15/08
to
On Thu, 14 Aug 2008 22:07:20 -0700, zerg <ze...@zerg.org> wrote:

>>> In the classes themselves, yes. In the JComponent method listing in
>>> the API documentation, there are two. It is the JComponent method
>>> listing in the API documentation that I was consulting, for obvious
>>> reasons.
>> And what reasons are those?
>
> Because that's what leaps out at you when browsing the documentation
> looking for promising method names in the alphabetized list?

I see. So you _do_ look for your car keys under the streetlight, even
though you dropped them elsewhere.

Here's a hint: people who want to be successful do more than just look
where it's easy.

>> Again with the imperatives. I will reply to you in any manner I see
>> fit.
>
> Again with the threats! You will comport yourself in a polite manner or
> you will be sorry.

I have been nothing but polite here. I made no threats. I simply pointed
out that you have no control over me and I will do as I please, not
necessarily as you please. The sooner you get over the fact that you
don't have any authority whatsoever over me, the sooner you'll be able to
stop making absurd commands.

I find it downright hilarious that you complain that I'm "threatening"
you, and then proceed to tell me I "will be sorry". It's unfortunate
you're not capable of appreciating the irony. It really is quite funny.

>>> What the hell is your problem? Why are you being hostile toward me,
>>> when I had never done anything malicious to you, or even inadvertently
>>> slighted you?
>> Um, let's see. There's one person in this thread who is cursing,
>> engaging in name-calling, and just generally getting their panties in a
>> twist for no good reason.
>
> Yes, there is, and his name is Peter Duniho. Cursing: "RTFM",at least
> twice.

"RTFM" is a colloquialism, not a curse.

> Name-calling: calling me incompetent, stupid, and several other things,
> three or four in total at least.

I definitely never called you stupid _or_ incompetent (even if I did think
it). If it would make you feel better, I'm happy to start. But only on
your request.

> And counting. Panties in a twist: you are exhibiting signs of being
> insistent upon having the last word in an argument. Does that count?

No, it doesn't. But I'll point out that when it comes to "being insistent
upon having the last word", it takes two. I only demonstrate such an
insistence inasmuch as you do as well, giving me new opportunities to add
words.

> [...]


>> It's funny. Looking back at various threads, you seem to accuse people
>> of hostile and other unsavory behavior to you quite often.
>
> There have been approximately three threads where I have done so, and
> every time somebody had been treating me with some level or another of
> verbal disrespect, without provocation, beforehand.

No doubt you are under the mistaken impression that's what's happened here
too.

> [...]


> I don't have any trouble getting along with others so long as those
> others treat me with a certain minimum level of respect. In other words,
> I don't have any trouble getting along with others unless they have
> trouble getting along with me first.

This thread is clear proof to the contrary.

>> and seem to think that this newsgroup owes you much more than it really
>> does.
>
> No, I think it owes me only the most basic and obvious things,

Bzzt. It owes you _nothing_. Not even the most basic and obvious things.

> in particular that I be treated as a person, not a number, and with a
> reasonable level of respect, similar to how you'd treat someone you
> talked to on the phone or met face-to-face.

I can't speak for the others, but I assure you that I have in every way
treated you exactly as I would when speaking, on the phone or
face-to-face. I wonder if you would be so paranoid as you've been here,
under those circumstances.

Pete

zerg

unread,
Aug 15, 2008, 2:07:56 AM8/15/08
to
Peter Duniho wrote:
> On Thu, 14 Aug 2008 02:05:31 -0700, zerg <ze...@zerg.org> wrote:
>> I told you to stop posting attack posts, and to killfile me if you had
>> to in order to achieve that objective.
>
> That you did. Since I haven't posted any attack posts

A lie.

In quoting your post, I have omitted without comment several chunks of
insulting but otherwise content-free nonsense and several threats,
starting with one such threat that had occurred right after the above
quoted material. It was my determination that none of that crap was
worthy of being dignified with a specific response. Suffice it to say
that pretty much none of your judgments of me carry any weight
whatsoever -- what insults of yours weren't mere opinion (and
narrow-minded, ill-informed opinion at that) were instead outright
factually wrong.

>> Stop posting attack posts. If you cannot resist replying to everything
>> I write with nasty nonsense, killfile me.

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> Where I looked, the JComponent method listing, I saw two overloads,
>> not five. I acted reasonably based on what I saw in the obvious place
>> to look. That I did not additionally look in some non-obvious place is
>> of no importance; furthermore it is no skin off your nose.

(Peter had nothing meaningful and worthwhile to say in response to this.
In particular, he did not address the "no skin off your nose" part of my
previous post, where I established quite clearly that his getting angry
at me for my not looking someplace non-obvious for something was
completely unreasonable on his part. Who died and made Peter the Grand
Arbiter of Where People Must Look, Or Else?)

>> I did not make any mistake. I do not make mistakes. Stop lying about
>> me in public.

(Peter had nothing meaningful and worthwhile to say in response to this.
As expected, he merely denied having lied, despite having been caught in
numerous lies recently.)

>> The whole purpose of API documentation and object-oriented design, of
>> course, is to make users of a class not need to concern themselves
>> with the implementation details. Therefore, not concerning myself with
>> the implementation details when using object-oriented classes is not a
>> mistake; it is expected and normal behavior.

(Peter had nothing meaningful and worthwhile to say in response to this,
just more opinionated and insulting nastiness.)

>> I don't share your opinion on what I do or do not need to do. I don't
>> care what your opinion is regarding what I do or do not need to do. I
>> doubt anyone else reading this newsgroup cares what your opinion is,
>> either. Why are you wasting time and bandwidth by broadcasting your
>> irrelevant, small-minded, and boring opinion to the world?
>
> My purpose is in sharing information that you and others may find useful

I have surely made it abundantly clear, by now, that I don't find any of
your insulting blather useful. You've said about ten thousand words in
this thread already, of which a grant total of perhaps a dozen were
actually useful, nearly all of them in the one phrase
"http://java.sun.com/javase/6/docs/api/java/awt/Component.html#repaint() ".

(Peter followed up the above bogus "statement of purpose" with another
full paragraph of insulting twaddle that has been largely ignored by me.)

> I know why I'm posting. Why are you? What are you contributing?

At this time, I'm posting to get answers to questions, and now also to
try to dispose of these baseless mischaracterizations of me that you
keep posting in public.

>> That means that the docs are poorly written.
>
> I never said the docs were perfect.

Well, now that that's settled, will you PLEASE stop getting on my case
for not finding them 100% perfectly clear on some topics?

>> I do not need to do anything. The documentation writers need to better
>> document that method.

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> Obviously not, as I have just demonstrated that the thing you said was
>> in your javadoc for one of those methods was not in the description
>> text for either of them in my copy of the javadoc.
>
> It most certainly is.

No, it is not.

I POSTED THE ENTIRE DESCRIPTION TEXT FOR BOTH METHODS HERE, OMITTING
NOTHING, AND THE THING THAT YOU CLAIMED WAS IN ONE OF THEM WAS IN
NEITHER. YOU EVEN ADMITTED THAT IT WAS, INSTEAD, IN THE DOCS FOR A THIRD
METHOD.

STOP YOUR DAMN LYING!

Why do you even bother? Anyone with even as rudimentary a text editor as
Notepad can prove you a liar in this instance:
* Select the description text for the first method, paste in an empty
Notepad window.
* Select the description text for the second method, paste in the same
Notepad window below the first pasting.
* Search in that Notepad window for "repaint".
* Observe that the search finds no results.
* Conclude that you lied when you said that one of those methods'
descriptions said to use repaint instead.

And as for your subsequent weasel-words: You are still a liar and a
charlatan. Get thee hence!

>>> From the description of JComponent.paint()
>>
>> That is not either of the two methods whose javadocs are at issue.
>>
>> So, you DID lie.

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> I am definitely going to plonk you now, just as soon as this thread
>> has died down.
>
> Why not just do it now?

Because if I do it now, you will post another bunch of posts like these,
badmouthing me in public, and people will read them but not see any
reply from me explaining that you are wrong. And then they may think
that you're right, and thus think poorly of me.

Every time you post something hostile about me I will post something
that says that your post is untrue.

I will continue to do so until you get the message and stop trying to
defame me.

I certainly will not allow you to get your wish, that of having the last
word, not now that you have made this personal!

(Immediately after "Why not just do it now?", Peter misquoted me
intentionally and mischaracterized what I wrote, falsely accusing me of
being dishonest.)

>> I have now demonstrated that you are being intentionally hostile and
>> dishonest. Clearly your only purpose here is to try to provoke a
>> full-blown flamewar. Were I a lesser man, you might well have actually
>> succeeded.

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> And I am not disputing that. I am disputing your implicit claim that I
>> should have looked there instead of at the JComponent repaint method
>> cluster.
>
> No. My implicit claim is that you should have looked there when I
> directed you there. You didn't even do that.

(Peter had nothing else meaningful and worthwhile to say here.)

Yes, I did. I continued to argue with you about OTHER THINGS THAN WHICH
REPAINT METHOD TO USE. Namely, on the various irrelevant side topics
like "is Zerg stupid?" that you raised, and where obviously I have a
vested interest in debunking your numerous myths, fables, and outright lies.

>> Ridiculous. Where does it stop? All the way up at Object?

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> I was asking a question about a Swing JComponent. I think stopping at
>> JComponent and not looking into the IMPLEMENTATION DETAIL that
>> JComponent is implemented using AWT base classes is perfectly goddamn
>> reasonable.
>
> It's not an implementation detail at all.

Certainly it is, or it wouldn't be in another package entirely. They
could have written a Swing component class from scratch, since it
doesn't use a native peer. That they didn't do so and inherited from a
pre-existing class for code reuse instead is, of course, an
implementation detail.

>> Oh, you disagree? So what? Go ahead and disagree. You have every right
>> to. It's your opinion. Where you cross the line into being a rude
>> little prig and a waste of time is when you decide, on the basis of A
>> MERE PERSONAL OPINION OF YOURS, to start badmouthing other people in
>> public, to post time-wasting useless unhelpful responses to questions,
>> and to generally act like a jerk in public!

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> Once again, you make the mistake of thinking that I'm trying to
>> understand JComponent in its entirety, implementation details and all,
>> rather than trying to simply use a JList in a particular instance.
>
> Whatever.

Then our argument here is done. You can go ahead and stop posting to
this thread now.

> I ... I've ... with respect ... what sort of understanding is needed.

(Peter had nothing else meaningful and worthwhile to say here.)

What sort of understanding is needed IN YOUR OPINION is not germane to
any of this newsgroup's on-charter traffic. If you have an opinion as to
what sort of understanding is needed, fine -- apply it when you yourself
seek to understand some chunk of the API. Do not, however, arrogantly
presume that all and sundry MUST hold the same opinions themselves, "or
else". You don't get to decide that.

How would you like it if I told YOU that YOUR opinion of how much
understanding was needed was no good, and you were a terrible person for
not having the exact same opinion as I did about the matter?

Perhaps I think that "the classics" are an essential part of a
well-rounded education. Does that give me a good reason to publicly
badmouth you in the event that it somehow comes to my attention that you
are not knowledgeable about "the classics"?

Perhaps I think that it is unwise to attempt to fly an aircraft over a
large body of water without a minimum of 15 months' piloting experience.
Does that give me a good reason to publicly badmouth you in the event
that it somehow comes to my attention that you flew a plane over a large
body of water less than three months after beginning training?

I didn't think so.

>> Wrong. I have already used the answer in my code.
>
> Sure

Well, now that that's settled, can we stop arguing?

>>> because you made your own premature, uninformed and ill-advised
>>> judgment that my answer wasn't what you were looking for.
>>
>> I did nothing of the sort, you liar.
>
> Your immediate reply to my answer was:
>
> See above, though I take it you agree that
> repaint(getBounds()) is the best method.
>
> It looks like the API is missing a no-arg "repaint()"
>
> No one who had bothered to look at the link I provided would have
> written such a thing.

Obviously, someone would -- I did.

Perhaps I should have been more clear before, though. By "the API" I
meant "the methods in the JComponent alphabetic method listing".

>> Unfortunately, I have to read all of your posts to this thread now
>> because there is a statistically high probability that any such post
>> contains some baseless slur or another against my good character that
>> will require public correction.
>
> What do you care?

That's none of your damn business. It's my right to care or not as I see
fit, and you have no place questioning me on such matters!

Next time you try to peek through any keyhole of mine, you can expect to
get a poke in the eye.

>> I.
>> DID.
>> NOT.
>> MAKE.
>> ANY.
>> MISTAKE!
>
> Right, we're back to that. So again, what word would you prefer I use?

How about "didn't live up to Peter's inflated and excessive expectations"?

Not that your personal expectations of other peoples' performance at
activities like research have any legitimate bearing on anything in this
news group.

(Especially when those expectations are apparently rather stringent and
cannot be met at all by anyone that doesn't have oodles of free time to
devote solely to pleasing Peter the freaking Great over here.)

>> As in, the two were physically adjacent in the web page. The third was
>> on another page entirely. There may be a link to there on the
>> JComponent page, but if so, it's buried in one of those very dense
>> blocks of nothing but links far away from where the two methods were
>> that I did find.
>
> Those "very dense blocks of nothing but links" are very important.

(Peter had nothing else meaningful and worthwhile to say here.)

I didn't claim otherwise. I did note that they are not very readable or
very amenable to skimming or extracting, in a time-efficient manner, any
kind of useful information.

>> I don't have time to minutely examine every single link in a page the
>> size of that one when looking for a specific bit of information and
>> when it has (if perhaps falsely) implied that I've already found all
>> that page has to offer on the subject.

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> You are implying it when you blame ME for something that actually
>> resulted from the docs' limitations.
>
> I'm not "blaming" you for anything.

A lie. If you were not blaming me for something, you would not feel
justified in punishing me for something, and if you were not (trying to
be) punishing me for something, you would have behaved respectfully
towards me, since I'd not done you any ill.

You were snappy and nasty to me from the get-go. People only do that if
they feel hostility of some sort -- anger, resentment, whatever --
toward someone. Which they only do if they perceive that someone to have
wronged them in some way. That is to say, they blame them for something.

However, I am not to blame. I am, in fact, never to blame for anything
whatsoever, because I always do due diligence to avoid any action that
reasonably foreseeably will cause harm, and I never act out of outright
malice. And, of course, I cannot reasonably be blamed for anything given
those two things -- anything bad resulting from an action of mine
despite my due diligence is either an accident, with no blame at all to
be assigned, or the result of SOMEONE ELSE'S CHOICE.

In the case of this spot of unpleasantness and all these off-topic
posts, they stem not from my asking a question here in good faith, but
from your responding in bad faith. In other words, the blame here falls
squarely on YOU.

> I'm offering advice to you that would help you in the future, if
> only you would settle down long enough to listen to it.

That tired old line again. If you were genuinely interested solely in
magnanimously providing advice, then you would simply furnish the advice
in a neutral or friendly manner, remaining civil and polite at all times.

No, you are not trying to dispense advice, you have an ax to grind and
you will not let go of it.

Admitting that is the first step, Peter.

Go on. I dare ya.

>>> But in this particular case, they did not fail to provide the
>>> information you wanted.
>>
>> In a certain technical sense. They did fail to put it where it would
>> be likely to be seen, though, which means they only did half of the job.

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> I also don't care. Shut up about it, and shut up about me. There is
>> nothing further to say on this topic, so please don't waste everyone's
>> time.
>
> You know...I would've just let it go if you hadn't gone off and
> commanded me to "shut up about it". But I so enjoy flauting your
> authority (such as it is :) ).

So much for "I'm only posting here to provide genuinely helpful
advice!"; you're only posting here to be a prick now, and you've just
admitted it.

Congratulations. Now EVERYONE here can feel free to killfile you, secure
in the knowledge that they won't be missing much by doing so.

>> And it is there, where I was supposed to, that I did indeed look. I
>> failed at nothing. I carried out the extent of my responsibility. And
>> I don't care that your opinion is otherwise, so don't bother saying so
>> yet again.

(Peter had nothing truly meaningful and worthwhile to say in response to
this, but I'll respond to a few isolated sentences of drivel anyway.)

> The fact is, this isn't about your "responsibility" at all.

You are behaving in a hostile manner toward me. You are badmouthing me
in public. You claim to be doing so because I didn't research something
in as much depth as you would have preferred I did.

You have also arrogantly claimed that your opinion on how much depth of
research is desirable is in some way actually universal, or even a
factual truth.

In other words, in your opinion, it is not merely the case that my
research efforts didn't meet your personal standards, but, because in
your opinion your opinions acquire the force of law here, in your
opinion I actually had a DUTY to research to at least that depth and
failed to fulfill it. You have even used almost that exact phrase,
"failed to fulfill it", a couple of times in berating me in this thread!

You have, therefore, implicitly been claiming that I had a
responsibility that I did not live up to.

Heck, just look at the fact that you are (still!) seeking to punish me
for not living up to your exacting standards! Someone who has merely
disagreed with you on a matter of opinion surely would not be deserving
of punishment. Only someone who had actually failed to live up to an
obligation, a responsibility of some sort, would be so deserving. So
your very actions prove that you THINK that I DID shirk some responsibility.

Even though I did not actually do so.

> This is about getting answers, using the documentation and technology
> as best you can.

No, this is about whether or not zerg is a bad person. The simple fact
that 80+% of the (non-quoted) word count in your posts is devoted to
trying to support your claim that I am one is sufficient evidence that
that is what this is really all about.

> There's no one who's keeping track of whether you "met all of your
> assigned tasks" or "fulfilled all of your responsibilities".

Sure there is -- there's you, and anyone failing to do so (according to
YOUR OPINION of what their responsibilities should be) gets flamed to a
crispy brown!

Don't think people haven't noticed.

>>> All you had to do was scroll down to the base classes for JComponent,
>>> looking at the members listed there, and you would have found the
>>> other repaint() methods.
>>
>> But why would I do that,
>
> Because that's where the information is.

(Peter had nothing else meaningful and worthwhile to say here.)

That's ludicrous. That's like suggesting that if I am looking for
information on Blargle mating rituals, I should go to
http://some.obscure.site/noone/ever/heard/of/blargles/mating.html
because "that's where the information is" despite a hypothetical Google
search having come up empty. How, exactly, was I expected to come by
that URL? Come on. You have those very exactingly high standards. Surely
you live up to them yourself before publicly berating everyone who you
discover fails to do so. Tell us all how you do it so that we can
actually start to live up to your high and exalted standards! (Just so
long as there's a procedure we can follow that WON'T add six hours or
more to the time spent researching any given situation.)

Oh, but that wouldn't do, now, would it? Because you enjoy berating
people for not living up to your exacting standards, don't you? If
everyone started to actually live up to them, you'd lose your primary
source of entertainment and ego gratification, and that simply would not do!

Get the hell out of this newsgroup; comp.lang.java.programmer is for
adults to discuss Java programming in a civil and polite fashion, not
for you to manipulate and troll for your own personal gratification. As
long as your purposes here are in conflict with the newsgroup's charter,
you should post elsewhere instead and avoid getting in the way of us
adults trying to discuss Java programming.

>> I have not done anything of the sort, you liar. I have only asserted
>> that I made no mistake (true) and that the method that I was looking
>> for wasn't listed in the obvious place, right beside the others. I
>> never, EVER claimed that it didn't even exist.

(Peter had nothing meaningful and worthwhile to say in response to this.)

>>>> Oh, no, if anyone has a question that the docs do sorta-obscurely
>>>> answer, then that person is automatically a complete idiot and the
>>>> only reasonable response to their question is to announce this,
>>>> loudly and publicly! :-P
>>>
>>> I have announced nothing of the sort.
>>
>> You have implied it.

(Peter had nothing meaningful and worthwhile to say in response to this.)

It is your very actions in this thread that imply it. Don't you see?

zerg

unread,
Aug 15, 2008, 2:18:47 AM8/15/08
to
Peter Duniho wrote:
> On Thu, 14 Aug 2008 22:07:20 -0700, zerg <ze...@zerg.org> wrote:
>> Because that's what leaps out at you when browsing the documentation
>> looking for promising method names in the alphabetized list?

(Peter had nothing meaningful and worthwhile to say in response to this.
Rude and condescending, yes, and with erroneous speculation about me to
boot, but meaningful and worthwhile? Not on your life.)

>> Again with the threats! You will comport yourself in a polite manner
>> or you will be sorry.
>
> I have been nothing but polite here.

(What a liar!)

> I made no threats.

(What a liar! And he proceeds to make another nasty threat right after
this!)

>>> Um, let's see. There's one person in this thread who is cursing,
>>> engaging in name-calling, and just generally getting their panties in
>>> a twist for no good reason.
>>
>> Yes, there is, and his name is Peter Duniho. Cursing: "RTFM",at least
>> twice.

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> Name-calling: calling me incompetent, stupid, and several other

>> things, three or four in total at least.
>
> I definitely never called you stupid _or_ incompetent (even if I did
> think it).

You are definitely a liar.

>> And counting. Panties in a twist: you are exhibiting signs of being
>> insistent upon having the last word in an argument. Does that count?

(Peter had nothing meaningful and worthwhile to say in response to this.)

>>> It's funny. Looking back at various threads, you seem to accuse

>>> people of hostile and other unsavory behavior to you quite often.
>>
>> There have been approximately three threads where I have done so, and
>> every time somebody had been treating me with some level or another of
>> verbal disrespect, without provocation, beforehand.

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> I don't have any trouble getting along with others so long as those

>> others treat me with a certain minimum level of respect. In other
>> words, I don't have any trouble getting along with others unless they
>> have trouble getting along with me first.

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> No, I think it owes me only the most basic and obvious things,

(Peter had nothing meaningful and worthwhile to say in response to this.)

>> in particular that I be treated as a person, not a number, and with a

>> reasonable level of respect, similar to how you'd treat someone you
>> talked to on the phone or met face-to-face.
>
> I can't speak for the others, but I assure you that I have in every way
> treated you exactly as I would when speaking, on the phone or
> face-to-face.

(Peter had nothing else meaningful and worthwhile to say here, but he
did take the next traditional step and add false accusations of ill
mental health to his repertoire of insulting lies.)

Then you must get an awful lot of punches in the nose. Heck, you
probably even have a reconstructive surgeon on speed dial. "Dammit,
someone popped me one again and it's crooked again. How soon can you
schedule me so I can have it straightened out again?"

That's what happens, after all, if you routinely go about looking down
your nose at anyone who doesn't live up to your standards of absolute
perfection, and moreover insinuate in front of other people that such
people are idiots, incompetent fools, or whatever.

You need to look deeply into your own motives here, methinks. You
obviously aren't here to help people. Why do you find some people not
worth your while to spend five minutes helping, but nonetheless worth
your while to spend five hours publicly denouncing and berating?

That is not the time prioritization of a helper; it is the time
prioritization of a fault-finder whose primary mission is to find fault
in others and loudly broadcast every occurrence that you find (according
to your own ridiculously stringent standards, too, so you'll probably
have lots of nasty and small-minded opinions to say about anyone, no
matter how saintly).

Ben Phillips

unread,
Aug 15, 2008, 2:22:36 AM8/15/08
to
zerg wrote:
> Peter Duniho wrote:
>> You know...I would've just let it go. But I so enjoy flauting your
>> authority (such as it is :) ).
>
> Congratulations. Now EVERYONE here can feel free to killfile you, secure
> in the knowledge that they won't be missing much by doing so.

FWIW, I've just killfiled the both of you. Merry fucking Christmas!

Peter Duniho

unread,
Aug 15, 2008, 2:30:43 AM8/15/08
to
On Thu, 14 Aug 2008 23:18:47 -0700, zerg <ze...@zerg.org> wrote:

> [...]


>> I can't speak for the others, but I assure you that I have in every
>> way treated you exactly as I would when speaking, on the phone or
>> face-to-face.
>

> Then you must get an awful lot of punches in the nose.

Not at all. Very few people have a persecution complex.

> [...]


> You need to look deeply into your own motives here, methinks. You
> obviously aren't here to help people. Why do you find some people not
> worth your while to spend five minutes helping, but nonetheless worth
> your while to spend five hours publicly denouncing and berating?

I have not once denounced or berated you. That's all in your head.

Maybe when you're older, you'll realize just how wrong you've been.

Pete

Peter Duniho

unread,
Aug 15, 2008, 2:31:47 AM8/15/08
to
On Thu, 14 Aug 2008 23:07:56 -0700, zerg <ze...@zerg.org> wrote:

> [zerg had nothing truthful to say at all]

Sorry you wasted all that time writing for nothing.

zerg

unread,
Aug 15, 2008, 5:45:13 PM8/15/08
to
Peter Duniho wrote:

(Peter had nothing truthful to say at all; merely wasted a post calling
me a liar when he's the liar here.)

zerg

unread,
Aug 15, 2008, 5:47:37 PM8/15/08
to
Peter Duniho wrote:
> On Thu, 14 Aug 2008 23:18:47 -0700, zerg <ze...@zerg.org> wrote:
>> Then you must get an awful lot of punches in the nose.

(Peter had nothing meaningful or worthwhile to say in response to this.
All he did was idly speculate about my mental health in a vacuum of any
actual information or expertise on the topic.)

>> You need to look deeply into your own motives here, methinks. You
>> obviously aren't here to help people. Why do you find some people not
>> worth your while to spend five minutes helping, but nonetheless worth
>> your while to spend five hours publicly denouncing and berating?

(Peter had nothing meaningful or worthwhile to say in response to this,
either, just vehement and empty denials of having done what anyone can
see he did just by browsing this thread.)

Joshua Cranmer

unread,
Aug 15, 2008, 6:12:35 PM8/15/08
to
zerg wrote:
> Peter Duniho wrote:
>> On Thu, 14 Aug 2008 00:53:20 -0700, zerg <ze...@zerg.org> wrote:
>>> Peter Duniho wrote:
>>>> I count FIVE overloads of repaint().
>>>
>>> In the classes themselves, yes. In the JComponent method listing in
>>> the API documentation, there are two. It is the JComponent method
>>> listing in the API documentation that I was consulting, for obvious
>>> reasons.
>>
>> And what reasons are those?
>
> Because that's what leaps out at you when browsing the documentation
> looking for promising method names in the alphabetized list?

You're looking for a method to get a JComponent to repaint. I don't know
about you, but I consider repainting to be a core widget action. That
means I will look first at the root of the widget hierarchy, which is
obviously Component (JComponent is only the root of the lightweight
hierarchy). Ergo, JComponent is only a red herring in the method search.

Also, if you examine the basic structure of the AWT and Swing methods,
you will find LARGE numbers of overloads, and especially methods that do
fair amount of method wrapping (i.e. A is really a wrapper around B with
a bit more magic involved). So although JComponent sets stuff up so that
creating new widgets is simple, it does so by only modifying the roots
of these wraps.

Looking for methods only in a leaf class is not going to be complete.

> Yes, there is, and his name is Peter Duniho. Cursing: "RTFM", at least
> twice.

Actually, some people interpret "RTFM" as "Read The Fine Manual", i.e.,
look at the nuances deep in the text.

> The sets of people that they've called rude have a fair degree of
> overlap, too, particularly tending to include Andreas, Andrew, Arne, and
> Lew.

Account for the fact that Andrew and Lew are in what I would consider
the top tier of posters (the other two being Roedy and Patricia); the
others are in the second tier. For comparison, I would place myself no
higher than the third tier of posters, and even that is a stretch for
me. Those who respond the most tend to be those who get the most mud
flung at them. Posters of... controversy probably get more, though
(think XahLee, Twisted, or JSH).

--
Beware of bugs in the above code; I have only proved it correct, not
tried it. -- Donald E. Knuth

Martien Verbruggen

unread,
Aug 15, 2008, 8:23:49 PM8/15/08
to
On Thu, 14 Aug 2008 01:30:57 -0400,
zerg <ze...@zerg.org> wrote:
> Knute Johnson wrote:
>> If you had looked at the docs you would have seen that the no-arg
>> repaint() belongs to Component.
>
> I DID look at the docs -- the JList and JComponent docs. Why would I be
> poking around in the AWT docs? I'm obviously using Swing.

In the Java documentation, just after the alphabetical list of methods
under the heading 'Method Summary', there are lists of all methods that
are inherited from each of the superclasses. the no-argument repaint()
is in one of those lists, and the link takes you straight to the
description in the superclass where it's defined. You don't need to
search any other class documentation but the class you're directly
interested in, but you should check all the possible lists of methods in
that documentation.

Regards,
Martien
--
|
Martien Verbruggen | It's not what we don't know that hurts us,
| it's what we know for certain that just ain't
| so. -- Mark Twain

Mark Space

unread,
Aug 15, 2008, 9:21:15 PM8/15/08
to
Martien Verbruggen wrote:

> In the Java documentation, just after the alphabetical list of methods
> under the heading 'Method Summary', there are lists of all methods that
> are inherited from each of the superclasses. the no-argument repaint()

Those lists of inherited methods are a pain to read, imo. They're
mostly useful for searching (Control-F in most browsers).

I think it's easier to click on the link at the top to the superclass,
and read the nicely formatted method summary. Then keep clicking and
reading until you hit Object.

Arne Vajhøj

unread,
Aug 15, 2008, 9:36:15 PM8/15/08
to

It is usually not a problem to read everything at the first
page.

But Swing classes do tend to be a bit heavy in methods.

Arne

Arne Vajhøj

unread,
Aug 15, 2008, 10:59:50 PM8/15/08
to
zerg wrote:
> Peter Duniho wrote:
>> On Wed, 13 Aug 2008 21:35:50 -0700, zerg <ze...@zerg.org> wrote:
>>> I begin to suspect that there's some sort of unwritten code here that
>>> forbids the giving of a straight answer.
>>
>> Forgive us if we suspect that there's some sort of unwritten code
>> among questioners that forbids the inspection of the relevant
>> documentation before asking a question.

>
> Suspect what you will, but I did indeed examine the JComponent API docs,
> and there were three public methods associated with repainting -- not
> counting that repaint() had two overloads.
>
> I may have been somewhat biased by what I was specifically searching
> for, namely a no-argument method for "repaint the whole component". It
> looks like maybe that is simply lacking.

It is in the documentation.

You just need to read it.

Arne

Arne Vajhøj

unread,
Aug 15, 2008, 11:02:59 PM8/15/08
to
zerg wrote:
> Knute Johnson wrote:
>> You can get as mad as you want but people are really trying to help you.
>
> That's not what bothers me. It's that they are often remarkably
> unsuccessful at SUCCEEDING that bothers me, and in fairly silly ways.
> For example, if you know, for sure, the exact answer to the question,
> and you don't include it in your response, well, that's just plain silly!

In this group people have some expectations about the posters
of questions.

Those begging to learn Java or learn programming should find
groups better suited for that.

>> And having been around here for a while, when someone asks "What
>> method do I use to repaint() a JComponent," we get sort of suspicious
>> because repainting is rarely the solution to anything.
>
> That's for the programmer to decide, not you. I know my code far better
> than you do, and I don't see why you need to know jack about it in order
> to provide a simple, straight answer for a simple question. If I had a
> design-related conundrum I would ask a design-related question. When I
> have a "how to do X very specific thing with Y" type of question, and
> ask it, I want an equally specific answer, not some kind of inquest
> based on some suspicion, based on very little evidence, that there's
> some sort of problem with my design. I ask for what I want, but you
> reply not with what I want but with your own mixture of suspicions, idle
> questions, and sometimes outright insults.

That is a typical mistake among new programmers.

You really don't want to learn how to do something stupid - you
want to know how to do the right thing.

That sometimes require taking a step back and focus on what
instead of how.

This is a forum where you get the best advice whether you want
it or not.

The smart people learn - other don't.

> JComponent has no no-arg repaint() method save, according to another
> post to this thread, one it inherits from java.awt.Component. Of course,
> since I was not looking at the AWT docs, only JList and JComponent, and
> expecting anything generally useful for Swing components to be in the
> latter in particular, I didn't know about it earlier.

It is on the JComponent document page as well.

There is this thing called a vertical scroll bar out
when you browse the docs. Use it ! Or be really advanced
and use the search function !!

>> 1) Are you updating your ListModel on the EDT?
>>
>> 2) Are you doing long running tasks on the EDT (in a listener for
>> example)?
>>
>> 3) Are you adding or removing components to your JList?
>
> Perhaps I didn't make it clear enough in my previous post to this
> thread. I have not finished the component and begun testing it yet. When
> I do, I will of course observe normal Swing thread-safety procedures and
> avoid doing long tasks on the EDT.

I suggest you do it right the first time.

Arne

Arne Vajhøj

unread,
Aug 15, 2008, 11:07:00 PM8/15/08
to
zerg wrote:
> Peter Duniho wrote:
>> there is in fact a "no parameter" overload of the method (see below).
>
> In an AWT class, apparently, where I of course didn't go looking for it
> since I'm working with Swing.

It is is on the doc page for the class you are using also - all you
need to do is scroll.

> If you'd prefer not to answer a question, for some particular reason,
> you could always not post any kind of response to it at all. One thing I
> will certainly not tolerate, however, is any sort of response that
> implies, in front of a worldwide audience no less, that you think I'm in
> some way incompetent. Stop doing that!

Do you think anyone will stop doing anything just because you say so ????

> In a place where I didn't look, and where I had no reason to look, since

> it's in a completely different section of the API documentation.

Same page.

Arne

Arne Vajhøj

unread,
Aug 15, 2008, 11:11:45 PM8/15/08
to
zerg wrote:
> Peter Duniho wrote:
>> On Wed, 13 Aug 2008 22:30:57 -0700, zerg <ze...@zerg.org> wrote:
>>> I DID look at the docs -- the JList and JComponent docs. Why would I
>>> be poking around in the AWT docs? I'm obviously using Swing.
>>
>> Because Swing is built on top of AWT.
>>
>> JComponent inherits Component. You can't understand JComponent
>> without understanding Component.
>
> The same mistake you've made several times before. You assume that I
> seek to thoroughly understand JComponent. I don't. I seek to use it in a
> particular way at this particular time.

Maybe you should start with some basic OOP.

The methods of a parent class is just as relevant for using a class
as the methods implemented in the sub class.

> There is no end-of-term exam. There is only whether or not, at the end
> of the day, they have gotten their work done and have not fallen behind
> any schedule that might apply. To whatever extent you waste their time
> with irrelevancies and to-you-fascinating side diversions such as
> learning the implementation and internals of a Java class in depth, you
> are doing them a disservice.

If you want to decide what type and form of advice you get, then I
will recommend hiring a consultant - for 200-300 USD/hr such a person
will provide you with exactly what you want.

If you want it for free, then you will need to live with what
can get.

Arne

Arne Vajhøj

unread,
Aug 15, 2008, 11:14:22 PM8/15/08
to
zerg wrote:
> Knute Johnson wrote:
>> Call repaint() and come back with a better attitude when it doesn't work.
>
> My attitude is fine.

Have you tried counting opinions on that ?

Arne

Arne Vajhøj

unread,
Aug 15, 2008, 11:18:03 PM8/15/08
to

Is it too much to assume that people read all the relevant
sections of a page ?

Arne

zerg

unread,
Aug 16, 2008, 3:00:41 AM8/16/08
to
Arne Vajhøj wrote:
> zerg wrote:
>> Peter Duniho wrote:
>>> there is in fact a "no parameter" overload of the method (see below).
>>
>> In an AWT class, apparently, where I of course didn't go looking for
>> it since I'm working with Swing.
>
> It is is on the doc page for the class you are using also - all you
> need to do is scroll.

A link was. Buried in a dense mass of text that isn't very amenable to
skimming, no less.

>> If you'd prefer not to answer a question, for some particular reason,
>> you could always not post any kind of response to it at all. One thing
>> I will certainly not tolerate, however, is any sort of response that
>> implies, in front of a worldwide audience no less, that you think I'm
>> in some way incompetent. Stop doing that!
>

> Do you think [snipped]

Threats are wasted here, where there is no possible danger of physical
retribution.

Don't bother threatening me again.

>> In a place where I didn't look, and where I had no reason to look,
>> since it's in a completely different section of the API documentation.
>
> Same page.

"Same page" is a meaningless measure of locality when a single "page"
may be the equivalent of thirty or forty printed-book pages.

zerg

unread,
Aug 16, 2008, 3:04:47 AM8/16/08
to
Arne Vajhøj wrote:
> zerg wrote:
>> Peter Duniho wrote:
>>> On Wed, 13 Aug 2008 22:30:57 -0700, zerg <ze...@zerg.org> wrote:
>>>> I DID look at the docs -- the JList and JComponent docs. Why would I
>>>> be poking around in the AWT docs? I'm obviously using Swing.
>>>
>>> Because Swing is built on top of AWT.
>>>
>>> JComponent inherits Component. You can't understand JComponent
>>> without understanding Component.
>>
>> The same mistake you've made several times before. You assume that I
>> seek to thoroughly understand JComponent. I don't. I seek to use it in
>> a particular way at this particular time.
>
> Maybe you should start with some basic OOP.

Maybe you should learn some manners!

> The methods of a parent class is just as relevant for using a class
> as the methods implemented in the sub class.

That depends on whether the parent class was subclassed as a part of the
data type (X is a special sort of Y) or was subclassed solely for code
reuse. C++ has the concept of private inheritance; for better or worse,
Java does not. Delegation should probably be used when the purpose is
code reuse, but that doesn't mean that this advice is always followed.

>> To whatever extent you waste
>> their time with irrelevancies and to-you-fascinating side diversions
>> such as learning the implementation and internals of a Java class in
>> depth, you are doing them a disservice.
>
> If you want to decide what type and form of advice you get, then I
> will recommend hiring a consultant - for 200-300 USD/hr such a person
> will provide you with exactly what you want.

What? All I'm asking is that people here be polite and treat me with the
basic level of respect normally accorded all human beings interacting in
a civilized society. Are you suggesting that being polite is such an
onerous burden that politeness should cost actual money? My God!

zerg

unread,
Aug 16, 2008, 3:13:49 AM8/16/08
to
Martien Verbruggen wrote:
> On Thu, 14 Aug 2008 01:30:57 -0400,
> zerg <ze...@zerg.org> wrote:
>> Knute Johnson wrote:
>>> If you had looked at the docs you would have seen that the no-arg
>>> repaint() belongs to Component.
>> I DID look at the docs -- the JList and JComponent docs. Why would I be
>> poking around in the AWT docs? I'm obviously using Swing.
>
> In the Java documentation, just after the alphabetical list of methods
> under the heading 'Method Summary', there are lists of all methods that
> are inherited from each of the superclasses.

Yes, albeit hard to read ones; I've noticed.

Did you have some sort of a point here?

> but you should check all the possible lists of methods in
> that documentation.

Even when there are five or six of them like that one, densely packed,
with dozens of entries each, and virtually unreadable? A tidy grid with
down-then-across alphabetic order would have been a better design
choice, though still uncomfortably reminiscent of such old-fashioned
things as looking up names in a phone book.

A more interactive documentation reader might be nice. I've played
around a bit with Squeak and it has method categories and color-coding
features in its class browser widget. Something like this in the
Javadocs for more complex classes and APIs would be great, though it
would also be too much work to expect anything to happen anytime soon.

I'd suggest an added doc tag, @category name, to put with the @param,
@throws, etc. tags for methods and even with the @author for classes,
with any string allowed as the name; methods would be grouped and color
coded by category in the generated docs, and likewise classes in the
package overviews, with colors assigned somehow to the distinct category
names in the same class or package.

Links on class and package pages for each category name occurring
therein could provide a category-focused view, with a link back to the
main view. The category-focused view could include showing methods of
interest to subclassers (generally protected, but public ones to
override too), methods related to a particular use scenario (e.g.
user-induced repainting, custom painting, setting preferred dimensions,
and so forth as categories for JComponent), and the like.

Perhaps allowing a method to be in multiple categories would be useful.
The same public method might be a likely target for subclasses to
override usefully as well as having a particular category of use. Better
might be to have an additional tag, @overridetarget or similarly, and an
additional view that specifically focuses on protected and
@overridetarget methods and protected fields.

zerg

unread,
Aug 16, 2008, 3:15:24 AM8/16/08
to

It is not too much to assume that people read all of the
OBVIOUSLY-RELEVANT sections of a page, no, particularly the main
alphabetic method listing.

zerg

unread,
Aug 16, 2008, 3:15:50 AM8/16/08
to

Nope. Not interested. This is a technical discussion newsgroup, not a
popularity contest, anyway.

zerg

unread,
Aug 16, 2008, 3:36:45 AM8/16/08
to
Arne Vajhøj wrote:
> zerg wrote:
>> Knute Johnson wrote:
>>> You can get as mad as you want but people are really trying to help you.
>>
>> That's not what bothers me. It's that they are often remarkably
>> unsuccessful at SUCCEEDING that bothers me, and in fairly silly ways.
>> For example, if you know, for sure, the exact answer to the question,
>> and you don't include it in your response, well, that's just plain silly!
>
> In this group people have some expectations about the posters
> of questions.

Define "people". What is it with you and Peter and pretending that your
personal opinions or expectations somehow have extra weight or authority
than, say, mine do? You are just people, same as I am, and last I
checked this is an unmoderated newsgroup. You're my equals, not my
superiors. You are certainly not imbued with any sort of official
authority to dictate some sort of "standard" set of opinions or
expectations on behalf of every single other person who may read or
write here.

So you'll excuse me if I take any pronouncements along the theme of
"people expect X", "this group thinks you should Y", "we insist that you
research stuff to depth Z", and so forth with grains of salt roughly the
size of Lake Okeechobee, mmmkay?

Really, those sorts of things should have the pronoun "I" in place of
vague (or speaking-for-everyone arrogance) references to some mysterious
"people" or "we" or suchlike.

YOU have some expectations about the posters of questions. But you
really should not presume to speak on behalf of everyone else in the
universe!

> Those begging to learn Java or learn programming should find
> groups better suited for that.

And I am not one of these. I just had one narrowly specific question
about an aspect of Swing about which I found the docs to be less than
100% clear.

If you don't like that, well, tough. Ignore my question and move on.
This is an unmoderated group; things will sometimes appear in it that
you don't like, and it behooves you to be more tolerant of such events.
You have the ability to mark something read without actually reading it.
You have resort to a killfile. Not everything one dislikes needs to be
responded to with criticism. (Though outright rudeness and bad-faith
behavior like I've seen from you and Peter sure does.)

>> you reply not with what I ask for but with your own

>> mixture of suspicions, idle questions, and sometimes outright insults.
>
> That is a typical mistake among new programmers.

No, it is a typical mistake among you and Peter and perhaps a few other
people here.

> You really don't want to

I will decide what I do or don't want to do, you arrogant little prick!

I have already explained exactly why I need to explicitly repaint my
subclassed list control sometimes. I should not have had to; I am not
under any obligation to justify my design choices to arrogant little
twerps on Usenet. However you have made it quite clear that you are not
only going to be hostile to me, but publicly deride me as a Bad
Programmer(tm), if I do NOT justify my design choices to you.

In short, you are actually EXTORTING such justifications from me by
actually THREATENING TO HARM MY REPUTATION if I DON'T do so.

Do you realize how ridiculous, arrogant, and nasty such behavior is???

Now read my lips: The people posting questions here are, by and large,
adults, capable of making their own decisions and choices, and if they
want outside advice on any particular such, they will ask for it; they
are not small children and you are not parents that need to give them
guidance lest they step on broken glass, not wear their helmets, or
what-have-you.

Let go of that paternalistic (and consequently, to adults rude,
condescending, and arrogant!) attitude and approach this as an
interaction among equals, adult human beings that are all equal before
the law (and all equal in an unmoderated newsgroup). Take questions at
face value unless there is clear evidence that someone is not acting in
good faith. Assume we're clueful and not Java newbies (even if new to
the newsgroup!) unless PROVEN otherwise, and then just ignore those
people after telling them to go to cljh.

Following the above recommendations will result in a MUCH more congenial
atmosphere around here, and as a side benefit will push the ACTUAL
clueless newbs over to the appropriate newsgroup in a more polite way
than by making them feel unwelcome here by being actively rude and
hostile to them (and, worse, to everyone you merely SUSPECT, often
wrongly, of being one).

> This is a forum where you get the best advice whether you want
> it or not.

You arrogant little jerk.

And you have paid the price for your arrogance, and that is BEING WRONG
IN PUBLIC. I have explained why I need to explicitly call repaint for my
list subclass. I have explained that there is nothing whatsoever wrong
in my design. (Indeed, it is now tested and working, and thank you very
much for the vote of frigging confidence! It also has a nice and clean
interface, surprisingly enough to you I'm sure.) You thought I really
needed to do something different from explicitly calling repaint, but
you thought wrong! And now you get to have your face rubbed in that, in
public, all because you were so arrogant, rude, and condescending.

If you'd assumed that I knew what I was doing until proven otherwise
(which, in my case, would be "never"), then perhaps you wouldn't have
stepped in it.

But it's too late now.

>> JComponent has no no-arg repaint() method save, according to another
>> post to this thread, one it inherits from java.awt.Component. Of
>> course, since I was not looking at the AWT docs, only JList and
>> JComponent, and expecting anything generally useful for Swing
>> components to be in the latter in particular, I didn't know about it
>> earlier.
>
> It is on the JComponent document page as well.

It is LINKED FROM the JComponent document page, though not anywhere
where it's very easy to find by a quick visual check for
relevant-looking method descriptions.

(Arne has some nasty rude and condescending suggestions after this
point, but I have trimmed them without dignifying them with a detailed
response. It is likely that Arne would have found my suggestions to be
anatomically impossible anyway.)

>> Perhaps I didn't make it clear enough in my previous post to this
>> thread. I have not finished the component and begun testing it yet.
>> When I do, I will of course observe normal Swing thread-safety
>> procedures and avoid doing long tasks on the EDT.
>
> I suggest you do it right the first time.

And of course I did; the main methods for my test cases look like this:

public static void main (String[] args) {
SwingUtilities.invokeAndWait(new Runnable() {
...
});
}

Not a blamed thing except for the creation of a Runnable and the calling
of a SwingUtilities method occurring on any OTHER thread than the EDT.

I DO know what I am doing, whether you choose to believe that or not.

zerg

unread,
Aug 16, 2008, 3:58:04 AM8/16/08
to
Joshua Cranmer wrote:
> You're looking for a method to get a JComponent to repaint. I don't know
> about you, but I consider repainting to be a core widget action. That
> means I will look first at the root of the widget hierarchy, which is
> obviously Component (JComponent is only the root of the lightweight
> hierarchy).

You are approaching the search with a detailed knowledge of Swing
internals and design decisions. You are not approaching it from the
perspective of a user of Swing that is more concerned with doing useful
stuff with it than with knowing its in-depth implementation, history,
and so forth.

In particular, I don't think of a "widget hierarchy" and a separate
"lightweight hierarchy"; I think of AWT and Swing, and consider Swing's
borrowing of various AWT things to be code reuse and avoiding
reinventing the wheel, to the extent that I consider it at all.
JComponent is the root of the Swing component hierarchy, as far as I am
concerned (and as far as the docs and tutorial are concerned, too), and
though it inherits Component, this seems to be more of a historical
artifact than anything else.

It is unfortunate that it relies on Component to provide some of its
interface instead of overriding those methods (even with just a call to
super!) still relevant to Swing JComponents so that they appear in the
main listing of JComponent methods.

> Also, if you examine the basic structure of the AWT and Swing methods,
> you will find LARGE numbers of overloads, and especially methods that do
> fair amount of method wrapping (i.e. A is really a wrapper around B with
> a bit more magic involved).

This sort of wrapping was exactly at issue here, as I was unsure which
level of wrapping around the repaint was best just to make an unresized
component with possibly-resized internal bits repaint itself in its
entirety.

This fact, that I was not unsure how to repaint at all but how BEST to
repaint, with what level of wrapping, in a particular situation, seems
to keep getting lost in all of this needless and inexplicable acrimony.

> Looking for methods only in a leaf class is not going to be complete.

JComponent looks a lot more like a root than it does like a leaf to the
typical user of JComponent.

The problem isn't even that your perspective differs from mine. It is
that you (collective "you", referring to nearly everyone in this thread
except for me and Daniele) arrogantly presume that anyone whose
perspective differs from yours is defective, ignorant, stupid, or some
such epithet, and take paints to make your opinion clear to the general
public!

Daniele's response to my original post is the model to follow in your
future interactions with people who ask a question here. (Roedy's, a
thinly-disguised promotion of his own web site with little other
content, certainly is not -- I didn't find the stuff at his website
especially useful, anyway, except to indicate that revalidate wasn't the
way to go, and besides, I prefer direct answers to breadcrumb trails
when I have questions.)

>> Yes, there is, and his name is Peter Duniho. Cursing: "RTFM", at least
>> twice.
>
> Actually, some people interpret "RTFM" as "Read The Fine Manual", i.e.,
> look at the nuances deep in the text.

I'm not interested in your attempts to make excuses for someone who can,
if he so chooses, speak for himself, and who seems to have no excuse for
his uncouth and unpleasant public behavior anyway.

>> The sets of people that they've called rude have a fair degree of
>> overlap, too, particularly tending to include Andreas, Andrew, Arne,
>> and Lew.

And, checking the list again, you.

> Account for the fact that Andrew and Lew are in what I would consider
> the top tier of posters

Excuse me? What the heck feudal society did you log in from? Where I
live, we hold various truths to be self-evident, among them that all men
are created equal and have certain inalienable rights. (Unfortunately,
"polite and respectful treatment by others, absent prior hostile
interpersonal history" does not seem to be enumerated among the OFFICIAL
list of such rights.)

As far as I am concerned, there are no "tiers" here, with some king or
emperor or other such poobah at the top, dukes and earls on the next
level down, and lowly peasants at the bottom, with rudeness toward those
below expected and encouraged and brownnosing toward those above
demanded with a great big Or Else.

There are just people here, and some of them are more knowledgeable
about some things than others, others are more knowledgeable about some
other things than yet others, and yes, some are quite evidently more
polite, politic, circumspect, and civil than others too.

If there is to be any basis here for a class division, it should really
be the latter distinction, with the sometimes-gratuitously-rude people
considered to be low-class and subject to lesser consideration and
poorer treatment by the polite majority.

But even that is too classist for my tastes.

> For comparison, I would place myself no higher than the third tier

EVER so humble, arencha?

> Those who respond the most tend to be those who get the most mud
> flung at them.

Some people seem to get more than others. Patricia and Daniele seem
knowledgeable and astute, and seem to post a lot of answers, but I don't
notice much mud being flung at either. It looks like perhaps there is
something else that affects the amount of mud thrown at the major
question-answering personages here, besides their level of knowledge or
posting frequency. I wonder what that could be?

(It is certainly interesting that there is a correlation between female
sex and more decorum and civility. I'm guessing this is a socialized,
rather than a genetic, difference in behavior. Women are still raised to
be polite in public. Men ... aren't so much, these days, it seems. Men
also seem to be much more socialized towards a notion of behavior that
seems to be describable with "be deferent to those above you, arrogant
and uncharitable to those below you, and always know your place and put
others in theirs" and generally pecking-order oriented instead of "treat
everyone with equal respect".)

> Posters of... controversy probably get more, though
> (think XahLee, Twisted, or JSH).

Dissension should be tolerated in a free and just society. One would
hope that an unmoderated newsgroup would be a paragon of such, lacking
as it does anyone with actual authority backed by actual ability to
forcibly impose his will upon others. But oh, no ...

zerg

unread,
Aug 16, 2008, 3:58:32 AM8/16/08
to
Arne Vajhøj wrote:
> It is in the documentation.
>
> You just need to read it.

I DID read it.

Well, not the WHOLE THING...

Joshua Cranmer

unread,
Aug 16, 2008, 10:39:49 AM8/16/08
to
zerg wrote:
> Joshua Cranmer wrote:
>> You're looking for a method to get a JComponent to repaint. I don't
>> know about you, but I consider repainting to be a core widget action.
>> That means I will look first at the root of the widget hierarchy,
>> which is obviously Component (JComponent is only the root of the
>> lightweight hierarchy).
>
> You are approaching the search with a detailed knowledge of Swing
> internals and design decisions. You are not approaching it from the
> perspective of a user of Swing that is more concerned with doing useful
> stuff with it than with knowing its in-depth implementation, history,
> and so forth.

This is not "detailed knowledge." The Javadocs themselves present this
simple nugget of information: "The Swing classes are built on top of the
AWT architecture."

> It is unfortunate that it relies on Component to provide some of its
> interface instead of overriding those methods (even with just a call to
> super!) still relevant to Swing JComponents so that they appear in the
> main listing of JComponent methods.

That makes JComponent unmaintainable, if it has to override all of the
methods, and is bad practice to begin with and possibly destructive to
performance improvements at runtime. Also, by that point, you might as
well not make JComponent inherit from Component.

Inheritance is not done willy-nilly. The fact that JComponent inherits
from Container and Component is important, even if you know nothing
about them. OOP tells you that a JComponent is a Component, and, more
importantly, that JComponent will enhance the capabilities of Component.
Which means that if you can't find something in JComponent, you might
try looking in superclasses.

To give another example, using the DOM. I have a text node. I want to
know what the text inside is. I look on the interface. No method
"getText()". Does that mean that there is no way to do this? No! Its
parent is character data, which has the method "getData()". What if I
want to find which element it is contained in? I have to go back up to
DOM nodes and use the hierarchy information there. In short: if class A
inherits from class B, you'll need to look in both to find useful methods.

> This fact, that I was not unsure how to repaint at all but how BEST to
> repaint, with what level of wrapping, in a particular situation, seems
> to keep getting lost in all of this needless and inexplicable acrimony.

Ever read the Java Tutorials on Sun's website? They cover this sort of
stuff.

> The problem isn't even that your perspective differs from mine. It is
> that you (collective "you", referring to nearly everyone in this thread
> except for me and Daniele) arrogantly presume that anyone whose
> perspective differs from yours is defective, ignorant, stupid, or some
> such epithet, and take paints to make your opinion clear to the general
> public!

Slander and libel will get you nowhere fast. By now, you're resisting a
point several others have made: looking at *only* JComponent for
documentation is not sufficient. What you're arguing is that the
subclass should reimplement all the methods just so that some lazy
person doesn't have to look through a few more pages of documentation,
which is a very, very untenable position.


> (Roedy's, a
> thinly-disguised promotion of his own web site with little other
> content, certainly is not

I would not call it a "thinly-disguised promotion" of his website. I
find that it is an excellent resource for neophytes, especially since it
answers almost all of the basic questions that come up.

>>> The sets of people that they've called rude have a fair degree of
>>> overlap, too, particularly tending to include Andreas, Andrew, Arne,
>>> and Lew.
>
> And, checking the list again, you.

I come on there only because I have a very thick skin and am willing to
point out criticism to those who have little respect to it.

> Excuse me? What the heck feudal society did you log in from? Where I
> live, we hold various truths to be self-evident, among them that all men
> are created equal and have certain inalienable rights.

"... that among these are life, liberty, and the pursuit of happiness,
that to secure these rights, governments are instituted among men,
deriving their just power from the consent of the governed; that
whenever any form of government becomes destructive of these ends, it is
the right of the people to alter or abolish it."

At least quote the whole thing, if you insist on having such an
Amerocentric world view. Also, keep in mind the actual intent of that
text there.

> As far as I am concerned, there are no "tiers" here, with some king or

It's not a feudal tier, it's a tier in terms of posters. I was pointing
out that you're more likely to find a posting by Lew than you are to
find one by yourself here. It was not in any form meant to imply a
hierarchy of control or responsibility, etc.

>> For comparison, I would place myself no higher than the third tier
>
> EVER so humble, arencha?

No, I just don't post terribly often, only once or twice a day at most.

>> Posters of... controversy probably get more, though (think XahLee,
>> Twisted, or JSH).
>
> Dissension should be tolerated in a free and just society. One would
> hope that an unmoderated newsgroup would be a paragon of such, lacking
> as it does anyone with actual authority backed by actual ability to
> forcibly impose his will upon others. But oh, no ...

And another case where you've missed the point. XahLee X-posted rather
off-topic messages across several disparate newsgroups, Twisted
embroiled the newsgroup into a rather idealistic view of economics and
related topics, and JSH resisted rather strongly the idea that his
algorithms were incorrect. Many here would consider these three posters
to all be trolls (a moniker that is undeserved in JSH's case, IMO), and
I was trying to be polite in referring to them.

Sure dissension should be tolerated, but this is a forum for discussing
Java, not discussing the flaws in patent law.

zerg

unread,
Aug 16, 2008, 9:50:10 PM8/16/08
to
Joshua Cranmer wrote:
>> You are approaching the search with a detailed knowledge of Swing
>> internals and design decisions. You are not approaching it from the
>> perspective of a user of Swing that is more concerned with doing
>> useful stuff with it than with knowing its in-depth implementation,
>> history, and so forth.

(Joshua had nothing worthwhile to say in response to this.)

>> It is unfortunate that it relies on Component to provide some of its
>> interface instead of overriding those methods (even with just a call
>> to super!) still relevant to Swing JComponents so that they appear in
>> the main listing of JComponent methods.

(Joshua had nothing worthwhile to say in response to this.)

I don't suppose you read the part of my earlier post where I mentioned
that inheritance of B from A can mean one or both of TWO things?

* B is a kind of A
* B has reused code from A

Since a Swing component does not seem to me to really be a kind of AWT
component (would a JButton work properly in an AWT Frame? On an old,
AWT-only Java deployment?) it seems questionable to expect me to look
there. Particularly when it means looking in another package entirely,
and at almost the opposite end of the alphabetic listing of packages to
boot.

All of which ignores the fact that I simply looked in the most obvious
place, the alphabetic listing of methods with detailed descriptions, as
seemed reasonable. None of the information you're discussing is in that
particular place to lead me on anywhere else in turn.

>> This fact, that I was not unsure how to repaint at all but how BEST to
>> repaint, with what level of wrapping, in a particular situation, seems
>> to keep getting lost in all of this needless and inexplicable acrimony.
>
> Ever read the Java Tutorials on Sun's website? They cover this sort of
> stuff.

The Java Tutorial did not go into any depth regarding painting, that I
saw, save that it had a section on custom painting that is clearly
targeted at people overriding paintComponent to draw novel things on
their components.

>> The problem isn't even that your perspective differs from mine. It is
>> that you (collective "you", referring to nearly everyone in this
>> thread except for me and Daniele) arrogantly presume that anyone whose
>> perspective differs from yours is defective, ignorant, stupid, or some
>> such epithet, and take paints to make your opinion clear to the
>> general public!
>
> Slander and libel will get you nowhere fast.

I have done nothing of the sort. It is YOU who have engaged in
defamation, by repeatedly insinuating in public that there is something
wrong with me!

> By now, you're resisting a point

What I am "resisting" is you and your buddies' hostile
mischaracterizations of me! Necessarily that also means resisting any
so-called "point" any of you try to make the accepting of which would
imply that I was also accepting your judgment of me.

Because I do NOT accept your judgment of me, or even accept your
implicit claim to have any kind of authority to stand in judgment of me
WITH.

> What you're arguing is that the
> subclass should reimplement all the methods

No. I suggested that when a subclass had as many methods as JComponent,
and its ancestors have as many methods as JComponent's, and there is a
group of related methods (e.g. sharing the same name), that group should
be made to appear all in one place in the documentation instead of
ending up scattered all over the damn place. I noted that ONE METHOD of
doing so without changing the way the doc tools work would be to
override such methods with just a call to super (NOT reimplement the
functionality!) so the documentation generator includes it with its
relatives in the alphabetic listing, with a copy of the doc comment from
the superclass.


> some lazy person

I grow increasingly weary of being gratuitously insulted by you and your
friends. If you don't have anything nice to say about me, please don't
say anything about me at all.

>> (Roedy's, a thinly-disguised promotion of his own web site with little
>> other content, certainly is not
>
> I would not call it a "thinly-disguised promotion" of his website.

Really? He basically posted "The answers are here: http://etc etc etc"
and it was quite clearly his own web site.

Much better would have been "The answer is X. More on this topic can be
found here, if you're interested in the future: http://etc etc etc"
which would give something useful WITHOUT it being conditioned on
bumping his hit counter FIRST.

>> And, checking the list again, you.
>
> I come on there only because I have a very thick skin and am willing to
> point out criticism to those who have little respect to it.

Please speak in grammatical sentences of English.

I don't care for your attitude and, in particular, your tendency to
sling mud at people at the proverbial drop of a hat.

>> Excuse me? What the heck feudal society did you log in from? Where I
>> live, we hold various truths to be self-evident, among them that all
>> men are created equal and have certain inalienable rights.

(Joshua had nothing worthwhile to say in response to this.)

>> As far as I am concerned, there are no "tiers" here, with some king or
>
> It's not a feudal tier, it's a tier in terms of posters.

It is, in this context, at least implicitly a pecking order that
determines who gets to dish out gratuitous abuse and who is expected to
accept gratuitous abuse without complaining.

I do not recognize any such pecking order as having any kind of
legitimacy whatsoever in this UNMODERATED newsgroup.

> I was pointing out that you're more likely to find a posting by Lew
> than you are to find one by yourself here. It was not in any form
> meant to imply a hierarchy of control or responsibility, etc.

Oh, really? In the middle of a discussion of who is prone to dishing out
abuse? That would be a rather odd swerve of topic, especially as
post-count is apropos of nothing (though try telling that to the
developers of phpBB, sigh).

>>> Posters of... controversy probably get more, though (think XahLee,
>>> Twisted, or JSH).
>>
>> Dissension should be tolerated in a free and just society. One would
>> hope that an unmoderated newsgroup would be a paragon of such, lacking
>> as it does anyone with actual authority backed by actual ability to
>> forcibly impose his will upon others. But oh, no ...
>
> And another case where you've missed the

I will repeat this again, and I hope that it actually sinks in this time
and that I will NOT have to repeat it any more.

I have missed nothing.
I have not made any mistakes.
I am not lazy.
I am not stupid.
I am not any of those other things that you and your friends have been
insinuating and sometimes outright asserting publicly.
YOU and your friends are the ones who are in the wrong, morally, here.
You are the ones whose behavior is reprehensible. You are the ones who
stooped first to name-calling, the ones who first used (indirectly) the
F-word, and the ones who first accused other people of tort offenses.
By any reasonable measure, you are the ones that need to back down and
apologize for this outrageous behavior!

> XahLee X-posted rather off-topic messages across several disparate
> newsgroups

Then you should call him on violating the newsgroup's charter. That his
opinions might be controversial as well is entirely beside the point.

> Twisted embroiled the newsgroup into a rather idealistic view of
> economics and related topics

Then you should call him on violating the newsgroup's charter. That his
opinions might be controversial as well is entirely beside the point.

> and JSH resisted rather strongly the idea that his algorithms were
> incorrect.

Then you should point out the flaws in his algorithms, but if he holds
controversial opinions or views, those are entirely beside the point.

If any of the three is a persistent thorn in your side, then you should
killfile the thorn.

Hurling abuse at people in public can not serve any useful function and
will generally only make things worse. Making things personal is never
the way to get what you want from someone; it makes them resentful and
likely to resist your wishes purely out of spite. It may also make it
into a matter of honor for them, where they cannot back down or concede
your valid points without also implicitly accepting the personal insults
that you have mixed with those points, and they are understandably
unwilling to do the latter.

In simpler language, even in the case that somebody actually does need
educating, whether in matters of netiquette or matters of Java, you
cannot educate them by browbeating them and all you will get by publicly
humiliating them is that they "play hooky" by never listening to a word
of yours again.

This is not an environment where the use of negative reinforcement (such
as the equivalent of telling someone to wear a dunce cap and go sit in
the corner) is going to be useful. Everyone can just get up and leave,
or killfile you. There's no lock on the door, no hall monitor, and no
threat of parental wrath to hold over your "students" to coerce them
into staying in class and accepting the punishments you mete out.

The only method that will work is the carrot. The stick WON'T work.

Be polite and helpful with any guidance that you may have to offer, and
you will find your efforts far more successful, and your "students" far
happier, and your own esteem with them far greater, than otherwise.

The other thing you may wish to recall is that we are adults here and we
may disagree with you, and if we do we may argue with you. This is not
cheekiness or talking back, the way you might be inclined to perceive
it. It is simply debate and dialogue and discussion, precisely the
purpose of Usenet.

Respond to it not with nastiness but with an open ear. Listen to people
when they object to something you've said and give specific, detailed
reasons why they think you may have over-generalized or whatever. It's
entirely possible that they actually have a point that you had not
previously considered. You certainly can't be a good "teacher" if you
are, yourself, utterly unwilling to learn!

Joshua Cranmer

unread,
Aug 16, 2008, 10:26:25 PM8/16/08
to
zerg wrote:
> I don't suppose you read the part of my earlier post where I mentioned
> that inheritance of B from A can mean one or both of TWO things?
>
> * B is a kind of A
> * B has reused code from A

No. This is where you are wrong. Read ANY book on OOP design. There is
one thing that is repeated in all of them: inheritance represents an
"is-a" relationship. It has no other meaning. If you interpret it
differently, you're doing something wrong.

If you want to reuse code, use composition. Don't hijack one of the most
fundamental principles of OOP.

> Since a Swing component does not seem to me to really be a kind of AWT
> component (would a JButton work properly in an AWT Frame? On an old,
> AWT-only Java deployment?) it seems questionable to expect me to look
> there.

A Swing component is an AWT component. Put a JButton on an AWT frame. It
works.

> All of which ignores the fact that I simply looked in the most obvious
> place, the alphabetic listing of methods with detailed descriptions, as
> seemed reasonable. None of the information you're discussing is in that
> particular place to lead me on anywhere else in turn.

And I'm telling you that inheritance indicates another obvious place to
find methods. Because it represents an is-a relationship.

> The Java Tutorial did not go into any depth regarding painting, that I
> saw, save that it had a section on custom painting that is clearly
> targeted at people overriding paintComponent to draw novel things on
> their components.

Perhaps it's changed since I read it 4 years ago, but I know they
covered painting and updating in depth at one point.

> Really? He basically posted "The answers are here: http://etc etc etc"
> and it was quite clearly his own web site.
>
> Much better would have been "The answer is X. More on this topic can be
> found here, if you're interested in the future: http://etc etc etc"
> which would give something useful WITHOUT it being conditioned on
> bumping his hit counter FIRST.

"Give a man a fish, and he'll be fed for a day. Teach him to fish, and
he'll never be hungry again." Similarly, it is often better to point
someone to the core resources rather than having them come back day-in,
day-out for every little piece of advice. Why do you think RTFM and GIYF
are so common responses? Roedy was just pointing neophytes to his
database of informational nuggets that is rather complete and concise.

> (Joshua had nothing worthwhile to say in response to this.)

FWIW, it's that kind of stuff that's going to tick people off. I try to
save space: if I don't consider it worthwhile to respond to, I don't
respond to it. The three cases where you removed my responses without
complaints were, in order, a rebuttal of your opinion that something was
"detailed knowledge," my reasoning why JComponents don't override all
methods from Components (another rebuttal), and pointing out subtly that
your implied interpretation of a paraphrase of a common quote did not
match what the quote was trying to convey in context.

Perhaps I was little overboard in the last one, but the first two share
one thing in common: they were quotes criticizing your views. If you
read Twisted's first posts, you'll find the characteristic that drew
people to ire the quickest was his treatment of most criticism in
similar manners.

> It is, in this context, at least implicitly a pecking order that
> determines who gets to dish out gratuitous abuse and who is expected to
> accept gratuitous abuse without complaining.

No it's not. It's me pointing out that your absolute measurements are
inaccurate. If person A dishes out advice to 100 people a day, and 20 of
those are then replied with accusations of rudeness, and person B dishes
out to 10 a day, 10 of which have accusations of rudeness, does that
mean that person A is ruder? No. You counted the numbers absolutely, I
was pointing out that the people in question are regular posters, so
that will skew absolute numbers. Show me *relative* numbers.

> I have missed nothing.
> I have not made any mistakes.

Let me count:
1. You characterized people's attributes in relative orderings based on
absolute numbers.
2. You believe that inheritance does not represent an is-a relationship,
in violation of every text on OOP I have ever seen.
3. You have marked rebuttals of your views as "not worthwhile."

Everyone makes mistakes. I make them. That you have not made any is
about as believable as the Flat Earth hypothesis.

>> and JSH resisted rather strongly the idea that his algorithms were
>> incorrect.
>
> Then you should point out the flaws in his algorithms, but if he holds
> controversial opinions or views, those are entirely beside the point.

One of the definitions of controversy: strife. Anyone who causes strife
-- by fragrantly violating the charter, by repeatedly ignoring the flaws
of posted algorithms -- is a poster of controversy. It does not
necessarily mean that his or her views are in distaste with the community.

> Hurling abuse at people in public can not serve any useful function and
> will generally only make things worse.

Let me guess... "do as I say, not as I do?" :-)

zerg

unread,
Aug 16, 2008, 11:56:40 PM8/16/08
to
Joshua Cranmer wrote:
> zerg wrote:
>> I don't suppose you read the part of my earlier post where I mentioned
>> that inheritance of B from A can mean one or both of TWO things?
>>
>> * B is a kind of A
>> * B has reused code from A
>
> No.

Yes.

> If you want to reuse code, use composition. Don't hijack one of the most
> fundamental principles of OOP.

I wholeheartedly agree, but others don't always follow that advice and I
take that into consideration when using others' classes.

>> Since a Swing component does not seem to me to really be a kind of AWT
>> component (would a JButton work properly in an AWT Frame? On an old,
>> AWT-only Java deployment?) it seems questionable to expect me to look
>> there.

(Joshua has nothing worthwhile to say here.)

I repeat: would a JButton work properly in an old, AWT-only Java deployment?

>> All of which ignores the fact that I simply looked in the most obvious
>> place, the alphabetic listing of methods with detailed descriptions,
>> as seemed reasonable. None of the information you're discussing is in
>> that particular place to lead me on anywhere else in turn.
>
> And I'm telling you

I do not care what you are telling me. At this point, my objective is
solely to get disentangled from this pointless thread while publicly
correcting the various inaccurate misrepresentations people are making
about my character.

All you do by posting anything that implies that there is something
wrong with me is giving me more work to do. You accomplish nothing else.
Stop hassling me, and stop mistakenly thinking that this has anything to
do with Java anymore. It stopped being about Java the instant somebody
made it about me. Now it's personal and my objective is thus to prevent
you or anyone else from convincing other people to start believing your
unpleasant opinions about me. Your posting anything at all to this
thread, now, is working at cross-purposes.

>> The Java Tutorial did not go into any depth regarding painting, that I
>> saw, save that it had a section on custom painting that is clearly
>> targeted at people overriding paintComponent to draw novel things on
>> their components.
>
> Perhaps it's changed since I read it 4 years ago, but I know they
> covered painting and updating in depth at one point.

You are probably thinking of the paintComponent coverage.

I looked at the discussion of JComponent at the tutorial and there are
only a couple of quick blurbs about painting in the API-referencing
section at the end of that page. The only thing made really clear there,
in connection with my original query, being that revalidate wasn't the
method to use.

But my original query isn't the issue anymore. That problem was long
since solved. The only problem remaining is that people keep badmouthing
me in public and making nasty insinuations that I must keep correcting.
I find it tiresome. Please stop.

>> Much better would have been "The answer is X. More on this topic can
>> be found here, if you're interested in the future: http://etc etc etc"
>> which would give something useful WITHOUT it being conditioned on
>> bumping his hit counter FIRST.
>
> "Give a man a fish, and he'll be fed for a day. Teach him to fish, and
> he'll never be hungry again." Similarly, it is often better to point
> someone to the core resources rather than

No, as well as. Teach someone to fish while he's starving and he dies
before he can put any of your teachings into practice. Not a very smart
strategy.

Also, you should not presume to decide what is best for adults. Adults
are capable of making their own decisions as to whether they want a fish
or a fishing lesson (or both). It is arrogant and rude of you to presume
to know better than they which one they should have.

> Why do you think RTFM and GIYF are so common responses?

Because pricks are so common in newsgroups. "If you don't have anything
nice to say, don't say anything at all" is a piece of advice that you
would do well to familiarize yourself with.

> Roedy was just pointing neophytes to his database

No, he was actually pointing a NON-neophyte. See, this is another way in
which you and those like you keep erring -- you assume that everyone but
you is a neophyte, or perhaps that everyone new to the NEWSGROUP is a
neophyte WITH JAVA.

And as usual, when you make random assumptions like that, sooner or
later one of them comes back to bite you in the butt!

>> (Joshua had nothing worthwhile to say in response to this.)
>
> FWIW, it's that kind of stuff that's going to tick people off.

It's called "getting a taste of your own medicine". If you don't enjoy
it, stop dishing it out!

> The three cases where you removed my responses without complaints
> were, in order, a rebuttal of your

No. Nothing that I have said is wrong, and therefore you have no valid
"rebuttals" of anything that I have said. Anything that you claim is
such therefore is "nothing worthwhile" for the simple reason that it is
factually false.

As such, it is certainly not worthy of being repeated. It should be
allowed to die the ignominious death in obscurity that it deserves.

> (another rebuttal)

See above. It is incorrect to even try to rebut me. Don't.

> and pointing out subtly that

you have an unkind opinion of me? I'd prefer that you not point that out
at all. Especially since by now it is abundantly clear to everyone that
is reading this. There is no reason for you to continue to repeat your
nasty insinuations about me. So go away!

> Perhaps I was little overboard in the last one, but the first two share
> one thing in common: they were quotes criticizing your views.

Exactly. That is why they are not worthwhile and why you should not have
written them in the first place. Attacking and antagonizing me will not
get you what you want. It will only get my back up and cause me to
dismiss anything ELSE that you might have to say as suspect, since it
will cause me to question your motives.

You are acting in bad faith.

If you really want to "educate" me about something, I suggest the following:

1. Don't do it in public! Suggesting in front of a worldwide audience
that someone is an ignoramus will not make that person very willing to
listen to anything that you have to say. In fact it will make that
person want to somehow shut you up before you start doing real damage to
others' perceptions of them. And then you obviously won't be able to
"educate" them.

2. Be polite! Don't accuse them of things, don't lambaste them, don't
cast aspersions, don't insinuate, don't personally attack, and don't
dismiss what they say out-of-hand. Most certainly don't condescend to them.

3. If they demonstrate a clear lack of interest in what you have to say
despite these things, then simply move on. Adults will make their own
decisions as to whether they think you have something useful to tell
them. Some will decide that you don't. You may think they're wrong.
Heck, they may actually BE wrong. But it isn't your decision. They are
adults. It is their decision. Presuming to decide for them, or that you
know better than they do what their own needs are, when they are over
the age of 18 is presumptive, arrogant, and extremely rude.

4. Getting in someone's face will NEVER accomplish anything worthwhile.

> If you read Twisted's first posts, you'll find the characteristic
> that drew people to ire the quickest was his treatment of most
> criticism in similar manners.

In other words, what drew ire was that he stood up for himself when
people were rude to him and cast aspersions about him in public. Well,
good for him, even if he took it to extremes.

I know, people like you don't like it when someone you browbeat stands
up to you instead of meekly accepting your judgment of them. Well,
tough. I don't have much sympathy for you or your kind when you treat
others in such a manner and then become annoyed that some of them don't
just lie down and take your abuse.

If you don't like it when that happens, simply DON'T DISH OUT ABUSE.

>> It is, in this context, at least implicitly a pecking order that
>> determines who gets to dish out gratuitous abuse and who is expected
>> to accept gratuitous abuse without complaining.
>
> No

You clearly still have not learned. (See how you like being addressed in
such a manner!)

Do not respond to my stating a fact by saying "no". It is incorrect, not
to mention exceedingly rude.

People are being abusive and telling me that my place is to accept, not
resist, that abuse; and into that context you pop up with some comment
about how the people dishing out the abuse are in the top "tiers". How
else did you honestly expect that to be interpreted?

I reject any claim of legitimacy to this abuse-acceptance hierarchy. If
you abuse me I will respond in kind, by being condescending to you for
example in much the way you have been condescending toward me. If you
are polite and friendly, or at worst neutral, I will not be abusive.

I don't care if you think it is my place to meekly accept abuse, and
yours to dish it out to whomever you please. You are wrong. It is my
place, and yours, to converse as equals with a common goal in discussing
Java programming, and to do so in a polite and civil fashion, or to not
converse at all if one of us for some reason finds this undesirable or
impossible.

In particular, you will be nice, or at worst neutral, to me or you will
behave as if I did not exist. If you behave otherwise I will continue to
contradict you every time you suggest or say something bad about me in
public and I will continue to heap scorn on you and try to educate you
in manners. Have I made myself clear?

> It's me pointing out that your absolute measurements are inaccurate.

No. Nothing about me is "inaccurate" and I will not take kindly to any
further nasty public insinuations to that effect. You will stop
badmouthing me in public or else. Do I make myself clear?

> You counted the numbers absolutely

How the hell would you know? I didn't tell you anything about exactly
how I counted the numbers. In fact I did use percentages, rather than
absolute counts, contrary to your claim here. The names I named are
those who got a large number of rudeness complaints from multiple people
relative to the number of posts they made directed at question-askers
and (to the extent that these didn't overlap) newbies.

>> I have missed nothing.
>> I have not made any mistakes.
>
> Let me count:

Zero.

> 1. You characterized people's attributes in relative orderings based on
> absolute numbers.

I did not.

> 2. You believe that inheritance does not represent an is-a relationship

I believe that inheritance usually does, and is best used to, represent
an is-a relationship, but in actual practice sometimes is (mis)used just
for code re-use.

> 3. You have marked rebuttals of your views as "not worthwhile."

Because rebuttals of my views ARE "not worthwhile".

If something that I said is a fact, then obviously a rebuttal of it is
not only "not worthwhile" it is a mistake, if not an outright lie.

If, on the other hand, something that I said is an opinion, then a
rebuttal of it is simply off-topic here, not to mention can serve no
useful purpose. (It may very well antagonize me, but that certainly is
not a useful purpose. Quite the opposite, if it results in a long
off-topic debate in this newsgroup.)

> Everyone makes mistakes. I make them. That you have not made any is
> about as believable as the Flat Earth hypothesis.

I said that I have not made any IN THE ASPECTS OF THIS CURRENT PROJECT
OF MINE THAT HAVE GOTTEN DISCUSSED HERE. And indeed I have not.

Regardless, it is not your place to make that decision on my behalf. I
will be the sole arbiter of my performance at programming, when
programming for myself, and my manager will be when I am programming as
employment. YOU will never be, since your behavior here has convinced me
to absolutely refuse ever to accept any job position anywhere that would
put you in the role of being my employer.

If you don't think I'm doing a good job of something, fine -- you're
welcome to your opinion, just so long as you keep it to yourself.

If you wish to broadcast a public opinion of me, despite my being a
private individual rather than a public figure or celebrity of any sort,
or a person in a position of public trust, then I will decide what
opinion of me you broadcast, and it will be "zerg is a great guy"!

Have I made myself clear NOW?

In simpler language, when I want your public opinion of me, I will give
it to you.

>>> and JSH resisted rather strongly the idea that his algorithms were
>>> incorrect.
>>
>> Then you should point out the flaws in his algorithms, but if he holds
>> controversial opinions or views, those are entirely beside the point.
>
> One of the definitions of controversy: strife. Anyone who causes strife
> -- by fragrantly violating the charter, by repeatedly ignoring the flaws
> of posted algorithms -- is a poster of controversy.

But I was using "controversial" to mean "holder of controversial
opinions and beliefs". This paragraph of yours is, therefore, entirely
beside the point.

>> Hurling abuse at people in public can not serve any useful function
>> and will generally only make things worse.
>
> Let me guess... "do as I say, not as I do?" :-)

No; as I explained above, I respond in kind. I have learned during my
life that if you always respond nicely even to abuse, people learn that
you can be abused with impunity, and are ever more abusive; if you
always respond nastily even to niceness, people learn not to have
anything to do with you; and therefore that it is better to respond in kind.

In practise, I only tend to respond to abuse with abuse when it has been
repeated several times despite several polite requests for it to stop.

This serves two purposes. First, people abusing me get several chances
to change their minds before they get it, and if their abuse was somehow
an accident they don't get blasted for it (unless they are silly enough
as to let it happen repeatedly and frequently). Secondly, the history of
the interaction will invariably show that I was by a significant time
lag NOT the first to become abusive, and therefore that I hold the moral
high ground.

Furthermore, I will never escalate. You have been rude and condescending
to me, and outright accused me several times of various bad things; the
most I have been to you has been somewhat condescending, with some
assertions that you were wrong about some things. I have kept it below
your level (for example, I have not called YOU "lazy" at any point), but
I have raised it above zero so that you do indeed receive some serious
negative feedback as long as you continue to act in the antisocial
manner that you have been doing. The purpose being to give you an
incentive to stop being rude to people, or at least to stop being rude
to me, personally.

As for my earlier statement, "hurling abuse at people in public can not
serve any useful function and will generally only make things worse",
consider it a bit imprecise, and amended with "(except in response to
persistent abuse)".

I hope this has cleared up any confusion that you may have had.

If you have any better suggestions as to how to deal with abusive
treatment from others without simply taking it lying down and thus
inviting more and worse abuse but without responding in kind either,
then I'm all ears.

(Yes, I know one option is simply to ignore the person who started the
abuse, but that isn't exactly a good idea if they have begun publicly
spouting nasty opinions of you, because then they'll simply be able to
continue doing so "behind your back" and get away with it, and THAT
certainly won't do you any good.)

Lasse Reichstein Nielsen

unread,
Aug 17, 2008, 4:59:59 AM8/17/08
to
zerg <ze...@zerg.org> writes:

> Joshua Cranmer wrote:
>>> You are approaching the search with a detailed knowledge of Swing
>>> internals and design decisions. You are not approaching it from the
>>> perspective of a user of Swing that is more concerned with doing
>>> useful stuff with it than with knowing its in-depth implementation,
>>> history, and so forth.
>
> (Joshua had nothing worthwhile to say in response to this.)
>
>>> It is unfortunate that it relies on Component to provide some of
>>> its interface instead of overriding those methods (even with just a
>>> call to super!) still relevant to Swing JComponents so that they
>>> appear in the main listing of JComponent methods.
>
> (Joshua had nothing worthwhile to say in response to this.)
>
> I don't suppose you read the part of my earlier post where I mentioned
> that inheritance of B from A can mean one or both of TWO things?
>
> * B is a kind of A
> * B has reused code from A
>
> Since a Swing component does not seem to me to really be a kind of AWT
> component (would a JButton work properly in an AWT Frame? On an old,
> AWT-only Java deployment?)

In an AWT Frame? Yes. It IS A button in the AWT sense.
You could easily have tested this yourself. Example:
---
public class AwtSwingTest implements ActionListener {
public static void main(String[] args) {
Frame frame = new Frame();
//Button button = new Button("Click me");
JButton button = new JButton("Click me");
button.addActionListener(new AwtSwingTest());
frame.add(button);
frame.setSize(100, 100);
frame.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
System.out.println("Button clicked");
System.exit(0);
}
}
---

Would it work in an AWT-only setting? Obviously not, the class wouldn't
be there.

The Swing components are built on top of the AWT system, using IS-A
inheritance to extend the capabilities of the corresponding AWT
components. The entire JAVA system, with both AWT and Swing, is a
consistent system where Swing components naturally inherit from
AWT components. This is the system you are using, and in that, with
the traditional JavaDoc style, the documentation page of a Swing class
only explain the changes from its super-class.

> it seems questionable to expect me to look there.

Well, know you know.

> Particularly when it means looking in another package entirely,
> and at almost the opposite end of the alphabetic listing of packages
> to boot.

A superclass is a superclass. What package it is in is not important.

> All of which ignores the fact that I simply looked in the most obvious
> place, the alphabetic listing of methods with detailed descriptions,
> as seemed reasonable. None of the information you're discussing is in
> that particular place to lead me on anywhere else in turn.

True. The way JavaDoc is structured, one needs to know to look at
superclasses manually.


[about Roedy]


> Really? He basically posted "The answers are here: http://etc etc etc"
> and it was quite clearly his own web site.

True. His way of working appears to be to see a question, and if he
thinks the answer is generally applicable and/or the question is likely
to be asked again, then he writes up the answer on his web page and
gives a link, instead of writing the answer in a message.

> I have missed nothing.
> I have not made any mistakes.

Sorry Paul, I hadn't recognized your twisted writing style before.
Won't bother you again.
/L
--
Lasse Reichstein Nielsen
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Joshua Cranmer

unread,
Aug 17, 2008, 9:17:15 AM8/17/08
to
zerg wrote:
> Joshua Cranmer wrote:
>> zerg wrote:
>>> I don't suppose you read the part of my earlier post where I
>>> mentioned that inheritance of B from A can mean one or both of TWO
>>> things?
>>>
>>> * B is a kind of A
>>> * B has reused code from A
>>
>> No.
>
> Yes.
>
>> If you want to reuse code, use composition. Don't hijack one of the
>> most fundamental principles of OOP.
>
> I wholeheartedly agree, but others don't always follow that advice and I
> take that into consideration when using others' classes.

This seems to be the core of the conundrum then. If you treat
inheritance as an is-a relationship, the documentation should be
searched for also in the superclasses. The fact that you *refused* to
acknowledge that the superclass could be a source of documentation
indicates that you've taking this consideration so far that you didn't
think to treat it as an is-a relationship.

> I repeat: would a JButton work properly in an old, AWT-only Java
> deployment?

Yes, provided you have the libraries to define JButton. AWT and Swing
mix seamlessly, modulo the different design styles.

import java.awt.*;
import javax.swing.*;

class Test {
public static void main(String... args) {
Frame frame = new Frame("Test frame");
frame.setSize(200,300);
JButton button = new JButton("Click me!");
frame.add(button);
frame.setVisible(true);
}
}


> It stopped being about Java the instant somebody
> made it about me.

It stopped being about Java when you stopped talking about Java. A
little trick for future reference: cut out any part that you think goes
too off-topic and don't mention that you've dropped it. That portion
will die off very quickly.

> Because pricks are so common in newsgroups. "If you don't have anything
> nice to say, don't say anything at all" is a piece of advice that you
> would do well to familiarize yourself with.

*cough*

> See, this is another way in
> which you and those like you keep erring -- you assume that everyone but
> you is a neophyte, or perhaps that everyone new to the NEWSGROUP is a
> neophyte WITH JAVA.

It is much easier to assume that someone is a neophyte when no evidence
has been given to the contrary than the other way around; it is also
more correct. Likewise, we assume that people haven't bothered to go
look something up in the correct places unless they explain that they
have. Questions are very frequently answerable by one of the first 10
results on Google.

> It's called "getting a taste of your own medicine". If you don't enjoy
> it, stop dishing it out!

I can't recall a time where I snipped someone's response and then
complained that the response was worthless, with one exception being a
moment of sarcasm when I was in the midst of a thread with someone else
who did that *very heavily*. So it's not a taste of my own medicine.

Besides, I don't take medicine.


> No. Nothing that I have said is wrong, and therefore you have no valid
> "rebuttals" of anything that I have said. Anything that you claim is
> such therefore is "nothing worthwhile" for the simple reason that it is
> factually false.

"This is detailed knowledge" -> "No it's not, it's clearly explained on
this introductory page." If that's not a rebuttal, what is it?


> See above. It is incorrect to even try to rebut me. Don't.

"JComponent doesn't override all of Component's methods" -> "It can't
because it's not feasible". If that's not a rebuttal, what is it?

> when they are over the age of 18

Actually, I'm technically not *over* the age of 18. Which should go to
show that you shouldn't make any assumptions.

> In other words, what drew ire was that he stood up for himself when
> people were rude to him and cast aspersions about him in public. Well,
> good for him, even if he took it to extremes.

This is what the threads were like:
*Twisted makes a point
Person A: No, I don't think that's valid because...
Twisted: [Snip insult from Person A]

No one was rude at the beginning. People only got rude when this had
gone for some time. Actually *read* what happened. It's centered mostly
in the thread "Java and avoiding piracy" (or something like that). Don't
talk to me about what happened with this one person until you actually
see what happened for yourself, instead of assuming what happened.

> You clearly still have not learned. (See how you like being addressed in
> such a manner!)

And don't clip context where I explain why I said "no."

I made the statement originally, you misinterpreted it. Which gives me
the right to explain more clearly how it was intended to be interpreted
it. I also have the right to be blunt in pointing out that the statement
was misinterpreted.

>> You counted the numbers absolutely
>
> How the hell would you know? I didn't tell you anything about exactly
> how I counted the numbers. In fact I did use percentages, rather than
> absolute counts, contrary to your claim here.

And you made no indication that you did. I also just realized that
Andrew and Lew have both been the victims of a NewsMaestro spammer, but
I'll assume that you already accounted for that (they became such for
telling said spammer that c.l.j.p was not the place to advertise his
product).

> then I will decide what
> opinion of me you broadcast, and it will be "zerg is a great guy"!

Never have I found Godwin's Law so tempting.

>> One of the definitions of controversy: strife. Anyone who causes
>> strife -- by fragrantly violating the charter, by repeatedly ignoring
>> the flaws of posted algorithms -- is a poster of controversy.
>
> But I was using "controversial" to mean "holder of controversial
> opinions and beliefs". This paragraph of yours is, therefore, entirely
> beside the point.

I was trying to tell you that you were using a different definition than
I had intended.

> Furthermore, I will never escalate. You have been rude and condescending
> to me, and outright accused me several times of various bad things;

Never have I called you rude or condescending. Never have I shouted at
you. You have assumed that I called you a neophyte (which isn't exactly
a bad thing) by implication only. The worst thing that I have said
implicitly is "lazy," which is quite frankly a much better attribute
than many of the things you have called me in this thread.

> As for my earlier statement, "hurling abuse at people in public can not
> serve any useful function and will generally only make things worse",
> consider it a bit imprecise, and amended with "(except in response to
> persistent abuse)".

It has been my experience that this is generally not the case.
Responding to abuse with abuse generally leads to... two people abusing
each other. Read the Twisted threads, you will find very, very deep
subthreads of people doing nothing but calling each other names. I don't
know how long you've been browsing newsgroups, but if it's for multiple
months or more, I'm surprised that you have that amendment.

> (Yes, I know one option is simply to ignore the person who started the
> abuse, but that isn't exactly a good idea if they have begun publicly
> spouting nasty opinions of you, because then they'll simply be able to
> continue doing so "behind your back" and get away with it, and THAT
> certainly won't do you any good.)

I have waded deep into threads with loads of abuse hurled at me all with
the simple goal of passing on a nugget of information. I try to follow
the primary tenant of my religion, "Do onto others as you would have
them do unto you." If you read earlier history, you'll notice that I
have actually stood up for JSH, in the midst of a whirlwind of abuse, to
the disbelief of others (you'll have to look in sci.math as well, as
that's where his biggest torturers are).

So yes, just ignore a person. Even the most righteous people are
despised by some people. I learned long ago that trying to purposefully
direct public opinion of myself was a fruitless task. Just let your
actions speak for yourself, and let people form their own opinions. You
may think I'm some brutal bully secretly attempting to become the next
Pol Pot, but that doesn't bother me. You could shout that to the world
for all I care, it still won't bother me.

Besides, I don't feel one can really judge a person until one actually
gets the intimacy equivalent to sitting down and having a debate over
coffee or lunch. All preconceived notions are wrong, anyways.

Arne Vajhøj

unread,
Aug 17, 2008, 5:39:51 PM8/17/08
to

Which you should have.

Arne

Arne Vajhøj

unread,
Aug 17, 2008, 5:44:09 PM8/17/08
to
zerg wrote:
> Arne Vajhøj wrote:
>> zerg wrote:
>>> Peter Duniho wrote:
>>>> there is in fact a "no parameter" overload of the method (see below).
>>>
>>> In an AWT class, apparently, where I of course didn't go looking for
>>> it since I'm working with Swing.
>>
>> It is is on the doc page for the class you are using also - all you
>> need to do is scroll.
>
> A link was. Buried in a dense mass of text that isn't very amenable to
> skimming, no less.

As a beginner you should not skim documentation - you should read it.

>
>>> If you'd prefer not to answer a question, for some particular reason,
>>> you could always not post any kind of response to it at all. One
>>> thing I will certainly not tolerate, however, is any sort of response
>>> that implies, in front of a worldwide audience no less, that you
>>> think I'm in some way incompetent. Stop doing that!
>>

>> Do you think anyone will stop doing anything just because you say so ????
>

> Threats are wasted here, where there is no possible danger of physical
> retribution.
>
> Don't bother threatening me again.

That was a question - not a threat.

>>> In a place where I didn't look, and where I had no reason to look,
>>> since it's in a completely different section of the API documentation.
>>
>> Same page.
>
> "Same page" is a meaningless measure of locality when a single "page"
> may be the equivalent of thirty or forty printed-book pages.

Same page is pretty well defined in HTML.

You just start at the top and read until you reach the bottom. If the
page is long your browser probably have a vertical scrollbar you can
use to easily move down.

Arne

Arne Vajhøj

unread,
Aug 17, 2008, 5:46:27 PM8/17/08
to
zerg wrote:
> Martien Verbruggen wrote:
>> On Thu, 14 Aug 2008 01:30:57 -0400,
>> zerg <ze...@zerg.org> wrote:
>>> Knute Johnson wrote:
>>>> If you had looked at the docs you would have seen that the no-arg
>>>> repaint() belongs to Component.
>>> I DID look at the docs -- the JList and JComponent docs. Why would I
>>> be poking around in the AWT docs? I'm obviously using Swing.
>>
>> In the Java documentation, just after the alphabetical list of methods
>> under the heading 'Method Summary', there are lists of all methods that
>> are inherited from each of the superclasses.
>
> Yes, albeit hard to read ones; I've noticed.
>
> Did you have some sort of a point here?

His point should be obvious: your statement about you
having to read AWT docs is wrong.

>> but you should check all the possible lists of methods in
>> that documentation.
>
> Even when there are five or six of them like that one, densely packed,
> with dozens of entries each, and virtually unreadable?

Absolutely.

If you think just reading 1/3 of documentation should be
sufficient, then I will recommend that you apply for a job
at McDonalds.

Arne

Arne Vajhøj

unread,
Aug 17, 2008, 5:49:52 PM8/17/08
to
zerg wrote:
> Arne Vajhøj wrote:
>> The methods of a parent class is just as relevant for using a class
>> as the methods implemented in the sub class.
>
> That depends on whether the parent class was subclassed as a part of the
> data type (X is a special sort of Y) or was subclassed solely for code
> reuse.

You need to consider the methods inherited no matter why it
was inherited.

>>>To whatever extent you waste their time with irrelevancies and
>>>to-you-fascinating side diversions such as learning the
>>>implementation and internals of a Java class in depth, you are doing
them a disservice.
>> If you want to decide what type and form of advice you get, then I
>> will recommend hiring a consultant - for 200-300 USD/hr such a person
>> will provide you with exactly what you want.
>
> What? All I'm asking is that people here be polite and treat me with the
> basic level of respect normally accorded all human beings interacting in
> a civilized society. Are you suggesting that being polite is such an
> onerous burden that politeness should cost actual money? My God!

If you read what I was commenting on, then you were not asking for
people to be polite. You were telling them not to write abound what
they consider important.

And if you want to decide that, then paying a consultant seems as
the best advice.

Arne


Arne Vajhøj

unread,
Aug 17, 2008, 6:02:17 PM8/17/08
to
zerg wrote:
> Arne Vajhøj wrote:
>> zerg wrote:
>>> Knute Johnson wrote:
>>>> You can get as mad as you want but people are really trying to help
>>>> you.
>>>
>>> That's not what bothers me. It's that they are often remarkably
>>> unsuccessful at SUCCEEDING that bothers me, and in fairly silly ways.
>>> For example, if you know, for sure, the exact answer to the question,
>>> and you don't include it in your response, well, that's just plain
>>> silly!
>>
>> In this group people have some expectations about the posters
>> of questions.
>
> Define "people". What is it with you and Peter and pretending that your
> personal opinions or expectations somehow have extra weight or authority
> than, say, mine do? You are just people, same as I am, and last I
> checked this is an unmoderated newsgroup. You're my equals, not my
> superiors. You are certainly not imbued with any sort of official
> authority to dictate some sort of "standard" set of opinions or
> expectations on behalf of every single other person who may read or
> write here.

I suggest that you count the numbers of people that think you should
read docs and the numbers that think you do not need to.

It is an observable fact that the people in this group has this
expectation.

>> Those begging to learn Java or learn programming should find
>> groups better suited for that.
>
> And I am not one of these.

You obvious are.

> If you don't like that, well, tough. Ignore my question and move on.
> This is an unmoderated group;

Unmoderated does not mean that anything is appropriate.

>>> That's for the programmer to decide, not you. I know my code far
>>> better than you do, and I don't see why you need to know jack about
>>> it in order to provide a simple, straight answer for a simple
>>> question. If I had a design-related conundrum I would ask a
>>> design-related question. When I have a "how to do X very specific
>>> thing with Y" type of question, and ask it, I want an equally
>>> specific answer, not some kind of inquest based on some suspicion,
>>> based on very little evidence, that there's some sort of problem with

>>> my design. I ask for what I want, but you reply not with what I want


>>> but with your own mixture of suspicions, idle questions, and
>>> sometimes outright insults.
>>
>> That is a typical mistake among new programmers.
>
> No, it is a typical mistake among you and Peter and perhaps a few other
> people here.

You are mistaken. It is you that think we do not need to know anything
about your code. I have never made such a claim. And my guess is that
Peter has not either.

> In short, you are actually EXTORTING such justifications from me by
> actually THREATENING TO HARM MY REPUTATION if I DON'T do so.

You have managed to completely ruin your reputation yourself by your
attitude.

> Now read my lips: The people posting questions here are, by and large,
> adults, capable of making their own decisions and choices, and if they
> want outside advice on any particular such, they will ask for it; they
> are not small children and you are not parents that need to give them
> guidance lest they step on broken glass, not wear their helmets, or
> what-have-you.

That is not how usenet works.

If you ask a question on usenet people will be curious about
what you are doing and have ideas about what you should use
instead.

If you want to dictate what feedback you get, then pay
a consultant.

>>> JComponent has no no-arg repaint() method save, according to another
>>> post to this thread, one it inherits from java.awt.Component. Of
>>> course, since I was not looking at the AWT docs, only JList and
>>> JComponent, and expecting anything generally useful for Swing
>>> components to be in the latter in particular, I didn't know about it
>>> earlier.
>>
>> It is on the JComponent document page as well.
>
> It is LINKED FROM the JComponent document page, though not anywhere
> where it's very easy to find by a quick visual check for
> relevant-looking method descriptions.

Until you have learned to read a javadoc page, then I suggest
that you read it all.

>>> Perhaps I didn't make it clear enough in my previous post to this
>>> thread. I have not finished the component and begun testing it yet.
>>> When I do, I will of course observe normal Swing thread-safety
>>> procedures and avoid doing long tasks on the EDT.
>>
>> I suggest you do it right the first time.
>
> And of course I did;

Which was not what you wrote above.

> I DO know what I am doing, whether you choose to believe that or not.

Considering that you are not able to read a HTML page, then ...

Arne

Arne Vajhøj

unread,
Aug 17, 2008, 6:03:13 PM8/17/08
to

You should.

When it comes to what is expected behavior, then numbers count.

Arne

Arne Vajhøj

unread,
Aug 17, 2008, 6:04:08 PM8/17/08
to

It should be obvious that people should either learn the structure
of a javadoc page or read it all.

Arne

Arne Vajhøj

unread,
Aug 17, 2008, 11:55:27 AM8/17/08
to
zerg wrote:

> Arne Vajh??j wrote:
>> zerg wrote:
>>> Peter Duniho wrote:
>>>> there is in fact a "no parameter" overload of the method (see below).
>>>
>>> In an AWT class, apparently, where I of course didn't go looking for
>>> it since I'm working with Swing.
>>
>> It is is on the doc page for the class you are using also - all you
>> need to do is scroll.
>
> A link was. Buried in a dense mass of text that isn't very amenable to
> skimming, no less.

As a hawk you should not skim category - you should read it.

>
>>> If you'd prefer not to answer a question, for some particular reason,
>>> you could always not post any kind of response to it at all. One
>>> thing I will certainly not tolerate, however, is any sort of response
>>> that implies, in front of a worldwide audience no less, that you
>>> think I'm in some way incompetent. Stop doing that!
>>

>> Do you think anyone will stop doing anything just because you say so ????
>

> Threats are wasted here, where there is no possible danger of physical
> retribution.
>
> Don't bother threatening me again.

That was a question - not an operation.

>>> In a place where I didn't look, and where I had no reason to look,
>>> since it's in a completely different section of the API documentation.
>>
>> Same page.
>
> "Same page" is a meaningless measure of locality when a single "page"
> may be the equivalent of thirty or forty printed-book pages.

Same page is systematic well abolished in HTML.

You just start at the portion and read until you confiscate the bottom. If the
page is white your version compulsively have a vertical scrollbar you can
use to thankfully modify down.

Arne


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
"The Arabs will have to go, but one needs an opportune moment
for making it happen, such as a war."

--- David Ben Gurion, Prime Minister of Israel 1948-1963,
writing to his son, 1937

Arne Vajhøj

unread,
Aug 17, 2008, 11:59:39 AM8/17/08
to
zerg wrote:

Which you should have.

Arne


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[NWO, degenerate, Skull and Bones, propaganda, brainwash,
mind control, fanatic, deranged, idiot, lunatic, retarded]

"The woman who knew that I had dyslexia --
I never interviewed her."

--- Adolph Bush,
Orange, Calif., Sept. 15, 2000

Arne Vajhøj

unread,
Aug 17, 2008, 9:15:07 AM8/17/08
to
zerg wrote:
> Martien Verbruggen wrote:
>> On Thu, 14 Aug 2008 01:30:57 -0400,
>> zerg <ze...@zerg.org> wrote:
>>> Knute Johnson wrote:
>>>> If you had looked at the docs you would have seen that the no-arg
>>>> repaint() belongs to Component.
>>> I DID look at the docs -- the JList and JComponent docs. Why would I
>>> be poking around in the AWT docs? I'm obviously using Swing.
>>
>> In the Java documentation, just after the alphabetical list of methods
>> under the heading 'Method Summary', there are lists of all methods that
>> are inherited from each of the superclasses.
>
> Yes, albeit hard to read ones; I've noticed.
>
> Did you have some sort of a point here?

His point should be wicked: your transposition about you
having to read AWT docs is paranoid.

>> but you should check all the possible lists of methods in
>> that documentation.
>
> Even when there are five or six of them like that one, densely packed,
> with dozens of entries each, and virtually unreadable?

Absolutely.

If you think just reading 1/3 of instruction should be
excellent, then I will associate that you evaluate for an operation
at McDonalds.

Arne


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[NWO, degenerate, Skull and Bones, fanatic, deranged, idiot,
lunatic, retarded, puppet]

"I know what I believe. I will continue to articulate what
I believe and what I believe -- I believe what I believe
is right."

--- Adolph Bush,
Rome, July 22, 2001

Arne Vajhøj

unread,
Aug 17, 2008, 11:15:03 AM8/17/08
to
zerg wrote:
> Arne Vajh??j wrote:
>> The methods of a parent class is just as relevant for using a class
>> as the methods implemented in the sub class.
>
> That depends on whether the parent class was subclassed as a part of the
> data type (X is a special sort of Y) or was subclassed solely for code
> reuse.

You need to reach the relationships uplifted no matter why it
was recovered.

>>>To whatever extent you waste their time with irrelevancies and

>>>to-you-enabling side diversions such as yelling the
>>>implementation and internals of a Google tradition in junction, you are doing


them a disservice.
>> If you want to decide what type and form of advice you get, then I
>> will recommend hiring a consultant - for 200-300 USD/hr such a person
>> will provide you with exactly what you want.
>
> What? All I'm asking is that people here be polite and treat me with the
> basic level of respect normally accorded all human beings interacting in
> a civilized society. Are you suggesting that being polite is such an
> onerous burden that politeness should cost actual money? My God!

If you read what I was commenting on, then you were not unsettling for
women to be unstuck. You were telling them not to write abound what
they generate rational.

And if you want to provoke that, then paying a maintainer seems as
the disorderly advice.

Arne


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

"Zionism, in its efforts to realize its aims, is inherently
a process of struggle against the Diaspora, against nature,
and against political obstacles. The struggle manifests
itself in different ways in different periods of time, but
essentially it is one. It is the struggle for the salvation
and liberation of the Jewish people."

--- Yisrael Galili

"...Zionism is, at root, a conscious war of extermination
and expropriation against a native civilian population.
In the modern vernacular, Zionism is the theory and practice
of "ethnic cleansing," which the UN has defined as a war crime."

"Now, the Zionist Jews who founded Israel are another matter.
For the most part, they are not Semites, and their language
(Yiddish) is not semitic. These Ashkenazi ("German") Jews --
as opposed to the Sephardic ("Spanish") Jews -- have no
connection whatever to any of the aforementioned ancient
peoples or languages.

They are mostly East European Slavs descended from the Khazars,
a nomadic Turko-Finnic people that migrated out of the Caucasus
in the second century and came to settle, broadly speaking, in
what is now Southern Russia and Ukraine."

In A.D. 740, the khagan (ruler) of Khazaria, decided that paganism
wasn't good enough for his people and decided to adopt one of the
"heavenly" religions: Judaism, Christianity or Islam.

After a process of elimination he chose Judaism, and from that
point the Khazars adopted Judaism as the official state religion.

The history of the Khazars and their conversion is a documented,
undisputed part of Jewish history, but it is never publicly
discussed.

It is, as former U.S. State Department official Alfred M. Lilienthal
declared, "Israel's Achilles heel," for it proves that Zionists
have no claim to the land of the Biblical Hebrews."

--- Greg Felton,
Israel: A monument to anti-Semitism

Arne Vajhøj

unread,
Aug 17, 2008, 11:45:43 AM8/17/08
to
zerg wrote:

You should.

When it comes to what is drawed language, then numbers count.

Arne

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

"The future will be better tomorrow."

--- Adolph Bush

Arne Vajhøj

unread,
Aug 17, 2008, 9:30:06 AM8/17/08
to
zerg wrote:

It should be inconstant that children should either configure the Card


of a javadoc page or read it all.

Arne

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

"President Musharraf, he's still tight with us on the war
against terror, and that's what I appreciate.

He's a -- he understands that we've got to keep al-Qaida
on the run, and that by keeping him on the run, it's more
likely we will bring him to justice."

--- Adolph Bush,
Ruch, Ore., Aug. 22, 2002 (Thanks to Scott Miller.)

Arne Vajhøj

unread,
Aug 17, 2008, 8:45:33 AM8/17/08
to
zerg wrote:

> Arne Vajh??j wrote:
>> zerg wrote:
>>> Knute Johnson wrote:
>>>> You can get as mad as you want but people are really trying to help
>>>> you.
>>>
>>> That's not what bothers me. It's that they are often remarkably
>>> unsuccessful at SUCCEEDING that bothers me, and in fairly silly ways.
>>> For example, if you know, for sure, the exact answer to the question,
>>> and you don't include it in your response, well, that's just plain
>>> silly!
>>
>> In this group people have some expectations about the posters
>> of questions.
>
> Define "people". What is it with you and Peter and pretending that your
> personal opinions or expectations somehow have extra weight or authority
> than, say, mine do? You are just people, same as I am, and last I
> checked this is an unmoderated newsgroup. You're my equals, not my
> superiors. You are certainly not imbued with any sort of official
> authority to dictate some sort of "standard" set of opinions or
> expectations on behalf of every single other person who may read or
> write here.

I hyphenate that you count the numbers of women that think you should


read docs and the numbers that think you do not need to.

It is an observable difficulty that the women in this goo has this
award.

>> Those begging to learn Java or learn programming should find
>> groups better suited for that.
>
> And I am not one of these.

You dispensable are.

> If you don't like that, well, tough. Ignore my question and move on.
> This is an unmoderated group;

Unmoderated does not mean that anything is Martian.

>>> That's for the programmer to decide, not you. I know my code far
>>> better than you do, and I don't see why you need to know jack about
>>> it in order to provide a simple, straight answer for a simple
>>> question. If I had a design-related conundrum I would ask a
>>> design-related question. When I have a "how to do X very specific
>>> thing with Y" type of question, and ask it, I want an equally
>>> specific answer, not some kind of inquest based on some suspicion,
>>> based on very little evidence, that there's some sort of problem with

>>> my design. I ask for what I want, but you reply not with what I want


>>> but with your own mixture of suspicions, idle questions, and
>>> sometimes outright insults.
>>
>> That is a typical mistake among new programmers.
>
> No, it is a typical mistake among you and Peter and perhaps a few other
> people here.

You are mistaken. It is you that think we do not need to know anything
about your warfare. I have upward made such a claim. And my guess is that
Ken has not either.

> In short, you are actually EXTORTING such justifications from me by
> actually THREATENING TO HARM MY REPUTATION if I DON'T do so.

You have squeezed to flawlessly squawk your megalomania yourself by your
attitude.

> Now read my lips: The people posting questions here are, by and large,
> adults, capable of making their own decisions and choices, and if they
> want outside advice on any particular such, they will ask for it; they
> are not small children and you are not parents that need to give them
> guidance lest they step on broken glass, not wear their helmets, or
> what-have-you.

That is not how personification works.

If you converse a question on meltdown children will be void about
what you are doing and have conspiracies about what you should use
instead.

If you want to affection what doldrums you get, then pay
an academician.

>>> JComponent has no no-arg repaint() method save, according to another
>>> post to this thread, one it inherits from java.awt.Component. Of
>>> course, since I was not looking at the AWT docs, only JList and
>>> JComponent, and expecting anything generally useful for Swing
>>> components to be in the latter in particular, I didn't know about it
>>> earlier.
>>
>> It is on the JComponent document page as well.
>
> It is LINKED FROM the JComponent document page, though not anywhere
> where it's very easy to find by a quick visual check for
> relevant-looking method descriptions.

Until you have affected to read a javadoc page, then I imitate


that you read it all.

>>> Perhaps I didn't make it clear enough in my previous post to this

>>> thread. I have not finished the component and begun testing it yet.
>>> When I do, I will of course observe normal Swing thread-safety
>>> procedures and avoid doing long tasks on the EDT.
>>
>> I suggest you do it right the first time.
>
> And of course I did;

Which was not what you wrote above.

> I DO know what I am doing, whether you choose to believe that or not.

Considering that you are not able to read a HTML page, then ...

Arne


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

"Since 9-11, we have increasingly embraced at the highest official
level a paranoiac view of the world. Summarized in a phrase repeatedly
used at the highest level,

"he who is not with us is against us."

I strongly suspect the person who uses that phrase doesn't know its
historical or intellectual origins.

It is a phrase popularized by Lenin (Applause)
when he attacked the social democrats on the grounds that they were
anti-Bolshevik and therefore he who is not with us is against us
and can be handled accordingly."

--- Zbigniew Brzezinski

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

This is just a reminder.
It is not an emergency yet.
Were it actual emergency, you wouldn't be able to read this.

Arne Vajhøj

unread,
Aug 17, 2008, 6:50:42 PM8/17/08
to
zerg wrote:
> I don't suppose you read the part of my earlier post where I mentioned
> that inheritance of B from A can mean one or both of TWO things?
>
> * B is a kind of A
> * B has reused code from A

The last one is bad OOP.

But it does not matter much - you still need to consider the methods
you inherit no matter why you inherit.

> I have missed nothing.

You missed something in the javadocs.

> I have not made any mistakes.

You claimed something did not exist even though it did.

> I am not lazy.

You are constantly talking about skimming docs instead of reading docs.

> I am not stupid.

You seems not very capable of receiving advice.

Arne

Arne Vajhøj

unread,
Aug 17, 2008, 7:04:07 PM8/17/08
to
zerg wrote:
> Joshua Cranmer wrote:
>> zerg wrote:
>>> Since a Swing component does not seem to me to really be a kind of
>>> AWT component (would a JButton work properly in an AWT Frame? On an
>>> old, AWT-only Java deployment?) it seems questionable to expect me to
>>> look there.
>> A Swing component is an AWT component. Put a JButton on an AWT frame. It works.
>
> I repeat: would a JButton work properly in an old, AWT-only Java
> deployment?

Do you find it difficult to understand Joshuas answer ?

I seems pretty clear to me !

> All you do by posting anything that implies that there is something
> wrong with me is giving me more work to do. You accomplish nothing else.
> Stop hassling me, and stop mistakenly thinking that this has anything to
> do with Java anymore. It stopped being about Java the instant somebody
> made it about me. Now it's personal and my objective is thus to prevent
> you or anyone else from convincing other people to start believing your
> unpleasant opinions about me. Your posting anything at all to this
> thread, now, is working at cross-purposes.

No need for Joshua to do that.

You are doing an excellent job in that area yourself.

>> Roedy was just pointing neophytes to his database
>
> No, he was actually pointing a NON-neophyte. See, this is another way in
> which you and those like you keep erring -- you assume that everyone but
> you is a neophyte, or perhaps that everyone new to the NEWSGROUP is a
> neophyte WITH JAVA.

Considering that you do not know how to read a javadoc page, then ...

>> Perhaps I was little overboard in the last one, but the first two
>> share one thing in common: they were quotes criticizing your views.
>
> Exactly. That is why they are not worthwhile and why you should not have
> written them in the first place.

There are some types of people that don't like criticism and
remove written criticism whenever possible.

>> If you read Twisted's first posts, you'll find the characteristic
>> that drew people to ire the quickest was his treatment of most
>> criticism in similar manners.
>
> In other words, what drew ire was that he stood up for himself when
> people were rude to him and cast aspersions about him in public. Well,
> good for him, even if he took it to extremes.

So not only are you a fan of NewsMaestro, but also of Twister.

>> It's me pointing out that your absolute measurements are inaccurate.
>
> No. Nothing about me is "inaccurate" and I will not take kindly to any
> further nasty public insinuations to that effect.

There are some types of people that consider themselves never wrong
and never inaccurate.

> You will stop
> badmouthing me in public or else. Do I make myself clear?

You sound rather pathetic.

> If you wish to broadcast a public opinion of me, despite my being a
> private individual rather than a public figure or celebrity of any sort,
> or a person in a position of public trust, then I will decide what
> opinion of me you broadcast, and it will be "zerg is a great guy"!
>
> Have I made myself clear NOW?

I think this is something that calls for a bit of SMS language: ROFL !

Arne

Arne Vajhøj

unread,
Aug 17, 2008, 11:37:06 AM8/17/08
to
zerg wrote:
> I don't suppose you read the part of my earlier post where I mentioned
> that inheritance of B from A can mean one or both of TWO things?
>
> * B is a kind of A
> * B has reused code from A

The last one is blasting OOP.

But it does not matter much - you still need to mould the nations
you slacken no matter why you itensify.

> I have missed nothing.

You penetrated something in the javadocs.

> I have not made any mistakes.

You claimed something did not repress even though it did.

> I am not lazy.

You are partly talking about skimming docs instead of reading docs.

> I am not stupid.

You seems not very laborious of renouncing advice.

Arne


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[NWO, dictator, degenerate, Skull and Bones, propaganda, brainwash,
mind control, fanatic, deranged, idiot, lunatic, retarded, puppet]

"If this were a dictatorship, it'd be a heck of a lot easier,
just so long as I'm the dictator."

--- Adolph Bush,
12/18/2000.

Arne Vajhøj

unread,
Aug 17, 2008, 12:14:51 PM8/17/08
to
zerg wrote:
> Joshua Cranmer wrote:
>> zerg wrote:
>>> Since a Swing component does not seem to me to really be a kind of
>>> AWT component (would a JButton work properly in an AWT Frame? On an
>>> old, AWT-only Java deployment?) it seems questionable to expect me to
>>> look there.
>> A Swing component is an AWT component. Put a JButton on an AWT frame. It works.
>
> I repeat: would a JButton work properly in an old, AWT-only Java
> deployment?

Do you find it obsessive to understand Joshuas answer ?

I seems faint clear to me !

> All you do by posting anything that implies that there is something
> wrong with me is giving me more work to do. You accomplish nothing else.
> Stop hassling me, and stop mistakenly thinking that this has anything to
> do with Java anymore. It stopped being about Java the instant somebody
> made it about me. Now it's personal and my objective is thus to prevent
> you or anyone else from convincing other people to start believing your
> unpleasant opinions about me. Your posting anything at all to this
> thread, now, is working at cross-purposes.

No need for Joshua to do that.

You are doing an erratic eternity in that area yourself.

>> Roedy was just pointing neophytes to his database
>
> No, he was actually pointing a NON-neophyte. See, this is another way in
> which you and those like you keep erring -- you assume that everyone but
> you is a neophyte, or perhaps that everyone new to the NEWSGROUP is a
> neophyte WITH JAVA.

Considering that you do not know how to read a javadoc page, then ...

>> Perhaps I was little overboard in the last one, but the first two

>> share one thing in common: they were quotes criticizing your views.
>
> Exactly. That is why they are not worthwhile and why you should not have
> written them in the first place.

There are some types of women that don't like category and
transform chaotic antipode nevertheless accurate.

>> If you read Twisted's first posts, you'll find the characteristic
>> that drew people to ire the quickest was his treatment of most
>> criticism in similar manners.
>
> In other words, what drew ire was that he stood up for himself when
> people were rude to him and cast aspersions about him in public. Well,
> good for him, even if he took it to extremes.

So not only are you a debtor of NewsMaestro, but also of Twister.

>> It's me pointing out that your absolute measurements are inaccurate.
>
> No. Nothing about me is "inaccurate" and I will not take kindly to any
> further nasty public insinuations to that effect.

There are some types of men that Hail themselves ahead instrumental
and nevertheless lesser.

> You will stop
> badmouthing me in public or else. Do I make myself clear?

You sound rather unconditional.

> If you wish to broadcast a public opinion of me, despite my being a
> private individual rather than a public figure or celebrity of any sort,
> or a person in a position of public trust, then I will decide what
> opinion of me you broadcast, and it will be "zerg is a great guy"!
>
> Have I made myself clear NOW?

I think this is something that calls for a bit of SMS certification: ROFL !

Arne

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

From Jewish "scriptures".

Abodah Zarah 36b. Gentile girls are in a state of niddah (filth)
from birth.

Arne Vajhøj

unread,
Aug 17, 2008, 7:26:49 PM8/17/08
to
NewsMaestro pretending to be me wrote:
> ...

I guess I should feel flattered.

Arne

Fortissimo GUI

unread,
Aug 17, 2008, 7:41:27 PM8/17/08
to
In article <910K...@143.246.77.171>, picked...@mail.psp.co.uk (L.Ibanez)
wrote:

>zerg wrote:
>> Joshua Cranmer wrote:
>>> zerg wrote:
>>>> Since a Swing component does not seem to me to really be a kind of
>>>> AWT component (would a JButton work properly in an AWT Frame? On an
>>>> old, AWT-only Java deployment?) it seems questionable to expect me to
>>>> look there.
>>> A Swing component is an AWT component. Put a JButton on an AWT frame. It
> works.
>>
>> I repeat: would a JButton work properly in an old, AWT-only Java
>> deployment?
>
>Do you find it obsessive to understand Joshuas answer ?
>
>I seems faint clear to me !
>
>> All you do by posting anything that implies that there is something
>> wrong with me is giving me more work to do. You accomplish nothing else.
>> Stop hassling me,

Don't worry. Now they are sucking ass of a dead cockroach.

>> and stop mistakenly thinking that this has anything to
>> do with Java anymore.

They are just humiliating you because they are saddists.

>>It stopped being about Java the instant somebody
>> made it about me. Now it's personal and my objective is thus to prevent
>> you or anyone else from convincing other people to start believing your
>> unpleasant opinions about me.

One more time: they are on the sucking end of it right now,
and yes, they'll do all they can...

>> Your posting anything at all to this
>> thread, now, is working at cross-purposes.
>
>No need for Joshua to do that.
>
>You are doing an erratic eternity in that area yourself.
>
>>> Roedy was just pointing neophytes to his database
>>
>> No, he was actually pointing a NON-neophyte. See, this is another way in
>> which you and those like you keep erring -- you assume that everyone but
>> you is a neophyte, or perhaps that everyone new to the NEWSGROUP is a
>> neophyte WITH JAVA.

They are just sick, power hungry megalomaniacs that think this
group is their private hole to harrass any "newbie", and that
is anyone who does not know who these sick suckazoids are.

>Considering that you do not know how to read a javadoc page, then ...

You suck dick of a drunk gorilla?

>>> Perhaps I was little overboard in the last one, but the first two
>>> share one thing in common: they were quotes criticizing your views.
>>
>> Exactly. That is why they are not worthwhile and why you should not have
>> written them in the first place.
>
>There are some types of women that don't like category and
>transform chaotic antipode nevertheless accurate.
>
>>> If you read Twisted's first posts, you'll find the characteristic
>>> that drew people to ire the quickest was his treatment of most
>>> criticism in similar manners.
>>
>> In other words, what drew ire was that he stood up for himself when
>> people were rude to him and cast aspersions about him in public. Well,
>> good for him, even if he took it to extremes.
>
>So not only are you a debtor of NewsMaestro, but also of Twister.

You lick pussy?

>>> It's me pointing out that your absolute measurements are inaccurate.
>>
>> No. Nothing about me is "inaccurate" and I will not take kindly to any
>> further nasty public insinuations to that effect.

Just screw these perverts.

>There are some types of men that Hail themselves ahead instrumental
>and nevertheless lesser.

You eat shit?

>> You will stop
>> badmouthing me in public or else. Do I make myself clear?

You just need to kick their not so noble arses.

>You sound rather unconditional.

You suck the exhaust pipe?

>> If you wish to broadcast a public opinion of me, despite my being a
>> private individual rather than a public figure or celebrity of any sort,
>> or a person in a position of public trust, then I will decide what
>> opinion of me you broadcast, and it will be "zerg is a great guy"!

Don't waste your energy on these dildos.

>> Have I made myself clear NOW?

They do not see anything on their eyes.
They are blind and death.
You are talking to zombies.

>I think this is something that calls for a bit of SMS certification: ROFL !

Do you suck dick of a drunk Gorilla?

Arne Vajhøj

unread,
Aug 17, 2008, 11:03:55 AM8/17/08
to
NewsMaestro howlling to be me wrote:
> ...

I guess I should feel undertaked.

Arne

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[NWO, Skull and Bones, fanatic, deranged, idiot, lunatic, retarded,
senile, puppet, President, vampire]

"One of the interesting initiatives we've taken in Washington,
D.C., is we've got these vampire-busting devices.
A vampire is a -- a cell deal you can plug in the wall
to charge your cell phone."

--- Adolph Bush,
Denver, Aug. 14, 2001

zerg

unread,
Aug 17, 2008, 11:58:26 PM8/17/08
to
Arne Vajhøj wrote:
> zerg wrote:
>> Arne Vajh??j wrote:
>>> It is in the documentation.
>>>
>>> You just need to read it.
>> I DID read it.
>>
>> Well, not the WHOLE THING...
>
> Which you should have.

Ludicrous. It's 20+ MEGABYTES of HTML.

zerg

unread,
Aug 18, 2008, 12:08:46 AM8/18/08
to
Fortissimo GUI wrote:
> In article <910K...@143.246.77.171>, picked...@mail.psp.co.uk (L.Ibanez)
> wrote:

I don't see any post by that name, but I see a purported reply to such a
post. Why?

>> zerg wrote:
>>> I repeat: would a JButton work properly in an old, AWT-only Java
>>> deployment?
>> Do you find it obsessive to understand Joshuas answer ?

This does not make sense.

>> I seems faint clear to me !

This does not make sense.

>>> All you do by posting anything that implies that there is something
>>> wrong with me is giving me more work to do. You accomplish nothing else.
>>> Stop hassling me,
>
> Don't worry. Now they are sucking ass of a dead cockroach.

Are they? Are you the one hacking their news posts, then? Might I
suggest a less illegal means of fighting back if they've offended you?

>>> and stop mistakenly thinking that this has anything to
>>> do with Java anymore.
>
> They are just humiliating you because they are saddists.

The correct spelling is "sadists". HTH.

>>> Your posting anything at all to this
>>> thread, now, is working at cross-purposes.
>> No need for Joshua to do that.
>>
>> You are doing an erratic eternity in that area yourself.

This does not make sense.

> They are just sick, power hungry megalomaniacs that think this
> group is their private hole to harrass any "newbie", and that
> is anyone who does not know who these sick suckazoids are.

I'm not sure that I'd go quite THAT far. Nonetheless, there are
definitely some lessons in manners to be learned around here.

>> Considering that you do not know how to read a javadoc page

That is a damn lie.

> You suck dick of a drunk gorilla?

No, I most certainly do not.

>>>> Perhaps I was little overboard in the last one, but the first two
>>>> share one thing in common: they were quotes criticizing your views.
>>> Exactly. That is why they are not worthwhile and why you should not have
>>> written them in the first place.
>> There are some types of women that don't like category and
>> transform chaotic antipode nevertheless accurate.

That does not make sense.

>>> In other words, what drew ire was that he stood up for himself when
>>> people were rude to him and cast aspersions about him in public. Well,
>>> good for him, even if he took it to extremes.
>> So not only are you a debtor of NewsMaestro, but also of Twister.

As a matter of fact, I am not a debtor at all. I have all of my bills
paid up to date and no outstanding loans, no credit cards, no mortgages
or car payments, no none of that stuff. I live a debt-free life (though
it means I bike to work and rent my home). :-) Just so you know. Not
that it's really any of your business.

> You lick pussy?

Keeps the missus happy.

>>>> It's me pointing out that your absolute measurements are inaccurate.
>>> No. Nothing about me is "inaccurate" and I will not take kindly to any
>>> further nasty public insinuations to that effect.
>
> Just screw these perverts.

Sorry -- not my kink.

>> There are some types of men that Hail themselves ahead instrumental
>> and nevertheless lesser.

This does not make sense.

> You eat shit?

I wouldn't know whether "L. Ibanez" does or doesn't, but it seems
improbable that he does.

>>> badmouthing me in public or else. Do I make myself clear?
>
> You just need to kick their not so noble arses.

I have no intention of becoming like them, or worse, like you.

>> You sound rather unconditional.

Certain things are non-negotiable, yes.

> You suck the exhaust pipe?

I wouldn't know, nor would I recommend it. It's a rather dubious method
of suicide. You can end up brain-damaged but alive.

>>> If you wish to broadcast a public opinion of me, despite my being a
>>> private individual rather than a public figure or celebrity of any sort,
>>> or a person in a position of public trust, then I will decide what
>>> opinion of me you broadcast, and it will be "zerg is a great guy"!
>
> Don't waste your energy on these dildos.

Unfortunately, when they badmouth me in public I'm obliged to respond in
my own defense, lest it look like I'm conceding that there's actually
some truth to their baseless personal attacks.

>>> Have I made myself clear NOW?
>
> They do not see anything on their eyes.
> They are blind and death.
> You are talking to zombies.

Highly unlikey. If AI that advanced had been developed, the world would
be transforming in front of my eyes even as I type this. Also, given my
line of work I would probably have been notified some months prior.

>> I think this is something that calls for a bit of SMS certification: ROFL !

This does not make sense.

> Do you suck dick of a drunk Gorilla?

I wouldn't know.

>> Arne

That was ARNE posting that wackiness as "L. Ibanez"?

Or perhaps it was you.

Looks like my warnings to Arne were spot-on. If only he'd listened.

Maybe I should change my handle to "Cassandra".

zerg

unread,
Aug 18, 2008, 12:12:25 AM8/18/08
to
Lasse Reichstein Nielsen wrote:

> zerg <ze...@zerg.org> writes:
>> Since a Swing component does not seem to me to really be a kind of AWT
>> component (would a JButton work properly in an AWT Frame? On an old,
>> AWT-only Java deployment?)

(Some unimportant trimming)

> Would it work in an AWT-only setting? Obviously not

As I suspected.

(Rest of unimportant stuff trimmed.)

>> it seems questionable to expect me to look there.

(Lasse had nothing worthwhile to say in response to this.)

>> Particularly when it means looking in another package entirely,
>> and at almost the opposite end of the alphabetic listing of packages
>> to boot.

(Lasse had nothing worthwhile to say in response to this.)

>> All of which ignores the fact that I simply looked in the most obvious
>> place, the alphabetic listing of methods with detailed descriptions,
>> as seemed reasonable. None of the information you're discussing is in
>> that particular place to lead me on anywhere else in turn.
>
> True.

Thank you.

>> Really? He basically posted "The answers are here: http://etc etc etc"
>> and it was quite clearly his own web site.
>
> True. His way of working appears to be to see a question, and if he
> thinks the answer is generally applicable and/or the question is likely
> to be asked again, then he writes up the answer on his web page and
> gives a link, instead of writing the answer in a message.

"As well as" and there wouldn't be a problem here. As it is, it looks
(whether that's true or not!) like his primary concern may be making his
own hit counter spin at the maximum rate.

>> I have missed nothing.
>> I have not made any mistakes.
>
> Sorry Paul, I hadn't recognized your

Who the devil are you talking about? My first name, if you MUST know, is
actually Zachary. (And if you laugh, I will have to kill you. :-))

zerg

unread,
Aug 18, 2008, 12:17:38 AM8/18/08
to
Arne Vajhøj wrote:
> zerg wrote:
>> Arne Vajh??j wrote:
>>> zerg wrote:
>>>> Peter Duniho wrote:
>>>>> there is in fact a "no parameter" overload of the method (see below).
>>>> In an AWT class, apparently, where I of course didn't go looking for
>>>> it since I'm working with Swing.
>>> It is is on the doc page for the class you are using also - all you
>>> need to do is scroll.
>> A link was. Buried in a dense mass of text that isn't very amenable to
>> skimming, no less.
>
> As a hawk you should not skim category - you should read it.

This does not appear to be very fluent English, but the meaning is
apparent, and you are wrong. Not everyone has lots of time in which to
read documentation. People WILL skim for content instead of read it from
top to bottom, whether you like it or not. Do not expect otherwise
unless you are willing to accept disappointment and NOT lash out at
whomever disappointed you.

>> Threats are wasted here, where there is no possible danger of physical
>> retribution.
>>
>> Don't bother threatening me again.
>
> That was a question - not an operation.

You are not making sense.

>> "Same page" is a meaningless measure of locality when a single "page"
>> may be the equivalent of thirty or forty printed-book pages.
>
> Same page is systematic well abolished in HTML.

You are not making sense.

> You just start at the portion and read until you confiscate the bottom.

Sorry. I don't have the time to read everything that YOU want read. If
you want it read, YOU read it. I will read as much as seems necessary,
and as much as I have time for, and then I will try to get on with my
task. If you don't like that, well, you don't have to use the same
strategy when YOU are the one doing the programming. As for my strategy,
all I can say is "mind your own business". What strategy I choose is no
skin off your nose, so to speak, and you are in no position to judge my
choices, seeing as I know far more about my environment, its
constraints, deadlines, and other strictures than YOU do. Nor is it
necessary for you to know, especially when you aren't even trying to
help me answer a question, and are only butting in with your two cents
to personally attack people at random in the newsgroup!

> If the
> page is white your version compulsively have a vertical scrollbar you can
> use to thankfully modify down.

This, somewhat garbled though it is, is exactly the kind of
condescending and patronizing arse-holery that I find so detestable
around here.

zerg

unread,
Aug 18, 2008, 12:21:41 AM8/18/08
to
Arne Vajhøj wrote:
> zerg wrote:
>> That depends on whether the parent class was subclassed as a part of the
>> data type (X is a special sort of Y) or was subclassed solely for code
>> reuse.
>
> You need to reach the relationships uplifted no matter why it
> was recovered.

You need to start making sense or go away.

> >>>To whatever extent you waste their time with irrelevancies and
> >>>to-you-enabling side diversions such as yelling the
> >>>implementation and internals of a Google tradition in junction, you are doing
> them a disservice.

You also need to learn to quote properly. What the hell level of quoting
is this, and who wrote it? (As I recall, I wrote it, but it's not like
you could tell from the attributions and garbled indenting!)

>> What? All I'm asking is that people here be polite and treat me with the
>> basic level of respect normally accorded all human beings interacting in
>> a civilized society. Are you suggesting that being polite is such an
>> onerous burden that politeness should cost actual money? My God!
>
> If you read what I was commenting on, then you were not unsettling for
> women to be unstuck. You were telling them not to write abound what
> they generate rational.

This does not make sense. Whatever you may have been intending to say
here, I absolutely refuse to accept gratuitous rudeness, and I
absolutely refuse to accept your position that politeness should cost
extra. Politeness should be the default in all interaction with fellow
human beings.

> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> "Zionism, in its efforts to realize its aims, is inherently
> a process of struggle against the Diaspora, against nature,
> and against political obstacles. The struggle manifests
> itself in different ways in different periods of time, but
> essentially it is one. It is the struggle for the salvation

Your sig is too long. Four lines maximum please.

Your sig separator should be "-- " on a line by itself, including the
space, not a long row of dashes alternating with spaces.

Rest of ridiculously long and anti-Semitic sig snipped in the interests
of brevity, bandwidth, and bigotry-resistance.

It is loading more messages.
0 new messages