acme
Foundational cross-platform layer of the ca2 framework
Toggle main menu visibility
Loading...
Searching...
No Matches
device.h
1
//
2
// Created by camilo on 31/01/2022 20:15 <3ThomasBorregaardSorensen!! Thomas Likes number 5!!
3
//
4
#pragma once
5
6
7
//#include "acme/user/micro/_nano.h"
8
9
10
#include "acme/nano/graphics/context.h"
11
12
13
#include <cairo/cairo-features.h>
14
#include <cairo/cairo.h>
15
//#include <cairo/cairo-ft.h>
16
//#include <cairo/cairo-xlib.h>
17
18
19
namespace
cairo
20
{
21
22
23
namespace
nano
24
{
25
namespace
user
26
{
27
class
CLASS_DECL_ACME device :
28
virtual
public
::nano::graphics::context
29
{
30
public
:
31
32
33
cairo_surface_t * m_psurfaceMemory;
34
cairo_t * m_pdc;
35
36
37
device();
38
device(cairo_t * pdc);
39
~device()
override
;
40
41
42
void
on_begin_draw()
override
;
43
void
on_end_draw()
override
;
44
45
46
void
_draw_text(const ::scoped_string & scopedstrMessage, const ::i32_rectangle & rectangleText, const ::e_align & ealign, const ::e_draw_text & edrawtext,
::nano::graphics::brush
* pnanobrushBack,
::nano::graphics::brush
* pnanobrushText,
::nano::graphics::font
* pnanofont)
override
;
47
::i32_size get_text_extents(const ::scoped_string & scopedstr,
::nano::graphics::font
* pnanofont)
override
;
48
void
rectangle(const ::i32_rectangle & rectangle,
::nano::graphics::brush
* pnanobrush,
::nano::graphics::pen
* pnanopen)
override
;
49
50
51
//XColor _alloc_xcolor(const ::color::color & color);
52
//void _set_foreground(const ::color::color & color);
53
//void _set_background(const ::color::color & color);
54
55
void
_set_source(const ::color::color & color);
56
57
58
//void set_antialias(bool bAntialiasOn);
59
60
61
};
62
63
64
}
// namespace user
65
66
67
}
// namespace nano
68
69
70
}
// namespace cairo
71
72
73
void
operating_system_initialize_cairo_nano(
::factory::factory
* pfactory);
74
75
76
factory::factory
Definition
factory.h:201
nano::graphics::brush
Definition
brush.h:18
nano::graphics::context
Definition
context.h:24
nano::graphics::font
Definition
font.h:18
nano::graphics::pen
Definition
pen.h:17
operating_system
aaa_cairo
nano
user
device.h
Generated by
1.17.0