FLTK logo

Re: [fltk.coredev] Fl_Text_Display regression? Or API change?

FLTK matrix user chat room
(using Element browser app)   FLTK gitter user chat room   GitHub FLTK Project   FLTK News RSS Feed  
  FLTK Apps      FLTK Library      Forums      Links     Login 
 All Forums  |  Back to fltk.coredev  ]
 
Previous Message ]New Message | Reply ]Next Message ]

Re: Fl_Text_Display regression? Or API change? Gonzalo Garramuño 10:59 Mar 20  
 

On 3/20/2024 2:26 PM, 'Albrecht Schlosser' via fltk.coredev wrote:
On 3/20/24 17:53 Gonzalo Garramulo wrote:
Okay.  After digging, I found what it was.  I was subclassing
Fl_Text_Display and initializing its Fl_Text_Buffer in the constructor
like:

    mBuffer = new Fl_Text_Buffer();

instead of calling the textdisplay->buffer() function.  It turns out
textdisplay->buffer() sets a callback that counts lines when
wrap_mode() is not set to WRAP_AT_BOUNDS.  Changing my code to:

     Fl_Text_Buffer* buf = new Fl_Text_Buffer();
     buffer(buf);

Find attached a sample program for testing.

I'm glad you found the issue.

FTR: The only thing we could do in FLTK to prevent such kinds of errors
would be to make some of the protected members private but
Fl_Text_Display is such a "beast" that I wouldn't want to open that can
of worms.

I thought the same, and was about to suggest it.  But... you can have multiple shared Fl_Text_Buffers or a single one used in one Fl_Text_Display and you might want to delete them in the destructor like I do.  Making the variables private would prevent you from deleting them.

I think the best solution would be to document this with a note in the buffer() function.

--
You received this message because you are subscribed to the Google Groups "fltk.coredev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fltkcoredev+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/fltkcoredev/7839ee97-d724-4dbf-b1c9-07e3c8989c1d%40gmail.com.
Direct Link to Message ]
 
     
Previous Message ]New Message | Reply ]Next Message ]
 
 

Comments are owned by the poster. All other content is copyright 1998-2024 by Bill Spitzak and others. This project is hosted by The FLTK Team. Please report site problems to 'erco@seriss.com'.