|
From: | Ben Abbott |
Subject: | Re: FLTK refresh required |
Date: | Fri, 26 Jul 2013 22:07:19 -0400 |
On Jul 26, 2013, at 9:13 AM, Ben Abbott wrote:On Jul 25, 2013, at 9:49 PM, Dmitri A. Sergatskov wrote:On Thu, Jul 25, 2013 at 2:39 PM, Dmitri A. Sergatskov <address@hidden> wrote: Below is a short Octave session run on Mac OSX which indicates the axes box size (marked as 434x310) is the correct fractional size of the figure size (marked as 560x440). ------------------------- figure set (gcf, 'position', [130, 436, 560, 380]) axes set (gca, 'units', 'pixels') get (gca, 'position') ans = 73.80000 42.80000 434.00000 309.70000 ------------------------- This looks to confirm Michael's hypothesis, which I've included below. - Octave creates a figure object with the default position - FLTK backend creates the corresponding window and size it to the figure position - FLTK backend puts the OpenGL widget *and* the menubar and the statusbar within the allocated window - Because of the height of the menubar and statusbar, the OpenGL widget height is less than the default height from the "position" property - FLTK event loop processes the move/resize event that is (always) occurring when a window is initially shown - FLTK backend updates the position property with the real OpenGL widget size On Mac OSX ... ------------------------- figure axes set (gca, 'units', 'pixels') get (gcf, 'position') ans = 300 200 560 420 get (gca, 'position') ans = 73.80000 47.20000 434.00000 342.30000 ------------------------- The axes and figure size is what is expected (the FLTK event loop is not modifying them from their default value). However, while the axes box size is the proper size (see below), the figure' size is too tall by 20 pixels. The menu bar is also missing. I can get that back by adding a clf (). The figure area appears to be rendered on top of the menubar. Over the weekend, I'll open a bug report for Linux, and update bug # 39555 for Mac OSX. Ben |
[Prev in Thread] | Current Thread | [Next in Thread] |