TIP 510: Add Rbc to Tk

FlightAware bounty program for improvements to Tcl and certain Tcl packages.
Author:         René Zaumseil <r.zaumseil@freenet.de>
State:          Draft
Type:           Project
Created:        5-Jun-2018
Keywords:       Tk
Tcl-Version:    8.7
Tk-Branch:      tip-510


Rbc aka "Refactored BLT Components" provides some widgets which are missing in Tk. This tip intend to add Rbc in the same way as Ttk to Tk.


Tk has already adopted some of BLT/Rbc commands. Still missing are the widgets.

Rbc is available on sourceforge. But the development is stalled.

Modernizing Rbc and including it in Tk will give some great new widgets. Using the same approach like in Ttk will give results in very short time. There is also less risk because Rbc is already used in different projects.


C-source code will be put in .../generic/rbc/ Tcl-source code will be put in .../library/rbc/ Test files will be put in .../tests/rbc/

The Rbc files will be added to the makefiles. The Rbc__Init() function will be added in tkWindow.c


Which commands should be included?

  • vector: needed for graph
  • graph: curve display widget
  • stripchart:
  • barchart:
  • busy: not needed, because we already have tk busy
  • winop: ?

Should there be a special switch to enable compiling and including Rbc?

Should we change Rbc to some other name to prevent name clashes?

Should we export a C-interface?

See also discussion at the wiki.


A patch implementing these changes will be available in the fossil repository in the tip-510 branch.

Test/Documentation updates not yet done.


  • Rewrite new tk widgets with code of rbc


This document has been placed in the public domain.