ObjectivelyMVC 0.1.0
Object oriented MVC framework for OpenGL, SDL2 and GNU C
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Data Structures | Enumerations | Functions | Variables
Control.h File Reference

Controls are Views which capture events and dispatch Actions. More...

#include <Objectively/MutableArray.h>
#include <ObjectivelyMVC/Action.h>
#include <ObjectivelyMVC/Text.h>

Go to the source code of this file.

Data Structures

struct  Control
 Controls are Views which capture events and dispatch Actions. More...
 

Enumerations

enum  ControlBevel { ControlBevelNone , ControlBevelInset , ControlBevelOutset }
 Control bevel styles, for drawing depressed or raised bevels. More...
 
enum  ControlSelection { ControlSelectionNone , ControlSelectionSingle , ControlSelectionMultiple }
 Control selection styles, for Controls that support user selection. More...
 
enum  ControlState {
  ControlStateDefault = 0x0 , ControlStateHighlighted = 0x1 , ControlStateDisabled = 0x2 , ControlStateSelected = 0x4 ,
  ControlStateFocused = 0x8
}
 Control states, which are bit-masked. More...
 

Functions

OBJECTIVELYMVC_EXPORT Class * _Control (void)
 

Variables

OBJECTIVELYMVC_EXPORT const EnumName ControlBevelNames []
 
OBJECTIVELYMVC_EXPORT const EnumName ControlSelectionNames []
 
OBJECTIVELYMVC_EXPORT const EnumName ControlStateNames []
 

Detailed Description

Controls are Views which capture events and dispatch Actions.

Definition in file Control.h.

Enumeration Type Documentation

◆ ControlBevel

Control bevel styles, for drawing depressed or raised bevels.

Enumerator
ControlBevelNone 
ControlBevelInset 
ControlBevelOutset 

Definition at line 44 of file Control.h.

44 {
ControlBevel
Control bevel styles, for drawing depressed or raised bevels.
Definition: Control.h:44
@ ControlBevelNone
Definition: Control.h:45
@ ControlBevelInset
Definition: Control.h:46
@ ControlBevelOutset
Definition: Control.h:47

◆ ControlSelection

Control selection styles, for Controls that support user selection.

Enumerator
ControlSelectionNone 
ControlSelectionSingle 
ControlSelectionMultiple 

Definition at line 55 of file Control.h.

55 {
ControlSelection
Control selection styles, for Controls that support user selection.
Definition: Control.h:55
@ ControlSelectionMultiple
Definition: Control.h:58
@ ControlSelectionSingle
Definition: Control.h:57
@ ControlSelectionNone
Definition: Control.h:56

◆ ControlState

Control states, which are bit-masked.

Enumerator
ControlStateDefault 
ControlStateHighlighted 
ControlStateDisabled 
ControlStateSelected 
ControlStateFocused 

Definition at line 66 of file Control.h.

66 {
ControlState
Control states, which are bit-masked.
Definition: Control.h:66
@ ControlStateDefault
Definition: Control.h:67
@ ControlStateFocused
Definition: Control.h:71
@ ControlStateHighlighted
Definition: Control.h:68
@ ControlStateDisabled
Definition: Control.h:69
@ ControlStateSelected
Definition: Control.h:70

Function Documentation

◆ _Control()

OBJECTIVELYMVC_EXPORT Class * _Control ( void  )

Definition at line 379 of file Control.c.

379 {
380 static Class *clazz;
381 static Once once;
382
383 do_once(&once, {
384 clazz = _initialize(&(const ClassDef) {
385 .name = "Control",
386 .superclass = _View(),
387 .instanceSize = sizeof(Control),
388 .interfaceOffset = offsetof(Control, interface),
389 .interfaceSize = sizeof(ControlInterface),
391 });
392 });
393
394 return clazz;
395}
static void initialize(Class *clazz)
Definition: Control.c:353
Controls are Views which capture events and dispatch Actions.
Definition: Control.h:83
Class * _View(void)
The View archetype.
Definition: View.c:1769

Variable Documentation

◆ ControlBevelNames

OBJECTIVELYMVC_EXPORT const EnumName ControlBevelNames[]

Definition at line 50 of file Control.h.

◆ ControlSelectionNames

OBJECTIVELYMVC_EXPORT const EnumName ControlSelectionNames[]

Definition at line 61 of file Control.h.

◆ ControlStateNames

OBJECTIVELYMVC_EXPORT const EnumName ControlStateNames[]

Definition at line 74 of file Control.h.