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

📄 url.h

📁 飞漫公司的minigui的1.6.8收费增值版本的demon等示例程序
💻 H
字号:
/* * File : url.h - Dillo * * Copyright (C) 2001 Jorge Arellano Cid   <jcid@users.sourceforge.net> *               2001 Livio Baldini Soares <livio@linux.ime.usp.br> * * Parse and normalize all URL's inside Dillo. */#ifndef __URL_H__#define __URL_H__#include <string.h>       /* for strcmp */#include <glib.h>#define DILLO_URL_HTTP_PORT        80#define DILLO_URL_HTTPS_PORT       443#define DILLO_URL_FTP_PORT         21#define DILLO_URL_MAILTO_PORT      25#define DILLO_URL_NEWS_PORT        119#define DILLO_URL_TELNET_PORT      23#define DILLO_URL_GOPHER_PORT      70/* * Values for DilloUrl->flags. * Specifies which which action to perform with an URL. */#define URL_Get                 (1 << 0)#define URL_Post                (1 << 1)#define URL_ISindex             (1 << 2)#define URL_Ismap               (1 << 3)#define URL_RealmAccess         (1 << 4)#define URL_E2EReload           (1 << 5)#define URL_ReloadImages        (1 << 6)#define URL_ReloadPage          (1 << 7)#define URL_ReloadFromCache     (1 << 8)#define URL_ReloadIncomplete    (1 << 9)#define URL_SpamSafe            (1 << 10)/* * Access methods to fields inside DilloURL. * (non '_'-ended macros MUST use these for initialization sake) *//* these MAY return NULL: */#define URL_SCHEME_(u)         u->scheme#define URL_AUTHORITY_(u)      u->authority#define URL_PATH_(u)           u->path#define URL_QUERY_(u)          u->query#define URL_FRAGMENT_(u)       u->fragment#define URL_HOST_(u)           a_Url_hostname(u)#define URL_DATA_(u)           u->data#define URL_ALT_(u)            u->alt#define URL_STR_(u)            a_Url_str(u)/* these return an integer */#define URL_PORT_(u)           (URL_HOST(u) ? u->port : u->port)#define URL_FLAGS_(u)          u->flags#define URL_POSX_(u)           u->scrolling_position_x#define URL_POSY_(u)           u->scrolling_position_y#define URL_ILLEGAL_CHARS_(u)  url->illegal_chars/* * Access methods that always return a string: * When the "empty" and "undefined" concepts of RFC-2396 are irrelevant to * the caller, and a string is required, use these methods instead: */#define NPTR2STR(p)           ((p) ? (p) : "")#define URL_SCHEME(u)         NPTR2STR(URL_SCHEME_(u))#define URL_AUTHORITY(u)      NPTR2STR(URL_AUTHORITY_(u))#define URL_PATH(u)           NPTR2STR(URL_PATH_(u))#define URL_QUERY(u)          NPTR2STR(URL_QUERY_(u))#define URL_FRAGMENT(u)       NPTR2STR(URL_FRAGMENT_(u))#define URL_HOST(u)           NPTR2STR(URL_HOST_(u))#define URL_DATA(u)           NPTR2STR(URL_DATA_(u))#define URL_ALT(u)            NPTR2STR(URL_ALT_(u))#define URL_STR(u)            NPTR2STR(URL_STR_(u))#define URL_PORT(u)           URL_PORT_(u)#define URL_FLAGS(u)          URL_FLAGS_(u)#define URL_POSX(u)           URL_POSX_(u)#define URL_POSY(u)           URL_POSY_(u)#define URL_ILLEGAL_CHARS(u)  URL_ILLEGAL_CHARS_(u)/* URL-camp compare methods */#define URL_STRCAMP_EQ(s1,s2) \   ((!(s1) && !(s2)) || ((s1) && (s2) && !strcmp(s1,s2)))#define URL_STRCAMP_I_EQ(s1,s2) \   ((!(s1) && !(s2)) || ((s1) && (s2) && !g_strcasecmp(s1,s2)))#define URL_GSTRCAMP_EQ(s1,s2) \   ((!(s1) && !(s2)) || ((s1) && (s2) && !strcmp((s1)->str,(s2)->str)))#define URL_GSTRCAMP_I_EQ(s1,s2) \   ((!(s1) && !(s2)) || ((s1) && (s2) && !g_strcasecmp((s1)->str,(s2)->str)))typedef struct _DilloUrl DilloUrl;#ifdef __cplusplusextern "C" {#endif /* __cplusplus */struct _DilloUrl {   GString *url_string;   const char *buffer;   const char *scheme;            //   const char *authority;         //   const char *path;              // These are references only   const char *query;             // (no need to free them)   const char *fragment;          //   const char *hostname;          //   int port;   int flags;   const char *data;              /* POST */   const char *alt;               /* "alt" text (used by image maps) */   int ismap_url_len;             /* Used by server side image maps */   gint32 scrolling_position_x, scrolling_position_y;                                   /* remember position of visited urls */   int illegal_chars;             /* number of illegal chars */};DilloUrl* a_Url_new(const char *url_str, const char *base_url,                    int flags, gint32 posx, gint32 posy);void a_Url_free(DilloUrl *u);char *a_Url_str(const DilloUrl *url);const char *a_Url_hostname(const DilloUrl *u);DilloUrl* a_Url_dup(const DilloUrl *u);int a_Url_cmp(const DilloUrl *A, const DilloUrl *B);void a_Url_set_flags(DilloUrl *u, int flags);void a_Url_set_data(DilloUrl *u, char *data);void a_Url_set_alt(DilloUrl *u, const char *alt);void a_Url_set_pos(DilloUrl *u, gint32 posx, gint32 posy);void a_Url_set_ismap_coords(DilloUrl *u, char *coord_str);char *a_Url_parse_hex_path(const DilloUrl *u);char *a_Url_string_strip_delimiters(char *str);gboolean a_Url_does_visited (DilloUrl *u);#ifdef __cplusplus}#endif /* __cplusplus */#endif /* __URL_H__ */

⌨️ 快捷键说明

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