Classes | Modules | Files | Enumerations
Interface Kit

API for displaying a graphical user interface. More...

Classes

class  BAbstractLayout
 BLayout subclass providing convenience methods for derived implementations. More...
class  BAlert
 The BAlert class defines a modal alert dialog which displays a short message and provides a set of labeled buttons that allow the user to respond. More...
class  BLayoutBuilder::Base< ParentBuilder >
 Base for all other layout builders in the BLayoutBuilder namespace. More...
class  BBitmap
 Access and manipulate digital images commonly known as bitmaps. More...
class  BBox
 A rectangular view with a border and an optional label to group related subviews visually. More...
class  BButton
 A BButton is a labeled on-screen button. More...
class  BCheckBox
 BCheckBox is a user interface element used to make a binary decision. More...
class  BColorControl
 BColorControl displays an on-screen color picker. More...
class  BControl
 BControl is the base class for user-event handling objects. More...
class  BDragger
 A view that allows the user drag and drop a target view. More...
class  BFont
 Represents a typeface including it's family, style and size. More...
class  BGridLayout
 The BGridLayout class a BLayout subclass that arranges the items it holds in a grid. More...
class  BGroupLayout
 The BGroupLayout class is a simple BLayout subclass that arranges the items it holds within a vertical or horizontal box. More...
class  BIconUtils
 The BIconUtils class provide utility methods for managing and drawing vector icons. More...
class  BLayout
 The BLayout class provides an interface, and some basic implementation to manage the positioning and sizing of BLayoutItem s. More...
class  BLayoutItem
 Abstract class representing things that are positionable and resizable by objects of the BLayout class. More...
class  BListItem
 A list item, a member of a BListView or BOutlineListView. More...
class  BListView
 Displays a list of items that the user can select and invoke. More...
class  BScreen
 The BScreen class provides methods to retrieve and change display settings. More...
class  BTextView
 Displays and manipulates styled text. More...
class  BTwoDimensionalLayout
 Abstract BLayout subclass arranging items within rows and columns. More...
class  BView
 View base class. More...
struct  edge_info
 The distance that a character outline is inset from its escapement boundaries. More...
struct  escapement_delta
 The amount of horizontal space surrounding a character. More...
struct  font_cache_info
 Font cache parameters. More...
struct  font_height
 The amount of vertical space surrounding a character. More...
class  BLayoutBuilder::Group< ParentBuilder >
 BLayoutBuilder::Base subclass for building BGroupLayouts. More...
struct  text_run
 text run struct More...
struct  text_run_array
 text run array struct More...
struct  tuned_font_info
 Tuning information of fonts used to make it look better when displayed on-screen. More...
class  unicode_block
 Describes the blocks of Unicode characters supported by a font. More...

Modules

 Layout classes in the Interface Kit

Files

file  Alert.h
 

BAlert class definition and support enums.


file  Bitmap.h
 

Defines the BBitmap class and global operators and functions for handling bitmaps.


file  CheckBox.h
 

Defines the BCheckBox class.


file  ColorControl.h
 

BColorControl class definition and support enums.


file  Control.h
 

BControl class definition and support enums.


file  Font.h
 

BFont class definition, unicode_block class definition, and font-related struct and enum definitions.


file  GridLayout.h
 

Provides the BGridLayout class.


file  GroupLayout.h
 

Describes the BGroupLayout class.


file  GroupLayoutBuilder.h
 

Provides the BLayoutBuilder::Group<> class.


file  IconUtils.h
 

Vector icon handling utility class.


file  InterfaceDefs.h
 

Defines standard interface definitions for controls.


file  Layout.h
 

Defines the BLayout class.


file  LayoutBuilder.h
 

Defines the BLayoutBuilder templates.


file  LayoutItem.h
 

Describes the BLayoutItem class.


file  ListItem.h
 

ListItem class definition.


file  ListView.h
 

ListView class definition.


file  Screen.h
 

Defines the BScreen class and support structures.


file  TextView.h
 

Provides the BTextView class and associated structs.


file  TwoDimensionalLayout.h
 

Defines the BTwoDimensionalLayout class.


file  View.h
 

BView class definition and support data structures.


Enumerations

enum  alert_type {
  B_EMPTY_ALERT = 0,
  B_INFO_ALERT,
  B_IDEA_ALERT,
  B_WARNING_ALERT,
  B_STOP_ALERT
}
enum  border_style {
  B_PLAIN_BORDER,
  B_FANCY_BORDER,
  B_NO_BORDER
}
enum  button_spacing {
  B_EVEN_SPACING = 0,
  B_OFFSET_SPACING
}
enum  color_control_layout {
  B_CELLS_4x64 = 4,
  B_CELLS_8x32 = 8,
  B_CELLS_16x16 = 16,
  B_CELLS_32x8 = 32,
  B_CELLS_64x4 = 64
}
enum  font_direction {
  B_FONT_LEFT_TO_RIGHT = 0,
  B_FONT_RIGHT_TO_LEFT = 1
}
enum  font_file_format {
  B_TRUETYPE_WINDOWS = 0,
  B_POSTSCRIPT_TYPE1_WINDOWS = 1
}
enum  undo_state

Detailed Description

API for displaying a graphical user interface.

The Interface Kit holds all the classes you'll need to develop a GUI. Building on the messaging facilities provided by the Application Kit, the Interface Kit can be used to create a responsive and attractive graphical user interface.

The most important class in the Interface Kit is the BView class, which handles drawing and user interaction. Pointer and keyboard events are processed in this class.

Another important class is the BWindow class, which holds BViews and makes them visible to the user. The BWindow class also handles BView focusing and BMessage dispatching, among other things.

A new addition Haiku has added over the BeOS API is the Layout API, which is based around the BLayoutItem and BLayout classes. These classes will take care of making sure all your GUI widgets end up where you want them, with enough space to be useful. You can start learning the Layout API by reading the introduction .


Enumeration Type Documentation

enum alert_type

Determines which icon (if any) is displayed in the alert dialog. Choose one option. If the constructor doesn't include an alert_type argument than B_EMPTY_ALERT is used.

Enumerator:
B_EMPTY_ALERT 

No icon

B_INFO_ALERT 
alert_info_32.png

Info icon

B_IDEA_ALERT 
alert_idea_32.png

Idea icon

B_WARNING_ALERT 
alert_warning_32.png

Warning icon

B_STOP_ALERT 
alert_stop_32.png

Stop icon

Collection of flags that determine the border style drawn around a BBox.

Enumerator:
B_PLAIN_BORDER 
B_PLAIN_BORDER.png

The right and bottom sides of the box are darker than the top and left sides to produce a shadow effect and make the box look like it is raised slightly above the surrounding surface.

B_FANCY_BORDER 
B_FANCY_BORDER.png

The border is a bevelled to give it a 3D effect. The border is uniform in appearance on all four sides. This is the default appearance.

B_NO_BORDER 

No border.

Determines how the buttons on the alert dialog are spaced relative to each other. Choose one option. If the constructor doesn't include a button_spacing argument than B_EVEN_SPACING is used.

Enumerator:
B_EVEN_SPACING 

If the alert dialog has more than one button than the buttons are spaced evenly across the bottom of the alert dialog.

B_OFFSET_SPACING 

If the alert dialog has more than one button than the leftmost button is offset to the left-hand side of the dialog while the rest of the buttons are grouped on the right. This is useful to separate off a leftmost "Cancel" or "Delete" button.

Enumeration of the color control layout options.

Enumerator:
B_CELLS_4x64 

Cells are arranged in 4 columns, 64 rows.

B_CELLS_8x32 

Cells are arranged in 8 columns, 32 rows.

B_CELLS_16x16 

Cells are arranged in 16 columns, 16 rows.

B_CELLS_32x8 

Cells are arranged in 32 columns, 8 rows.

B_CELLS_64x4 

Cells are arranged in 64 columns, 4 rows.

Determines the direction of the text rendered by the font, left-to-right or right-to-left.

Enumerator:
B_FONT_LEFT_TO_RIGHT 

Left to right.

B_FONT_RIGHT_TO_LEFT 

Right to left.

Font file format, TrueType™ or PostScript™ Type1.

See also:
BFont::FileFormat()
Enumerator:
B_TRUETYPE_WINDOWS 

TrueType™ font file format.

B_POSTSCRIPT_TYPE1_WINDOWS 

PostScript™ Type1 font file format.

enum undo_state

Undo state flags.


The Haiku Book pre-R1 - Interface Kit
Generated on Tue May 21 2013 by Doxygen 1.7.5.1