From 7de38a08b97e0554e318b8c25806cef5d47259e6 Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Thu, 12 Jun 2014 17:49:53 +0000 Subject: headers of not adopted plugins moved to !Deprecated git-svn-id: http://svn.miranda-ng.org/main/trunk@9438 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/!Deprecated/ExternalAPI/m_MathModule.h | 263 +++++++++++++++++++++++++ 1 file changed, 263 insertions(+) create mode 100644 plugins/!Deprecated/ExternalAPI/m_MathModule.h (limited to 'plugins/!Deprecated/ExternalAPI/m_MathModule.h') diff --git a/plugins/!Deprecated/ExternalAPI/m_MathModule.h b/plugins/!Deprecated/ExternalAPI/m_MathModule.h new file mode 100644 index 0000000000..04ae06a7f7 --- /dev/null +++ b/plugins/!Deprecated/ExternalAPI/m_MathModule.h @@ -0,0 +1,263 @@ +#ifndef M_MATHMODULE_H_ +#define M_MATHMODULE_H_ +//--------------------------------------------------- + + +/* + ************************** + * 2 * + ** * x + 2 Pi + ** ************* + R + * Sin(wt) + * + + Math-Module + ************** + + Miranda Plugin by Stephan Kassemeyer + + + MathModule API - (c) Stephan Kassemeyer + 8 May, 2004 + +*/ + + +// --------- + +/* + Miranda Service-functions defined by MathModule + call with the + int (*CallService)(const char * servicename,WPARAM,LPARAM) + that you get from miranda when Miranda calls the + Load(PLUGINLINK * link) + of your PlugIn-dll + the CallService function then is: + link->CallServiceSync(Servicename,wparam,lparam) +*/ + +// --------- + +#define MATH_RTF_REPLACE_FORMULAE "Math/RtfReplaceFormulae" +// replace all formulas in a RichEdit with bitmaps. +// wParam = 0 +// lParam = *TMathRichedit Info +// return: TRUE if replacement succeeded, FALSE if not (disable by user?). +typedef struct +{ + HWND hwndRichEditControl; // handle of richedit. + CHARRANGE* sel; // NULL: replace all. + int disableredraw; +} TMathRicheditInfo; +// WARNING: !!! +// Strange things happen if you use this function twice on the same CHARRANGE: +// if Math-startDelimiter == Math-endDelimiter, there is the following problem: +// it might be that someone forgot an endDelimiter, this results in a lonesome startdelimiter. +// if you try to MATH_REPLACE_FORMULAE the second time, startDelimiters and endDelimiters are mixed up. +// The same problem occours if we have empty formulae, because two succeding delimiters are +// replaced with a single delimiter. + + +#define MTH_GETBITMAP "Math/GetBitmap" +//returns Bitmap that represents the formula given in lparam (string-pointer) +//this formula has NO Delimiters. +//wparam=0 +//lparam=(*char)Formula +//result=(HBITMAP) bitmap +//!!! the bitmap must be deleted with DeleteObject(hobject) +//example: +//HBITMAP Bmp=(HBITMAP)CallService(MTH_GETBITMAP,0, (LPARAM)formula); + +#define MTH_GET_GIF "Math/GetGif" +// this renders a formula given in lparam and produces a gif-image in a temporary-folder +// and returns the filename (full path). Be sure to copy the file if you want to preserve it, +// because the files are managed as a ring-buffer, if 99 files already exist, this +// function overwrites the first one. +// wparam=0 +// lparam=*char text // formula WITHOUT delimiters +// result=(*char)path +// !!! the result-buffer must be deleted with MTH_FREE_GIFPATH +#define MTH_GET_GIF_UNICODE "Math/GetGifUnicode" +// wparam=0 +// lparam=*wchar_t text +// result=*char path +// !!! the result-buffer must be deleted with MTH_FREE_GIFPATH +#define MTH_FREE_GIFPATH "Math/FreeRTFBitmapText" + +#define MTH_GET_RTF_BITMAPTEXT "Math/GetRTFBitmapText" +// returns rich-text stream that includes bitmaps from text given in lparam +// text included between MATH_GET_STARTDELIMITER and MATH_GETENDDELIMITER +// hereby is replaced with a rtf-bitmap-stream that represents the corresponding formula +// wparam=0 +// lparam=*char text +// result=*char rtfstream +// !!! the result-buffer must be deleted with MTH_FREE_RTF_BITMAPTEXT +#define MTH_FREE_RTF_BITMAPTEXT "Math/FreeRTFBitmapText" +// deletes the buffer that MTH_GET_RTF_BITMAPTEXT has created. +// wparam=0 +// lparam=(*char) buffer +// result=0 + +#define MTH_GET_HTML_SOURCE "Math/GetHTMLSource" +// this is similar to MTH_GET_RTF_BITMAPTEXT, but +// as we cannot include embedded images, the bitmaps are saved in a +// temporary directory (relative to Miranda-dir) and the images are linked into +// the html-source +// wparam=0 +// lparam=*char text // this has to be html-source already. this function only adds formula-links. +// result=*char htmlsource +// !!! the result-buffer must be deleted with MTH_FREE_HTML_BUFFER +#define MTH_GET_HTML_SOURCE_UNICODE "Math/GetHTMLSourceUnicode" +// wparam=0 +// lparam=*wchar_t text +// result=*wchar_t htmlsource +#define MTH_FREE_HTML_BUFFER "Math/FreeRTFBitmapText" +// deletes string-buffers that MathModule has created. +// wparam=(bool) unicode // 0 if no unicode-buffer; 1 if unicode-buffer !!! +// lparam=(*char) buffer +// result=0 + + +// **********parameter functions: + +#define MATH_SET_PARAMS "Math/SetParams" +//-------------------------------------- +// sets a parameter (only integer values) specified in wparam +// wparam=paramcode +// lparam=parametervalue +// paramcodes: + #define MATH_PARAM_BKGCOLOR 0 // (COLORREF) std-rgb-color or TRANSPARENT_Color + // you can make the BKGCOLOR Transparent (default) by using this color: + #define TRANSPARENT_Color 0xffffffff -1 // this is default + #define MATH_PARAM_FONTCOLOR 1 // (COLORREF) std-rgb-color + #define MATH_PARAM_RESIZE_HWND 2 // (HWND) preview window resizes RESIZE_HWND when it is being resized. + #define MATH_PARAM_ToolboxEdit_HWND 3 // (HWND) If this hwnd (of an edit-box) is set, MathModule can insert Formula-elements from the Math-Toolbox. + +#define MATH_GET_PARAMS "Math/GetParams" +//--------------------------------------- +// get a parameter (only integer values) specified in wparam +// wparam=paramcode +// lparam=lparamOfPARAM // see below +// paramcodes and returnvalues: + #define MATH_PARAM_STARTDELIMITER 4 // retval: *char delimiter // the delimiter that marks the beginning of a formula + // !!! the result-buffer must be deleted with MTH_FREE_MATH_BUFFER + // lparam=0 + #define MATH_PARAM_ENDDELIMITER 5 // retval: *char delimiter // the delimiter that marks the end of a formula + // !!! the result-buffer must be deleted with MTH_FREE_MATH_BUFFER + // lparam=0 +// ************end parameter functions. + +#define MTH_FREE_MATH_BUFFER "Math/FreeRTFBitmapText" +// deletes string-buffers that MathModule has created. (at the moment only the *DELIMITER-services create such strings) +// wparam=0 +// lparam=(*char) buffer +// result=0 + + + +// ********* preview-window functions + +#define MTH_SHOW "Math/Show" +// shows the preview-window +// wparam=0 +// lparam=0 +// result=0 + +#define MTH_HIDE "Math/Hide" +// hides the preview-window +// wparam=0 +// lparam=0 +// result=0 + +#define MTH_RESIZE "Math/Resize" +// sets the size of the preview-window +// wparam=0 +// lparam=(*TMathWindowInfo) +// result=0 +typedef struct +{ + int top; + int left; + int right; + int bottom; +} TMathWindowInfo; + +#define MTH_SETFORMULA "Math/SetFormula" +// sets the text that the preview-window should parse to display formulas found inside +// wparam=0 +// lparam=(*char) text +// result=0 + +#define MTH_GET_PREVIEW_HEIGHT "Math/getPreviewHeight" +// returns the height of the whole preview-window (including system-menu-bar) +// consider this when maximizing a window to that preview-window is hooked on top or bottom +// it returns the height no matter whether preview-window is visible or not +// wparam=0 +// lparam=0 +// result=(int) height + +#define MTH_GET_PREVIEW_SHOWN "Math/getPreviewShown" +// returns 1 if preview window is visible +// returns 0 if preview window is invisible +// result=(int) shown + +//---------------end preview functions + + +#define MTH_SUBSTITUTE_DELIMITER "Math/SubstituteDelimiter" +// replaces Substitute in an edit-box given in lparam-structure with internal Math-Delimiter. +// MathSrmm uses this for the shortcut-functionality +// I do not recommend to use this, it's not Unicode-safe +// wparam=0 +// lparam=(TMathSubstInfo) substInfo +// result=0 +typedef struct +{ + HWND EditHandle; + char* Substitute; +} TMathSubstInfo; + + + + + +// +// ---- here are some obsolete services. I plan to remove them soon. Use MATH_SET_PARAMS or MATH_GET_PARAMS instead !! +// + +#define MATH_SETBKGCOLOR "Math/SetBackGroundColor" +// changes the background color of the next formula to be rendered. +// wparam=0 +// lparam=(COLORREF) color +// result=0 + +#define MTH_Set_ToolboxEditHwnd "Math/SetTBhwnd" +// If this hwnd (of an edit-box) is set, MathModule can insert Formula-elements from the Math-Toolbox. +// wparam=0 +// lparam=handle + +#define MTH_Set_Resize_HWND "Math/SetResizeHWND" //übergibt fenster-Handle des aktuellen Message-Dialogs +// If MathModule knows the handle of a SRMM-based window, following features exist: +// - preview window resizes Math-Srmm when it is being resized. +// wparam=0 +// lparam=handle +// result=0 + +#define MATH_GET_STARTDELIMITER "Math/GetStartDelimiter" +// returns the delimiter that marks the beginning of a formula +// wparam=0 +// lparam=0 +// result=*char Delimiter +// !!! the result-buffer must be deleted with MTH_FREE_MATH_BUFFER + +#define MATH_GETENDDELIMITER "Math/GetEndDelimiter" +// returns the delimiter that marks the end of a formula +// wparam=0 +// lparam=0 +// result=*char Delimiter +// !!! the result-buffer must be deleted with MTH_FREE_MATH_BUFFER + +//--------------------------------------------------- +#endif +//#ifndef M_MATHMODULE_H_ + -- cgit v1.2.3