Sizer
 All Classes Files Functions Variables Enumerations Enumerator Pages
Classes | Enumerations
Sizer.h File Reference

Sizer library. More...

#include <vector>

Go to the source code of this file.

Classes

struct  SizerPoint
 2d coordinate. More...
 
struct  SizerSize
 2d size. More...
 
struct  SizerRect
 Rectangle defined by a point and size. More...
 
class  ISizer
 Abstract interface for Sizers. More...
 
class  EmptySizer
 A block of empty space. More...
 
class  WindowSizer
 Sizer adapter around a HWND. More...
 
class  GroupboxSizer
 Associates a groupbox with a sizer item. More...
 
class  OverlapSizer
 Places all its item at the same coordinates, so they overlap. More...
 
class  BoxSizer
 Arranges items in a 1-dimensional box. More...
 
class  HBoxSizer
 Specialization for a horizontal BoxSizer. More...
 
class  VBoxSizer
 Specialization for a vertical BoxSizer. More...
 
class  HAlignSizer
 Aligns a fixed-size item in horizontal direction. More...
 
class  VAlignSizer
 Aligns a fixed-size item in vertical direction. More...
 
class  GridSizer
 Arranges items in a 2-dimensional grid. More...
 
class  FlowSizer
 Arranges items in a horizontal row and starts a new row if the space runs out. More...
 

Enumerations

enum  SIZER_HALIGN { SIZER_LEFT, SIZER_HCENTER, SIZER_RIGHT }
 
enum  SIZER_VALIGN { SIZER_TOP, SIZER_VCENTER, SIZER_BOTTOM }
 

Detailed Description

Sizer library.

Author
Freddy Herzog
Date
2013-09-06
Version
1.4

This is a small set of GUI sizing classes, similar to the ones in Qt or wxWidgets. The basic idea is that a user interface is often arranged as a row of control, or a grid. So we have the class BoxSizer for rows and GridSizer for grid. Other classes are also provided to make things simpler, like HAlignSizer.

When controls are directly accessed, the classes use WINAPI calls.

New classes were generated for handling coordinates (SizerPoint, SizerSize, SizerRect). Because even though we only support WINAPI for now, we don't want to depend too much on it.

Links to the project:
Downloads:
http://sourceforge.net/projects/sizer
Documentation:
http://sizer.sourceforge.net

Enumeration Type Documentation

Choice for HAlignSizer.

Enumerator
SIZER_LEFT 

Align to the left.

SIZER_HCENTER 

Align horizontally centered.

SIZER_RIGHT 

Align to the right.

Choice for VAlignSizer.

Enumerator
SIZER_TOP 

Align to the top.

SIZER_VCENTER 

Align vertically centered.

SIZER_BOTTOM 

Align to the bottom.