📄 dw_viewport.h
字号:
#ifndef __DW_VIEWPORT_H__#define __DW_VIEWPORT_H__#include "mgwidget.h"#include "dw_widget.h"#include "web.h"#ifdef __cplusplusextern "C" {#endif /* __cplusplus */#define DW_VIEWPORT(obj) ((DwViewport*)(obj))typedef enum { DW_VIEWPORT_DRAW, DW_VIEWPORT_RESIZE} DwViewportDrawResizeAction;typedef struct _DwViewport DwViewport;struct _DwViewport{ DilloWeb* web; HWND hwnd; /* the current allocation: size and position, always relative to the * scrolled area! */ MGAllocation allocation; gint32 world_x, world_y; DwWidget *child; DwWidget *last_entered; gboolean hscrollbar_used, vscrollbar_used, calc_size_blocked; /* updated by Dw_viewport_motion_notify */ gdouble mouse_x, mouse_y; gchar *anchor; DwRectPosition anchor_pos;#if 0 FindtextState *findtext_state; Selection *selection;#endif /* Anchors of the widget tree. * Key: gchar*, has to be stored elsewhere * Value: an instance of DwViewportAnchor (in .c file) */ GHashTable *anchors_table; /* Queue of draw and resize requests. */ gint draw_resize_idle_id; DwViewportDrawResizeAction draw_resize_action; /* What has to be redrawn. DwRectangle's are in world coordinates. */ DwRectangle *draw_areas; gint num_draw_areas; gint num_draw_areas_max; /* number allocated */};GType a_Dw_viewport_get_type (void);#if 0HWND a_Dw_viewport_new (GtkAdjustment *hadjustment, GtkAdjustment *vadjustment);#endifDwViewport* a_Dw_viewport_new (HWND hwnd);void a_Dw_viewport_destroy (DwViewport* viewport);void a_Dw_viewport_add_dw (DwViewport *viewport, DwWidget *widget);void a_Dw_viewport_set_anchor (DwViewport *viewport, const gchar *anchor);void a_Dw_viewport_set_scrolling_position (DwViewport *viewport, gint32 x, gint32 y);DwWidget* a_Dw_viewport_widget_at_viewport_point (DwViewport *viewport, gint32 vx, gint32 vy);void p_Dw_viewport_put_anchor (DwWidget *widget, gchar *name, gint32 y);void Dw_viewport_remove_dw (DwViewport *viewport);void Dw_viewport_calc_size (DwViewport *viewport);DwWidget* Dw_viewport_widget_at_point (DwViewport *viewport, gint32 x, gint32 y);void Dw_viewport_update_anchor (DwViewport *viewport);void Dw_viewport_scroll_to (DwViewport *viewport, DwHPosition hpos, DwVPosition vpos, gint32 x, gint32 y, gint32 width, gint32 height);void Dw_viewport_remove_anchor (DwViewport *viewport);void Dw_viewport_queue_draw (DwViewport *viewport, gint32 x, gint32 y, gint32 width, gint32 height);void Dw_viewport_queue_resize (DwViewport *viewport);#ifdef __cplusplus}#endif /* __cplusplus */#endif /* __DW_VIEWPORT_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -