@Alan > Isn't that loss of functionality by definition a backwards > incompatibility in the API for the plplotwxwidgets library?
yes but for the current (5.11.1) release compared to the new implemented examples, the effect is the same previously the way to start the demo was wxPLplotwindow<wxFrame> *frame = new wxPLplotwindow<wxFrame>(); and now is wxPLplotwindow *frame = new wxPLplotwindow(); and because wxPLplotwindow is a child of a wxFrame, the visible effect is exactly the same, a frame window that shows a plot. -Pedro On 2016-12-27 02:12, Alan W. Irwin wrote: > On 2016-12-26 21:30-0500 Pedro Vicente wrote: > >> @Alan, Phil >> >>> Now that we have such a widely tested solution, would you be >>> willing >>> to write a short summary paragraph concerning the changes in the >>> plplotwxwidgets library API? >> >> here it goes. The API really has no visible changes, but has a loss >> of functionality >> (use of templates, i.e, ability to do plots other than in wxFrame >> windows) > > @Phil and Pedro: > > Isn't that loss of functionality by definition a backwards > incompatibility in the API for the plplotwxwidgets library? If Phil > and you confirm that interpretation, I will need to warn about > that in the release notes. > > Important questions below for Phil. > >> >> "Fixed a bug that happened in test_wxPLplotDemo for some Linux >> configurations. >> The effect of the bug was a segmentation fault, due to the fact that >> an invalid >> plot stream pointer was used. The cause of the stream pointer being >> invalid >> is that the frame window did not initialize in a timely manner. This >> behaviour is a >> wxWidgets feature that can or cannot happen in GTK/X11 window >> systems. >> The solution for test_wxPLplotDemo was to initialize the stream in >> the function >> Create(), which is done immediatley, instead of doing it on the >> function OnCreate(), >> that is called later and executed at an indeterminated time. Note: >> the possiblility and request of creating >> the stream in OnCreate() is still present, because this is a feature >> of the driver needed elsewhere. >> A side effect of creating the new function Create() for the class >> wxPLplotwindow, >> is that the class cannot be a template. At this time the class is >> descendant from >> wxFrame, so only wxFrame windows can be created." >> >> >>> To help you figure out what to say, here is how to discover the >>> changes since plplot-5.11.1 in the library API and our demo that >>> links >>> with that library: >>> git diff --ignore-all-space plplot-5.11.1 bindings/wxwidgets/*.h >> >> >> I did not got back in time this way, because all the other changes >> were made by Phil. >> >> Basically what I did was start with the current master of >> wxPLplotwindow and >> >> 1) override a function Create() >> 2) do an auxilirary function CreateStream() that contains the code >> that was previously in >> OnCreate(). This function is both called by Create() and OnCreate(). >> A boolean >> flag assures that is only executed 1 time. >> 3) Moved the event trigering that was previously on the >> wxPLplotwindow constructor >> by ::Connect() calls >> to a static event table >> >> This change 3) was not really needed, it was just to reflect the >> current way of handling events >> >> http://docs.wxwidgets.org/3.1/overview_events.html >> >> either by the static event table or by ::Bind() >> >> >> feel free to change anything in the description. > > @ Pedro: > > Thanks for the above description of what you did. > > @Phil: > > I need your answers to the following questions. > > 1. Can you spot any release-critical issues with Pedro's present > two-commit fix (i.e., any trouble you can forsee for our Unix > and/or Windows users if we release with this)? > > 2. Are there any essential short-term changes you want to make to his > approach for this release? (Essential here means release-critical > as used in question 1.) > > 3. Are there any long-term (post-release) changes you want to make to > his approach? > > Your answers to these questions are release critical so I would > appreciate your timely response to them. > > 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 > __________________________ -- Pedro Vicente pedro.vice...@space-research.org http://www.space-research.org/ ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, SlashDot.org! http://sdm.link/slashdot _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel