FLTK 1.4.4

Loading...
Searching...
No Matches
fl_types.h File Reference

This file contains simple "C"-style type definitions. More...

`#include "fl_attr.h"`

Go to the source code of this file.

## Typedefs
Miscellaneous
typedef unsigned int | Fl_Shortcut
| 16-bit Unicode character + 8-bit indicator for keyboard flags.
typedef unsigned char | uchar
| unsigned char
typedef unsigned long | ulong
| unsigned long

## Detailed Description

This file contains simple "C"-style type definitions.

## Typedef Documentation

## ◆ Fl_Shortcut

typedef unsigned int Fl_Shortcut

16-bit Unicode character + 8-bit indicator for keyboard flags.

Note
  This should be 24-bit Unicode character + 8-bit indicator for keyboard flags. The upper 8 bits are currently unused but reserved.

Due to compatibility issues this type and all FLTK shortcuts can only be used with 16-bit Unicode characters (U+0000 .. U+FFFF) and not with the full range of unicode characters (U+0000 .. U+10FFFF).

This is caused by the bit flags `FL_SHIFT`, `FL_CTRL`, `FL_ALT`, and `FL_META` being all in the range 0x010000 .. 0x400000.

Todo
  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.