That code = Code that overrides the paint method.  Is that the best way to 
paint a custom widget in Pivot?  It seems as if it would be, going to Java2D 
directly, but I just wanted to make sure since I am still learning of Pivot's 
capabilities and power.

Thanks,
Cynthia 

-----Original Message-----
From: Greg Brown [mailto:[email protected]] 
Sent: Thursday, March 07, 2013 9:59 AM
To: [email protected]
Subject: Re: why does this paint twice?

What code?

On Mar 7, 2013, at 12:30 PM, "Schwartz, Cynthia L" 
<[email protected]> wrote:

> Is that code the best (fastest, most efficient...)  way to accomplish the 
> painting of a custom control in Pivot?
> 
> Thanks
> Cynthia
> 
> -----Original Message-----
> From: Greg Brown [mailto:[email protected]]
> Sent: Thursday, March 07, 2013 9:22 AM
> To: [email protected]
> Subject: Re: why does this paint twice?
> 
> paint() is called any time any region of the screen needs to be updated. This 
> update could be triggered by the application or it could be triggered by the 
> OS (for example, if an overlapping window is moved). 
> 
> The graphics context passed to paint() will be clipped to the bounds of the 
> update region, but you should generally optimize your component's drawing 
> code so it only draws that part that needs to be repainted.
> 
> On Mar 7, 2013, at 12:08 PM, "Schwartz, Cynthia L" 
> <[email protected]> wrote:
> 
>> I am writing a custom control and want to understand why this is painting 
>> twice. Complete code below.
>> 
>> Thanks,
>> Cynthia
>> 
>> public class PaintTest extends Application.Adapter {
>>    private Window window = null;
>>    private Waveform waveform = null;
>> 
>>    @Override
>>    public void startup(Display display, Map<String, String> properties) {
>>        window = new Window();
>>                waveform = new Waveform();
>>                window.setContent(waveform);
>>        window.setMaximized(true);
>>        window.open(display);
>>    }
>> 
>>    @Override
>>    public boolean shutdown(boolean optional) {
>>        if (window != null) {
>>            window.close();
>>        }
>> 
>>        return false;
>>    }
>> 
>>    public static void main(String[] args) {
>>        DesktopApplicationContext.main(PaintTest.class, args);
>>    }
>> 
>> }
>> 
>> package painttest;
>> 
>> import java.awt.Graphics2D;
>> import org.apache.pivot.wtk.Panel;
>> 
>> public class Waveform extends Panel
>> {
>>       @Override
>>        public void paint(Graphics2D graphics)
>>    {
>>                System.out.println("Painting"); } }
>> 
>> 
> 

Reply via email to