ObjectivelyMVC
0.1.0
Object oriented MVC framework for OpenGL, SDL2 and GNU C
Sources
ObjectivelyMVC
Button.h
Go to the documentation of this file.
1
/*
2
* ObjectivelyMVC: Object oriented MVC framework for OpenGL, SDL2 and GNU C.
3
* Copyright (C) 2014 Jay Dolan <jay@jaydolan.com>
4
*
5
* This software is provided 'as-is', without any express or implied
6
* warranty. In no event will the authors be held liable for any damages
7
* arising from the use of this software.
8
*
9
* Permission is granted to anyone to use this software for any purpose,
10
* including commercial applications, and to alter it and redistribute it
11
* freely, subject to the following restrictions:
12
*
13
* 1. The origin of this software must not be misrepresented; you must not
14
* claim that you wrote the original software. If you use this software
15
* in a product, an acknowledgment in the product documentation would be
16
* appreciated but is not required.
17
*
18
* 2. Altered source versions must be plainly marked as such, and must not be
19
* misrepresented as being the original software.
20
*
21
* 3. This notice may not be removed or altered from any source distribution.
22
*/
23
24
#pragma once
25
26
#include <
ObjectivelyMVC/Control.h
>
27
#include <
ObjectivelyMVC/ImageView.h
>
28
34
typedef
struct
Button
Button
;
35
typedef
struct
ButtonInterface ButtonInterface;
36
42
struct
Button
{
43
47
Control
control
;
48
53
ButtonInterface *
interface
;
54
58
ImageView
*
image
;
59
63
Text
*
title
;
64
};
65
69
struct
ButtonInterface {
70
74
ControlInterface controlInterface;
75
84
Button
*(*initWithFrame)(
Button
*self,
const
SDL_Rect *frame);
85
94
Button
*(*initWithImage)(
Button
*self,
Image
*image);
95
104
Button
*(*initWithTitle)(
Button
*self,
const
char
*title);
105
};
106
113
OBJECTIVELYMVC_EXPORT
Class *
_Button
(
void
);
Control.h
Controls are Views which capture events and dispatch Actions.
ImageView.h
ImageViews render an Image in the context of a View hierarchy.
OBJECTIVELYMVC_EXPORT
#define OBJECTIVELYMVC_EXPORT
Definition:
Types.h:39
Button
Buttons are Controls that respond to click events.
Definition:
Button.h:42
Button::interface
ButtonInterface * interface
The interface.
Definition:
Button.h:53
Button::control
Control control
The superclass.
Definition:
Button.h:47
Button::title
Text * title
The title.
Definition:
Button.h:63
Button::image
ImageView * image
The image.
Definition:
Button.h:58
Button::_Button
Class * _Button(void)
The Button archetype.
Definition:
Button.c:167
Control
Controls are Views which capture events and dispatch Actions.
Definition:
Control.h:83
Image
Image loading.
Definition:
Image.h:38
ImageView
ImageViews render an Image in the context of a View hierarchy.
Definition:
ImageView.h:43
Text
Text rendered with TrueType fonts.
Definition:
Text.h:41
Generated on Mon Aug 29 2022 09:32:58 for ObjectivelyMVC by
1.9.3