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

📄 dw_image.h

📁 浏览器的源代码,可移植到嵌入式设备.
💻 H
字号:
#ifndef __DW_IMAGE_H__#define __DW_IMAGE_H__#include <stdio.h>#include "dw_widget.h"#include "url.h"           /* for DilloUrl */#ifdef __cplusplusextern "C" {#endif /* __cplusplus */#define DW_TYPE_IMAGE           (a_Dw_image_get_type ())#define DW_IMAGE(obj)           GTK_CHECK_CAST (obj,DW_TYPE_IMAGE, DwImage)#define DW_IMAGE_CLASS(klass)   GTK_CHECK_CLASS_CAST (klass, DW_TYPE_IMAGE, \                                   DwImageClass)#define DW_IS_IMAGE(obj)        GTK_CHECK_TYPE (obj, DW_TYPE_IMAGE)typedef enum {   DW_IMAGE_RGB} DwImageType;typedef struct _DwImage       DwImage;typedef struct _DwImageClass  DwImageClass;typedef struct _DwImageMap      DwImageMap;typedef struct _DwImageMapList  DwImageMapList;typedef struct _DwImageMapShape DwImageMapShape;struct _DwImage{   DwWidget widget;   DilloUrl *url;   gint version;   DwImageType type;   guchar *buffer;   gint width;   gint height;   gint alt_text_width;   /* non NULL if image is scaled */   guchar *scaled_buffer;   /* ALT text (for selection) */   gchar *alt_text;   DwImageMapList *map_list;   DilloUrl *usemap_url;   gboolean ismap;   gint hover_link;   gint pressed_link;   gboolean selected[DW_HIGHLIGHT_NUM_LAYERS];};struct _DwImageClass{   DwWidgetClass parent_class;   gboolean (*link_entered)  (DwImage *page,                              gint link, gint x, gint y);   gboolean (*link_pressed)  (DwImage *page,                              gint link, gint x, gint y,                              GdkEventButton *event);   gboolean (*link_released) (DwImage *page,                              gint link, gint x, gint y,                              GdkEventButton *event);   gboolean (*link_clicked)  (DwImage *page,                              gint link, gint x, gint y,                              GdkEventButton *event);};/* * Image Maps */#define DW_IMAGE_MAP_SHAPE_RECT    0#define DW_IMAGE_MAP_SHAPE_CIRCLE  1#define DW_IMAGE_MAP_SHAPE_POLY    2struct _DwImageMapList{   DwImageMap *maps;   gint num_maps;   gint num_maps_max;   DwImageMapShape *shapes;   gint num_shapes;   gint num_shapes_max;};struct _DwImageMap{   DilloUrl *url;   gint start_shape;};struct _DwImageMapShape{   gint type;   gint link;   union {      GdkRegion *poly;      struct  {         gint32 x;         gint32 y;         gint32 r2;      } circle;      struct  {         gint32 top;         gint32 bottom;         gint32 left;         gint32 right;      } rect;   } data;};/* * Function prototypes */GtkType a_Dw_image_get_type (void);DwWidget* a_Dw_image_new  (DwImageType type, const gchar *alt_text);void a_Dw_image_size (DwImage *image, gint width, gint height);void a_Dw_image_draw_row(DwImage *image,                         gint Width, gint Height, gint x, gint y);void a_Dw_image_set_buffer(DwImage *image, guchar *ImageBuffer,                           DilloUrl *url, gint version);void a_Dw_image_set_ismap (DwImage *image);void a_Dw_image_set_usemap (DwImage *image,  DwImageMapList *map_list,                            DilloUrl *usemap_url);/* Image maps */void a_Dw_image_map_list_init      (DwImageMapList *list);void a_Dw_image_map_list_free      (DwImageMapList *list);void a_Dw_image_map_list_add_map    (DwImageMapList *list,                                     DilloUrl *url);void a_Dw_image_map_list_add_shape  (DwImageMapList *list,                                     gint type,                                     gint link,                                     GdkPoint *points,                                     gint num_points);#ifdef __cplusplus}#endif /* __cplusplus */#endif /* __DW_IMAGE_H__ */

⌨️ 快捷键说明

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