From bacf5e0272c566c30e591152084daf2f684aebe8 Mon Sep 17 00:00:00 2001 From: Goraf Date: Fri, 5 Feb 2016 22:40:46 +0000 Subject: ContextHelp: initial commit (adopted) * working * 32/64-bit compilable git-svn-id: http://svn.miranda-ng.org/main/trunk@16225 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/ContextHelp/src/help.h | 146 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 plugins/ContextHelp/src/help.h (limited to 'plugins/ContextHelp/src/help.h') diff --git a/plugins/ContextHelp/src/help.h b/plugins/ContextHelp/src/help.h new file mode 100644 index 0000000000..cd6e095e7e --- /dev/null +++ b/plugins/ContextHelp/src/help.h @@ -0,0 +1,146 @@ +/* +Miranda IM Help Plugin +Copyright (C) 2002 Richard Hughes, 2005-2007 H. Herkenrath + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program (Help-License.txt); if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +#ifndef __CONTEXTHELP_HELP_H__ +#define __CONTEXTHELP_HELP_H__ + +// dlgboxsubclass.c +int InstallDialogBoxHook(void); +int RemoveDialogBoxHook(void); + +// utils.c +#define CTLTYPE_UNKNOWN 0 +#define CTLTYPE_DIALOG 1 +#define CTLTYPE_BUTTON 2 +#define CTLTYPE_CHECKBOX 3 +#define CTLTYPE_RADIO 4 +#define CTLTYPE_TEXT 5 +#define CTLTYPE_IMAGE 6 +#define CTLTYPE_EDIT 7 +#define CTLTYPE_GROUP 8 +#define CTLTYPE_COMBO 9 +#define CTLTYPE_LIST 10 +#define CTLTYPE_SPINEDIT 11 +#define CTLTYPE_PROGRESS 12 +#define CTLTYPE_SLIDER 13 +#define CTLTYPE_LISTVIEW 14 +#define CTLTYPE_TREEVIEW 15 +#define CTLTYPE_DATETIME 16 +#define CTLTYPE_IP 17 +#define CTLTYPE_STATUSBAR 18 +#define CTLTYPE_HYPERLINK 19 +#define CTLTYPE_CLC 20 +#define CTLTYPE_SCROLL 21 +#define CTLTYPE_ANIMATION 22 +#define CTLTYPE_HOTKEY 23 +#define CTLTYPE_TABS 24 +#define CTLTYPE_COLOUR 25 +#define CTLTYPE_TOOLBAR 26 +#define CTLTYPE_SIZEGRIP 27 +extern const TCHAR *szControlTypeNames[]; +int GetControlType(HWND hwndCtl); +HWND GetControlDialog(HWND hwndCtl); +int GetControlTitle(HWND hwndCtl, TCHAR *pszTitle, int cchTitle); +char *GetControlModuleName(HWND hwndCtl); +int GetControlID(HWND hwndCtl); +char *CreateDialogIdString(HWND hwndDlg); +struct ResizableCharBuffer { + char *sz; + int iEnd, cbAlloced; +}; +void AppendCharToCharBuffer(struct ResizableCharBuffer *rcb, char c); +void AppendToCharBuffer(struct ResizableCharBuffer *rcb, const char *fmt, ...); + +// helpdlg.c +#define M_CHANGEHELPCONTROL (WM_APP+0x100) +#define M_HELPLOADED (WM_APP+0x101) +#ifdef EDITOR +#define M_SAVECOMPLETE (WM_APP+0x102) +#endif +#define M_LOADHELP (WM_APP+0x103) +#define M_HELPLOADFAILED (WM_APP+0x104) +#define M_CLIPBOARDCOPY (WM_APP+0x105) +INT_PTR CALLBACK HelpDlgProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam); +INT_PTR CALLBACK ShadowDlgProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam); + +// streaminout.c +void StreamInHtml(HWND hwndEdit, const char *szHtml, UINT codepage, COLORREF clrBkgrnd); +#ifdef EDITOR +char *StreamOutHtml(HWND hwndEdit); +#endif +#define TEXTSIZE_BIG 18 // in half points +#define TEXTSIZE_NORMAL 16 +#define TEXTSIZE_SMALL 13 +#ifndef EDITOR +void FreeHyperlinkData(void); +int IsHyperlink(LONG cpPos, LONG *pcpMin, LONG *pcpMax, char **ppszLink); +#endif + +// datastore.c +void InitDialogCache(void); +void FreeDialogCache(void); +#define GCHF_DONTLOAD 1 +int GetControlHelp(HWND hwndCtl, const char *pszDlgId, const char *pszModule, int ctrlId, TCHAR **ppszTitle, char **ppszText, int *pType, LCID *pLocaleID, UINT *pCodePage, BOOL *pIsRTL, DWORD flags); +#ifdef EDITOR +void SetControlHelp(const char *pszDlgId, const char *pszModule, int ctrlId, TCHAR *pszTitle, char *pszText, int type); +void SaveDialogCache(void); +#else +char *CreateControlIdentifier(const char *pszDlgId, const char *pszModule, int ctrlId, HWND hwndCtl); +#endif +void RegisterFileChange(void); +void CloseFileChange(void); + +// options.c +void ReloadLangOptList(void); +void InitOptions(void); +void UninitOptions(void); + +// helppack.c +void TrimStringSimple(char *str); +void TrimString(char *str); +BOOL IsEmpty(const char *str); +typedef struct { + TCHAR szLanguage[64]; + LCID Locale; + WORD codepage; + char szAuthors[1024]; + char szAuthorEmail[128]; + char szLastModifiedUsing[64]; + char szPluginsIncluded[4080]; + char szVersion[21]; + char szFLName[128]; + FILETIME ftFileDate; + TCHAR szFileName[MAX_PATH]; /* just the file name itself */ + BYTE flags; /* see HPIF_* flags */ +} HELPPACK_INFO; +#define HPF_ENABLED 0x01 // pack is enabled +#define HPF_NOLOCALE 0x02 // pack has no valid locale +#define HPF_DEFAULT 0x04 // pack is english default +BOOL GetPackPath(TCHAR *pszPath, int nSize, BOOL fEnabledPacks, const TCHAR *pszFile); +typedef INT_PTR(CALLBACK *ENUM_PACKS_CALLBACK)(HELPPACK_INFO *pack, WPARAM wParam, LPARAM lParam); +BOOL EnumPacks(ENUM_PACKS_CALLBACK callback, const TCHAR *pszFilePattern, const char *pszFileVersionHeader, WPARAM wParam, LPARAM lParam); +BOOL IsPluginIncluded(const HELPPACK_INFO *pack, char *pszFileBaseName); +BOOL EnablePack(const HELPPACK_INFO *pack, const TCHAR *pszFilePattern); +void CorrectPacks(const TCHAR *pszFilePattern, const TCHAR *pszDefaultFile, BOOL fDisableAll); + +/* update.c +INT_PTR ServiceShowLangDialog(WPARAM wParam, LPARAM lPARAM); +void InitUpdate(void); +void UninitUpdate(void);*/ + +#endif // __CONTEXTHELP_HELP_H__ \ No newline at end of file -- cgit v1.2.3