FLTK 1.4.5: Todo List

FLTK 1.4.5

Loading...
Searching...
No Matches
Todo List

Page Adding and Extending Widgets
  Clarify Fl_Window::damage(uchar) handling - seems confused/wrong? ORing value doesn't match setting behavior in Fl_Widget.H!
Member Fl::now (double offset=0)
  Fl::system_driver()->gettime() was implemented for the Forms library and has a limited resolution (on Windows: milliseconds). On POSIX platforms it uses gettimeofday() with microsecond resolution. A new function could use a better resolution on Windows with its multimedia timers which requires a new dependency: winmm.lib (dll). This could be a future improvement, maybe set as a build option or generally (requires Win95 or 98?).
Member Fl_Browser_::scrollbar_width () const
  This method should eventually be removed in 1.4+
Member Fl_Browser_::scrollbar_width (int width)
  This method should eventually be removed in 1.4+
Class Fl_Chart
  Refactor Fl_Chart::type() information.
Member Fl_File_Input::errorcolor () const
  Remove Fl_File_Input::errorcolor() in FLTK 1.5.0 or higher.
Member Fl_File_Input::errorcolor (Fl_Color c)
  Remove Fl_File_Input::errorcolor(Fl_Color) in FLTK 1.5.0 or higher.
Member fl_filename_list (const char *d, struct dirent ***l, Fl_File_Sort_F *s=fl_numericsort)
  should support returning OS error messages
Class Fl_Grid
  This (relative group coordinates of nested groups of Fl_Grid) needs explanation and maybe an example.
Member Fl_Grid::Cell::~Cell ()
  Fl_Grid's cell destructor should remove the cell from the grid. Currently it does nothing!
Member Fl_Grid::clear_layout ()
  Fl_Grid::clear() needs to be implemented as documented above!
Member Fl_Grid::debug (int level=127)

  Add more information about cells and children.

  Control output by using `level`.

Member Fl_Grid::Fl_Grid (int X, int Y, int W, int H, const char *L=0)
  More documentation of Fl_Grid constructor?
Member Fl_Grid::layout (int rows, int cols, int margin=-1, int gap=-1)
  Document when and why to call layout() w/o args. See Fl_Flex::layout()
Member Fl_Grid::layout ()
  Document when and why to call layout() w/o args. See Fl_Flex::layout()
Member Fl_Group::delete_child (int n)
  Reimplementation of Fl_Group::delete_child(int) in more FLTK subclasses. This is not yet complete.
Member fl_height (int font, int size)
  In the future, when the XFT issues are resolved, this function should simply return the 'size' value.
Member Fl_Input_::handle_mouse (int, int, int, int, int keepmark=0)
  Add comment and parameters
Member Fl_Input_::handletext (int e, int, int, int, int)
  Add comment and parameters
Struct Fl_Label
  There is an aspiration that the Fl_Label type will become a widget by itself. That way we will be avoiding a lot of code duplication by handling labels in a similar fashion to widgets containing text. We also provide an easy interface for very complex labels, containing html or vector graphics. However, this re-factoring is not in place in this release.
Member Fl_Menu_::add (const char *, int shortcut, Fl_Callback *, void *=0, int=0)
  Raw integer shortcut needs examples. Dependent on responses to https://www.fltk.org/newsgroups.php?gfltk.coredev+v:10086 and results of STR#2344
Member Fl_Shortcut
  Discuss and decide whether we can "shift" these special keyboard flags to the upper byte to enable full 21-bit Unicode characters (U+0000 .. U+10FFFF) plus the keyboard indicator bits as this was originally intended. This would be possible if we could rely on all programs being coded with symbolic names and not hard coded bit values.
Member Fl_Terminal::scrollbar

  Support scrollbar_left/right() - See Fl_Browser_::scrollbar docs

  Support new ScrollbarStyle

Member Fl_Text_Display::extend_range_for_styles (int *start, int *end)
  Unicode?
Member Fl_Text_Display::handle_vline (int mode, int lineStart, int lineLen, int leftChar, int rightChar, int topClip, int bottomClip, int leftClip, int rightClip) const

  we need to handle hidden hyphens and tabs here!

  we handle all styles and selections

  we must provide code to get pixel positions of the middle of a character as well

Member Fl_Text_Display::overstrike (const char *text)
  Unicode? Find out exactly what we do here and simplify.
Member Fl_Text_Display::position_to_linecol (int pos, int *lineNum, int *column) const
  a column number makes little sense in the UTF-8/variable font width environment. We will have to further define what exactly we want to return. Please check the functions that call this particular function.
Member Fl_Text_Display::scroll (int topLineNum, int horizOffset)
  Column numbers make little sense here.
Member Fl_Text_Display::scrollbar_width () const
  This method should eventually be removed.
Member Fl_Text_Display::scrollbar_width (int width)
  This method should eventually be removed
Member Fl_Text_Display::shortcut () const
  FIXME : get set methods pointing on shortcut_ have no effects as shortcut_ is unused in this class and derived!
Member Fl_Text_Display::shortcut (int s)
  FIXME : get set methods pointing on shortcut_ have no effects as shortcut_ is unused in this class and derived!
Member Fl_Text_Display::wrapped_column (int row, int column) const

  What does this do and how is it useful? Column numbers mean little in this context. Which functions depend on this one? Function TextDXYToUnconstrainedPosition does not exist (nedit port?)

  Unicode?

Member Fl_Text_Display::wrapped_row (int row) const
  What does this do and how is it useful? Column numbers mean little in this context. Which functions depend on this one? Function TextDXYToUnconstrainedPosition does not exist (nedit port?)
Member Fl_Tiled_Image::Fl_Tiled_Image (Fl_Image *i, int W=0, int H=0)
  Fix Fl_Tiled_Image as background image for widgets and windows and fix the implementation of Fl::scheme(const char *).
Member Fl_Tree::handle (int e) FL_OVERRIDE
  add Fl_Widget_Tracker (see Fl_Browser_.cxx::handle())
Member Fl_Tree::is_scrollbar (Fl_Widget *w)
  should be const
Member Fl_Tree::show_self ()
  should be const
Member Fl_Window::show () FL_OVERRIDE
  Check if we can remove resetting the current group in a later FLTK version (after 1.3.x). This may break "already broken" programs though if they rely on this "feature".
Page FLTK Basics
  This section needs a major rework. Add a chapter "Building FLTK with CMake".
Page Handling Events
  Add details on how to detect repeating keys, since on some X servers a repeating key will generate both FL_KEYUP and FL_KEYDOWN, such that to tell if a key is held, you need Fl::event_key(int) to detect if the key is being held down during FL_KEYUP or not.
Page Unicode and UTF-8 Support

  FLTK 1.3 and later supports the full Unicode range (21 bits), but there are a few exceptions, for instance binary shortcut values in menus (Fl_Shortcut) can only be used with characters from the BMP (16 bits). This may be extended in a future FLTK version.

  Work through the code and this documentation to harmonize the [OksiD] and [fltk2] functions.

  Verify 16/24 bit Unicode limit for different character sets? OksiD's code appears limited to 16-bit whereas the FLTK2 code appears to handle a wider set. What about illegal characters? See comments in fl_utf8fromwc() and fl_utf8toUtf16().