26#include <oslib/wimp.h>
73 .background_images =
true,
130 bool did_something =
false;
133 if (did_something ==
true) {
163 if ((*win_out) != NULL) {
168 ncwin = calloc(1,
sizeof(*ncwin));
177 NSLOG(netsurf, INFO,
"xwimp_create_window: 0x%x: %s",
178 error->errnum, error->errmess);
222 os_box
box = {0, 0, 0, 0};
223 wimp_window_state state;
237 error = xwimp_set_extent(lhw->
core.
wh, &
box);
239 NSLOG(netsurf, INFO,
"xwimp_set_extent: 0x%x: %s",
240 error->errnum, error->errmess);
247 error = xwimp_get_window_state(&state);
249 NSLOG(netsurf, INFO,
"xwimp_get_window_state: 0x%x: %s",
250 error->errnum, error->errmess);
254 state.visible.x0 = 0;
255 state.visible.y0 = 0;
256 state.visible.x1 =
width;
257 state.visible.y1 =
height;
258 state.next = wimp_HIDDEN;
261 NSLOG(netsurf, INFO,
"xwimp_open_window: 0x%x: %s",
262 error->errnum, error->errmess);
270 error = xwimp_set_caret_position(lhw->
core.
wh, -1, 0, 0, -1, 0);
273 "xwimp_set_caret_position: 0x%x : %s",
297 NSLOG(netsurf, INFO,
"Presenting");
300 NSLOG(netsurf, INFO,
"Failed presenting error code %d", res);
void ro_gui_dialog_open_persistent(wimp_w parent, wimp_w w, bool pointer)
Open a persistent dialog box relative to the pointer.
wimp_window * ro_gui_dialog_load_template(const char *template_name)
Load a template without creating a window.
void ro_gui_dialog_close(wimp_w close)
Close a dialog box.
nserror
Enumeration of error codes.
@ NSERROR_NOT_IMPLEMENTED
Functionality is not implemented.
@ NSERROR_NOMEM
Memory exhaustion.
Core mouse and pointer states.
browser_mouse_state
Mouse state: 1 is primary mouse button.
@ BROWSER_MOUSE_LEAVE
pointer leaving window
Target independent plotting interface.
#define NSLOG(catname, level, logmsg, args...)
nserror page_info_get_size(struct page_info *pi, int *width, int *height)
Get size of page info content area.
nserror page_info_destroy(struct page_info *pi)
Destroy a page info corewindow.
nserror page_info_redraw(const struct page_info *pi, int x, int y, const struct rect *clip, const struct redraw_context *ctx)
Redraw the page info window.
nserror page_info_create(struct core_window *cw_h, struct browser_window *bw, struct page_info **pi_out)
Create a page info corewindow.
bool page_info_keypress(struct page_info *pi, int32_t key)
Key press handling.
nserror page_info_set(struct page_info *pgi, struct browser_window *bw)
change the browser window the page information refers to
nserror page_info_mouse_action(struct page_info *pi, enum browser_mouse_state mouse, int x, int y, bool *did_something)
Mouse action handling.
Pave info viewer window interface.
nserror ro_corewindow_fini(struct ro_corewindow *ro_cw)
finalise elements of ro core window.
nserror ro_corewindow_init(struct ro_corewindow *ro_cw, const struct button_bar_buttons *tb_buttons, char *tb_order, theme_style tb_style, const char *tb_help)
initialise elements of riscos core window.
RISC OS core window interface.
nserror ro_warn_user(const char *warning, const char *detail)
Display a warning for a serious problem (eg memory exhaustion).
const struct plotter_table ro_plotters
RISC OS plotter operation table.
static struct ro_pageinfo_window * pageinfo_window
page info window is a singleton
nserror ro_gui_pageinfo_present(struct gui_window *gw)
make the pageinfo window visible.
static nserror ro_pageinfo_draw(struct ro_corewindow *ro_cw, int originx, int originy, struct rect *r)
callback to draw on drawable area of ro page info window
nserror ro_gui_pageinfo_initialise(void)
initialise the pageinfo window template ready for subsequent use.
nserror ro_gui_pageinfo_finalise(void)
Free any resources allocated for the page info window.
static wimp_window * dialog_pageinfo_template
riscos template for pageinfo window
static nserror ro_pageinfo_open(struct ro_pageinfo_window *lhw, wimp_w parent)
open RISC OS page info window at the correct size
static nserror ro_pageinfo_init(struct browser_window *bw, struct ro_pageinfo_window **win_out)
Creates the window for the page info tree.
static nserror ro_pageinfo_mouse(struct ro_corewindow *ro_cw, browser_mouse_state mouse_state, int x, int y)
callback for mouse event on ro page info window
static nserror ro_pageinfo_key(struct ro_corewindow *ro_cw, uint32_t nskey)
callback for keypress on ro coookie window
Interface to page info core window for RISC OS.
first entry in window list
struct fbtk_widget_s * window
struct browser_window * bw
The 'content' window that is rendered in the gui_window.
The page info window structure.
bool interactive
Redraw to show interactive features.
nserror(* mouse)(struct ro_corewindow *ro_cw, browser_mouse_state mouse_state, int x, int y)
callback for mouse event on ro core window
nserror(* key)(struct ro_corewindow *ro_cw, uint32_t nskey)
callback for keypress on ro core window
nserror(* draw)(struct ro_corewindow *ro_cw, int originx, int originy, struct rect *r)
callback to draw on drawable area of ro core window
Page info window container for RISC OS.
struct ro_corewindow core
struct page_info * pgi
Core page-info window.
A collection of grubby utilities for working with OSLib's wimp API.
#define PTR_WIMP_OPEN(pstate)