Hi Jim
I fought with x17 too. Philosophically the only correct behaviour for a driver
to do on resize is to replot the whole buffer. For x17, this is clearly much
more plotting than necessary. However, the only alternative is for each driver
to have a buffer parser which checks which part of the buffer to plot. This
should not be included in the drivers, but could be a future optimisation in
Plplot core code. Already I think the division of labour between drivers and
core is more blurred than it should be and including parsing in the drivers
would worsen, not improve this.
Phil
-----Original Message-----
From: "Jim Dishaw" <j...@dishaw.org>
Sent: 04/07/2015 19:58
To: "Alan W. Irwin" <ir...@beluga.phys.uvic.ca>
Cc: "Phil Rosenberg" <p.d.rosenb...@gmail.com>; "PLplot development list"
<Plplot-devel@lists.sourceforge.net>
Subject: Re: [Plplot-devel] Status report on remaining issues to be
addressedfor the forthcoming 5.11.1 release (wxwidgets issues)
The behavior with the -np flag is something I have grappled with while
implementing the new windows driver. Example 17 is particularly challenging
because of the way the stripchart function is implemented.
Splitting out the wait for user input from the EOP handler is part of the fix.
If that function is not defined, that might be part of the problem.
As for example 17, what should the behavior be on a resize event? Right now I
play the back the entire buffer, which shows all the rescalings. I think the
correct behavior on a resize would be to render the most recent frame.
> On Jul 4, 2015, at 1:51 PM, Alan W. Irwin <ir...@beluga.phys.uvic.ca> wrote:
>
> Hi Phil:
>
> Your recent efficiency improvements means it is now a lot more
> convenient to test the wxwidgets device. So I have done that and
> noticed the following issues that appear to be caused by your
> efficiency improvements.
>
> * The -np option no longer works properly. For example, before these
> efficency improvements
>
> examples/c/x08c -dev wxwidgets -np
>
> would (extremely slowly) render each page of that example and then exit.
>
> Now, the rendering for each page simply presents a a black screen
> before the exit occurs. Sometimes, just as the example exits you will
> see a quick flash of the last page, but usually not.
>
> In addition, the example now produces the following WARNING message
> for 5 of the pages
>
> *** PLPLOT WARNING ***
> Failed to get text size from wxPLViewer - timeout
>
> Without the -np option, none of these problems occur, and the
> time to render all the example 8 pages has a noticeable efficiency
> improvement consistent with the length of time the black screen
> is rendered when the -np option is used.
>
> * examples/c/x17c -dev wxwidgets shows huge efficiency improvements,
> but it has changed from an interactive plot showing all the
> intermediate results to a black screen until the very end which then
> shows the final results. In other words, the interactive nature of
> this example has been lost.
>
> * examples/c/x26c -dev wxwidgets shows something is wrong with the
> delivery of string-length calculations between -dev wxwidgets and
> wxPLViewer. (For this case I am not sure whether this issue was
> introduced right when you implemented the new string-length
> calculation for wxwidgets or is the result of your recent efficiency
> changes.) The delivery of string-length information should be done
> independently for each page of this example (since the Russian text of
> the second page is longer than the English text of the first page).
>
> What goes on here is that _for each page of the example_ the pllegend
> call internally calls plstrl which then requests the wxwidgets device
> to deliver plsc->string_length (used by pllegend to adjust legend-box
> size) before wxwidgets actually renders the string. Of course, the
> complication is that -dev wxwidgets measures string lengths and
> renders those strings indirectly via wxPLViewer. So obviously there
> has to be communications between -dev wxwidgets and wxPLViewer for
> every different page of example 26 to get that done properly.
>
> Instead what happens now is that examples/c/x26c -dev wxwidgets
> incorrectly finishes (i.e., you get a command-line prompt and/or time
> results if requested) as soon as the first page of that example has
> been rendered by wxPLViewer. And when the second page is viewed by
> hitting the enter key for the wxPLViewer GUI, the legend box (which
> should be controlled by the string-length calculation for the Russian
> text of that page) appears to be the same size as the first page so
> that the longer Russian text for the second page overflows the legend
> box for that page.
>
> Alan
> __________________________
> Alan W. Irwin
>
> Astronomical research affiliation with Department of Physics and Astronomy,
> University of Victoria (astrowww.phys.uvic.ca).
>
> Programming affiliations with the FreeEOS equation-of-state
> implementation for stellar interiors (freeeos.sf.net); the Time
> Ephemerides project (timeephem.sf.net); PLplot scientific plotting
> software package (plplot.sf.net); the libLASi project
> (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
> and the Linux Brochure Project (lbproject.sf.net).
> __________________________
>
> Linux-powered Science
> __________________________
>
> ------------------------------------------------------------------------------
> Don't Limit Your Business. Reach for the Cloud.
> GigeNET's Cloud Solutions provide you with the tools and support that
> you need to offload your IT needs and focus on growing your business.
> Configured For All Businesses. Start Your Cloud Today.
> https://www.gigenetcloud.com/
> _______________________________________________
> Plplot-devel mailing list
> Plplot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/plplot-devel
------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel