From c4e3c65e2e850f978516823397b802557ad7ef1a Mon Sep 17 00:00:00 2001
From: George Hazan <george.hazan@gmail.com>
Date: Wed, 15 Jan 2014 16:14:00 +0000
Subject: - basic chat types to support plugin specific data; - default value
 changed for SplitterY

git-svn-id: http://svn.miranda-ng.org/main/trunk@7667 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
---
 src/core/stdchat/src/chat.h    |  4 +++
 src/core/stdchat/src/log.cpp   |  3 +-
 src/core/stdchat/src/main.cpp  |  5 +++-
 src/modules/chat/chat.h        |  4 +++
 src/modules/chat/chat_opts.cpp |  6 ++--
 src/modules/chat/log.cpp       | 64 +++++++++++++++++++++---------------------
 6 files changed, 49 insertions(+), 37 deletions(-)

(limited to 'src')

diff --git a/src/core/stdchat/src/chat.h b/src/core/stdchat/src/chat.h
index c0221d4f86..81cda11d63 100644
--- a/src/core/stdchat/src/chat.h
+++ b/src/core/stdchat/src/chat.h
@@ -79,6 +79,10 @@ struct TABLIST
 	TABLIST *next;
 };
 
+struct MODULEINFO : public GCModuleInfoBase {};
+struct SESSION_INFO : public GCSessionInfoBase {};
+struct LOGSTREAMDATA : public GCLogStreamDataBase {};
+
 struct GlobalLogSettings : public GlobalLogSettingsBase
 {
 	BOOL TabsEnable;
diff --git a/src/core/stdchat/src/log.cpp b/src/core/stdchat/src/log.cpp
index ce1d10b9f6..1942fe9a3f 100644
--- a/src/core/stdchat/src/log.cpp
+++ b/src/core/stdchat/src/log.cpp
@@ -68,7 +68,8 @@ void Log_StreamInEvent(HWND hwndDlg,  LOGINFO* lin, SESSION_INFO *si, BOOL bRedr
 
 	HWND hwndRich = GetDlgItem(hwndDlg, IDC_LOG);
 	
-	LOGSTREAMDATA streamData = { 0 };
+	LOGSTREAMDATA streamData;
+	ZeroMemory(&streamData, sizeof(streamData));
 	streamData.hwnd = hwndRich;
 	streamData.si = si;
 	streamData.lin = lin;
diff --git a/src/core/stdchat/src/main.cpp b/src/core/stdchat/src/main.cpp
index b169f56595..ffacc93dc9 100644
--- a/src/core/stdchat/src/main.cpp
+++ b/src/core/stdchat/src/main.cpp
@@ -253,11 +253,12 @@ static void OnLoadSettings()
 
 extern "C" __declspec(dllexport) int Load(void)
 {
-	// set the memory & utf8 managers
 	mir_getLP(&pluginInfo);
 	mir_getCLI();
 	
 	mir_getCI(&g_Settings);
+	pci->cbModuleInfo = sizeof(MODULEINFO);
+	pci->cbSession = sizeof(SESSION_INFO);
 	pci->OnAddUser = OnAddUser;
 	pci->OnNewUser = OnNewUser;
 	pci->OnRemoveUser = OnRemoveUser;
@@ -284,6 +285,8 @@ extern "C" __declspec(dllexport) int Load(void)
 	g_hMenu = LoadMenu(g_hInst, MAKEINTRESOURCE(IDR_MENU));
 	AddIcons();
 	LoadIcons();
+
+	OnLoadSettings();
 	OptionsInit();
 
 	HookEvent(ME_SYSTEM_SHUTDOWN, OnShutdown);
diff --git a/src/modules/chat/chat.h b/src/modules/chat/chat.h
index 534a209855..b543d2f424 100644
--- a/src/modules/chat/chat.h
+++ b/src/modules/chat/chat.h
@@ -23,6 +23,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #include <m_popup.h>
 #include <m_fontservice.h>
 
+struct MODULEINFO : public GCModuleInfoBase {};
+struct SESSION_INFO : public GCSessionInfoBase {};
+struct LOGSTREAMDATA : public GCLogStreamDataBase {};
+
 // special service for tweaking performance
 #define MS_GC_GETEVENTPTR  "GChat/GetNewEventPtr"
 typedef INT_PTR(*GETEVENTFUNC)(WPARAM wParam, LPARAM lParam);
diff --git a/src/modules/chat/chat_opts.cpp b/src/modules/chat/chat_opts.cpp
index 0d5d422310..341d56db21 100644
--- a/src/modules/chat/chat_opts.cpp
+++ b/src/modules/chat/chat_opts.cpp
@@ -328,9 +328,9 @@ int OptionsInit(void)
 	ci.pSettings->iSplitterX = db_get_w(NULL, "Chat", "SplitterX", 105);
 	if (ci.pSettings->iSplitterX <= 50)
 		ci.pSettings->iSplitterX = 105;
-	ci.pSettings->iSplitterY = db_get_w(NULL, "Chat", "SplitterY", 50);
-	if (ci.pSettings->iSplitterY <= 20)
-		ci.pSettings->iSplitterY = 50;
+	ci.pSettings->iSplitterY = db_get_w(NULL, "Chat", "SplitterY", 90);
+	if (ci.pSettings->iSplitterY <= 65)
+		ci.pSettings->iSplitterY = 90;
 
 	LoadGlobalSettings();
 
diff --git a/src/modules/chat/log.cpp b/src/modules/chat/log.cpp
index 61bbde9585..9f82a32b66 100644
--- a/src/modules/chat/log.cpp
+++ b/src/modules/chat/log.cpp
@@ -224,28 +224,28 @@ static void AddEventToBuffer(char **buffer, int *bufferEnd, int *bufferAlloced,
 {
 	TCHAR szTemp[512], szTemp2[512];
 	TCHAR* pszNick = NULL;
-	if ( streamData->lin->ptszNick ) {
-		if ( ci.pSettings->LogLimitNames && lstrlen( streamData->lin->ptszNick ) > 20 ) {
-			lstrcpyn( szTemp2, streamData->lin->ptszNick, 20 );
-			lstrcpyn( szTemp2+20, _T("..."), 4);
+	if (streamData->lin->ptszNick) {
+		if (ci.pSettings->LogLimitNames && lstrlen(streamData->lin->ptszNick) > 20) {
+			lstrcpyn(szTemp2, streamData->lin->ptszNick, 20);
+			lstrcpyn(szTemp2 + 20, _T("..."), 4);
 		}
-		else lstrcpyn( szTemp2, streamData->lin->ptszNick, 511 );
+		else lstrcpyn(szTemp2, streamData->lin->ptszNick, 511);
 
-		if ( streamData->lin->ptszUserInfo )
-			mir_sntprintf( szTemp, SIZEOF(szTemp), _T("%s (%s)"), szTemp2, streamData->lin->ptszUserInfo );
+		if (streamData->lin->ptszUserInfo)
+			mir_sntprintf(szTemp, SIZEOF(szTemp), _T("%s (%s)"), szTemp2, streamData->lin->ptszUserInfo);
 		else
-			mir_sntprintf( szTemp, SIZEOF(szTemp), _T("%s"), szTemp2 );
+			mir_sntprintf(szTemp, SIZEOF(szTemp), _T("%s"), szTemp2);
 		pszNick = szTemp;
 	}
 
-	if ( streamData && streamData->lin ) {
-		switch ( streamData->lin->iType ) {
+	if (streamData && streamData->lin) {
+		switch (streamData->lin->iType) {
 		case GC_EVENT_MESSAGE:
-			if ( streamData->lin->ptszText )
-				Log_AppendRTF( streamData, FALSE, buffer, bufferEnd, bufferAlloced, _T("%s"), streamData->lin->ptszText );
+			if (streamData->lin->ptszText)
+				Log_AppendRTF(streamData, FALSE, buffer, bufferEnd, bufferAlloced, _T("%s"), streamData->lin->ptszText);
 			break;
 		case GC_EVENT_ACTION:
-			if ( streamData->lin->ptszNick && streamData->lin->ptszText) {
+			if (streamData->lin->ptszNick && streamData->lin->ptszText) {
 				Log_AppendRTF(streamData, TRUE, buffer, bufferEnd, bufferAlloced, _T("%s "), streamData->lin->ptszNick);
 				Log_AppendRTF(streamData, FALSE, buffer, bufferEnd, bufferAlloced, _T("%s"), streamData->lin->ptszText);
 			}
@@ -286,7 +286,7 @@ static void AddEventToBuffer(char **buffer, int *bufferEnd, int *bufferAlloced,
 			break;
 		case GC_EVENT_NOTICE:
 			if (pszNick && streamData->lin->ptszText) {
-				Log_AppendRTF(streamData, TRUE, buffer, bufferEnd, bufferAlloced, TranslateT("Notice from %s: "), pszNick );
+				Log_AppendRTF(streamData, TRUE, buffer, bufferEnd, bufferAlloced, TranslateT("Notice from %s: "), pszNick);
 				Log_AppendRTF(streamData, FALSE, buffer, bufferEnd, bufferAlloced, _T("%s"), streamData->lin->ptszText);
 			}
 			break;
@@ -294,9 +294,9 @@ static void AddEventToBuffer(char **buffer, int *bufferEnd, int *bufferAlloced,
 			if (streamData->lin->ptszText)
 				Log_AppendRTF(streamData, FALSE, buffer, bufferEnd, bufferAlloced, TranslateT("The topic is \'%s%s\'"), streamData->lin->ptszText, _T("%r"));
 			if (streamData->lin->ptszNick)
-				Log_AppendRTF(streamData, TRUE, buffer, bufferEnd, bufferAlloced, 
-					streamData->lin->ptszUserInfo ? TranslateT(" (set by %s on %s)"): TranslateT(" (set by %s)"),
-					streamData->lin->ptszNick, streamData->lin->ptszUserInfo);
+				Log_AppendRTF(streamData, TRUE, buffer, bufferEnd, bufferAlloced,
+				streamData->lin->ptszUserInfo ? TranslateT(" (set by %s on %s)") : TranslateT(" (set by %s)"),
+				streamData->lin->ptszNick, streamData->lin->ptszUserInfo);
 			break;
 		case GC_EVENT_INFORMATION:
 			if (streamData->lin->ptszText)
@@ -308,14 +308,14 @@ static void AddEventToBuffer(char **buffer, int *bufferEnd, int *bufferAlloced,
 			break;
 		case GC_EVENT_REMOVESTATUS:
 			if (streamData->lin->ptszNick && streamData->lin->ptszText && streamData->lin->ptszStatus)
-				Log_AppendRTF(streamData, TRUE, buffer, bufferEnd, bufferAlloced, TranslateT("%s disables \'%s\' status for %s"), streamData->lin->ptszText , streamData->lin->ptszStatus, streamData->lin->ptszNick);
+				Log_AppendRTF(streamData, TRUE, buffer, bufferEnd, bufferAlloced, TranslateT("%s disables \'%s\' status for %s"), streamData->lin->ptszText, streamData->lin->ptszStatus, streamData->lin->ptszNick);
 			break;
 }	}	}
 
-TCHAR* MakeTimeStamp( TCHAR* pszStamp, time_t time)
+TCHAR* MakeTimeStamp(TCHAR* pszStamp, time_t time)
 {
 	static TCHAR szTime[30];
-	if ( !_tcsftime(szTime, SIZEOF(szTime)-1, pszStamp, localtime(&time)))
+	if (!_tcsftime(szTime, SIZEOF(szTime) - 1, pszStamp, localtime(&time)))
 		_tcsncpy(szTime, TranslateT("<invalid>"), SIZEOF(szTime));
 	return szTime;
 }
@@ -329,8 +329,8 @@ char* Log_CreateRTF(LOGSTREAMDATA *streamData)
 
 	// guesstimate amount of memory for the RTF
 	bufferEnd = 0;
-	bufferAlloced = streamData->bRedraw ? 1024 * (streamData->si->iEventCount+2) : 2048;
-	buffer = (char *) mir_alloc(bufferAlloced);
+	bufferAlloced = streamData->bRedraw ? 1024 * (streamData->si->iEventCount + 2) : 2048;
+	buffer = (char *)mir_alloc(bufferAlloced);
 	buffer[0] = '\0';
 
 	// ### RTF HEADER
@@ -352,7 +352,7 @@ char* Log_CreateRTF(LOGSTREAMDATA *streamData)
 				Log_Append(&buffer, &bufferEnd, &bufferAlloced, "\\f0\\fs14");
 				while (bufferAlloced - bufferEnd < logIconBmpSize[0])
 					bufferAlloced += 4096;
-				buffer = (char *) mir_realloc(buffer, bufferAlloced);
+				buffer = (char *)mir_realloc(buffer, bufferAlloced);
 				CopyMemory(buffer + bufferEnd, pLogIconBmpBits[iIndex], logIconBmpSize[iIndex]);
 				bufferEnd += logIconBmpSize[iIndex];
 			}
@@ -364,17 +364,17 @@ char* Log_CreateRTF(LOGSTREAMDATA *streamData)
 				static char szStyle[256];
 				int iii;
 				if (lin->ptszNick && lin->iType == GC_EVENT_MESSAGE) {
-					iii = lin->bIsHighlighted?16:(lin->bIsMe ? 2 : 1);
+					iii = lin->bIsHighlighted ? 16 : (lin->bIsMe ? 2 : 1);
 					mir_snprintf(szStyle, SIZEOF(szStyle), "\\f0\\cf%u\\ul0\\highlight0\\b%d\\i%d\\fs%u", iii + 1, lf.lfWeight >= FW_BOLD ? 1 : 0, lf.lfItalic, 2 * abs(lf.lfHeight) * 74 / ci.logPixelSY);
 					Log_Append(&buffer, &bufferEnd, &bufferAlloced, "%s ", szStyle);
 				}
 				else {
-					iii = lin->bIsHighlighted?16:EventToIndex(lin);
+					iii = lin->bIsHighlighted ? 16 : EventToIndex(lin);
 					mir_snprintf(szStyle, SIZEOF(szStyle), "\\f0\\cf%u\\ul0\\highlight0\\b%d\\i%d\\fs%u", iii + 1, lf.lfWeight >= FW_BOLD ? 1 : 0, lf.lfItalic, 2 * abs(lf.lfHeight) * 74 / ci.logPixelSY);
 					Log_Append(&buffer, &bufferEnd, &bufferAlloced, "%s ", szStyle);
 				}
 			}
-			else Log_Append(&buffer, &bufferEnd, &bufferAlloced, "%s ", Log_SetStyle(0, 0 ));
+			else Log_Append(&buffer, &bufferEnd, &bufferAlloced, "%s ", Log_SetStyle(0, 0));
 
 			// insert a TAB if necessary to put the timestamp in the right position
 			if (ci.pSettings->dwIconFlags)
@@ -384,11 +384,11 @@ char* Log_CreateRTF(LOGSTREAMDATA *streamData)
 			if (ci.pSettings->ShowTime) {
 				TCHAR szTimeStamp[30], szOldTimeStamp[30];
 
-				lstrcpyn( szTimeStamp, MakeTimeStamp(ci.pSettings->pszTimeStamp, lin->time), 30);
-				lstrcpyn( szOldTimeStamp, MakeTimeStamp(ci.pSettings->pszTimeStamp, streamData->si->LastTime), 30);
-				if ( !ci.pSettings->ShowTimeIfChanged || streamData->si->LastTime == 0 || lstrcmp(szTimeStamp, szOldTimeStamp )) {
+				lstrcpyn(szTimeStamp, MakeTimeStamp(ci.pSettings->pszTimeStamp, lin->time), 30);
+				lstrcpyn(szOldTimeStamp, MakeTimeStamp(ci.pSettings->pszTimeStamp, streamData->si->LastTime), 30);
+				if (!ci.pSettings->ShowTimeIfChanged || streamData->si->LastTime == 0 || lstrcmp(szTimeStamp, szOldTimeStamp)) {
 					streamData->si->LastTime = lin->time;
-					Log_AppendRTF( streamData, TRUE, &buffer, &bufferEnd, &bufferAlloced, _T("%s"), szTimeStamp );
+					Log_AppendRTF(streamData, TRUE, &buffer, &bufferEnd, &bufferAlloced, _T("%s"), szTimeStamp);
 				}
 				Log_Append(&buffer, &bufferEnd, &bufferAlloced, "\\tab ");
 			}
@@ -408,7 +408,7 @@ char* Log_CreateRTF(LOGSTREAMDATA *streamData)
 			}
 
 			// Insert the message
-			i = lin->bIsHighlighted?16:EventToIndex(lin);
+			i = lin->bIsHighlighted ? 16 : EventToIndex(lin);
 			Log_Append(&buffer, &bufferEnd, &bufferAlloced, "%s ", Log_SetStyle(i, i));
 			streamData->lin = lin;
 			AddEventToBuffer(&buffer, &bufferEnd, &bufferAlloced, streamData);
@@ -450,7 +450,7 @@ char* Log_CreateRtfHeader(MODULEINFO *mi)
 	for (i = 0; i < OPTIONS_FONTCOUNT; i++)
 		Log_Append(&buffer, &bufferEnd, &bufferAlloced, "\\red%u\\green%u\\blue%u;", GetRValue(ci.aFonts[i].color), GetGValue(ci.aFonts[i].color), GetBValue(ci.aFonts[i].color));
 
-	for(i = 0; i < mi->nColorCount; i++)
+	for (i = 0; i < mi->nColorCount; i++)
 		Log_Append(&buffer, &bufferEnd, &bufferAlloced, "\\red%u\\green%u\\blue%u;", GetRValue(mi->crColors[i]), GetGValue(mi->crColors[i]), GetBValue(mi->crColors[i]));
 
 	// new paragraph
-- 
cgit v1.2.3