acme
Foundational cross-platform layer of the ca2 framework
Toggle main menu visibility
Loading...
Searching...
No Matches
container.h
1
// Now based on ::item_container and also named item_container from own user::container by camilo on 2023-07-21 12:07 <3ThomasBorregaardSorensen!!
2
// Created by camilo on 2023-07-18 13:46 <3ThomasBorregaardSorensen!!
3
#pragma once
4
5
6
#include "item_base.h"
7
#include "acme/user/user/item.h"
8
#include "acme/handler/item_container_map.h"
9
10
11
namespace
user
12
{
13
14
15
class
CLASS_DECL_ACME acme_container :
16
virtual
public
::item_container_map
17
{
18
public
:
19
20
21
::user::item_base_map m_useritembasemap;
22
::pointer < acme_tool > m_pacmetool;
23
::pointer < acme_content > m_pacmecontentMain;
24
::item_pointer m_pitemHover;
25
::item_pointer m_pitemPressed;
26
27
28
acme_container();
29
~acme_container()
override
;
30
31
32
virtual ::pointer < ::user::item_base > allocate_user_item_base(const ::item * pitem);
33
34
35
void
destroy()
override
;
36
37
38
bool
_is_set()
const override
;
39
40
41
inline
acme_tool
& tool() {
if
(!m_pacmetool) create_tool();
return
*m_pacmetool; }
42
inline
acme_content
& main_content() {
if
(!m_pacmecontentMain) create_main_content();
return
*m_pacmecontentMain; }
43
44
45
virtual
void
create_tool();
46
virtual
void
create_main_content();
47
48
49
50
virtual
bool
is_item_pressed(const ::item_t &
item
)
const
;
51
virtual
bool
is_item_hover(const ::item_t &
item
)
const
;
52
53
virtual ::item_pointer pressed_item();
54
virtual ::item_pointer hover_item();
55
virtual ::item_pointer selected_item();
56
57
//virtual ::collection::count item_count() const;
58
59
//virtual void clear_items();
60
61
//virtual ::item * item_at(::collection::index iIndex);
62
63
//virtual void default_set_item_at(::collection::index iIndex, ::item * pitem);
64
65
//virtual void default_add_item(::item * pitem);
66
67
//virtual ::collection::index add_item(::item * pitem);
68
69
//virtual ::item_pointer add_item(const ::item_t & item);
70
71
//virtual ::user::item * user_item_at(::collection::index iIndex);
72
73
//virtual ::collection::index item_index(const ::item * pitem);
74
75
//virtual ::collection::index content_item_index(const ::item * pitem);
76
77
virtual ::user::item_base * user_item_base(const ::item * pitem);
78
79
inline ::user::item * user_item(const ::item * pitem)
80
{
81
82
auto
puseritembase = user_item_base(pitem);
83
84
auto
puseritem = puseritembase->m_puseritem;
85
86
return
puseritem;
87
88
}
89
90
//virtual ::user::item * user_item(const ::atom & atom);
91
92
//virtual ::item_pointer item(const ::atom & atom);
93
94
//virtual ::item_pointer item(const item_t & item);
95
96
//virtual ::item_pointer defer_item(const item_t & item);
97
98
//virtual ::collection::index item_index() const;
99
100
//static ::collection::index item_index(::item_array * pitema, const ::atom & atom);
101
102
//virtual ::collection::index item_index(const ::atom & atom) const;
103
104
//virtual bool is_item_pressed(const ::atom & atom) const;
105
106
//virtual bool is_item_hover(const ::atom & atom) const;
107
108
//virtual bool is_item_pressed_by_index(::collection::index iIndex) const;
109
110
//virtual bool is_item_hover_by_index(::collection::index iIndex) const;
111
112
113
virtual
bool
is_item_selected(
::item
* pitem);
114
//virtual ::item_pointer selected_item();
115
116
virtual
bool
is_item_hover(
::item
* pitem);
117
//virtual ::item_pointer hover_item();
118
119
120
//virtual void on_item_selected(::item * pitem);
121
virtual
void
on_item_hover(
::item
* pitem);
122
123
//virtual ::item_pointer get_child_as_item(::collection::index iIndex);
124
//virtual ::collection::count get_child_as_item_count();
125
126
virtual ::item_pointer on_create_stock_item(const ::e_element & eelement);
127
virtual ::item_pointer stock_item(const ::e_element & eelement);
128
129
130
131
};
132
133
134
}
// namespace user
135
136
137
user::acme_content
Definition
content.h:14
user::acme_tool
Definition
tool.h:14
user::item
Definition
aaa_item.h:13
user
Created by camilo on 2026-05-28 12:34 <3ThomasBorregaardSørensen!! Mummi!! Bilbo!!
Definition
_.h:67
user
user
container.h
Generated by
1.17.0