ObjectivelyMVC
0.1.0
Object oriented MVC framework for OpenGL, SDL2 and GNU C
Sources
ObjectivelyMVC
Types.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 <SDL_assert.h>
27
#include <SDL_events.h>
28
#include <SDL_pixels.h>
29
30
#include <Objectively/Types.h>
31
32
#undef interface
33
34
#if defined(_MSC_VER)
35
#include "WindowlyMVC.h"
36
#endif
37
38
#ifndef OBJECTIVELYMVC_EXPORT
39
#define OBJECTIVELYMVC_EXPORT extern
40
#endif
41
47
typedef
struct
View
View
;
48
typedef
struct
ViewController
ViewController
;
49
55
typedef
void (*
ViewEnumerator
)(
View
*
view
, ident data);
56
57
typedef
struct
SDL_Size
SDL_Size
;
58
62
struct
SDL_Size
{
63
int
w
,
h
;
64
};
65
69
#define MakePoint(x, y) (SDL_Point) { (x), (y) }
70
74
#define MakeRect(x, y, w, h) (SDL_Rect) { (x), (y), (w), (h) }
75
79
#define MakeSize(w, h) (SDL_Size) { (w), (h) }
ViewEnumerator
void(* ViewEnumerator)(View *view, ident data)
A function type for View enumeration.
Definition:
Types.h:55
SDL_Size
The SDL_Size type.
Definition:
Types.h:62
SDL_Size::w
int w
Definition:
Types.h:63
SDL_Size::h
int h
Definition:
Types.h:63
ViewController
A ViewController manages a View and its descendants.
Definition:
ViewController.h:53
ViewController::view
View * view
The main view.
Definition:
ViewController.h:73
View
Views are the fundamental building blocks of ObjectivelyMVC user interfaces.
Definition:
View.h:133
Generated on Mon Aug 29 2022 09:32:58 for ObjectivelyMVC by
1.9.3