From f04d64869f3b1de54fb343f28f955584780001b8 Mon Sep 17 00:00:00 2001 From: mataes2007 Date: Sat, 26 Nov 2011 15:41:10 +0000 Subject: Project folders rename part 3 git-svn-id: http://miranda-plugins.googlecode.com/svn/trunk@215 e753b5eb-9565-29b2-b5c5-2cc6f99dfbcb --- ieview/MUCCHTMLBuilder.cpp | 296 --------------------------------------------- 1 file changed, 296 deletions(-) delete mode 100644 ieview/MUCCHTMLBuilder.cpp (limited to 'ieview/MUCCHTMLBuilder.cpp') diff --git a/ieview/MUCCHTMLBuilder.cpp b/ieview/MUCCHTMLBuilder.cpp deleted file mode 100644 index 64bb4d6..0000000 --- a/ieview/MUCCHTMLBuilder.cpp +++ /dev/null @@ -1,296 +0,0 @@ -/* - -IEView Plugin for Miranda IM -Copyright (C) 2005-2010 Piotr Piastucki - -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; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -*/ -#include "MUCCHTMLBuilder.h" - -#include "Options.h" -#include "Utils.h" - -#define MUCCMOD "MUCC" - -#define FONTF_BOLD 1 -#define FONTF_ITALIC 2 -#define FONTF_UNDERLINE 4 - -#define FONT_NUM 9 - -static const char *classNames[] = { - ".timestamp", ".nameIn", ".nameOut", ".messageIn", ".messageOut", ".userJoined", ".userLeft", ".topicChange", - ".error" -}; - -MUCCHTMLBuilder::MUCCHTMLBuilder() { - setLastEventType(-1); - setLastEventTime(time(NULL)); -} - -void MUCCHTMLBuilder::loadMsgDlgFont(int i, LOGFONTA * lf, COLORREF * colour) { - char str[32]; - int style; - DBVARIANT dbv; - if (colour) { - wsprintfA(str, "Font%dCol", i); - *colour = DBGetContactSettingDword(NULL, MUCCMOD, str, 0x000000); - } - if (lf) { - wsprintfA(str, "Font%dSize", i); - lf->lfHeight = (char) DBGetContactSettingByte(NULL, MUCCMOD, str, 10); - lf->lfHeight = abs(lf->lfHeight); - lf->lfWidth = 0; - lf->lfEscapement = 0; - lf->lfOrientation = 0; - wsprintfA(str, "Font%dStyle", i); - style = DBGetContactSettingByte(NULL, MUCCMOD, str, 0); - lf->lfWeight = style & FONTF_BOLD ? FW_BOLD : FW_NORMAL; - lf->lfItalic = style & FONTF_ITALIC ? 1 : 0; - lf->lfUnderline = style & FONTF_UNDERLINE ? 1 : 0; - lf->lfStrikeOut = 0; - wsprintfA(str, "Font%dSet", i); - lf->lfCharSet = DBGetContactSettingByte(NULL, MUCCMOD, str, DEFAULT_CHARSET); - lf->lfOutPrecision = OUT_DEFAULT_PRECIS; - lf->lfClipPrecision = CLIP_DEFAULT_PRECIS; - lf->lfQuality = DEFAULT_QUALITY; - lf->lfPitchAndFamily = DEFAULT_PITCH | FF_DONTCARE; - wsprintfA(str, "Font%dFace", i); - if (DBGetContactSetting(NULL, MUCCMOD, str, &dbv)) - lstrcpyA(lf->lfFaceName, "Verdana"); - else { - lstrcpynA(lf->lfFaceName, dbv.pszVal, sizeof(lf->lfFaceName)); - DBFreeVariant(&dbv); - } - } -} - -char *MUCCHTMLBuilder::timestampToString(DWORD dwData, time_t check) -{ - static char szResult[512]; - char str[80]; - - DBTIMETOSTRING dbtts; - - dbtts.cbDest = 70;; - dbtts.szDest = str; - - szResult[0] = '\0'; - struct tm tm_now, tm_today; - time_t now = time(NULL); - time_t today; - tm_now = *localtime(&now); - tm_today = tm_now; - tm_today.tm_hour = tm_today.tm_min = tm_today.tm_sec = 0; - today = mktime(&tm_today); - if (dwData&IEEDD_MUCC_SHOW_DATE && dwData&IEEDD_MUCC_SHOW_TIME) { - if (dwData&IEEDD_MUCC_LONG_DATE) { - dbtts.szFormat = dwData&IEEDD_MUCC_SECONDS ? (char *)"D s" : (char *)"D t"; - } else { - dbtts.szFormat = dwData&IEEDD_MUCC_SECONDS ? (char *)"d s" : (char *)"d t"; - } - } else if (dwData&IEEDD_MUCC_SHOW_DATE) { - dbtts.szFormat = dwData&IEEDD_MUCC_LONG_DATE ? (char *)"D" : (char *)"d"; - } else if (dwData&IEEDD_MUCC_SHOW_TIME) { - dbtts.szFormat = dwData&IEEDD_MUCC_SECONDS ? (char *)"s" : (char *)"t"; - } else { - dbtts.szFormat = (char *)""; - } - CallService(MS_DB_TIME_TIMESTAMPTOSTRING, check, (LPARAM) & dbtts); - strncat(szResult, str, 500); - Utils::UTF8Encode(szResult, szResult, 500); - return szResult; -} - -void MUCCHTMLBuilder::buildHead(IEView *view, IEVIEWEVENT *event) { - LOGFONTA lf; - COLORREF color; - char *output = NULL; - int outputSize; - ProtocolSettings *protoSettings = getChatProtocolSettings(event->pszProto); - if (protoSettings == NULL) { - return; - } - if (protoSettings->getChatMode() == Options::MODE_TEMPLATE) { -// buildHeadTemplate(view, event); - return; - } - if (protoSettings->getChatMode() == Options::MODE_CSS) { - const char *externalCSS = protoSettings->getChatCssFilename(); - Utils::appendText(&output, &outputSize, "\n", externalCSS); - } else { - HDC hdc = GetDC(NULL); - int logPixelSY = GetDeviceCaps(hdc, LOGPIXELSY); - ReleaseDC(NULL, hdc); - Utils::appendText(&output, &outputSize, ""); - Utils::appendText(&output, &outputSize, "\n"); - } - if (output != NULL) { - view->write(output); - free(output); - } - setLastEventType(-1); -} - -void MUCCHTMLBuilder::appendEventNonTemplate(IEView *view, IEVIEWEVENT *event) { - - IEVIEWEVENTDATA* eventData = event->eventData; - for (int eventIdx = 0; eventData!=NULL && (eventIdx < event->count || event->count==-1); eventData = eventData->next, eventIdx++) { - DWORD dwData = eventData->dwData; - char *style = NULL; - int styleSize; - int isSent = eventData->bIsMe; - int outputSize; - char *output = NULL; - char *szName = NULL, *szText = NULL; - if (eventData->iType == IEED_MUCC_EVENT_MESSAGE) { - if (eventData->dwFlags & IEEDF_UNICODE_TEXT) { - szText = encodeUTF8(NULL, event->pszProto, eventData->pszTextW, ENF_ALL, isSent); - } else { - szText = encodeUTF8(NULL, event->pszProto, eventData->pszText, ENF_ALL, isSent); - } - if (eventData->dwFlags & IEEDF_UNICODE_NICK) { - szName = encodeUTF8(NULL, event->pszProto, eventData->pszNickW, ENF_NAMESMILEYS, true); - } else { - szName = encodeUTF8(NULL, event->pszProto, eventData->pszNick, ENF_NAMESMILEYS, true); - } - Utils::appendText(&output, &outputSize, "
", isSent ? "divOut" : "divIn"); - if (dwData & IEEDD_MUCC_SHOW_TIME || dwData & IEEDD_MUCC_SHOW_DATE) { - Utils::appendText(&output, &outputSize, "%s ", - isSent ? "timestamp" : "timestamp", timestampToString(dwData, eventData->time)); - } - if (dwData & IEEDD_MUCC_SHOW_NICK) { - Utils::appendText(&output, &outputSize, "%s: ", - isSent ? "nameOut" : "nameIn", szName); - } - if (dwData & IEEDD_MUCC_MSG_ON_NEW_LINE) { - Utils::appendText(&output, &outputSize, "
"); - } - const char *className = isSent ? "messageOut" : "messageIn"; - if (eventData->dwFlags & IEEDF_FORMAT_SIZE && eventData->fontSize > 0) { - Utils::appendText(&style, &styleSize, "font-size:%dpt;", eventData->fontSize); - } - if (eventData->dwFlags & IEEDF_FORMAT_COLOR && eventData->color!=0xFFFFFFFF) { - Utils::appendText(&style, &styleSize, "color:#%06X;", ((eventData->color & 0xFF) << 16) | (eventData->color & 0xFF00) | ((eventData->color & 0xFF0000) >> 16)); - } - if (eventData->dwFlags & IEEDF_FORMAT_FONT) { - Utils::appendText(&style, &styleSize, "font-family:%s;", eventData->fontName); - } - if (eventData->dwFlags & IEEDF_FORMAT_STYLE) { - Utils::appendText(&style, &styleSize, "font-weight: %s;", eventData->fontStyle & IE_FONT_BOLD ? "bold" : "normal"); - Utils::appendText(&style, &styleSize, "font-style: %s;", eventData->fontStyle & IE_FONT_ITALIC ? "italic" : "normal"); - Utils::appendText(&style, &styleSize, "text-decoration: %s;", eventData->fontStyle & IE_FONT_UNDERLINE ? "underline" : "none"); - } - Utils::appendText(&output, &outputSize, "%s", className, style!=NULL ? style : "", szText); - Utils::appendText(&output, &outputSize, "
\n"); - if (style!=NULL) free(style); - } else if (eventData->iType == IEED_MUCC_EVENT_JOINED || eventData->iType == IEED_MUCC_EVENT_LEFT || eventData->iType == IEED_MUCC_EVENT_TOPIC) { - const char *className, *divName; - const char *eventText; - if (eventData->iType == IEED_MUCC_EVENT_JOINED) { - className = "userJoined"; - divName = "divUserJoined"; - eventText = "%s has joined."; - szText = encodeUTF8(NULL, event->pszProto, eventData->pszNick, ENF_NONE, isSent); - } else if (eventData->iType == IEED_MUCC_EVENT_LEFT) { - className = "userLeft"; - divName = "divUserJoined"; - eventText = "%s has left."; - szText = encodeUTF8(NULL, event->pszProto, eventData->pszNick, ENF_NONE, isSent); - } else { - className = "topicChange"; - divName = "divTopicChange"; - eventText = "The topic is %s."; - szText = encodeUTF8(NULL, event->pszProto, eventData->pszText, ENF_ALL, isSent); - } - Utils::appendText(&output, &outputSize, "
", divName); - if (dwData & IEEDD_MUCC_SHOW_TIME || dwData & IEEDD_MUCC_SHOW_DATE) { - Utils::appendText(&output, &outputSize, "%s ", - isSent ? "timestamp" : "timestamp", timestampToString(dwData, eventData->time)); - } - Utils::appendText(&output, &outputSize, "", className); - Utils::appendText(&output, &outputSize, Translate(eventText), szText); - Utils::appendText(&output, &outputSize, ""); - Utils::appendText(&output, &outputSize, "
\n"); - } else if (eventData->iType == IEED_MUCC_EVENT_ERROR) { - const char *className = "error"; - szText = encodeUTF8(NULL, event->pszProto, eventData->pszText, ENF_NONE, isSent); - Utils::appendText(&output, &outputSize, "
", "divError"); - Utils::appendText(&output, &outputSize, " %s: %s", className, Translate("Error"), szText); - Utils::appendText(&output, &outputSize, "
\n"); - } - if (szName!=NULL) delete szName; - if (szText!=NULL) delete szText; - if (output != NULL) { - view->write(output); - free(output); - } - } -// view->scrollToBottom(); -} - -void MUCCHTMLBuilder::appendEvent(IEView *view, IEVIEWEVENT *event) { - ProtocolSettings *protoSettings = getChatProtocolSettings(event->pszProto); - if (protoSettings == NULL) { - return; - } -// if (protoSettings->getSRMMMode() == Options::MODE_TEMPLATE) { - // appendEventTemplate(view, event); -// } else { - appendEventNonTemplate(view, event); -// } -} - -bool MUCCHTMLBuilder::isDbEventShown(DBEVENTINFO * dbei) { - return true; -} -- cgit v1.2.3