acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
message_box.h
1//
2// Created by camilo on 2022-01-21 14:57 <3ThomasBorregaardSorensen
3// Generalized by camilo on 31/01/2022 14:28 <3ThomasBorregaardSorensen!!
4//
5#pragma once
6
7
8#include "acme/user/interface/message_box.h"
9#include "acme/user/micro/dialog.h"
10#include "acme/user/user/message_box_reifier.h"
11#include "user/implementation/message_box_implementation.h"
12
13
14namespace micro
15{
16
17
18 class icon;
19
20
21 class message_box :
22 virtual public ::micro::dialog,
24 {
25 public:
26
27
28 string m_strLabelDetails;
29 ::pointer<::micro::still> m_pstillDetails;
30 ::pointer<::micro::still> m_pstillTimeout;
31 //::pointer<::micro::still> m_pstillIcon;
32 ::pointer<::nano::graphics::icon> m_picon;
33 //::pointer < ::message_box_payload > m_pmessagebox;
34 ::manual_reset_happening m_manualresethappeningDialogResult;
35
36
37
38 // class CLASS_DECL_ACME data :
39 // virtual public ::acme::user::dialog::data {
40 // public:
41 // };
42
43
44 message_box();
45 ~message_box() override;
46
47
48 void create_window() override;
49
50 void destroy() override;
51
52
53 ::i32_rectangle initial_frame_rectangle() override;
54 //void on_sequence() override;
55 //virtual void set(::message_box_payload * pmessageboxpayload);
56
57 //using ::acme::user::interaction::display;
58 void display(::e_display edisplay = e_display_default, const ::user::activation & useractivation = {}) override;
59
60
62
63
64 void on_context_menu(::user::mouse * pmouse) override;
65
66 //virtual void create_message_box(conversation * pconversation);
67 void add_button(const ::scoped_string & scopedstrText, enum_dialog_result edialogresult, ::i8 chLetter) override;
68
69 //::string get_title() override;
70 void on_initialize_dialog() override;
71
72
73 void on_elemental_layout() override;
74
75 //::user::e_message_box get_conversation_flags() override;
76 virtual void set_icon(::nano::graphics::icon * picon);
77
78 virtual void calculate_size();
79
80 void set_dialog_response(const ::payload & payloadResult) override;
81
83
84 void on_dialog_response(const ::payload & payloadResult) override;
85
86 //void operator()(::timer * ptimer) override;
87
88 void operator()(::timer * ptimer);
89
90 //void initialize_conversation(const ::scoped_string & scopedstrMessage, const ::scoped_string & scopedstrTitle, const ::user::e_message_box & emessagebox, const ::scoped_string & scopedstrDetails = nullptr, ::nano::graphics::icon * picon = nullptr) override;
91
92 // void initialize_message_box(const ::scoped_string & scopedstrMessage, const ::scoped_string & scopedstrTitle, const ::user::e_message_box & emessagebox, const ::scoped_string & scopedstrDetails) override;
93
94 //void do_message_box(const ::scoped_string & scopedstrMessage, const ::scoped_string & scopedstrTitle, const ::user::e_message_box & emessagebox, const ::scoped_string & scopedstrDetails) override;
95
96 void _on_draw(::nano::graphics::context * pnanodevice) override;
97
98 void on_draw(::nano::graphics::context * pnanodevice) override;
99
100 void on_click(const ::payload & payload, ::user::mouse * pmouse) override;
101
102 void on_right_click(const ::payload & payload, ::user::mouse * pmouse) override;
103
104 void defer_create_details_still();
105
106 void on_before_create_window(::acme::windowing::window * pacmewindowingwindow) override;
107
108 //void on_create_window() override;
109
110 bool is_popup_window() const override;
111
112
113 void run() override;
114
115 };
116
117
118} // namespace micro
119
120
121
Definition window.h:50
Definition aaa_manual_reset_event.h:26
Definition dialog.h:23
void on_context_menu(::user::mouse *pmouse) override
void display_dialog_and_wait_dialog_response() override;
Definition message_box.cpp:720
void on_draw(::nano::graphics::context *pnanodevice) override
Definition message_box.cpp:111
Definition context.h:24
Definition icon.h:14
virtual void destroy() override
Definition bbb_context_object.cpp:242
Definition payload.h:54
Definition aaa_timer.h:9
Definition message_box_implementation.h:147
::payload get_dialog_response() override
void _on_draw(::nano::graphics::context * pgraphicscontext) override;
Definition message_box_implementation.cpp:867
void run() override
Definition message_box_implementation.cpp:790