StatusBarGroup Class Reference

Inherits Group.

List of all members.

Public Types

enum  Position { SBAR_LEFT, SBAR_CENTER, SBAR_RIGHT }

Public Member Functions

 StatusBarGroup (int x, int y, int w, int h, const char *l=0, bool begin=false)
 StatusBarGroup (int H=24)
void layout ()
void show ()
void hide ()
void set (const char *t, Position pos=SBAR_RIGHT)
void set (Position pos, const char *format,...)
void child_box (Box *b)
void child_box (Box *b, Position i)

Static Public Attributes

NamedStyledefault_style

Protected Member Functions

void draw_label (Position pos, const char *label)
void update_box (InvisibleBox *b, Position pos)


Detailed Description

This class permits to create and handle a statusbar with minimum efforts.
It features automatic positionning and resizing adapting to parent Group/Window.
Only height matters when constructing a StatusBarGroup.
You can use the set() API's to easily print formatted text at one of the three standard position : left, center right.
You can also setup an optional custom box to the incorporated texts with child_box(), by default FLAT_BOX is used.
The StatusBarGroup widget can also be visually created in Fluid2.

Here's some typical code you can use to create a status bar:
Sample implementation:

  my_status_bar = new StatusBarGroup(24);
  my_status_bar->child_box(StatusBarGroup::SBAR_RIGHT, THIN_DOWN_BOX);
  //... more code ...
  // sets a right-aligned formatted text :
  my_status_bar->set(StatusBarGroup::SBAR_RIGHT, "%d items", count); 
  // sets a centered text :
  my_status_bar->set("Hi", StatusBarGroup::SBAR_CENTER); 
  //... more code ...
  // using a null or 0-len text removes the text box :
  my_status_bar->set(0, StatusBarGroup::SBAR_CENTER); 


Member Enumeration Documentation

enum StatusBarGroup::Position
 

Enumeration values:
SBAR_LEFT  statusbar text left-aligned
SBAR_CENTER  statusbar text centered
SBAR_RIGHT  statusbar text right-aligned (default)


Constructor & Destructor Documentation

StatusBarGroup::StatusBarGroup int  H = 24  )  [inline]
 

statusbar default constructor


Member Function Documentation

void StatusBarGroup::child_box Box b,
Position  i
[inline]
 

set a default box to text at particular position inside the status bar

void StatusBarGroup::child_box Box b  )  [inline]
 

set a default box to all texts inside the status bar

void StatusBarGroup::draw_label Position  pos,
const char *  label
[protected]
 

draw a label on a particular (left,middle, right) Position

void StatusBarGroup::set Position  pos,
const char *  format,
  ...
 

sets the label at a particular pos, automatically handles alloc + drawing, variable parmeter format

set a formatable (printf-like) text in the status bar at a given Position 'pos' alignment spec.

void StatusBarGroup::set const char *  t,
Position  pos = SBAR_RIGHT
 

sets the label at a particular pos, automatically handles alloc + drawing

set a simple string in the status bar at a given Position 'pos' alignment spec.

void StatusBarGroup::update_box InvisibleBox b,
Position  pos
[protected]
 

adapt box position and size according to Position pos and statusbar dimensions


The documentation for this class was generated from the following files:
Sun Jan 7 00:55:18 2007. FLTK ©2006 Bill Spitzak and others.
Permission is granted to reproduce this manual or any portion for any purpose, provided this copyright and permission notice are preserved.