140 if (s->
pair != NULL) {
246 int bar_pos, bar_c0, bar_c1;
286 if ((area.
x1 <
clip->x0) ||
325 v[0] = area.
x0 + w / 4;
326 v[1] = area.
y0 + w / 2;
327 v[2] = area.
x0 + w * 3 / 4;
328 v[3] = area.
y0 + w / 4;
329 v[4] = area.
x0 + w * 3 / 4;
330 v[5] = area.
y0 + w * 3 / 4;
331 res = ctx->
plot->
polygon(ctx, &arrow_fill_style, v, 3);
388 v[0] =
rect.
x1 - w / 4 + 1;
390 v[2] =
rect.
x1 - w * 3 / 4 + 1;
392 v[4] =
rect.
x1 - w * 3 / 4 + 1;
393 v[5] =
rect.
y0 + w * 3 / 4;
394 res = ctx->
plot->
polygon(ctx, &arrow_fill_style, v, 3);
430 v[0] = area.
x0 + w / 2;
431 v[1] = area.
y0 + w / 4;
432 v[2] = area.
x0 + w / 4;
433 v[3] = area.
y0 + w * 3 / 4;
434 v[4] = area.
x0 + w * 3 / 4;
435 v[5] = area.
y0 + w * 3 / 4;
436 res = ctx->
plot->
polygon(ctx, &arrow_fill_style, v, 3);
493 v[0] = area.
x0 + w / 2;
494 v[1] = area.
y1 - w / 4 + 1;
495 v[2] = area.
x0 + w / 4;
496 v[3] = area.
y1 - w * 3 / 4 + 1;
497 v[4] = area.
x0 + w * 3 / 4;
498 v[5] = area.
y1 - w * 3 / 4 + 1;
499 res = ctx->
plot->
polygon(ctx, &arrow_fill_style, v, 3);
515 int old_offset = s->
offset;
528 if (value > well_length - s->
bar_len) {
549 if (s->
offset != old_offset) {
600 }
else if (s->
offset + change < 0) {
606 if (s->
offset == old_offset) {
641 int visible_size,
int full_size)
647 if (length == s->
length &&
657 if (visible_size != -1) {
660 if (full_size != -1) {
669 if (cur_excess <= 0) {
672 s->
offset = (full_size - visible_size) * s->
offset / cur_excess;
740 if (pair && s->
pair != NULL) {
797 if (!s->
dragging && !(x >=
x0 && x <= x1 && y >=
y0 && y <=
y1)) {
836 }
else if (val < SCROLLBAR_WIDTH + s->bar_pos) {
874 && val < SCROLLBAR_WIDTH + s->bar_pos +
891 switch ((
unsigned int) status) {
937 int val, drag_start_pos;
996 horizontal->
pair = vertical;
997 vertical->
pair = horizontal;
Browser window creation and manipulation interface.
nserror
Enumeration of error codes.
@ NSERROR_NOMEM
Memory exhaustion.
Core mouse and pointer states.
browser_mouse_state
Mouse state.
@ BROWSER_MOUSE_PRESS_1
button 1 pressed
@ BROWSER_MOUSE_PRESS_2
button 2 pressed
@ BROWSER_MOUSE_DRAG_1
start of button 1 drag
@ BROWSER_MOUSE_HOLDING_2
during button 2 drag
@ BROWSER_MOUSE_HOLDING_1
during button 1 drag
@ BROWSER_MOUSE_DRAG_ON
a drag operation was started and a mouse button is still pressed
@ BROWSER_MOUSE_DRAG_2
start of button 2 drag
Target independent plotting interface.
const char * messages_get(const char *key)
Fast lookup of a message by key from the standard Messages hash.
Localised message support (interface).
colour nscolours[NSCOLOUR__COUNT]
NetSurf UI colour table.
NetSurf UI colours (interface).
#define blend_colour(c0, c1)
#define plot_style_int_to_fixed(v)
#define lighten_colour(c1)
#define darken_colour(c1)
@ PLOT_OP_TYPE_SOLID
Solid colour.
Plot style for stroke/fill plotters.
colour fill_colour
Colour of fill.
plot_operation_type_t fill_type
Fill plot type.
colour stroke_colour
Colour of stroke.
plot_operation_type_t stroke_type
Stroke plot type.
nserror(* line)(const struct redraw_context *ctx, const plot_style_t *pstyle, const struct rect *line)
Plots a line.
nserror(* polygon)(const struct redraw_context *ctx, const plot_style_t *pstyle, const int *p, unsigned int n)
Plot a polygon.
nserror(* rectangle)(const struct redraw_context *ctx, const plot_style_t *pstyle, const struct rect *rectangle)
Plots a rectangle.
const struct plotter_table * plot
Current plot operation table.
Interface to system colour values.
uint32_t colour
Colour type: XBGR.
Option reading and saving interface.
Interface to a number of general purpose functionality.
static nserror line(const struct redraw_context *ctx, const plot_style_t *style, const struct rect *line)
Plots a line.
static nserror clip(const struct redraw_context *ctx, const struct rect *clip)
Sets a clip rectangle for subsequent plot operations.