summaryrefslogtreecommitdiff
path: root/spamfilter/Info_Src.txt
diff options
context:
space:
mode:
Diffstat (limited to 'spamfilter/Info_Src.txt')
-rw-r--r--spamfilter/Info_Src.txt111
1 files changed, 111 insertions, 0 deletions
diff --git a/spamfilter/Info_Src.txt b/spamfilter/Info_Src.txt
new file mode 100644
index 0000000..6f0c1f4
--- /dev/null
+++ b/spamfilter/Info_Src.txt
@@ -0,0 +1,111 @@
+
+Spam Filter 2.5.2.3 for Miranda IM 0.4.3+
+------------------------------------------------------------------------
+ Source Code
+
+Reminder:
+"Spam Filter" is released under the terms of the GNU General Public License.
+See "Spam Filter-License.txt" for more details.
+"Spam Filter" is copyright 2003-2005 by Heiko Herkenrath.
+
+
+Please notify me of any changes that improve
+"Spam Filter" or add new features.
+If you have any questions on the code, feel free
+to contact me at my email address.
+
+ H. Herkenrath (hrathh at users.sourceforge.net)
+
+
+Notes
+------------------------------------------------------------------------
+
+## Version ###############################
+
+The following files need to be changed to bump the version number:
+
+Info_Src.txt (1 place)
+version.h (1 place)
+version.rc (5 places)
+m_spamfilter.h (1 place)
+m_spamfilter.inc (1 place)
+Extensions\InstallScript.xml (1 place)
+Docs\SpamFilter-Readme.txt (3 places)
+Docs\SpamFilter-Translation.txt (2 or 3 places)
+Docs\SpamFilter-Developer.txt (1 place)
+
+
+## Unicode ##############################
+TCHAR is a generic type for strings that maps to a WCHAR if compiled as Unicode
+or to a regular char when compiled as ANSI.
+
+All WinAPI functions arre mapped automatically to Unicode/ANSI.
+iIf not called directly via their A or W prefixes.
+
+C-Runtime functions need to be used in their _wcs* form to be mapped (ANSI/Unicode)
+
+UnicoWS function overriding example:
+static UINT __stdcall MyOleUIInsertObjectW (LPOLEUIINSERTOBJECTW lpouiiow)
+{
+ UINT result = OLEUI_CANCEL;
+ OLEUIINSERTOBJECTA ouiioa;
+ memcpy(&ouiioa, lpouiiow, sizeof (OLEUIINSERTOBJECTA));
+ ouiioa.lpszFile = (char *)alloca (ouiioa.cchFile + 1);
+ ouiioa.lpszFile [0] = '\0';
+ result = OleUIInsertObjectA(&ouiioa);
+
+ if (result == OLEUI_SUCCESS)
+ {
+ memcpy(lpouiiow,
+ &ouiioa,
+ sizeof(OLEUIINSERTOBJECTW));
+ MultiByteToWideChar(CP_ACP,
+ 0,
+ ouiioa.lpSzFile,
+ ouiioa.cchFile,
+ lpowiiow->lpszFile,
+ lpowiiow->cchFile);
+ }
+ return result;
+}
+extern "C" FARPROC Unicows_OleUIInsertObjectW = (FARPROC)&MyOleUIInsertObjectW;
+
+
+## Dialogs #############################
+Use always for dialogs:
+type: DIALOGEX
+font: MS Shell Dlg
+styles : DS_SHELLFONT | WS_VISIBLE | ...
+
+NO use of: DS_3DLOOK or DISCARDABLE (deprecated)
+DS_SYSMODAL -> WS_EX_TOPMOST
+DS_FIXEDSYS -> DS_SHELLFONT
+
+Warning: WS_EX_RTLREADING works also on non-arabic systems (Win 2000/XP)
+
+No use of SetFocus(), instead:
+PostMessage(hwndDlg, WM_NEXTDLGCTL, (WPARAM)hwndCtrl, (LPARAM)TRUE);
+
+For dialogs use DWLP_USER instead of GWLP_USERDATA.
+
+WM_USER+n messages are defined by the owner of the class (RegisterClass); 0<=n<=31000
+WM_APP+n messages are defined by the owner of the window (CreateWindow); 0<=n<=16000
+
+WM_CLOSE msg is transformed into an IDCANCEL of WM_COMMAND
+
+
+## Sounds ##############################
+
+Sound files should be converted into a
+WAV-file, PCM format, 22,050Hz, 16bit, Stereo.
+
+
+## Other ################################
+
+Compiler Warnings at level 4 are sometimes too restrictive:
+C4100: http://msdn2.microsoft.com/en-us/library/26kb9fy0
+
+Random stuff a always tend to forget ;-)
+
+o No use of static variables in DlgProcs/WindowProcs
+o ^= operator is the inverted operator |=