⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dw_widget.h

📁 飞漫公司的minigui的1.6.8收费增值版本的demon等示例程序
💻 H
📖 第 1 页 / 共 2 页
字号:
   /* This value is defined by the parent widget, and used for incremential    * resizing. See Dw.txt for an explanation. */   gint parent_ref;   /* the viewport in which the widget is shown */   struct _DwViewport *viewport;   /* see definition at the beginning */   DwWidgetFlags flags;   /* the current allocation: size and position, always relative to the    * scrolled area! */   DwAllocation allocation;   /* a_Dw_widget_size_request stores the result of the last call of    * Dw_xxx_size_request here, don't read this directly, but call    * a_Dw_widget_size_request. */   DwRequisition requisition;   /* analogue to requisition */   DwExtremes extremes;   HCURSOR cursor; /* todo: move this to style */   DwStyle *style;   /* See p_Dw_widget_set_bg_color(). */   DwStyleColor *bg_color;      /* See a_Dw_widget_set_button_sensitive(). */   gboolean button_sensitive;   gboolean button_sensitive_set;   /* A temporary pixmap used for clipping. See p_Dw_widget_will_clip(). */   BITMAP* clip_pixmap;};struct _DwWidgetClass{   GObjectClass parent_class;   void (*size_request)         (DwWidget *widget,                                 DwRequisition *requisition);   void (*get_extremes)         (DwWidget *widget,                                 DwExtremes *extremes);   void (*size_allocate)        (DwWidget *widget,                                 DwAllocation *allocation);   void (*mark_size_change)     (DwWidget *widget,                                 gint ref);   void (*mark_extremes_change) (DwWidget *widget,                                 gint ref);   void (*set_width)            (DwWidget *widget,                                 gint32 width);   void (*set_ascent)           (DwWidget *widget,                                 gint32 ascent);   void (*set_descent)          (DwWidget *widget,                                 gint32 descent);   void (*draw)                 (DwWidget *widget,                                 HDC hdc,                                 DwRectangle *area);   void (*realize)              (DwWidget *widget);   void (*unrealize)            (DwWidget *widget);   void (*destroy)              (DwWidget *widget);   gboolean (*button_press_event)   (DwWidget *widget,                                     gint32 x,                                     gint32 y,                                     DWORD flags);   gboolean (*button_release_event) (DwWidget *widget,                                     gint32 x,                                     gint32 y,                                     DWORD flags);   gboolean (*motion_notify_event)  (DwWidget *widget,                                     gint32 x,                                     gint32 y,                                     DWORD flags);   gboolean (*enter_notify_event)   (DwWidget *widget,                                     DwWidget *last_widget,                                     DWORD flags);   gboolean (*leave_notify_event)   (DwWidget *widget,                                     DwWidget *next_widget,                                     DWORD flags);   DwIterator* (*iterator)       (DwWidget*,                                  gint32 mask,                                  gboolean at_end);};GType   a_Dw_widget_get_type        (void);void    a_Dw_widget_size_request    (DwWidget *widget,                                     DwRequisition *requisition);void    a_Dw_widget_get_extremes    (DwWidget *widget,                                     DwExtremes *extremes);void    a_Dw_widget_size_allocate   (DwWidget *widget,                                     DwAllocation *allocation);void    a_Dw_widget_set_width       (DwWidget *widget,                                     gint32 width);void    a_Dw_widget_set_ascent      (DwWidget *widget,                                     gint32 ascent);void    a_Dw_widget_set_descent     (DwWidget *widget,                                     gint32 descent);void    a_Dw_widget_draw            (DwWidget *widget,                                      HDC hdc,                                     DwRectangle *area);void    a_Dw_widget_realize         (DwWidget *widget);void    a_Dw_widget_unrealize       (DwWidget *widget);void    a_Dw_widget_destroy         (DwWidget *widget);void    a_Dw_widget_set_style       (DwWidget *widget,                                     DwStyle *style);void    a_Dw_widget_set_cursor      (DwWidget *widget,                                     HCURSOR cursor);void    a_Dw_widget_set_button_sensitive (DwWidget *widget,                                          gboolean button_sensitive);DwWidget *a_Dw_widget_get_toplevel  (DwWidget *widget);void    a_Dw_widget_scroll_to       (DwWidget *widget,                                     DwHPosition hpos,                                     DwVPosition vpos,                                     gint32 x,                                     gint32 y,                                     gint32 width,                                     gint32 height);/* iterators */DwIterator* a_Dw_widget_iterator   (DwWidget *widget,                                    gint mask,                                    gboolean at_end);#define     a_Dw_iterator_next(it) ((it) ? (it)->next(it) : FALSE)#define     a_Dw_iterator_prev(it) ((it) ? (it)->prev(it) : FALSE)#define     a_Dw_iterator_highlight(it, s, e, l) ((it) ? \                                      (it)->highlight(it, s, e, l) : (void)0)#define     a_Dw_iterator_get_allocation(it, s, e, a) \                                           ((it) ? \                                            (it1)->get_allocation(it, s, e, a)\                                            : (void)0)#define     a_Dw_iterator_clone(it) ((it) ? (it)->clone(it) : NULL)#define     a_Dw_iterator_compare(it1, it2) ((it1)->compare(it1, it2))#define     a_Dw_iterator_free(it)  ((it) ? (it)->free(it) : (void)0)/* for convenience */#define     a_Dw_iterator_unhighlight(it, l) ((it) ? \                                    (it)->highlight(it, -1, -1, l) : FALSE)void        a_Dw_iterator_scroll_to  (DwIterator *it1,                                      DwIterator *it2,                                      gint start,                                      gint end,                                      DwHPosition hpos,                                      DwVPosition vpos);DwIterator* p_Dw_iterator_clone_std          (DwIterator *it);void        p_Dw_iterator_free_std           (DwIterator *it);void        p_Dw_iterator_highlight_std      (DwIterator *it,                                              gint from,                                              gint start,                                              DwHighlightLayer layer);void        p_Dw_iterator_get_allocation_std (DwIterator *it,                                              gint start,                                              gint end,                                              DwAllocation *allocation);DwIterator* p_Dw_iterator_clone_std_int      (DwIterator *it);gint        p_Dw_iterator_compare_std_int    (DwIterator *it1,                                              DwIterator *it2);/* for debugging */gchar*      a_Dw_content_text             (DwContent *content);gchar*      a_Dw_content_html             (DwContent *content);gchar*      a_Dw_iterator_text            (DwIterator *it);void        a_Dw_widget_print_tree        (DwWidget *widget);DwIterator* p_Dw_widget_text_iterator     (DwWidget* widget,                                           gint32 mask,                                           gboolean at_end,                                           gchar *text);gboolean    p_Dw_iterator_text_next       (DwIterator *it);gboolean    p_Dw_iterator_text_prev       (DwIterator *it);DwIterator* p_Dw_iterator_text_clone      (DwIterator *it);gint        p_Dw_iterator_text_compare    (DwIterator *it1,                                           DwIterator *it2);/* Only for Dw module */gint    p_Dw_widget_intersect         (DwWidget *widget,                                       DwRectangle *area,                                       DwRectangle *intersection);void    p_Dw_widget_set_parent        (DwWidget *widget,                                       DwWidget *parent);gint32  p_Dw_widget_x_viewport_to_world (DwWidget *widget,                                         gint16 viewport_x);gint32  p_Dw_widget_y_viewport_to_world (DwWidget *widget,                                         gint16 viewport_y);gint16  p_Dw_widget_x_world_to_viewport (DwWidget *widget,                                         gint32 world_x);gint16  p_Dw_widget_y_world_to_viewport (DwWidget *widget,                                         gint32 world_y);gboolean Dw_widget_mouse_event      (DwWidget *widget,                                     void* dw_viewport,                                     gint32 x,                                     gint32 y,                                     DWORD flags);void    p_Dw_widget_queue_draw        (DwWidget *widget);void    p_Dw_widget_queue_draw_area   (DwWidget *widget,                                       gint32 x,                                       gint32 y,                                       gint32 width,                                       gint32 height);void    p_Dw_widget_queue_resize      (DwWidget *widget,                                       gint ref,                                       gboolean extremes_changed);void    p_Dw_widget_will_clip         (DwWidget *widget);void    p_Dw_widget_set_bg_color      (DwWidget *widget,                                       DwStyleColor *color);DwStyleColor* p_Dw_widget_get_bg_color(DwWidget *widget);/* Wrappers for Dw_style_draw_box */void    p_Dw_widget_draw_box          (DwWidget *widget,                                       HDC hdc,                                       DwStyle *style,                                       DwRectangle *area,                                       gint32 x,                                       gint32 y,                                       gint32 width,                                       gint32 height,                                       gboolean inverse);void    p_Dw_widget_draw_widget_box   (DwWidget *widget,                                       HDC hdc,                                       DwRectangle *area,                                       gboolean inverse);void    p_Dw_widget_draw_selected     (DwWidget *widget,                                       HDC hdc,                                       DwRectangle *area);#ifdef __cplusplus}#endif /* __cplusplus */#endif /* __DW_WIDGET_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -