diff options
author | Vadim Dashevskiy <watcherhd@gmail.com> | 2012-07-24 09:26:39 +0000 |
---|---|---|
committer | Vadim Dashevskiy <watcherhd@gmail.com> | 2012-07-24 09:26:39 +0000 |
commit | 1e92bf5cf72665b5fec103a0a70d734340725539 (patch) | |
tree | 7f9dc318b0e18b2cd55e2604c309eb006c11f278 /plugins/TipperYM/skin_parser.cpp | |
parent | cd441faefd073cfd368d815f4237d7b4996a1063 (diff) |
StopSpamPlus, TipperYM, TooltipNotify, TopToolBar, TranslitSwitcher, UserGuide: changed folder structure
git-svn-id: http://svn.miranda-ng.org/main/trunk@1159 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/TipperYM/skin_parser.cpp')
-rw-r--r-- | plugins/TipperYM/skin_parser.cpp | 417 |
1 files changed, 0 insertions, 417 deletions
diff --git a/plugins/TipperYM/skin_parser.cpp b/plugins/TipperYM/skin_parser.cpp deleted file mode 100644 index 3c851e0039..0000000000 --- a/plugins/TipperYM/skin_parser.cpp +++ /dev/null @@ -1,417 +0,0 @@ -/*
-Copyright (C) 2006-2007 Scott Ellis
-Copyright (C) 2007-2011 Jan Holub
-
-This is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public
-License as published by the Free Software Foundation; either
-version 2 of the License, or (at your option) any later version.
-
-This 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with this file; see the file license.txt. If
-not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.
-*/
-
-#include "common.h"
-#include "options.h"
-#include "str_utils.h"
-
-extern TCHAR SKIN_FOLDER[256];
-
-int RefreshSkinList(HWND hwndDlg)
-{
- HWND hwndSkins = GetDlgItem(hwndDlg, IDC_LB_SKINS);
- ListBox_ResetContent(hwndSkins);
- ListBox_AddString(hwndSkins, TranslateT("# Solid color fill"));
-
- TCHAR szDirSave[1024];
- GetCurrentDirectory(1024, szDirSave);
- SetCurrentDirectory(SKIN_FOLDER);
-
- WIN32_FIND_DATA ffd;
- HANDLE hFind = FindFirstFile(_T("*.*"), &ffd);
- while (hFind != INVALID_HANDLE_VALUE)
- {
- if ((ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) && _tcscmp(_T("."), ffd.cFileName) && _tcscmp(_T(".."), ffd.cFileName))
- {
- SetCurrentDirectory(ffd.cFileName);
- WIN32_FIND_DATA ffd2;
- HANDLE hFindFile = FindFirstFile(_T("*.tsf"), &ffd2);
- if (hFindFile != INVALID_HANDLE_VALUE)
- ListBox_AddString(hwndSkins, ffd.cFileName);
-
- FindClose(hFindFile);
- SetCurrentDirectory(_T(".."));
- }
-
- if (!FindNextFile(hFind, &ffd))
- break;
- }
-
- FindClose(hFind);
- SetCurrentDirectory(szDirSave);
-
- return ListBox_SelectString(GetDlgItem(hwndDlg, IDC_LB_SKINS), -1, opt.szSkinName);
-}
-
-bool FileExists(TCHAR *filename)
-{
- HANDLE hFile = CreateFile(filename, 0, 0, 0, OPEN_EXISTING, 0, 0);
- if (hFile != INVALID_HANDLE_VALUE)
- {
- CloseHandle(hFile);
- return true;
- }
-
- return false;
-}
-
-void ParseAboutPart(FILE *fp, TCHAR *buff, TCHAR *szSkinName)
-{
- myfgets(buff, 1024, fp);
- while (buff[0] != '[')
- {
- if (buff[0] != ';')
- {
- TCHAR *pch = _tcschr(buff, '=');
- if (pch++)
- {
- while (pch && (*pch == ' ' || *pch == '\t'))
- pch++;
-
- if (pch)
- {
- if (_tcsstr(buff, _T("author")))
- {}
- else if (_tcsstr(buff, _T("preview")))
- {
- TCHAR szImgPath[1024];
- mir_sntprintf(szImgPath, SIZEOF(szImgPath), _T("%s\\%s\\%s"), SKIN_FOLDER, szSkinName, pch);
- if (FileExists(szImgPath))
- _tcscpy(opt.szPreviewFile, szImgPath);
- }
- }
- }
- }
-
- if (feof(fp)) break;
- myfgets(buff, 1024, fp);
- }
-}
-
-void ParseImagePart(FILE *fp, TCHAR *buff, int iPart)
-{
- opt.szImgFile[iPart] = NULL;
- opt.transfMode[iPart] = TM_NONE;
- opt.margins[iPart].left = 0;
- opt.margins[iPart].top = 0;
- opt.margins[iPart].right = 0;
- opt.margins[iPart].bottom = 0;
-
- myfgets(buff, 1024, fp);
- while (buff[0] != '[')
- {
- if (buff[0] != ';')
- {
- TCHAR *pch = _tcschr(buff, '=');
- if (pch++)
- {
- while (pch && (*pch == ' ' || *pch == '\t'))
- pch++;
-
- if (pch)
- {
- if (_tcsstr(buff, _T("image")))
- {
- TCHAR szImgPath[1024];
- mir_sntprintf(szImgPath, SIZEOF(szImgPath), _T("%s\\%s\\%s"), SKIN_FOLDER, opt.szSkinName, pch);
- opt.szImgFile[iPart] = mir_tstrdup(szImgPath);
- }
- else if (_tcsstr(buff, _T("tm")))
- {
- if (!lstrcmpi(pch, _T("TM_NONE")))
- opt.transfMode[iPart] = TM_NONE;
- else if (!lstrcmpi(pch, _T("TM_CENTRE")))
- opt.transfMode[iPart] = TM_CENTRE;
- else if (!lstrcmpi(pch, _T("TM_STRECH_ALL")))
- opt.transfMode[iPart] = TM_STRECH_ALL;
- else if (!lstrcmpi(pch, _T("TM_STRECH_HORIZONTAL")))
- opt.transfMode[iPart] = TM_STRECH_HORIZONTAL;
- else if (!lstrcmpi(pch, _T("TM_STRECH_VERTICAL")))
- opt.transfMode[iPart] = TM_STRECH_VERTICAL;
- else if (!lstrcmpi(pch, _T("TM_TILE_ALL")))
- opt.transfMode[iPart] = TM_TILE_ALL;
- else if (!lstrcmpi(pch, _T("TM_TILE_HORIZONTAL")))
- opt.transfMode[iPart] = TM_TILE_HORIZONTAL;
- else if (!lstrcmpi(pch, _T("TM_TILE_VERTICAL")))
- opt.transfMode[iPart] = TM_TILE_VERTICAL;
- else
- opt.transfMode[iPart] = TM_NONE;
- }
- else if (_tcsstr(buff, _T("left")))
- opt.margins[iPart].left = _ttoi(pch);
- else if (_tcsstr(buff, _T("top")))
- opt.margins[iPart].top = _ttoi(pch);
- else if (_tcsstr(buff, _T("right")))
- opt.margins[iPart].right = _ttoi(pch);
- else if (_tcsstr(buff, _T("bottom")))
- opt.margins[iPart].bottom = _ttoi(pch);
- }
- }
- }
-
- if (feof(fp)) break;
- myfgets(buff, 1024, fp);
- }
-}
-
-char *GetSettingName(TCHAR *szValue, char *szPostfix, char *buff)
-{
- buff[0] = 0;
-
- if (_tcsstr(szValue, _T("traytitle")))
- mir_snprintf(buff, 64, "FontTrayTitle%s", szPostfix);
- else if (_tcsstr(szValue, _T("title")))
- mir_snprintf(buff, 64, "FontFirst%s", szPostfix);
- else if (_tcsstr(szValue, _T("label")))
- mir_snprintf(buff, 64, "FontLabels%s", szPostfix);
- else if (_tcsstr(szValue, _T("value")))
- mir_snprintf(buff, 64, "FontValues%s", szPostfix);
- else if (_tcsstr(szValue, _T("divider")))
- mir_snprintf(buff, 64, "Divider%s", szPostfix);
-
- if (buff[0]) return buff;
- else return NULL;
-}
-
-void ParseFontPart(FILE *fp, TCHAR *buff)
-{
- char szSetting[64];
-
- myfgets(buff, 1024, fp);
- while (buff[0] != '[')
- {
- if (buff[0] != ';')
- {
- TCHAR *pch = _tcschr(buff, '=');
- if (pch++)
- {
- while (pch && (*pch == ' ' || *pch == '\t'))
- pch++;
-
- if (pch)
- {
- if (_tcsstr(buff, _T("face")))
- {
- if (GetSettingName(buff, "", szSetting))
- {
- if (_tcslen(pch) > 32)
- pch[32] = 0;
-
- DBWriteContactSettingTString(0, MODULE, szSetting, pch);
- }
- }
- else if (_tcsstr(buff, _T("color")))
- {
- if (GetSettingName(buff, "Col", szSetting))
- {
- BYTE r = _ttoi(pch);
- pch = _tcschr(pch, ' ');
- if (++pch)
- {
- BYTE g = _ttoi(pch);
- pch = _tcschr(pch, ' ');
- if (++pch)
- {
- BYTE b = _ttoi(pch);
- COLORREF color = RGB(r, g ,b);
- DBWriteContactSettingDword(0, MODULE, szSetting, color);
- }
- }
- }
- }
- else if (_tcsstr(buff, _T("size")))
- {
- if (GetSettingName(buff, "Size", szSetting))
- {
- HDC hdc = GetDC(0);
- int size = -MulDiv(_ttoi(pch), GetDeviceCaps(hdc, LOGPIXELSY), 72);
- DBWriteContactSettingByte(0, MODULE, szSetting, (BYTE)size);
- ReleaseDC(0, hdc);
- }
- }
- else if (_tcsstr(buff, _T("effect")))
- {
- if (GetSettingName(buff, "Sty", szSetting))
- {
- BYTE effect = 0;
- if (_tcsstr(pch, _T("font_bold")))
- effect |= DBFONTF_BOLD;
- if (_tcsstr(pch, _T("font_italic")))
- effect |= DBFONTF_ITALIC;
- if (_tcsstr(pch, _T("font_underline")))
- effect |= DBFONTF_UNDERLINE;
-
- DBWriteContactSettingByte(0, MODULE, szSetting, effect);
- }
- }
- }
- }
- }
-
- if (feof(fp)) break;
- myfgets(buff, 1024, fp);
- }
-}
-
-void ParseAppearancePart(FILE *fp, TCHAR *buff)
-{
- myfgets(buff, 1024, fp);
- while (buff[0] != '[')
- {
- if (buff[0] != ';')
- {
- TCHAR *pch = _tcschr(buff, '=');
- if (pch++)
- {
- while (pch && (*pch == ' ' || *pch == '\t'))
- pch++;
-
- if (pch)
- {
- if (_tcsstr(buff, _T("general-padding")))
- opt.iPadding = _ttoi(pch);
- else if (_tcsstr(buff, _T("title-indent")))
- opt.iTitleIndent = _ttoi(pch);
- else if (_tcsstr(buff, _T("text-indent")))
- opt.iTextIndent = _ttoi(pch);
- else if (_tcsstr(buff, _T("value-indent")))
- opt.iValueIndent = _ttoi(pch);
- else if (_tcsstr(buff, _T("text-padding")))
- opt.iTextPadding = _ttoi(pch);
- else if (_tcsstr(buff, _T("outer-avatar-padding")))
- opt.iOuterAvatarPadding = _ttoi(pch);
- else if (_tcsstr(buff, _T("inner-avatar-padding")))
- opt.iInnerAvatarPadding = _ttoi(pch);
- else if (_tcsstr(buff, _T("sidebar-width")))
- opt.iSidebarWidth = _ttoi(pch);
- else if (_tcsstr(buff, _T("opacity")))
- opt.iOpacity = _ttoi(pch);
- }
- }
- }
-
- if (feof(fp)) break;
- myfgets(buff, 1024, fp);
- }
-}
-
-void ParseOtherPart(FILE *fp, TCHAR *buff)
-{
- myfgets(buff, 1024, fp);
- while (buff[0] != '[')
- {
- if (buff[0] != ';')
- {
- TCHAR *pch = _tcschr(buff, '=');
- if (pch++)
- {
- while (pch && (*pch == ' ' || *pch == '\t'))
- pch++;
-
- if (pch)
- {
- if (_tcsstr(buff, _T("enable-coloring")))
- {
- if (_tcsstr(pch, _T("false")))
- opt.iEnableColoring = -1;
- }
- }
- }
- }
-
- if (feof(fp)) break;
- myfgets(buff, 1024, fp);
- }
-}
-
-void ParseSkinFile(TCHAR *szSkinName, bool bStartup, bool bOnlyPreview)
-{
- TCHAR szDirSave[1024], buff[1024];
-
- if (opt.skinMode == SM_OBSOLOTE && bStartup)
- return;
-
- if (!bStartup) opt.iEnableColoring = 0;
- opt.szPreviewFile[0] = 0;
-
- GetCurrentDirectory(1024, szDirSave);
- SetCurrentDirectory(SKIN_FOLDER);
- SetCurrentDirectory(szSkinName);
-
- WIN32_FIND_DATA ffd;
- HANDLE hFind = FindFirstFile(_T("*.tsf"), &ffd);
- if (hFind != INVALID_HANDLE_VALUE)
- {
- FILE *fp = _tfopen(ffd.cFileName, _T("r"));
- if (fp)
- {
- myfgets(buff, 1024, fp);
- while (!feof(fp))
- {
- if (buff[0] == '[')
- {
- if (!_tcscmp(_T("[about]"), buff))
- {
- ParseAboutPart(fp, buff, szSkinName);
- continue;
- }
- else if (!_tcscmp(_T("[other]"), buff))
- {
- ParseOtherPart(fp, buff);
- continue;
- }
- else if (!bOnlyPreview)
- {
- if (!_tcscmp(_T("[background]"), buff))
- {
- ParseImagePart(fp, buff, SKIN_ITEM_BG);
- continue;
- }
- else if (!_tcscmp(_T("[sidebar]"), buff))
- {
- ParseImagePart(fp, buff, SKIN_ITEM_SIDEBAR);
- continue;
- }
- else if (!bStartup && opt.bLoadFonts && !_tcscmp(_T("[fonts]"), buff))
- {
- ParseFontPart(fp, buff);
- continue;
- }
- else if (!bStartup && opt.bLoadProportions && !_tcscmp(_T("[appearance]"), buff))
- {
- ParseAppearancePart(fp, buff);
- continue;
- }
- }
- }
-
- myfgets(buff, 1024, fp);
- }
- fclose(fp);
- }
- }
- else
- {
- opt.skinMode = SM_COLORFILL;
- }
-
- FindClose(hFind);
- SetCurrentDirectory(szDirSave);
-}
\ No newline at end of file |