Changeset 9cd0ce in git for kernel


Ignore:
Timestamp:
Jun 10, 2008, 4:25:31 PM (16 years ago)
Author:
Hans Schönemann <hannes@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'b4f17ed1d25f93d46dbe29e4b499baecc2fd51bb')
Children:
151000a8c488d98c63363cc556cf4ccc878b5d6d
Parents:
1c5eb9934daad78195f2581e6ec371b249e76a26
Message:
*hannes: LGPL from wine


git-svn-id: file:///usr/local/Singular/svn/trunk@10746 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/htmlhelp.h

    r1c5eb9 r9cd0ce  
    1 /****************************************************************************
    2 *                                                                           *
    3 * HtmlHelp.h                                                                *
    4 *                                                                           *
    5 * Copyright (c) 1996-1997, Microsoft Corp. All rights reserved.             *
    6 *                                                                           *
    7 ****************************************************************************/
    8 
    9 #if _MSC_VER > 1000
    10 #pragma once
    11 #endif
     1/*
     2 * Copyright 2004 Jacek Caban
     3 *
     4 * This library is free software; you can redistribute it and/or
     5 * modify it under the terms of the GNU Lesser General Public
     6 * License as published by the Free Software Foundation; either
     7 * version 2.1 of the License, or (at your option) any later version.
     8 *
     9 * This library is distributed in the hope that it will be useful,
     10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     12 * Lesser General Public License for more details.
     13 *
     14 * You should have received a copy of the GNU Lesser General Public
     15 * License along with this library; if not, write to the Free Software
     16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
     17 */
    1218
    1319#ifndef __HTMLHELP_H__
    1420#define __HTMLHELP_H__
    1521
     22#define HH_DISPLAY_TOPIC        0x00
     23#define HH_HELP_FINDER          0x00
     24#define HH_DISPLAY_TOC          0x01
     25#define HH_DISPLAY_INDEX        0x02
     26#define HH_DISPLAY_SEARCH       0x03
     27#define HH_SET_WIN_TYPE         0x04
     28#define HH_GET_WIN_TYPE         0x05
     29#define HH_GET_WIN_HANDLE       0x06
     30#define HH_ENUM_INFO_TYPE       0x07
     31#define HH_SET_INFO_TYPE        0x08
     32#define HH_SYNC                 0x09
     33#define HH_RESERVED1            0x0A
     34#define HH_RESERVED2            0x0B
     35#define HH_RESERVED3            0x0C
     36#define HH_KEYWORD_LOOKUP       0x0D
     37#define HH_DISPLAY_TEXT_POPUP   0x0E
     38#define HH_HELP_CONTEXT         0x0F
     39#define HH_TP_HELP_CONTEXTMENU  0x10
     40#define HH_TP_HELP_WM_HELP      0x11
     41#define HH_CLOSE_ALL            0x12
     42#define HH_ALINK_LOOKUP         0x13
     43#define HH_GET_LAST_ERROR       0x14
     44#define HH_ENUM_CATEGORY        0x15
     45#define HH_ENUM_CATEGORY_IT     0x16
     46#define HH_RESET_IT_FILTER      0x17
     47#define HH_SET_INCLUSIVE_FILTER 0x18
     48#define HH_SET_EXCLUSIVE_FILTER 0x19
     49#define HH_INITIALIZE           0x1C
     50#define HH_UNINITIALIZE         0x1D
     51#define HH_SAFE_DISPLAY_TOPIC   0x20
     52#define HH_PRETRANSLATEMESSAGE  0xFD
     53#define HH_SET_GLOBAL_PROPERTY  0xFC
     54
     55#define HHWIN_PROP_TAB_AUTOHIDESHOW  0x00000001
     56#define HHWIN_PROP_ONTOP             0x00000002
     57#define HHWIN_PROP_NOTITLEBAR        0x00000004
     58#define HHWIN_PROP_NODEF_STYLES      0x00000008
     59#define HHWIN_PROP_NODEF_EXSTYLES    0x00000010
     60#define HHWIN_PROP_TRI_PANE          0x00000020
     61#define HHWIN_PROP_NOTB_TEXT         0x00000040
     62#define HHWIN_PROP_POST_QUIT         0x00000080
     63#define HHWIN_PROP_AUTO_SYNC         0x00000100
     64#define HHWIN_PROP_TRACKING          0x00000200
     65#define HHWIN_PROP_TAB_SEARCH        0x00000400
     66#define HHWIN_PROP_TAB_HISTORY       0x00000800
     67#define HHWIN_PROP_TAB_FAVORITES     0x00001000
     68#define HHWIN_PROP_CHANGE_TITLE      0x00002000
     69#define HHWIN_PROP_NAV_ONLY_WIN      0x00004000
     70#define HHWIN_PROP_NO_TOOLBAR        0x00008000
     71#define HHWIN_PROP_MENU              0x00010000
     72#define HHWIN_PROP_TAB_ADVSEARCH     0x00020000
     73#define HHWIN_PROP_USER_POS          0x00040000
     74#define HHWIN_PROP_TAB_CUSTOM1       0x00080000
     75#define HHWIN_PROP_TAB_CUSTOM2       0x00100000
     76#define HHWIN_PROP_TAB_CUSTOM3       0x00200000
     77#define HHWIN_PROP_TAB_CUSTOM4       0x00400000
     78#define HHWIN_PROP_TAB_CUSTOM5       0x00800000
     79#define HHWIN_PROP_TAB_CUSTOM6       0x01000000
     80#define HHWIN_PROP_TAB_CUSTOM7       0x02000000
     81#define HHWIN_PROP_TAB_CUSTOM8       0x04000000
     82#define HHWIN_PROP_TAB_CUSTOM9       0x08000000
     83#define HHWIN_TB_MARGIN              0x10000000
     84
     85#define HHWIN_PARAM_PROPERTIES     0x00000002
     86#define HHWIN_PARAM_STYLES         0x00000004
     87#define HHWIN_PARAM_EXSTYLES       0x00000008
     88#define HHWIN_PARAM_RECT           0x00000010
     89#define HHWIN_PARAM_NAV_WIDTH      0x00000020
     90#define HHWIN_PARAM_SHOWSTATE      0x00000040
     91#define HHWIN_PARAM_INFOTYPES      0x00000080
     92#define HHWIN_PARAM_TB_FLAGS       0x00000100
     93#define HHWIN_PARAM_EXPANSION      0x00000200
     94#define HHWIN_PARAM_TABPOS         0x00000400
     95#define HHWIN_PARAM_TABORDER       0x00000800
     96#define HHWIN_PARAM_HISTORY_COUNT  0x00001000
     97#define HHWIN_PARAM_CUR_TAB        0x00002000
     98
     99#define HHWIN_BUTTON_EXPAND      0x00000002
     100#define HHWIN_BUTTON_BACK        0x00000004
     101#define HHWIN_BUTTON_FORWARD     0x00000008
     102#define HHWIN_BUTTON_STOP        0x00000010
     103#define HHWIN_BUTTON_REFRESH     0x00000020
     104#define HHWIN_BUTTON_HOME        0x00000040
     105#define HHWIN_BUTTON_BROWSE_FWD  0x00000080
     106#define HHWIN_BUTTON_BROWSE_BCK  0x00000100
     107#define HHWIN_BUTTON_NOTES       0x00000200
     108#define HHWIN_BUTTON_CONTENTS    0x00000400
     109#define HHWIN_BUTTON_SYNC        0x00000800
     110#define HHWIN_BUTTON_OPTIONS     0x00001000
     111#define HHWIN_BUTTON_PRINT       0x00002000
     112#define HHWIN_BUTTON_INDEX       0x00004000
     113#define HHWIN_BUTTON_SEARCH      0x00008000
     114#define HHWIN_BUTTON_HISTORY     0x00010000
     115#define HHWIN_BUTTON_FAVORITES   0x00020000
     116#define HHWIN_BUTTON_JUMP1       0x00040000
     117#define HHWIN_BUTTON_JUMP2       0x00080000
     118#define HHWIN_BUTTON_ZOOM        0x00100000
     119#define HHWIN_BUTTON_TOC_NEXT    0x00200000
     120#define HHWIN_BUTTON_TOC_PREV    0x00400000
     121
     122#define HHWIN_DEF_BUTTONS  \
     123    (HHWIN_BUTTON_EXPAND | HHWIN_BUTTON_BACK | HHWIN_BUTTON_OPTIONS | HHWIN_BUTTON_PRINT)
     124
     125#define IDTB_EXPAND       200
     126#define IDTB_CONTRACT     201
     127#define IDTB_STOP         202
     128#define IDTB_REFRESH      203
     129#define IDTB_BACK         204
     130#define IDTB_HOME         205
     131#define IDTB_SYNC         206
     132#define IDTB_PRINT        207
     133#define IDTB_OPTIONS      208
     134#define IDTB_FORWARD      209
     135#define IDTB_NOTES        210
     136#define IDTB_BROWSE_FWD   211
     137#define IDTB_BROWSE_BACK  212
     138#define IDTB_CONTENTS     213
     139#define IDTB_INDEX        214
     140#define IDTB_SEARCH       215
     141#define IDTB_HISTORY      216
     142#define IDTB_FAVORITES    217
     143#define IDTB_JUMP1        218
     144#define IDTB_JUMP2        219
     145#define IDTB_CUSTOMIZE    221
     146#define IDTB_ZOOM         222
     147#define IDTB_TOC_NEXT     223
     148#define IDTB_TOC_PREV     224
     149
     150#define HHN_FIRST          (0U-860U)
     151#define HHN_LAST           (0U-879U)
     152#define HHN_NAVCOMPLETE    HHN_FIRST
     153#define HHN_TRACK          (HHN_FIRST-1)
     154#define HHN_WINDOW_CREATE  (HHN_FIRST-2)
     155
     156
    16157#ifdef __cplusplus
    17158extern "C" {
    18 #endif  // __cplusplus
    19 
    20 // Defines for Win64
    21 #ifndef _WIN64
    22 #define DWORD_PTR DWORD
    23159#endif
    24160
    25 // Commands to pass to HtmlHelp()
    26 
    27 #define HH_DISPLAY_TOPIC        0x0000
    28 #define HH_HELP_FINDER          0x0000  // WinHelp equivalent
    29 #define HH_DISPLAY_TOC          0x0001 
    30 #define HH_DISPLAY_INDEX        0x0002 
    31 #define HH_DISPLAY_SEARCH       0x0003 
    32 #define HH_SET_WIN_TYPE         0x0004
    33 #define HH_GET_WIN_TYPE         0x0005
    34 #define HH_GET_WIN_HANDLE       0x0006
    35 #define HH_ENUM_INFO_TYPE       0x0007  // Get Info type name, call repeatedly to enumerate, -1 at end
    36 #define HH_SET_INFO_TYPE        0x0008  // Add Info type to filter.
    37 #define HH_SYNC                 0x0009
    38 #define HH_RESERVED1            0x000A
    39 #define HH_RESERVED2            0x000B
    40 #define HH_RESERVED3            0x000C
    41 #define HH_KEYWORD_LOOKUP       0x000D
    42 #define HH_DISPLAY_TEXT_POPUP   0x000E  // display string resource id or text in a popup window
    43 #define HH_HELP_CONTEXT         0x000F  // display mapped numeric value in dwData
    44 #define HH_TP_HELP_CONTEXTMENU  0x0010  // text popup help, same as WinHelp HELP_CONTEXTMENU
    45 #define HH_TP_HELP_WM_HELP      0x0011  // text popup help, same as WinHelp HELP_WM_HELP
    46 #define HH_CLOSE_ALL            0x0012  // close all windows opened directly or indirectly by the caller
    47 #define HH_ALINK_LOOKUP         0x0013  // ALink version of HH_KEYWORD_LOOKUP
    48 #define HH_GET_LAST_ERROR       0x0014  // not currently implemented // See HHERROR.h
    49 #define HH_ENUM_CATEGORY        0x0015  // Get category name, call repeatedly to enumerate, -1 at end
    50 #define HH_ENUM_CATEGORY_IT     0x0016  // Get category info type members, call repeatedly to enumerate, -1 at end
    51 #define HH_RESET_IT_FILTER      0x0017  // Clear the info type filter of all info types.
    52 #define HH_SET_INCLUSIVE_FILTER 0x0018  // set inclusive filtering method for untyped topics to be included in display
    53 #define HH_SET_EXCLUSIVE_FILTER 0x0019  // set exclusive filtering method for untyped topics to be excluded from display
    54 #define HH_INITIALIZE            0x001C  // Initializes the help system.
    55 #define HH_UNINITIALIZE          0x001D  // Uninitializes the help system.
    56 #define HH_PRETRANSLATEMESSAGE  0x00fd  // Pumps messages. (NULL, NULL, MSG*).
    57 #define HH_SET_GLOBAL_PROPERTY  0x00fc  // Set a global property. (NULL, NULL, HH_GPROP)
    58 
    59 #define HHWIN_PROP_TAB_AUTOHIDESHOW (1 << 0)    // Automatically hide/show tri-pane window
    60 #define HHWIN_PROP_ONTOP            (1 << 1)    // Top-most window
    61 #define HHWIN_PROP_NOTITLEBAR       (1 << 2)    // no title bar
    62 #define HHWIN_PROP_NODEF_STYLES     (1 << 3)    // no default window styles (only HH_WINTYPE.dwStyles)
    63 #define HHWIN_PROP_NODEF_EXSTYLES   (1 << 4)    // no default extended window styles (only HH_WINTYPE.dwExStyles)
    64 #define HHWIN_PROP_TRI_PANE         (1 << 5)    // use a tri-pane window
    65 #define HHWIN_PROP_NOTB_TEXT        (1 << 6)    // no text on toolbar buttons
    66 #define HHWIN_PROP_POST_QUIT        (1 << 7)    // post WM_QUIT message when window closes
    67 #define HHWIN_PROP_AUTO_SYNC        (1 << 8)    // automatically ssync contents and index
    68 #define HHWIN_PROP_TRACKING         (1 << 9)    // send tracking notification messages
    69 #define HHWIN_PROP_TAB_SEARCH       (1 << 10)   // include search tab in navigation pane
    70 #define HHWIN_PROP_TAB_HISTORY      (1 << 11)   // include history tab in navigation pane
    71 #define HHWIN_PROP_TAB_FAVORITES    (1 << 12)   // include favorites tab in navigation pane
    72 #define HHWIN_PROP_CHANGE_TITLE     (1 << 13)   // Put current HTML title in title bar
    73 #define HHWIN_PROP_NAV_ONLY_WIN     (1 << 14)   // Only display the navigation window
    74 #define HHWIN_PROP_NO_TOOLBAR       (1 << 15)   // Don't display a toolbar
    75 #define HHWIN_PROP_MENU             (1 << 16)   // Menu
    76 #define HHWIN_PROP_TAB_ADVSEARCH    (1 << 17)   // Advanced FTS UI.
    77 #define HHWIN_PROP_USER_POS         (1 << 18)   // After initial creation, user controls window size/position
    78 #define HHWIN_PROP_TAB_CUSTOM1      (1 << 19)   // Use custom tab #1
    79 #define HHWIN_PROP_TAB_CUSTOM2      (1 << 20)   // Use custom tab #2
    80 #define HHWIN_PROP_TAB_CUSTOM3      (1 << 21)   // Use custom tab #3
    81 #define HHWIN_PROP_TAB_CUSTOM4      (1 << 22)   // Use custom tab #4
    82 #define HHWIN_PROP_TAB_CUSTOM5      (1 << 23)   // Use custom tab #5
    83 #define HHWIN_PROP_TAB_CUSTOM6      (1 << 24)   // Use custom tab #6
    84 #define HHWIN_PROP_TAB_CUSTOM7      (1 << 25)   // Use custom tab #7
    85 #define HHWIN_PROP_TAB_CUSTOM8      (1 << 26)   // Use custom tab #8
    86 #define HHWIN_PROP_TAB_CUSTOM9      (1 << 27)   // Use custom tab #9
    87 #define HHWIN_TB_MARGIN             (1 << 28)   // the window type has a margin
    88 
    89 #define HHWIN_PARAM_PROPERTIES      (1 << 1)    // valid fsWinProperties
    90 #define HHWIN_PARAM_STYLES          (1 << 2)    // valid dwStyles
    91 #define HHWIN_PARAM_EXSTYLES        (1 << 3)    // valid dwExStyles
    92 #define HHWIN_PARAM_RECT            (1 << 4)    // valid rcWindowPos
    93 #define HHWIN_PARAM_NAV_WIDTH       (1 << 5)    // valid iNavWidth
    94 #define HHWIN_PARAM_SHOWSTATE       (1 << 6)    // valid nShowState
    95 #define HHWIN_PARAM_INFOTYPES       (1 << 7)    // valid apInfoTypes
    96 #define HHWIN_PARAM_TB_FLAGS        (1 << 8)    // valid fsToolBarFlags
    97 #define HHWIN_PARAM_EXPANSION       (1 << 9)    // valid fNotExpanded
    98 #define HHWIN_PARAM_TABPOS          (1 << 10)   // valid tabpos
    99 #define HHWIN_PARAM_TABORDER        (1 << 11)   // valid taborder
    100 #define HHWIN_PARAM_HISTORY_COUNT   (1 << 12)   // valid cHistory
    101 #define HHWIN_PARAM_CUR_TAB         (1 << 13)   // valid curNavType
    102 
    103 #define HHWIN_BUTTON_EXPAND         (1 << 1)    // Expand/contract button
    104 #define HHWIN_BUTTON_BACK           (1 << 2)    // Back button
    105 #define HHWIN_BUTTON_FORWARD        (1 << 3)    // Forward button
    106 #define HHWIN_BUTTON_STOP           (1 << 4)    // Stop button
    107 #define HHWIN_BUTTON_REFRESH        (1 << 5)    // Refresh button
    108 #define HHWIN_BUTTON_HOME           (1 << 6)    // Home button
    109 #define HHWIN_BUTTON_BROWSE_FWD     (1 << 7)    // not implemented
    110 #define HHWIN_BUTTON_BROWSE_BCK     (1 << 8)    // not implemented
    111 #define HHWIN_BUTTON_NOTES          (1 << 9)    // not implemented
    112 #define HHWIN_BUTTON_CONTENTS       (1 << 10)   // not implemented
    113 #define HHWIN_BUTTON_SYNC           (1 << 11)   // Sync button
    114 #define HHWIN_BUTTON_OPTIONS        (1 << 12)   // Options button
    115 #define HHWIN_BUTTON_PRINT          (1 << 13)   // Print button
    116 #define HHWIN_BUTTON_INDEX          (1 << 14)   // not implemented
    117 #define HHWIN_BUTTON_SEARCH         (1 << 15)   // not implemented
    118 #define HHWIN_BUTTON_HISTORY        (1 << 16)   // not implemented
    119 #define HHWIN_BUTTON_FAVORITES      (1 << 17)   // not implemented
    120 #define HHWIN_BUTTON_JUMP1          (1 << 18)
    121 #define HHWIN_BUTTON_JUMP2          (1 << 19)
    122 #define HHWIN_BUTTON_ZOOM           (1 << 20)
    123 #define HHWIN_BUTTON_TOC_NEXT       (1 << 21)
    124 #define HHWIN_BUTTON_TOC_PREV       (1 << 22)
    125 
    126 #define HHWIN_DEF_BUTTONS           \
    127             (HHWIN_BUTTON_EXPAND |  \
    128              HHWIN_BUTTON_BACK |    \
    129              HHWIN_BUTTON_OPTIONS | \
    130              HHWIN_BUTTON_PRINT)
    131 
    132 // Button IDs
    133 
    134 #define IDTB_EXPAND             200
    135 #define IDTB_CONTRACT           201
    136 #define IDTB_STOP               202
    137 #define IDTB_REFRESH            203
    138 #define IDTB_BACK               204
    139 #define IDTB_HOME               205
    140 #define IDTB_SYNC               206
    141 #define IDTB_PRINT              207
    142 #define IDTB_OPTIONS            208
    143 #define IDTB_FORWARD            209
    144 #define IDTB_NOTES              210 // not implemented
    145 #define IDTB_BROWSE_FWD         211
    146 #define IDTB_BROWSE_BACK        212
    147 #define IDTB_CONTENTS           213 // not implemented
    148 #define IDTB_INDEX              214 // not implemented
    149 #define IDTB_SEARCH             215 // not implemented
    150 #define IDTB_HISTORY            216 // not implemented
    151 #define IDTB_FAVORITES          217 // not implemented
    152 #define IDTB_JUMP1              218
    153 #define IDTB_JUMP2              219
    154 #define IDTB_CUSTOMIZE          221
    155 #define IDTB_ZOOM               222
    156 #define IDTB_TOC_NEXT           223
    157 #define IDTB_TOC_PREV           224
    158 
    159 // Notification codes
    160 
    161 #define HHN_FIRST       (0U-860U)
    162 #define HHN_LAST        (0U-879U)
    163 
    164 #define HHN_NAVCOMPLETE   (HHN_FIRST-0)
    165 #define HHN_TRACK         (HHN_FIRST-1)
    166 #define HHN_WINDOW_CREATE (HHN_FIRST-2)
    167 
    168 typedef struct tagHHN_NOTIFY
    169 {
    170     NMHDR   hdr;
    171     PCSTR   pszUrl; // Multi-byte, null-terminated string
    172 } HHN_NOTIFY;
    173 
    174 typedef struct tagHH_POPUP
    175 {
    176     int       cbStruct;      // sizeof this structure
    177     HINSTANCE hinst;         // instance handle for string resource
    178     UINT      idString;      // string resource id, or text id if pszFile is specified in HtmlHelp call
    179     LPCTSTR   pszText;       // used if idString is zero
    180     POINT     pt;            // top center of popup window
    181     COLORREF  clrForeground; // use -1 for default
    182     COLORREF  clrBackground; // use -1 for default
    183     RECT      rcMargins;     // amount of space between edges of window and text, -1 for each member to ignore
    184     LPCTSTR   pszFont;       // facename, point size, char set, BOLD ITALIC UNDERLINE
    185 } HH_POPUP;
    186 
    187 typedef struct tagHH_AKLINK
    188 {
    189     int       cbStruct;     // sizeof this structure
    190     BOOL      fReserved;    // must be FALSE (really!)
    191     LPCTSTR   pszKeywords;  // semi-colon separated keywords
    192     LPCTSTR   pszUrl;       // URL to jump to if no keywords found (may be NULL)
    193     LPCTSTR   pszMsgText;   // Message text to display in MessageBox if pszUrl is NULL and no keyword match
    194     LPCTSTR   pszMsgTitle;  // Message text to display in MessageBox if pszUrl is NULL and no keyword match
    195     LPCTSTR   pszWindow;    // Window to display URL in
    196     BOOL      fIndexOnFail; // Displays index if keyword lookup fails.
    197 } HH_AKLINK;
     161typedef struct tagHH_NOTIFY {
     162    NMHDR hdr;
     163    PCSTR pszurl;
     164} HH_NOTIFY;
     165
     166typedef struct tagHH_POPUPA {
     167    int       cbStruct;
     168    HINSTANCE hinst;
     169    UINT      idString;
     170    LPCSTR    pszText;
     171    POINT     pt;
     172    COLORREF  clrForeground;
     173    COLORREF  clrBackground;
     174    RECT      rcMargins;
     175    LPCSTR    pszFont;
     176} HH_POPUPA;
     177
     178typedef struct tagHH_POPUPW {
     179    int       cbStruct;
     180    HINSTANCE hinst;
     181    UINT      idString;
     182    LPCWSTR   pszText;
     183    POINT     pt;
     184    COLORREF  clrForeground;
     185    COLORREF  clrBackground;
     186    RECT      rcMargins;
     187    LPCWSTR   pszFont;
     188} HH_POPUPW;
     189
     190DECL_WINELIB_TYPE_AW(HH_POPUP)
     191
     192typedef struct tagHH_ALINKA {
     193    int    cbStruct;
     194    BOOL   fReserved;
     195    LPCSTR pszKeywords;
     196    LPCSTR pszUrl;
     197    LPCSTR pszMsgText;
     198    LPCSTR pszMsgTitle;
     199    LPCSTR pszWindow;
     200    BOOL   fIndexOnFail;
     201} HH_ALINKA;
     202
     203typedef struct tagHH_ALINKW {
     204    int     cbStruct;
     205    BOOL    fReserved;
     206    LPCWSTR pszKeywords;
     207    LPCWSTR pszUrl;
     208    LPCWSTR pszMsgText;
     209    LPCWSTR pszMsgTitle;
     210    LPCWSTR pszWindow;
     211    BOOL    fIndexOnFail;
     212} HH_ALINKW;
     213
     214DECL_WINELIB_TYPE_AW(HH_ALINK)
    198215
    199216enum {
     
    202219    HHWIN_NAVTYPE_SEARCH,
    203220    HHWIN_NAVTYPE_FAVORITES,
    204     HHWIN_NAVTYPE_HISTORY,   // not implemented
     221    HHWIN_NAVTYPE_HISTORY,
    205222    HHWIN_NAVTYPE_AUTHOR,
    206223    HHWIN_NAVTYPE_CUSTOM_FIRST = 11
     
    210227    IT_INCLUSIVE,
    211228    IT_EXCLUSIVE,
    212     IT_HIDDEN,
     229    IT_HIDDEN
    213230};
    214231
    215 typedef struct tagHH_ENUM_IT
    216 {
    217     int       cbStruct;          // size of this structure
    218     int       iType;             // the type of the information type ie. Inclusive, Exclusive, or Hidden
    219     LPCSTR    pszCatName;        // Set to the name of the Category to enumerate the info types in a category; else NULL
    220     LPCSTR    pszITName;         // volitile pointer to the name of the infotype. Allocated by call. Caller responsible for freeing
    221     LPCSTR    pszITDescription;  // volitile pointer to the description of the infotype.
     232typedef struct tagHH_ENUM_IT {
     233    int    cbStruct;
     234    int    iType;
     235    LPCSTR pszCatName;
     236    LPCSTR pszITName;
     237    LPCSTR pszITDescription;
    222238} HH_ENUM_IT, *PHH_ENUM_IT;
    223239
    224 typedef struct tagHH_ENUM_CAT
    225 {
    226     int       cbStruct;          // size of this structure
    227     LPCSTR    pszCatName;        // volitile pointer to the category name
    228     LPCSTR    pszCatDescription; // volitile pointer to the category description
     240typedef struct tagHH_ENUM_CAT {
     241    int    cbStruct;
     242    LPCSTR pszCatName;
     243    LPCSTR pszCatDescription;
    229244} HH_ENUM_CAT, *PHH_ENUM_CAT;
    230245
    231 typedef struct tagHH_SET_INFOTYPE
    232 {
    233     int       cbStruct;          // the size of this structure
    234     LPCSTR    pszCatName;        // the name of the category, if any, the InfoType is a member of.
    235     LPCSTR    pszInfoTypeName;   // the name of the info type to add to the filter
    236 } HH_SET_INFOTYPE, *PHH_SET_INFOTYPE;
    237 
    238 typedef DWORD HH_INFOTYPE;
    239 typedef HH_INFOTYPE* PHH_INFOTYPE;
     246typedef struct tagHH_SET_INFOTYPE {
     247    int    cbStruct;
     248    LPCSTR pszCatName;
     249    LPCSTR pszInfoTypeName;
     250} HH_SET_INFOTYPE;
     251
     252typedef DWORD HH_INFOTYPE, *PHH_INFOTYPE;
    240253
    241254enum {
    242255    HHWIN_NAVTAB_TOP,
    243256    HHWIN_NAVTAB_LEFT,
    244     HHWIN_NAVTAB_BOTTOM,
     257    HHWIN_NAVTAB_BOTTOM
    245258};
    246259
    247 #define HH_MAX_TABS 19  // maximum number of tabs
     260#define HH_MAX_TABS 19
    248261
    249262enum {
     
    254267    HH_TAB_HISTORY,
    255268    HH_TAB_AUTHOR,
    256 
    257269    HH_TAB_CUSTOM_FIRST = 11,
    258270    HH_TAB_CUSTOM_LAST = HH_MAX_TABS
    259271};
    260272
    261 #define HH_MAX_TABS_CUSTOM (HH_TAB_CUSTOM_LAST - HH_TAB_CUSTOM_FIRST + 1)
    262 
    263 // HH_DISPLAY_SEARCH Command Related Structures and Constants
    264 
    265 #define HH_FTS_DEFAULT_PROXIMITY (-1)
    266 
    267 typedef struct tagHH_FTS_QUERY
    268 {
    269     int cbStruct;            // Sizeof structure in bytes.
    270     BOOL fUniCodeStrings;    // TRUE if all strings are unicode.
    271     LPCTSTR pszSearchQuery;  // String containing the search query.
    272     LONG iProximity;         // Word proximity.
    273     BOOL fStemmedSearch;     // TRUE for StemmedSearch only.
    274     BOOL fTitleOnly;         // TRUE for Title search only.
    275     BOOL fExecute;           // TRUE to initiate the search.
    276     LPCTSTR pszWindow;       // Window to display in
    277 } HH_FTS_QUERY;
    278 
    279 // HH_WINTYPE Structure
    280 
    281 typedef struct tagHH_WINTYPE {
    282     int     cbStruct;        // IN: size of this structure including all Information Types
    283     BOOL    fUniCodeStrings; // IN/OUT: TRUE if all strings are in UNICODE
    284     LPCTSTR pszType;         // IN/OUT: Name of a type of window
    285     DWORD   fsValidMembers;  // IN: Bit flag of valid members (HHWIN_PARAM_)
    286     DWORD   fsWinProperties; // IN/OUT: Properties/attributes of the window (HHWIN_)
    287 
    288     LPCTSTR pszCaption;      // IN/OUT: Window title
    289     DWORD   dwStyles;        // IN/OUT: Window styles
    290     DWORD   dwExStyles;      // IN/OUT: Extended Window styles
    291     RECT    rcWindowPos;     // IN: Starting position, OUT: current position
    292     int     nShowState;      // IN: show state (e.g., SW_SHOW)
    293 
    294     HWND  hwndHelp;          // OUT: window handle
    295     HWND  hwndCaller;        // OUT: who called this window
    296 
    297     HH_INFOTYPE* paInfoTypes;  // IN: Pointer to an array of Information Types
    298 
    299     // The following members are only valid if HHWIN_PROP_TRI_PANE is set
    300 
    301     HWND  hwndToolBar;      // OUT: toolbar window in tri-pane window
    302     HWND  hwndNavigation;   // OUT: navigation window in tri-pane window
    303     HWND  hwndHTML;         // OUT: window displaying HTML in tri-pane window
    304     int   iNavWidth;        // IN/OUT: width of navigation window
    305     RECT  rcHTML;           // OUT: HTML window coordinates
    306 
    307     LPCTSTR pszToc;         // IN: Location of the table of contents file
    308     LPCTSTR pszIndex;       // IN: Location of the index file
    309     LPCTSTR pszFile;        // IN: Default location of the html file
    310     LPCTSTR pszHome;        // IN/OUT: html file to display when Home button is clicked
    311     DWORD   fsToolBarFlags; // IN: flags controling the appearance of the toolbar
    312     BOOL    fNotExpanded;   // IN: TRUE/FALSE to contract or expand, OUT: current state
    313     int     curNavType;     // IN/OUT: UI to display in the navigational pane
    314     int     tabpos;         // IN/OUT: HHWIN_NAVTAB_TOP, HHWIN_NAVTAB_LEFT, or HHWIN_NAVTAB_BOTTOM
    315     int     idNotify;       // IN: ID to use for WM_NOTIFY messages
    316     BYTE    tabOrder[HH_MAX_TABS + 1];    // IN/OUT: tab order: Contents, Index, Search, History, Favorites, Reserved 1-5, Custom tabs
    317     int     cHistory;       // IN/OUT: number of history items to keep (default is 30)
    318     LPCTSTR pszJump1;       // Text for HHWIN_BUTTON_JUMP1
    319     LPCTSTR pszJump2;       // Text for HHWIN_BUTTON_JUMP2
    320     LPCTSTR pszUrlJump1;    // URL for HHWIN_BUTTON_JUMP1
    321     LPCTSTR pszUrlJump2;    // URL for HHWIN_BUTTON_JUMP2
    322     RECT    rcMinSize;      // Minimum size for window (ignored in version 1)
    323     int     cbInfoTypes;    // size of paInfoTypes;
    324     LPCTSTR pszCustomTabs;  // multiple zero-terminated strings
    325 } HH_WINTYPE, *PHH_WINTYPE;
     273#define HH_MAX_TABS_CUSTOM        (HH_TAB_CUSTOM_LAST-HH_TAB_CUSTOM_FIRST+1)
     274#define HH_FTS_DEFAULT_PROXIMITY  -1
     275
     276typedef struct tagHH_FTS_QUERYA {
     277    int    cbStruct;
     278    BOOL   fUniCodeStrings;
     279    LPCSTR pszSearchQuery;
     280    LONG   iProximity;
     281    BOOL   fStemmedSearch;
     282    BOOL   fTitleOnly;
     283    BOOL   fExecute;
     284    LPCSTR pszWindow;
     285} HH_FTS_QUERYA;
     286
     287typedef struct tagHH_FTS_QUERYW {
     288    int     cbStruct;
     289    BOOL    fUniCodeStrings;
     290    LPCWSTR pszSearchQuery;
     291    LONG    iProximity;
     292    BOOL    fStemmedSearch;
     293    BOOL    fTitleOnly;
     294    BOOL    fExecute;
     295    LPCWSTR pszWindow;
     296} HH_FTS_QUERYW;
     297
     298DECL_WINELIB_TYPE_AW(HH_FTS_QUERY)
     299
     300typedef struct tagHH_WINTYPEA {
     301    int          cbStruct;
     302    BOOL         fUniCodeStrings;
     303    LPCSTR       pszType;
     304    DWORD        fsValidMembers;
     305    DWORD        fsWinProperties;
     306    LPCSTR       pszCaption;
     307    DWORD        dwStyles;
     308    DWORD        dwExStyles;
     309    RECT         rcWindowPos;
     310    int          nShowState;
     311    HWND         hwndHelp;
     312    HWND         hwndCaller;
     313    PHH_INFOTYPE paInfoTypes;
     314    HWND         hwndToolBar;
     315    HWND         hwndNavigation;
     316    HWND         hwndHTML;
     317    int          iNavWidth;
     318    RECT         rcHTML;
     319    LPCSTR       pszToc;
     320    LPCSTR       pszIndex;
     321    LPCSTR       pszFile;
     322    LPCSTR       pszHome;
     323    DWORD        fsToolBarFlags;
     324    BOOL         fNotExpanded;
     325    int          curNavType;
     326    int          tabpos;
     327    int          idNotify;
     328    BYTE         tabOrder[HH_MAX_TABS+1];
     329    int          cHistory;
     330    LPCSTR       pszJump1;
     331    LPCSTR       pszJump2;
     332    LPCSTR       pszUrlJump1;
     333    LPCSTR       pszUrlJump2;
     334    RECT         rcMinSize;
     335    int          cbInfoTypes;
     336    LPCSTR       pszCustomTabs;
     337} HH_WINTYPEA, *PHH_WINTYPEA;
     338
     339typedef struct tagHH_WINTYPEW {
     340    int          cbStruct;
     341    BOOL         fUniCodeStrings;
     342    LPCWSTR      pszType;
     343    DWORD        fsValidMembers;
     344    DWORD        fsWinProperties;
     345    LPCWSTR      pszCaption;
     346    DWORD        dwStyles;
     347    DWORD        dwExStyles;
     348    RECT         rcWindowPos;
     349    int          nShowState;
     350    HWND         hwndHelp;
     351    HWND         hwndCaller;
     352    PHH_INFOTYPE paInfoTypes;
     353    HWND         hwndToolBar;
     354    HWND         hwndNavigation;
     355    HWND         hwndHTML;
     356    int          iNavWidth;
     357    RECT         rcHTML;
     358    LPCWSTR      pszToc;
     359    LPCWSTR      pszIndex;
     360    LPCWSTR      pszFile;
     361    LPCWSTR      pszHome;
     362    DWORD        fsToolBarFlags;
     363    BOOL         fNotExpanded;
     364    int          curNavType;
     365    int          tabpos;
     366    int          idNotify;
     367    BYTE         tabOrder[HH_MAX_TABS+1];
     368    int          cHistory;
     369    LPCWSTR      pszJump1;
     370    LPCWSTR      pszJump2;
     371    LPCWSTR      pszUrlJump1;
     372    LPCWSTR      pszUrlJump2;
     373    RECT         rcMinSize;
     374    int          cbInfoTypes;
     375    LPCWSTR      pszCustomTabs;
     376} HH_WINTYPEW, *PHH_WINTYPEW;
     377
     378DECL_WINELIB_TYPE_AW(HH_WINTYPE)
    326379
    327380enum {
     
    331384    HHACT_TAB_HISTORY,
    332385    HHACT_TAB_FAVORITES,
    333 
    334386    HHACT_EXPAND,
    335387    HHACT_CONTRACT,
     
    350402    HHACT_TOC_PREV,
    351403    HHACT_NOTES,
    352 
    353     HHACT_LAST_ENUM,
     404    HHACT_LAST_ENUM
    354405};
    355406
    356 typedef struct tagHHNTRACK
    357 {
    358     NMHDR   hdr;
    359     PCSTR   pszCurUrl;      // Multi-byte, null-terminated string
    360     int     idAction;       // HHACT_ value
    361     HH_WINTYPE* phhWinType; // Current window type structure
    362 } HHNTRACK;
    363 
    364 HWND
    365 WINAPI
    366 HtmlHelpA(
    367     HWND hwndCaller,
    368     LPCSTR pszFile,
    369     UINT uCommand,
    370     DWORD_PTR dwData
    371     );
    372 
    373 HWND
    374 WINAPI
    375 HtmlHelpW(
    376     HWND hwndCaller,
    377     LPCWSTR pszFile,
    378     UINT uCommand,
    379     DWORD_PTR dwData
    380     );
    381 #ifdef UNICODE
    382 #define HtmlHelp  HtmlHelpW
    383 #else
    384 #define HtmlHelp  HtmlHelpA
    385 #endif // !UNICODE
    386 
    387 // Use the following for GetProcAddress to load from hhctrl.ocx
    388 
    389 #define ATOM_HTMLHELP_API_ANSI    (LPTSTR)((DWORD)((WORD)(14)))
    390 #define ATOM_HTMLHELP_API_UNICODE (LPTSTR)((DWORD)((WORD)(15)))
    391 
    392 ///////////////////////////////////////////////////////////////////////////////
    393 //
    394 // Global Control Properties.
    395 //
    396 typedef enum tagHH_GPROPID
    397 {
    398     HH_GPROPID_SINGLETHREAD=1,      // VARIANT_BOOL: True for single thread
    399     HH_GPROPID_TOOLBAR_MARGIN=2,    // long: Provides a left/right margin around the toolbar.
    400     HH_GPROPID_UI_LANGUAGE=3,       // long: LangId of the UI.
    401     HH_GPROPID_CURRENT_SUBSET=4,    // BSTR: Current subset.
    402     HH_GPROPID_CONTENT_LANGUAGE=5   // long: LandId for desired content.
     407typedef struct tagHH_NTRACKA {
     408    NMHDR        hdr;
     409    PCSTR        pszCurUrl;
     410    int          idAction;
     411    PHH_WINTYPEA phhWinType;
     412} HH_NTRACKA;
     413
     414typedef struct tagHH_NTRACKW {
     415    NMHDR        hdr;
     416    PCSTR        pszCurUrl;
     417    int          idAction;
     418    PHH_WINTYPEW phhWinType;
     419} HH_NTRACKW;
     420
     421DECL_WINELIB_TYPE_AW(HH_NTRACK)
     422
     423HWND WINAPI HtmlHelpA(HWND,LPCSTR,UINT,DWORD_PTR);
     424HWND WINAPI HtmlHelpW(HWND,LPCWSTR,UINT,DWORD_PTR);
     425#define HtmlHelp WINELIB_NAME_AW(HtmlHelp)
     426
     427#define ATOM_HTMLHELP_API_ANSI    (LPTSTR)14
     428#define ATOM_HTMLHELP_API_UNICODE (LPTSTR)15
     429
     430typedef enum tagHH_GPROPID {
     431    HH_GPROPID_SINGLETHREAD     = 1,
     432    HH_GPROPID_TOOLBAR_MARGIN   = 2,
     433    HH_GPROPID_UI_LANGUAGE      = 3,
     434    HH_GPROPID_CURRENT_SUBSET   = 4,
     435    HH_GPROPID_CONTENT_LANGUAGE = 5
    403436} HH_GPROPID;
    404437
    405 ///////////////////////////////////////////////////////////////////////////////
    406 //
    407 // Global Property structure
    408 //
    409 #ifdef __oaidl_h__
    410 
    411 #pragma pack(push, 8)
     438#ifdef __WIDL_OAIDL_H
    412439
    413440typedef struct tagHH_GLOBAL_PROPERTY
     
    417444} HH_GLOBAL_PROPERTY ;
    418445
    419 #pragma pack(pop)
    420 #endif
     446#endif /* __WIDL_OAIDL_H */
    421447
    422448#ifdef __cplusplus
    423449}
    424 #endif // __cplusplus
    425 
    426 #endif // __HTMLHELP_H__
     450#endif
     451
     452#endif /* __HTMLHELP_H__ */
Note: See TracChangeset for help on using the changeset viewer.