2015-10-09 02:46:10 +00:00
|
|
|
/*
|
2018-09-02 00:57:29 +00:00
|
|
|
* This file is part of the DXX-Rebirth project <https://www.dxx-rebirth.com/>.
|
2015-10-09 02:46:10 +00:00
|
|
|
* It is copyright by its individual contributors, as recorded in the
|
|
|
|
* project's Git history. See COPYING.txt at the top level for license
|
|
|
|
* terms and a link to the Git history.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
#include "fwd-event.h"
|
|
|
|
#include "fwd-gr.h"
|
|
|
|
|
2016-01-09 16:38:15 +00:00
|
|
|
#ifdef dsx
|
2015-12-13 18:00:49 +00:00
|
|
|
namespace dsx {
|
2020-01-06 01:25:35 +00:00
|
|
|
struct arch_atexit
|
|
|
|
{
|
|
|
|
~arch_atexit();
|
|
|
|
};
|
|
|
|
|
|
|
|
__attribute_warn_unused_result
|
|
|
|
arch_atexit arch_init();
|
2015-12-13 18:00:48 +00:00
|
|
|
}
|
|
|
|
#endif
|
2015-12-13 18:00:49 +00:00
|
|
|
namespace dcx {
|
2015-12-05 22:57:24 +00:00
|
|
|
|
2016-10-03 03:15:22 +00:00
|
|
|
class window;
|
2015-10-09 02:46:10 +00:00
|
|
|
|
|
|
|
template <typename T>
|
|
|
|
using window_subfunction = window_event_result (*)(window *menu,const d_event &event, T *userdata);
|
|
|
|
|
2016-10-02 06:49:22 +00:00
|
|
|
template <typename T>
|
|
|
|
using window_subclass_subfunction = window_event_result (*)(T *menu,const d_event &event, void*);
|
|
|
|
|
2015-10-09 02:46:10 +00:00
|
|
|
class unused_window_userdata_t;
|
|
|
|
|
|
|
|
/* No declaration for embed_window_pointer_t or ignore_window_pointer_t
|
|
|
|
* since every user needs the full definition.
|
|
|
|
*/
|
|
|
|
|
|
|
|
int window_close(window *wind);
|
|
|
|
window *window_get_front();
|
|
|
|
window *window_get_first();
|
|
|
|
window *window_get_next(window &wind);
|
|
|
|
window *window_get_prev(window &wind);
|
|
|
|
void window_select(window &wind);
|
|
|
|
window *window_set_visible(window &wind, int visible);
|
|
|
|
grs_canvas &window_get_canvas(window &wind);
|
2016-09-24 18:06:11 +00:00
|
|
|
#if !DXX_USE_OGL
|
2015-10-09 02:46:10 +00:00
|
|
|
void window_update_canvases();
|
2015-12-04 03:36:31 +00:00
|
|
|
#endif
|
2015-10-09 02:46:10 +00:00
|
|
|
int window_is_modal(window &wind);
|
|
|
|
|
2018-05-12 18:24:19 +00:00
|
|
|
#define WINDOW_SEND_EVENT(w) ((WINDOW_SEND_EVENT)(*w, event, __FILE__, __LINE__))
|
2015-10-09 02:46:10 +00:00
|
|
|
|
2015-12-05 22:57:24 +00:00
|
|
|
}
|
|
|
|
|
2015-10-09 02:46:10 +00:00
|
|
|
#endif
|