summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'plugins')
-rw-r--r--plugins/PackUpdater_new/Docs/Readme_eng.txt145
-rw-r--r--plugins/PackUpdater_new/Docs/Readme_rus.txt145
-rw-r--r--plugins/PackUpdater_new/Docs/Templates/Autoexec_PackUpdater.ini10
-rw-r--r--plugins/PackUpdater_new/Docs/Templates/File1.ini25
-rw-r--r--plugins/PackUpdater_new/Docs/ToDo.txt2
-rw-r--r--plugins/PackUpdater_new/PackUpdater_10_new.vcxproj199
-rw-r--r--plugins/PackUpdater_new/PackUpdater_10_new.vcxproj.filters70
-rw-r--r--plugins/PackUpdater_new/Res/BtnClose.icobin2550 -> 0 bytes
-rw-r--r--plugins/PackUpdater_new/Res/BtnOk.icobin2550 -> 0 bytes
-rw-r--r--plugins/PackUpdater_new/Res/Delete.icobin2550 -> 0 bytes
-rw-r--r--plugins/PackUpdater_new/Res/Menu.icobin894 -> 0 bytes
-rw-r--r--plugins/PackUpdater_new/Resource.apsbin52640 -> 0 bytes
-rw-r--r--plugins/PackUpdater_new/Resource.rc200
-rw-r--r--plugins/PackUpdater_new/Src/Common.h140
-rw-r--r--plugins/PackUpdater_new/Src/Events.cpp82
-rw-r--r--plugins/PackUpdater_new/Src/Notifications.cpp695
-rw-r--r--plugins/PackUpdater_new/Src/Notifications.h72
-rw-r--r--plugins/PackUpdater_new/Src/Options.cpp493
-rw-r--r--plugins/PackUpdater_new/Src/PackUpdater.cpp108
-rw-r--r--plugins/PackUpdater_new/Src/Utils.cpp497
-rw-r--r--plugins/PackUpdater_new/Version.h20
-rw-r--r--plugins/PackUpdater_new/Version.rc38
-rw-r--r--plugins/PackUpdater_new/packupdater-translation.txt69
-rw-r--r--plugins/PackUpdater_new/resource.h79
24 files changed, 0 insertions, 3089 deletions
diff --git a/plugins/PackUpdater_new/Docs/Readme_eng.txt b/plugins/PackUpdater_new/Docs/Readme_eng.txt
deleted file mode 100644
index 8dc336f00a..0000000000
--- a/plugins/PackUpdater_new/Docs/Readme_eng.txt
+++ /dev/null
@@ -1,145 +0,0 @@
-==================
-Pack Updater 0.1.0
-==================
-
-Miranda IM plugin that do automatic or manual Miranda packs update.
-
-Plugin maybe interesting for packs author, which wants do update of their pack automatically.
-
-0. Changelog
-1. How to use?
-2. How it works?
-3. Copyrights and other
-
-
------------------
-0. Changelog
------------------
-
-0.1.0
-+ now not installed files are not updated
-+ added an additional parameter "Force" in the description of the file. With it you an update not installed files
-* Changed FileType parameter type
-
-0.0.9
-* Fixed order in update list
-
-0.0.8
-+ Added Icolib support
-
-0.0.7
-+ disabled or not existed plugins not updated and not downloaded
-+ added FileType 5. It ia as type 4 but without restart
-
-0.0.6
-* All updates shows in one list
-* Fixed bug with no updating files
-* Changeg version comparing algorithm
-
-0.0.5
-+ Added x64 version
-+ Added Netlib support
-+ Added ability to update plugins, icons and other miranda files
-+ Added ability to clear folder with downloaded updates
-+ Added hotkeys support (Customize-Hotkeys-Pack Updater) as default set Ctrl+F10
-+ Added Popup plus actions support
-! Fixed frizing when downloaded files
-* If extension of downloaded file is ".html" it will be opened in browser
-* Fixed activation Apply button even you not change anything
-* Changed name of plugin. now it us PackUpdater
-* Plugin is Unicode now
-* Changed storing format on server - all information about all files stored in one file
-* In Pack for all files - one url for chexking
-* Fixed logic in popups
-- ZeroUpdate.ini not needed anymore, all settings storing in profile
-
-0.0.4
-+ Added partly support of popups
-
-0.0.3
-+ Added support of Folders plugin
-+ Added ability to translate description of update from langpack
-* Changed new version detection
-
-0.0.2
-+ Added support of path for dowloaded updates
-+ Added ability don't start update automatically
-
-0.0.1
-+ Pre-release
-
---------------------
-1. How to use?
---------------------
-
-Import settings from Autoexec_PackUpdater.ini to profile and for server (file1.ini) are in Tamplates folder. Probably full langpack in this folder too.
-
-1. Add in your langpack_*.txt strings needed for plugin.
-
-Variables in Autoexec_PackUpdater.ini:
-
- FileCount - number of files for witch needs to check updates. Plugin supports checking for several files, but most time is only one (Pack setup file)
-
- AutoUpdate - Check updates automatically with Miranda startup. configured in Events->Pack updates
-
- File_VersionURL - URL where saved file with infirmation about versions of all files (file1.ini)
-
-[File_x_] (where x - serial number file, begining from 1)
-
- CurrentVersion - sets 1.0.0 (or another what you wants) and don't change any more
-
- LastVersion - the same
-
-
-3. Create file with infirmation about versions (file1.ini). One for all checked files
-
-
-Options of file1.ini:
-
-Handle [FileInfo_х], where х - serial number file, begining from 1 (must be equal with number in profile)
-
-
-FileVersion - Current file version (Version of new pack file)
-
-Message - Description that user see when plugin found new version
-
-DownloadURL - URL of Update file
-
-DiskFileName - Name of file saved on user computer.
-
-FileType - type of file. Defines final destination of file. (1 - pack, 2 - plugin (will be installed into Plugins), 3 - icon (will be installed into Icons), 4 - files in miranda root (e.g. langpack, dbtool))
-
-Descr - description witch shows in update list.
-
-InfoURL - Optional. If it writed, message box that user see have button "See information", click on it open this URL.
-
-AdvFolder - Optional. If it writed, set subfolder in folder defined FileType.
-
-Force - Optional. If it writed, the file will be offered for renewal, even if you do not installed.
-
-4. Download file with infirmation and updates on server.
-
-
---------------------
-2. How it works?
---------------------
-
-Plugin has two modes: silent and normal. silent is used when checking for updates on startup, normal - click menu item.
-First, plugin downloads file version information and compares the "local" (File_x_CurrentVersion from profile) version with the "remote"
-(FileVersion). If they differ, that:
-a). When you work in silent mode plugin checks the value LastVersion and if it differs from the FileVersion, shows the message about the update.
-if not - there are no messages.
-b). When working in normal mode plugin displays a message in any case.
-If a user downloaded the update, but decided it just did not install, update is still considered to be established.
-
-
----------------------
-3. Copyrights and other
----------------------
-
-Plugin written by ZERO_BiT, continued development by Mataes.
-The author is not liable for any damages, the explicit or implied, caused by this plugin. Also wanted to ask not to delete the original copyright.
-
-For questions contacts:
- e-mail: mataes2007@gmail.com
- icq: 4618898 \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Docs/Readme_rus.txt b/plugins/PackUpdater_new/Docs/Readme_rus.txt
deleted file mode 100644
index f469d7c07f..0000000000
--- a/plugins/PackUpdater_new/Docs/Readme_rus.txt
+++ /dev/null
@@ -1,145 +0,0 @@
-==================
-Pack Updater 0.1.0
-==================
-
-Плагин для Miranda IM, выполняющий автоматическое обновление сборок (паков).
-
-Плагин расчитан, в первую очередь, на создателей паков, которые хотят автоматизировать процесс обновления своих сборок.
-
-0. История версий
-1. Как использовать?
-2. Как оно работает?
-3. Копирайты и прочее
-
-
------------------
-0. История версий
------------------
-
-0.1.0
-+ теперь отсутствующие файлы не обновляются
-+ добавлен дополнительный параметр Force в описании файла. С ним можно обновлять отсутсвующие файлы
-* изменен тип параметра FileType
-
-0.0.9
-* Исправлен баг с порядком в списке обновлений
-
-0.0.8
-+ Добавлена поддержка Icolib
-
-0.0.7
-+ Отключенные или неустановленные плагины большен не обновляются и не загружаются
-+ Тип файлов 5. точно такой же как 4, только без перезапуска
-
-0.0.6
-* Все обновления показываются в окне одним списком
-* Поправлен баг с необновлением файлов
-* Изменен алгоритм сравнения версий
-
-0.0.5
-+ Добавлена x64 версия
-+ Добавлена поддержка Netlib
-+ Добавлена возможность обновлять плагины, иконки, ленгпак и прочие компоненты миранды
-+ Добавлена возможность очищать папку со скаченными обновлениями
-+ Добавлена поддержка горячих клавиш (Тонкая настройка-Горячие клавиши-Обновление сборки) по умолчанию Ctrl+F10
-+ Добавлена поддержка действий плагина Popup plus
-! Исправлено замерзание миранды при загрузке файлов
-* Если расширение скачиваемого файла ".html", то он откроется в браузере
-* Исправлен баг с Активацией кнопки применить на странице Всплывающие окна-Обновление сборки
-* Изменено название плагина, теперь - это PackUpdater
-* Теперь плагин стал юникодным
-* Изменен формат хранения данных на сервере - все в одном файле
-* В сборке для разных файлов - одна ссылка
-* Исправлена логика всплывающих окон
-- Убран ZeroUpdate.ini, все настройки теперь в профиле
-
-0.0.4
-+ Добавлена частичная поддержка всплывающих окон
-
-0.0.3
-+ Добавлена поддержка плагина Folders
-+ Добавлена возможность переводить описание файла для загрузки
-* Исправлен показ окна с обновление, даже если версия на сервере меньше текущей
-
-0.0.2
-+ Добавлена поддержка путей для сохранения апдейтов
-+ Добавлена возможность отключения автоматического запуска скачанного апдейта
-
-0.0.1
-+ Собственно, пре-релиз.
-
---------------------
-1. Как использовать?
---------------------
-
-Шаблоны всех файлов лежат в папке Templates.
-
-1. Имортируем настройки их Autoexec_PackUpdater.ini в профиль и добавляем в лангпак блок с переводом.
-
-Поясню опции:
-
- FileCount - количество файлов, для которых нужно проверять апдейты. Плагин поддерживает проверку нескольких файлов, однако чаще всего бавает достаточно одного (сетапа сборки)
-
- AutoUpdate - Проверять ли апдейты при запуске Миранды. Настраивается в опциях, в разделе События->Обновление сборки
-
- File_VersionURL - Урл, по которому лежит файл с информацией о версиях для всех файлов(см. дальше)
-
-[File_x_] (где x - порядковый номер файла, начиная с 1)
-
- CurrentVersion - изначально выставляем в 1.0.0 (или любое другое значение) и больше не трогаем
-
- LastVersion - то же самое
-
-
-3. Создаём файлы с информацией о версиях (один для всех проверяемых файлов)
-
-
-Описание опций:
-
-Заголовок [FileInfo_х], где х - номер файла, начиная с 1 (должен совпадать с номером, импортированным в профиль)
-
-
-FileVersion - Текущая версия файла (т. е. та, на которую обновляемся)
-
-Message - Сообщение, которое выводит плагин при нахождении этого апдейта
-
-DownloadURL - Урл, по которому лежит собственно файл апдейта (сетап)
-
-DiskFileName - Имя файла на диске.
-
-FileType - тип файла. Определяет конечное его расположение. (1 - сборка, 2 - плагин (будет установлен в папку Plugins), 3 - иконка (будет установлен в папку Icons), 4 - файлы в корне миранды (на пример, langpack, dbtool))
-
-Descr - описание, которое будет выводится в окне обновления.
-
-InfoURL - Опционально. Если присутствует, то в окошке уведомления появляется кнопочка "Смотреть инфо", при нажатии на которую в новом окне откроется эта страница
-
-AdvFolder - Опционально. Если присутствует, то задает подпапку в папке определяемой типом файла.
-
-Force - Опционально. Если присутствует, то файл будет предложен для обновления, даже если отсутствует.
-
-4. Заливаем файл с инфой о версиях и апдейты на сервер.
-
-
---------------------
-2. Как оно работает?
---------------------
-
-У плагина есть два режима работы: тихий и обычный. Тихий используется при проверке апдейтов при запуске, обычный - при выборе пункта меню.
-Сначала плагин скачивает файл с информацией о версиях и сравнивает "локальную" (File_x_CurrentVersion из профиля) версию с "удалённой" (FileVersion). Если они отличаются, то:
-а). При работе в тихом режиме плагин проверяет значение LastVersion и если оно отличается от FileVersion, выдаёт сообщение об обновлении, если нет -
-сообщений об отсутствии обновлений не будет.
-б). При работе в обычном режиме плагин выдаёт сообщение в любом случае.
-Если юзер скачал апдейт, но решил сразу его не устанавливать, апдейт всё равно считается установленным.
-
-
----------------------
-3. Копирайты и прочее
----------------------
-
-Плагин написал товарищЪ ZERO_BiT, продолжил развитие Mataes.
-Автор не несёт никакой ответственности за ущерб, явный или подразумеваемый, нанесённый этим плагином.
-Также хотелось бы попросить не удалять оригинальный копирайт.
-
-По вопросам обращаться
- на мыло: mataes2007@gmail.com
- в аську: 4618898 \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Docs/Templates/Autoexec_PackUpdater.ini b/plugins/PackUpdater_new/Docs/Templates/Autoexec_PackUpdater.ini
deleted file mode 100644
index 9375457441..0000000000
--- a/plugins/PackUpdater_new/Docs/Templates/Autoexec_PackUpdater.ini
+++ /dev/null
@@ -1,10 +0,0 @@
-[PackUpdater]
-AutoUpdate=b1
-File_VersionURL=uhttp://mataes.googlecode.com/files/Test5.ini
-FileCount=d3
-File_1_CurrentVersion=u0.0.0
-File_1_LastVersion=u0.0.0
-File_2_CurrentVersion=u0.0.0
-File_2_LastVersion=u0.0.0
-File_3_CurrentVersion=u0.0.0
-File_3_LastVersion=u0.0.0 \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Docs/Templates/File1.ini b/plugins/PackUpdater_new/Docs/Templates/File1.ini
deleted file mode 100644
index 311c75b3c0..0000000000
--- a/plugins/PackUpdater_new/Docs/Templates/File1.ini
+++ /dev/null
@@ -1,25 +0,0 @@
-[FileInfo_1]
-FileVersion = 0.0.1
-Message = "Test Pack"
-DownloadURL = "http://mataes.googlecode.com/files/Miranda%20IM%20Mataes%20Pack%20v0.8.3.exe"
-DiskFileName = "Miranda IM Mataes Pack v0.8.3.exe"
-InfoURL = "http://miranda-planet.com/forum/index.php?showtopic=6121"
-Descr="Test1"
-FileType=1
-Force=1
-
-[FileInfo_2]
-FileVersion = 0.0.1
-Message = "Test Plugin"
-DownloadURL = "http://mataes.googlecode.com/files/Test_Plugin.dll"
-DiskFileName = "Test_plugin.dll"
-Descr="Test2"
-FileType=2
-
-[FileInfo_3]
-FileVersion = 0.0.1
-Message = "Test Icon"
-DownloadURL = "http://mataes.googlecode.com/files/Test_Icon.dll"
-DiskFileName = "Test_Icon.dll"
-Descr="Test3"
-FileType=3 \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Docs/ToDo.txt b/plugins/PackUpdater_new/Docs/ToDo.txt
deleted file mode 100644
index 50100bcc4c..0000000000
--- a/plugins/PackUpdater_new/Docs/ToDo.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-1. add second variant of update - external app.
-2. add updater support (maybe). \ No newline at end of file
diff --git a/plugins/PackUpdater_new/PackUpdater_10_new.vcxproj b/plugins/PackUpdater_new/PackUpdater_10_new.vcxproj
deleted file mode 100644
index 2268926fe2..0000000000
--- a/plugins/PackUpdater_new/PackUpdater_10_new.vcxproj
+++ /dev/null
@@ -1,199 +0,0 @@
-п»ї<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>PackUpdater_new</ProjectName>
- <ProjectGuid>{0ABEC99C-E434-425C-8CB7-4B96093BC466}</ProjectGuid>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\Plugins\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Configuration)64\Plugins\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)\Obj\$(ProjectName)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Configuration)64\Obj\$(ProjectName)\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\Plugins\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Configuration)64\Plugins\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)\Obj\$(ProjectName)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Configuration)64\Obj\$(ProjectName)\</IntDir>
- <IgnoreImportLibrary>true</IgnoreImportLibrary>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\include;..\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;PACKUPDATER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- <DisableSpecificWarnings>4996</DisableSpecificWarnings>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <PrecompiledHeaderFile>Common.h</PrecompiledHeaderFile>
- </ClCompile>
- <Link>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Windows</SubSystem>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
- <AdditionalLibraryDirectories>$(SolutionDir)\lib</AdditionalLibraryDirectories>
- </Link>
- <ResourceCompile>
- <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ResourceCompile>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\include;..\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN64;_DEBUG;_WINDOWS;_USRDLL;PACKUPDATER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DisableSpecificWarnings>4996</DisableSpecificWarnings>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <PrecompiledHeaderFile>Common.h</PrecompiledHeaderFile>
- </ClCompile>
- <Link>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Windows</SubSystem>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
- <AdditionalLibraryDirectories>$(SolutionDir)\lib</AdditionalLibraryDirectories>
- </Link>
- <ResourceCompile>
- <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ResourceCompile>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <Optimization>Full</Optimization>
- <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
- <AdditionalIncludeDirectories>..\..\include;..\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;PACKUPDATER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <WarningLevel>Level3</WarningLevel>
- <DisableSpecificWarnings>4996</DisableSpecificWarnings>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <PrecompiledHeaderFile>Common.h</PrecompiledHeaderFile>
- </ClCompile>
- <Link>
- <SubSystem>Windows</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
- <AdditionalManifestDependencies>
- </AdditionalManifestDependencies>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <AdditionalLibraryDirectories>$(SolutionDir)\lib</AdditionalLibraryDirectories>
- </Link>
- <ResourceCompile>
- <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ResourceCompile>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <ClCompile>
- <Optimization>Full</Optimization>
- <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
- <AdditionalIncludeDirectories>..\..\include;..\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN64;NDEBUG;_WINDOWS;_USRDLL;PACKUPDATER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <WarningLevel>Level3</WarningLevel>
- <DisableSpecificWarnings>4996</DisableSpecificWarnings>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <PrecompiledHeaderFile>Common.h</PrecompiledHeaderFile>
- </ClCompile>
- <Link>
- <SubSystem>Windows</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <RandomizedBaseAddress>false</RandomizedBaseAddress>
- <ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <AdditionalLibraryDirectories>$(SolutionDir)\lib</AdditionalLibraryDirectories>
- </Link>
- <ResourceCompile>
- <AdditionalIncludeDirectories>..\..\include\msapi</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ResourceCompile>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ResourceCompile Include="Resource.rc" />
- <ResourceCompile Include="Version.rc" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include="Resource.h" />
- <ClInclude Include="Src\Common.h" />
- <ClInclude Include="Src\Notifications.h" />
- <ClInclude Include="Version.h" />
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="Src\Events.cpp" />
- <ClCompile Include="Src\Notifications.cpp" />
- <ClCompile Include="Src\Options.cpp" />
- <ClCompile Include="Src\PackUpdater.cpp">
- <PrecompiledHeader>Create</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="Src\Utils.cpp" />
- </ItemGroup>
- <ItemGroup>
- <None Include="res\btnClose.ico" />
- <None Include="res\btnOk.ico" />
- <None Include="res\delete.ico" />
- <None Include="res\menu.ico" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project> \ No newline at end of file
diff --git a/plugins/PackUpdater_new/PackUpdater_10_new.vcxproj.filters b/plugins/PackUpdater_new/PackUpdater_10_new.vcxproj.filters
deleted file mode 100644
index 87e02ef233..0000000000
--- a/plugins/PackUpdater_new/PackUpdater_10_new.vcxproj.filters
+++ /dev/null
@@ -1,70 +0,0 @@
-п»ї<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup>
- <Filter Include="Source Files">
- <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
- <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
- </Filter>
- <Filter Include="Header Files">
- <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
- <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
- </Filter>
- <Filter Include="Resource Files">
- <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
- <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
- </Filter>
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="Resource.rc">
- <Filter>Resource Files</Filter>
- </ResourceCompile>
- <ResourceCompile Include="Version.rc">
- <Filter>Resource Files</Filter>
- </ResourceCompile>
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include="Resource.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="Version.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="Src\Common.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="Src\Notifications.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="Src\Notifications.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="Src\Options.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="Src\PackUpdater.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="Src\Utils.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="Src\Events.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- </ItemGroup>
- <ItemGroup>
- <None Include="res\menu.ico">
- <Filter>Resource Files</Filter>
- </None>
- <None Include="res\delete.ico">
- <Filter>Resource Files</Filter>
- </None>
- <None Include="res\btnOk.ico">
- <Filter>Resource Files</Filter>
- </None>
- <None Include="res\btnClose.ico">
- <Filter>Resource Files</Filter>
- </None>
- </ItemGroup>
-</Project> \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Res/BtnClose.ico b/plugins/PackUpdater_new/Res/BtnClose.ico
deleted file mode 100644
index f0d688b8de..0000000000
--- a/plugins/PackUpdater_new/Res/BtnClose.ico
+++ /dev/null
Binary files differ
diff --git a/plugins/PackUpdater_new/Res/BtnOk.ico b/plugins/PackUpdater_new/Res/BtnOk.ico
deleted file mode 100644
index c83612c147..0000000000
--- a/plugins/PackUpdater_new/Res/BtnOk.ico
+++ /dev/null
Binary files differ
diff --git a/plugins/PackUpdater_new/Res/Delete.ico b/plugins/PackUpdater_new/Res/Delete.ico
deleted file mode 100644
index eea851da19..0000000000
--- a/plugins/PackUpdater_new/Res/Delete.ico
+++ /dev/null
Binary files differ
diff --git a/plugins/PackUpdater_new/Res/Menu.ico b/plugins/PackUpdater_new/Res/Menu.ico
deleted file mode 100644
index 8f8fdb5258..0000000000
--- a/plugins/PackUpdater_new/Res/Menu.ico
+++ /dev/null
Binary files differ
diff --git a/plugins/PackUpdater_new/Resource.aps b/plugins/PackUpdater_new/Resource.aps
deleted file mode 100644
index 51705e3eff..0000000000
--- a/plugins/PackUpdater_new/Resource.aps
+++ /dev/null
Binary files differ
diff --git a/plugins/PackUpdater_new/Resource.rc b/plugins/PackUpdater_new/Resource.rc
deleted file mode 100644
index a96aa45bb3..0000000000
--- a/plugins/PackUpdater_new/Resource.rc
+++ /dev/null
@@ -1,200 +0,0 @@
-// Microsoft Visual C++ generated resource script.
-//
-#include "resource.h"
-
-#define APSTUDIO_READONLY_SYMBOLS
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 2 resource.
-//
-#include "afxres.h"
-
-/////////////////////////////////////////////////////////////////////////////
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-// Русский (Россия) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS)
-LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
-#pragma code_page(1251)
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Icon
-//
-
-// Icon with lowest ID value placed first to ensure application icon
-// remains consistent on all systems.
-IDI_MENU ICON "res/menu.ico"
-IDI_DELETE ICON "res/delete.ico"
-IDI_OK ICON "res/btnOk.ico"
-IDI_CANCEL ICON "res/btnClose.ico"
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Dialog
-//
-
-IDD_UPDATE DIALOGEX 0, 0, 241, 203
-STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
-CAPTION "Updates found!"
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
- DEFPUSHBUTTON "Update",IDOK,24,187,50,14
- DEFPUSHBUTTON "View info",IDC_INFO,84,187,66,14,WS_DISABLED | NOT WS_TABSTOP
- PUSHBUTTON "Cancel",IDCANCEL,160,187,50,14
- CTEXT "PackUpdater has detected updated versions\nof the following Miranda components:",IDC_UPDATETEXT,9,9,217,22
- CONTROL "",IDC_LIST_UPDATES,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_NOSORTHEADER | WS_BORDER | WS_TABSTOP,9,37,217,105
- GROUPBOX "Description",IDC_DESCR,9,142,217,43
- EDITTEXT IDC_MESSAGE,12,152,212,30,ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | NOT WS_BORDER | WS_VSCROLL
-END
-
-IDD_DOWNLOAD DIALOGEX 0, 0, 172, 39
-STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_SYSMENU
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
- CONTROL "",IDC_PB,"msctls_progress32",WS_BORDER,7,23,158,9
- CTEXT "Downloading...",IDC_LABEL,7,7,158,12
-END
-
-IDD_POPUPDUMMI DIALOGEX 65526, 65526, 1, 1
-STYLE DS_ABSALIGN | DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_SYSMENU
-FONT 8, "MS Shell Dlg", 400, 0, 0x1
-BEGIN
-END
-
-IDD_OPT_UPDATENOTIFY DIALOGEX 0, 0, 262, 181
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
-EXSTYLE WS_EX_CONTROLPARENT
-FONT 8, "MS Shell Dlg", 0, 0, 0x1
-BEGIN
- GROUPBOX "Pack update options",IDC_STATIC,2,27,253,86
- CONTROL "On startup",IDC_UPDATEONSTARTUP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,44,52,10
- CONTROL "Remind about not installed pack update",IDC_REMINDER,
- "Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,72,198,10
- GROUPBOX "Hotkey",IDC_STATIC,2,0,253,26
- CONTROL "Go to Customize -> Hotkeys to change the hotkey",IDC_LINK_HOTKEY,
- "Hyperlink",WS_TABSTOP,9,11,199,10
- CONTROL "Message boxes",IDC_MSG_BOXES2,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,8,126,79,10
- CONTROL "Errors",IDC_ERRORS2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,8,136,57,10
- CONTROL "Info messages",IDC_INFO_MESSAGES2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,8,146,80,10
- CONTROL "Progress dialogs",IDC_PROGR_DLG2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,8,157,80,10
- CONTROL "Every",IDC_UPDATEONPERIOD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,58,52,10
- EDITTEXT IDC_PERIOD,65,56,28,14,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED
- CONTROL "",IDC_PERIODSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | WS_DISABLED,92,56,10,15
- COMBOBOX IDC_PERIODMEASURE,114,56,58,30,CBS_DROPDOWNLIST | CBS_SORT | WS_DISABLED | WS_VSCROLL | WS_TABSTOP
- CONTROL "(but only once a day)",IDC_ONLYONCEADAY,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,92,44,161,10
- GROUPBOX "Notifications",IDC_NOTIFY2,1,115,253,58
- RTEXT "Update File URL:",IDC_STATIC,7,86,59,8
- EDITTEXT IDC_UPDATE_URL,69,84,177,14,ES_AUTOHSCROLL
-END
-
-IDD_POPUP DIALOGEX 0, 0, 316, 182
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
-EXSTYLE WS_EX_CONTROLPARENT
-FONT 8, "MS Shell Dlg", 0, 0, 0x1
-BEGIN
- GROUPBOX "Notifications",IDC_NOTIFY,1,0,172,79
- CONTROL "Message boxes (*)",IDC_MSG_BOXES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,19,79,10
- CONTROL "Errors",IDC_ERRORS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,32,57,10
- CONTROL "Info messages",IDC_INFO_MESSAGES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,45,80,10
- CONTROL "Progress dialogs",IDC_PROGR_DLG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,59,80,10
- CTEXT "Back",IDC_STATIC,90,8,24,8
- CTEXT "Text",IDC_STATIC,116,8,24,8
- CONTROL "",IDC_MSG_BOXES_BG,"ColourPicker",WS_TABSTOP,90,17,24,12
- CONTROL "",IDC_MSG_BOXES_TX,"ColourPicker",WS_TABSTOP,116,17,24,12
- CONTROL "",IDC_ERR_BG,"ColourPicker",WS_TABSTOP,90,31,24,12
- CONTROL "",IDC_ERR_TX,"ColourPicker",WS_TABSTOP,116,31,24,12
- CONTROL "",IDC_INFO_MESSAGES_BG,"ColourPicker",WS_TABSTOP,90,44,24,12
- CONTROL "",IDC_INFO_MESSAGES_TX,"ColourPicker",WS_TABSTOP,116,44,24,12
- CONTROL "",IDC_PROGR_DLG_BG,"ColourPicker",WS_TABSTOP,90,58,24,12
- CONTROL "",IDC_PROGR_DLG_TX,"ColourPicker",WS_TABSTOP,116,58,24,12
- GROUPBOX "Colours",IDC_COLORS,178,0,133,44,WS_GROUP
- CONTROL "Use cus&tom colors",IDC_USEOWNCOLORS,"Button",BS_AUTORADIOBUTTON | BS_MULTILINE | BS_NOTIFY,186,8,122,13
- CONTROL "Use &Windows colours",IDC_USEWINCOLORS,"Button",BS_AUTORADIOBUTTON | BS_MULTILINE | BS_NOTIFY,186,30,121,13
- CONTROL "Use Pop&up colours",IDC_USEPOPUPCOLORS,"Button",BS_AUTORADIOBUTTON | BS_MULTILINE | BS_NOTIFY,186,19,102,13
- PUSHBUTTON "Preview",IDC_PREVIEW,189,104,57,12
- GROUPBOX "Click action",IDC_STATIC,1,83,145,67,WS_GROUP
- COMBOBOX IDC_LC,6,103,127,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- COMBOBOX IDC_RC,6,130,127,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "On left click",IDC_STATIC,8,94,121,8
- LTEXT "On right click",IDC_STATIC,8,120,121,8
- GROUPBOX "Timeout",IDC_STATIC,178,45,133,51
- EDITTEXT IDC_TIMEOUT_VALUE,194,59,32,12,ES_RIGHT | ES_AUTOHSCROLL | ES_NUMBER
- CONTROL "",IDC_TIMEOUT_VALUE_SPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS,215,59,12,12
- CTEXT "0 = Default",IDC_STATIC_DEFAULT,250,56,55,8
- CTEXT "-1 = Infinite",IDC_STATIC_INFINITE,249,66,54,8
- LTEXT "Sec",IDC_STATIC_SEC,230,61,17,8
- LTEXT "* Needs popup actions to be enabled",IDC_STATIC,4,156,190,8
- LTEXT "Not sets for ""Message boxes""",IDC_STATIC,185,80,123,8
- CONTROL "",IDC_MSG_BOXES_MSG,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,153,19,8,10
- CONTROL "",IDC_ERRORS_MSG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,153,32,8,10
- CONTROL "",IDC_INFO_MESSAGES_MSG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,153,45,8,10
- CONTROL "",IDC_PROGR_DLG_MSG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,153,59,8,10
- CTEXT "Boxes",IDC_STATIC,146,8,23,8
- CTEXT "PopUps",IDC_STATIC,7,9,79,8
-END
-
-
-#ifdef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// TEXTINCLUDE
-//
-
-1 TEXTINCLUDE
-BEGIN
- "resource.h\0"
-END
-
-2 TEXTINCLUDE
-BEGIN
- "#include ""afxres.h""\r\n"
- "\0"
-END
-
-3 TEXTINCLUDE
-BEGIN
- "\r\n"
- "\0"
-END
-
-#endif // APSTUDIO_INVOKED
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// DESIGNINFO
-//
-
-#ifdef APSTUDIO_INVOKED
-GUIDELINES DESIGNINFO
-BEGIN
- IDD_UPDATE, DIALOG
- BEGIN
- BOTTOMMARGIN, 201
- END
-
- IDD_OPT_UPDATENOTIFY, DIALOG
- BEGIN
- BOTTOMMARGIN, 178
- END
-END
-#endif // APSTUDIO_INVOKED
-
-#endif // Русский (Россия) resources
-/////////////////////////////////////////////////////////////////////////////
-
-
-
-#ifndef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 3 resource.
-//
-
-
-/////////////////////////////////////////////////////////////////////////////
-#endif // not APSTUDIO_INVOKED
-
diff --git a/plugins/PackUpdater_new/Src/Common.h b/plugins/PackUpdater_new/Src/Common.h
deleted file mode 100644
index e18abc61f3..0000000000
--- a/plugins/PackUpdater_new/Src/Common.h
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
-Copyright (C) 2010 Mataes
-
-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.
-*/
-
-#define MIRANDA_VER 0x0A00
-
-// Windows Header Files:
-#include <time.h>
-#include <stdio.h>
-#include <windows.h>
-#include <Windowsx.h>
-#include "vector" // stl vector header
-#include <Shlobj.h>
-
-// Miranda header files
-#include "win2k.h"
-#include <newpluginapi.h>
-#include <m_clist.h>
-#include <m_skin.h>
-#include <m_langpack.h>
-#include <m_options.h>
-#include <m_database.h>
-#include <m_utils.h>
-#include <m_system.h>
-#include <m_popup.h>
-#include <m_hotkeys.h>
-#include <m_netlib.h>
-#include <m_icolib.h>
-
-#include <m_folders.h>
-#include "m_popup2.h"
-
-#include "..\version.h"
-#include "..\resource.h"
-#include "Notifications.h"
-
-#define MODNAME "PackUpdater"
-#define MODULEA "Pack Updater"
-#define MODULEW L"Pack Updater"
-#define DEFAULT_UPDATES_FOLDER L"Pack Updates"
-typedef std::wstring tString;
-#define MODULE MODULEW
-
-struct FILEURL
-{
- TCHAR tszDownloadURL[2048];
- TCHAR tszDiskPath[MAX_PATH];
-};
-
-struct FILEINFO
-{
- TCHAR curhash[32];
- TCHAR newhash[32];
- TCHAR tszAdvFolder[256];
- TCHAR tszInfoURL[2048];
- TCHAR tszMessage[5000];
- TCHAR tszDescr[256];
- FILEURL File;
- BOOL enabled;
- BYTE FileType;
- INT FileNum;
- BYTE Force;
-};
-
-struct PackUpdaterIconList
-{
- char* szIconName;
- TCHAR* tszDescr;
- int IconID;
-};
-
-struct PopupDataText
-{
- TCHAR* Title;
- TCHAR* Text;
-};
-
-#define DEFAULT_REMINDER 1
-#define DEFAULT_UPDATEONSTARTUP 1
-#define DEFAULT_ONLYONCEADAY 0
-#define DEFAULT_UPDATEONPERIOD 0
-#define DEFAULT_PERIOD 1
-#define DEFAULT_PERIODMEASURE 1
-#define DEFAULT_FILETYPE 0 //0 - not defined, 1 - pack, 2 - plugin, 3 - icon, 4 - files in miranda root (e.g. langpack, dbtool), 5 - same as 4 without restart
-#define DEFAULT_UPDATE_URL "http://nightly.miranda.im/x32/checksum.txt"
-
-#define IDINFO 3
-#define IDDOWNLOAD 4
-#define IDDOWNLOADALL 5
-
-using std::wstring;
-using namespace std;
-
-extern HINSTANCE hInst;
-extern INT /*CurrentFile,*/ Number, UpdatesCount, Period;
-extern BOOL Silent, DlgDld;
-extern BYTE Reminder, UpdateOnStartup, UpdateOnPeriod, OnlyOnceADay, PeriodMeasure;
-extern TCHAR tszRoot[MAX_PATH], tszDialogMsg[2048];
-extern FILEINFO* pFileInfo;
-//extern FILEURL* pFileUrl;
-extern HANDLE CheckThread, hOnPreShutdown, hOptHook, hLoadHook;
-extern MYOPTIONS MyOptions;
-extern aPopups PopupsList[POPUPS];
-extern HANDLE Timer;
-
-VOID InitPopupList();
-VOID LoadOptions();
-BOOL NetlibInit();
-VOID IcoLibInit();
-VOID NetlibUnInit();
-INT ModulesLoaded(WPARAM wParam, LPARAM lParam);
-INT_PTR MenuCommand(WPARAM wParam,LPARAM lParam);
-INT_PTR EmptyFolder(WPARAM wParam,LPARAM lParam);
-INT OnPreShutdown(WPARAM wParam, LPARAM lParam);
-INT OptInit(WPARAM wParam, LPARAM lParam);
-VOID DoCheck(INT iFlag, INT iFlag2);
-BOOL DownloadFile(LPCTSTR tszURL, LPCTSTR tszLocal);
-VOID show_popup(HWND hDlg, LPCTSTR Title, LPCTSTR Text, INT Number, INT ActType);
-VOID DlgDownloadProc(FILEURL *pFileUrl, PopupDataText temp);
-INT_PTR CALLBACK DlgUpdate(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
-INT_PTR CALLBACK DlgMsgPop(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
-void __stdcall ExitMe(void*);
-void __stdcall RestartMe(void*);
-BOOL AllowUpdateOnStartup();
-VOID InitTimer(); \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Src/Events.cpp b/plugins/PackUpdater_new/Src/Events.cpp
deleted file mode 100644
index eef80fc3f4..0000000000
--- a/plugins/PackUpdater_new/Src/Events.cpp
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
-Copyright (C) 2010 Mataes
-
-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"
-
-HANDLE Timer;
-BOOL Silent;
-
-int ModulesLoaded(WPARAM wParam, LPARAM lParam)
-{
- UnhookEvent(hLoadHook);
- Silent = true;
- HOTKEYDESC hkd = {0};
- hkd.cbSize = sizeof(hkd);
- hkd.dwFlags = HKD_TCHAR;
- hkd.pszName = "Check for pack updates";
- hkd.ptszDescription = _T("Check for pack updates");
- hkd.ptszSection = _T("Pack Updater");
- hkd.pszService = MODNAME"/CheckUpdates";
- hkd.DefHotKey = HOTKEYCODE(HOTKEYF_CONTROL, VK_F10) | HKF_MIRANDA_LOCAL;
- hkd.lParam = FALSE;
- Hotkey_Register(&hkd);
-
- if (AllowUpdateOnStartup())
- DoCheck(UpdateOnStartup, (int)CheckThread);
-
- Timer = CreateWaitableTimer(NULL, FALSE, NULL);
- InitTimer();
-
- return 0;
-}
-
-INT_PTR MenuCommand(WPARAM wParam,LPARAM lParam)
-{
- Silent = false;
- DoCheck(1, (int)CheckThread);
- return 0;
-}
-
-INT_PTR EmptyFolder(WPARAM wParam,LPARAM lParam)
-{
- SHFILEOPSTRUCT file_op = {
- NULL,
- FO_DELETE,
- tszRoot,
- _T(""),
- FOF_NOERRORUI |
- FOF_SILENT,
- false,
- 0,
- _T("") };
- if (lParam)
- file_op.fFlags |= FOF_NOCONFIRMATION;
- SHFileOperation(&file_op);
- return 0;
-}
-
-INT OnPreShutdown(WPARAM wParam, LPARAM lParam)
-{
- CancelWaitableTimer(Timer);
- CloseHandle(Timer);
-
- UnhookEvent(hOptHook);
- UnhookEvent(hOnPreShutdown);
- return 0;
-} \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Src/Notifications.cpp b/plugins/PackUpdater_new/Src/Notifications.cpp
deleted file mode 100644
index d8d6db8839..0000000000
--- a/plugins/PackUpdater_new/Src/Notifications.cpp
+++ /dev/null
@@ -1,695 +0,0 @@
-/*
-Copyright (C) 2010 Mataes
-
-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"
-
-INT UpdatesCount = 0;
-
-void PopupAction(HWND hWnd, BYTE action)
-{
- switch (action)
- {
- case PCA_CLOSEPOPUP:
- break;
- case PCA_DONOTHING:
- return;
- }//end* switch
- PUDeletePopUp(hWnd);
-}
-
-static INT_PTR CALLBACK PopupDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
-{
- switch (uMsg)
- {
- case UM_POPUPACTION:
- {
- if (HIWORD(wParam) == BN_CLICKED)
- {
- LPMSGPOPUPDATA pmpd = (LPMSGPOPUPDATA)PUGetPluginData(hDlg);
-
- if (pmpd)
- {
- switch (LOWORD(wParam))
- {
- case IDYES:
- {
- if (IsWindow(pmpd->hDialog))
- EndDialog(pmpd->hDialog, LOWORD(wParam));
- PUDeletePopUp(hDlg);
- break;
- }
- case IDNO:
- {
- if (IsWindow(pmpd->hDialog))
- EndDialog(pmpd->hDialog, LOWORD(wParam));
- PUDeletePopUp(hDlg);
- break;
- }
- }
- }
- }
- }
- break;
-
- case UM_FREEPLUGINDATA:
- {
- LPMSGPOPUPDATA pmpd = (LPMSGPOPUPDATA)PUGetPluginData(hDlg);
- if (pmpd > 0)
- mir_free(pmpd);
- return TRUE; //TRUE or FALSE is the same, it gets ignored.
- }
- break;
-
- default:
- break;
- }
- return DefWindowProc(hDlg, uMsg, wParam, lParam);
-}
-
-static INT_PTR CALLBACK PopupDlgProc2(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
-{
- switch (uMsg)
- {
- case WM_COMMAND:
- {
- PopupAction(hDlg, MyOptions.LeftClickAction);
- break;
- }
- case WM_CONTEXTMENU:
- {
- PopupAction(hDlg, MyOptions.RightClickAction);
- break;
- }
- case UM_FREEPLUGINDATA:
- {
- LPMSGPOPUPDATA pmpd = (LPMSGPOPUPDATA)PUGetPluginData(hDlg);
- if (pmpd > 0)
- mir_free(pmpd);
- return TRUE; //TRUE or FALSE is the same, it gets ignored.
- }
- break;
- }
- return DefWindowProc(hDlg, uMsg, wParam, lParam);
-}
-
-static VOID MakePopupAction(POPUPACTION &pa, INT id)
-{
- pa.cbSize = sizeof(POPUPACTION);
- pa.flags = PAF_ENABLED;
- pa.wParam = MAKEWORD(id, BN_CLICKED);
- pa.lParam = 0;
- switch (id)
- {
- case IDYES:
- {
- pa.lchIcon = (HICON)CallService(MS_SKIN2_GETICON, 0, (LPARAM)"btn_ok");
- strncpy_s(pa.lpzTitle, MODNAME"/Yes", SIZEOF(pa.lpzTitle));
- }
- break;
- case IDNO:
- {
- pa.lchIcon = (HICON)CallService(MS_SKIN2_GETICON, 0, (LPARAM)"btn_cancel");
- strncpy_s(pa.lpzTitle, MODNAME"/No", SIZEOF(pa.lpzTitle));
- }
- break;
- }
-}
-
-VOID show_popup(HWND hDlg, LPCTSTR Title, LPCTSTR Text, int Number, int ActType)
-{
- POPUPDATAT_V2 pd;
- LPMSGPOPUPDATA pmpd;
- pmpd = (LPMSGPOPUPDATA)mir_alloc(sizeof(MSGPOPUPDATA));
- if (pmpd)
- {
- ZeroMemory(&pd, sizeof(pd));
- pd.cbSize = sizeof(POPUPDATAT_V2);
- pd.lchContact = NULL; //(HANDLE)wParam;
- pd.lchIcon = LoadSkinnedIcon(PopupsList[Number].Icon);
- lstrcpyn(pd.lptzText, Text, SIZEOF(pd.lptzText));
- lstrcpyn(pd.lptzContactName, Title, SIZEOF(pd.lptzContactName));
- switch (MyOptions.DefColors)
- {
- case byCOLOR_WINDOWS:
- pd.colorBack = GetSysColor(COLOR_BTNFACE);
- pd.colorText = GetSysColor(COLOR_WINDOWTEXT);
- break;
- case byCOLOR_OWN:
- pd.colorBack = PopupsList[Number].colorBack;
- pd.colorText = PopupsList[Number].colorText;
- break;
- case byCOLOR_POPUP:
- pd.colorBack = pd.colorText = 0;
- break;
- }//end* switch
- if (Number == 0 && ActType != 0)
- pd.PluginWindowProc = (WNDPROC)PopupDlgProc;
- else
- pd.PluginWindowProc = (WNDPROC)PopupDlgProc2;
- pd.PluginData = pmpd;
- if (Number == 0)
- pd.iSeconds = -1;
- else
- pd.iSeconds = MyOptions.Timeout;
- pd.hNotification = NULL;
- pd.lpActions = pmpd->pa;
- }
- pmpd->hDialog = hDlg;
- switch (ActType)
- {
- case 0:
- break;
- case 1:
- {
- MakePopupAction(pmpd->pa[pd.actionCount++], IDYES);
- MakePopupAction(pmpd->pa[pd.actionCount++], IDNO);
- }
- break;
- }
-
- CallService(MS_POPUP_ADDPOPUPT, (WPARAM) &pd, APF_NEWDATA);
-}
-
-INT_PTR CALLBACK DlgDownload(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
-{
- switch (message)
- {
- case WM_INITDIALOG:
- SetWindowText(GetDlgItem(hDlg, IDC_LABEL), tszDialogMsg);
- SetWindowLongPtr(GetDlgItem(hDlg, IDC_PB), GWL_STYLE, GetWindowLongPtr(GetDlgItem(hDlg, IDC_PB), GWL_STYLE) | PBS_MARQUEE);
- SendMessage(GetDlgItem(hDlg, IDC_PB), PBM_SETMARQUEE, 1, 50);
- return TRUE;
- }//end* switch
- return FALSE;
-}
-
-INT_PTR CALLBACK DlgDownloadPop(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
-{
- switch (uMsg)
- {
- case WM_INITDIALOG:
- {
- PopupDataText *temp = (PopupDataText*)lParam;
- Number = 3;
- show_popup(hDlg, temp->Title, temp->Text, Number, 0);
- return TRUE;
- } // end* WM_INITDIALOG:
- } // end* switch (uMsg)
- return FALSE;
-}
-
-/*static void __stdcall CreateDownloadDialog(void* param)
-{
- PopupDataText *temp = (PopupDataText*)param;
- if (ServiceExists(MS_POPUP_ADDPOPUPEX) && DBGetContactSettingByte(NULL, "PopUp", "ModuleIsEnabled", 1) && DBGetContactSettingByte(NULL,MODNAME, "Popups3", DEFAULT_POPUP_ENABLED))
- hDlgDld = CreateDialog(hInst, MAKEINTRESOURCE(IDD_POPUPDUMMI), NULL, DlgDownloadPop);
- else if (DBGetContactSettingByte(NULL,MODNAME, "Popups3M", DEFAULT_MESSAGE_ENABLED))
- {
- lstrcpyn(tszDialogMsg, Text, SIZEOF(tszDialogMsg));
- hDlgDld = CreateDialog(hInst, MAKEINTRESOURCE(IDD_DOWNLOAD), NULL, DlgDownload);
- }
-}*/
-
-/*static void __stdcall DestroyDownloadDialog(void*)
-{
- DestroyWindow(hDlgDld);
-}*/
-
-void DlgDownloadProc(FILEURL *pFileUrl, PopupDataText temp)
-{
- HWND hDlgDld = NULL;
- if (ServiceExists(MS_POPUP_ADDPOPUPEX) && DBGetContactSettingByte(NULL, "PopUp", "ModuleIsEnabled", 1) && DBGetContactSettingByte(NULL,MODNAME, "Popups3", DEFAULT_POPUP_ENABLED))
- hDlgDld = CreateDialogParam(hInst, MAKEINTRESOURCE(IDD_POPUPDUMMI), NULL, DlgDownloadPop, (LPARAM)&temp);
- else if (DBGetContactSettingByte(NULL,MODNAME, "Popups3M", DEFAULT_MESSAGE_ENABLED))
- {
- lstrcpyn(tszDialogMsg, temp.Text, SIZEOF(tszDialogMsg));
- hDlgDld = CreateDialog(hInst, MAKEINTRESOURCE(IDD_DOWNLOAD), NULL, DlgDownload);
- }
-
- if (!DownloadFile(pFileUrl->tszDownloadURL, pFileUrl->tszDiskPath))
- {
- LPCTSTR Title = TranslateT("Pack Updater");
- LPCTSTR Text = TranslateT("An error occured while downloading the update.");
- if (ServiceExists(MS_POPUP_ADDPOPUPEX) && DBGetContactSettingByte(NULL, "PopUp", "ModuleIsEnabled", 1) && DBGetContactSettingByte(NULL, MODNAME, "Popups1", DEFAULT_POPUP_ENABLED))
- {
- Number = 1;
- show_popup(0, Title, Text, Number, 0);
- }
- else if (DBGetContactSettingByte(NULL, MODNAME, "Popups1M", DEFAULT_MESSAGE_ENABLED))
- MessageBox(NULL, Text, Title, MB_ICONSTOP);
- }
- DestroyWindow(hDlgDld);
- //CallFunctionAsync(DestroyDownloadDialog, 0);
-}
-
-INT_PTR CALLBACK DlgUpdate(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
-{
- HWND hwndList = GetDlgItem(hDlg, IDC_LIST_UPDATES);
-
- switch (message)
- {
- case WM_INITDIALOG:
- {
- TranslateDialogDefault( hDlg );
- SetWindowLongPtr(hDlg, GWLP_USERDATA, 0);
- SendMessage(hwndList, LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_FULLROWSELECT | LVS_EX_CHECKBOXES);
-
- LVCOLUMN lvc = {0};
- // Initialize the LVCOLUMN structure.
- // The mask specifies that the format, width, text, and
- // subitem members of the structure are valid.
- lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
- lvc.fmt = LVCFMT_LEFT;
-
- lvc.iSubItem = 0;
- lvc.pszText = TranslateT("Component Name");
- lvc.cx = 145; // width of column in pixels
- ListView_InsertColumn(hwndList, 0, &lvc);
-
- lvc.iSubItem = 1;
- lvc.pszText = TranslateT("Current Version");
- lvc.cx = 95; // width of column in pixels
- ListView_InsertColumn(hwndList, 1, &lvc);
-
- lvc.iSubItem = 2;
- lvc.pszText = TranslateT("New Version");
- lvc.cx = 82; // width of column in pixels
- ListView_InsertColumn(hwndList, 2, &lvc);
-
- //enumerate plugins, fill in list
- //bool one_enabled = false;
- ListView_DeleteAllItems(hwndList);
-
- LVITEM lvI = {0};
-
- // Some code to create the list-view control.
- // Initialize LVITEM members that are common to all
- // items.
- lvI.mask = LVIF_TEXT | LVIF_PARAM | LVIF_NORECOMPUTE;// | LVIF_IMAGE;
-
- vector<FILEINFO> &todo = *(vector<FILEINFO> *)lParam;
- for (int i = 0; i < (int)todo.size(); ++i)
- {
- lvI.mask = LVIF_TEXT | LVIF_PARAM;// | LVIF_IMAGE;
- lvI.iSubItem = 0;
- lvI.lParam = (LPARAM)&todo[i];
- lvI.pszText = todo[i].tszDescr;
- lvI.iItem = i;
- ListView_InsertItem(hwndList, &lvI);
-
- lvI.mask = LVIF_TEXT;// | LVIF_IMAGE;
-
- lvI.iSubItem = 1;
- //lvI.pszText = todo[i].tszCurVer;
- ListView_SetItem(hwndList, &lvI);
-
- lvI.iSubItem = 2;
- //lvI.pszText = todo[i].tszNewVer;
- ListView_SetItem(hwndList, &lvI);
-
- // remember whether the user has decided not to update this component with this particular new version
- /*char stored_setting[256];
- char* descr = mir_t2a(todo[i].tszDescr);
- mir_snprintf(stored_setting, 256, "DisabledVer%s", descr);
- mir_free(descr);
- DBVARIANT dbv;
- bool check = todo[i].enabled;
- if (!DBGetContactSettingTString(0, MODNAME, stored_setting, &dbv))
- {
- if (dbv.ptszVal && lstrcmp(dbv.ptszVal, todo[i].tszNewVer) == 0)
- check = false;
- else
- DBDeleteContactSetting(0, MODNAME, stored_setting);
- DBFreeVariant(&dbv);
- }
- one_enabled |= check;*/
- ListView_SetCheckState(hwndList, lvI.iItem, true);
- todo[i].enabled = true;
- }
- HWND hwOk = GetDlgItem(hDlg, IDOK);
- EnableWindow(hwOk, true/*one_enabled ? TRUE : FALSE*/);
- // do this after filling list - enables 'ITEMCHANGED' below
- SetWindowLongPtr(hDlg, GWLP_USERDATA, lParam);
- Utils_RestoreWindowPositionNoSize(hDlg,0,MODNAME,"ConfirmWindow");
- //if (!IsUserAnAdmin())
- //SendDlgItemMessage(hDlg, IDOK, BCM_SETSHIELD, 0, TRUE);
- return TRUE;
- }
- case WM_NOTIFY:
- {
- if (((LPNMHDR) lParam)->hwndFrom == hwndList)
- {
- switch (((LPNMHDR) lParam)->code)
- {
- case LVN_ITEMCHANGED:
- {
- if (GetWindowLongPtr(hDlg, GWLP_USERDATA))
- {
- NMLISTVIEW *nmlv = (NMLISTVIEW *)lParam;
-
- LVITEM lvI = {0};
-
- lvI.iItem = nmlv->iItem;
- lvI.iSubItem = 0;
- lvI.mask = LVIF_PARAM;
- ListView_GetItem(hwndList, &lvI);
-
- vector<FILEINFO> &todo = *(vector<FILEINFO> *)GetWindowLongPtr(hDlg, GWLP_USERDATA);
- if ((nmlv->uNewState ^ nmlv->uOldState) & LVIS_STATEIMAGEMASK)
- {
- todo[lvI.iItem].enabled = ListView_GetCheckState(hwndList, nmlv->iItem);
-
- /*char stored_setting[256];
- mir_snprintf(stored_setting, 256, "DisabledVer%s", ((UpdateInternal *)lvI.lParam)->update.szComponentName);
-
- if (((UpdateInternal *)lvI.lParam)->update_options.enabled)
- DBDeleteContactSetting(0, "Updater", stored_setting); // user has re-enabled update to this version - remove setting from db
- else
- DBWriteContactSettingString(0, "Updater", stored_setting, ((UpdateInternal *)lvI.lParam)->newVersion);
- //ListView_SetItem(hwndList, &lvI);
- */
-
- bool enableOk = false;
- for(int i=0; i<(int)todo.size(); ++i)
- {
- if(todo[i].enabled)
- {
- enableOk = true;
- break;
- }
- }
- HWND hwOk = GetDlgItem(hDlg, IDOK);
- EnableWindow(hwOk, enableOk ? TRUE : FALSE);
- }
- if (nmlv->uNewState & LVIS_SELECTED)
- {
- if (lstrcmp(todo[lvI.iItem].tszInfoURL, _T("")))
- EnableWindow(GetDlgItem(hDlg, IDC_INFO), TRUE);
- else
- EnableWindow(GetDlgItem(hDlg, IDC_INFO), FALSE);
- SetDlgItemText(hDlg, IDC_MESSAGE, TranslateTS(todo[lvI.iItem].tszMessage));
- /*char stored_setting[256];
- char* descr = mir_t2a(todo[lvI.iItem].tszDescr);
- mir_snprintf(stored_setting, 256, "DisabledVer%s", descr);
- mir_free(descr);
- DBVARIANT dbv;
- if (!DBGetContactSettingTString(0, MODNAME, stored_setting, &dbv))
- {
- if(dbv.ptszVal && lstrcmp(dbv.ptszVal, todo[lvI.iItem].tszNewVer) == 0)
- CheckDlgButton(hDlg, IDC_DONOTREMIND, BST_CHECKED);
- else
- DBDeleteContactSetting(0, MODNAME, stored_setting);
- DBFreeVariant(&dbv);
- }
- else
- CheckDlgButton(hDlg, IDC_DONOTREMIND, BST_UNCHECKED);
- */
-
- }
- }
- break;
- }
- }
- }
- break;
- }
- case WM_COMMAND:
- {
- if (HIWORD( wParam ) == BN_CLICKED)
- {
- switch(LOWORD(wParam))
- {
- case IDOK:
- {
- vector<FILEINFO> &todo = *(vector<FILEINFO> *)GetWindowLongPtr(hDlg, GWLP_USERDATA);
- ShowWindow(hDlg, SW_HIDE);
- TCHAR tszBuff[2048] = {0}, tszFileDest[MAX_PATH] = {0}, tszFilePathDest[MAX_PATH] = {0}, tszFilePathBack[MAX_PATH] = {0}, tszFileName[MAX_PATH] = {0};
- TCHAR* tszExt = NULL;
- char szKey[64] = {0};
- vector<int> arFileType;
- vector<tString> arFilePath;
- vector<tString> arFileName;
- vector<tString> arAdvFolder;
- vector<tString> arExt;
- STARTUPINFO si;
- PROCESS_INFORMATION pi;
-
- SetWindowLongPtr(hDlg, GWLP_USERDATA, 0);
- Utils_SaveWindowPosition(hDlg, NULL, MODNAME, "ConfirmWindow");
- /*DBWriteContactSettingByte(NULL, "Updater", "DefaultConfAll", IsDlgButtonChecked(hwndDlg, IDC_CHK_CONFALL) ? 1 : 0);
- DBWriteContactSettingByte(NULL, "Updater", "NoInstall", IsDlgButtonChecked(hwndDlg, IDC_CHK_NOINSTALL) ? 1 : 0);
-
- if (IsDlgButtonChecked(hDlg, IDC_CHK_CONFALL))
- EndDialog(hDlg, CD_CONFALL);
- else if (IsDlgButtonChecked(hDlg, IDC_CHK_NOINSTALL))
- EndDialog(hDlg, CD_NOINSTALL);
- else
- */
-
- arFileType.clear();
- arFilePath.clear();
- arFileName.clear();
- arAdvFolder.clear();
- arExt.clear();
- for(int i=0; i<(int)todo.size(); ++i)
- {
- if(todo[i].enabled)
- {
- switch (todo[i].FileType)
- {
- case 1:
- mir_sntprintf(tszFileDest, SIZEOF(tszFileDest), _T("%s\\Pack"), tszRoot);
- CreateDirectory(tszFileDest, NULL);
- break;
- case 2:
- mir_sntprintf(tszFileDest, SIZEOF(tszFileDest), _T("%s\\Plugins"), tszRoot);
- CreateDirectory(tszFileDest, NULL);
- break;
- case 3:
- mir_sntprintf(tszFileDest, SIZEOF(tszFileDest), _T("%s\\Icons"), tszRoot);
- CreateDirectory(tszFileDest, NULL);
- break;
- case 4:
- mir_sntprintf(tszFileDest, SIZEOF(tszFileDest), _T("%s\\Others"), tszRoot);
- CreateDirectory(tszFileDest, NULL);
- break;
- case 5:
- mir_sntprintf(tszFileDest, SIZEOF(tszFileDest), _T("%s\\Others"), tszRoot);
- CreateDirectory(tszFileDest, NULL);
- break;
- default:
- lstrcpyn(tszFileDest, tszRoot, SIZEOF(tszFileDest));
- break;
- }//end * switch (todo[i].FileType)
- mir_sntprintf(tszBuff, SIZEOF(tszBuff), _T("%s\\Backups"), tszRoot);
- CreateDirectory(tszBuff, NULL);
- lstrcpyn(tszFileName, todo[i].File.tszDiskPath, SIZEOF(tszFileName));
- mir_sntprintf(todo[i].File.tszDiskPath, SIZEOF(todo[i].File.tszDiskPath), _T("%s\\%s"), tszFileDest, tszFileName);
- UpdatesCount++;
-
- tszExt = &todo[i].File.tszDownloadURL[lstrlen(todo[i].File.tszDownloadURL)-5];
- if (lstrcmp(tszExt, _T(".html")) == 0)
- {
- char* szUrl = mir_t2a(todo[i].File.tszDownloadURL);
- CallService(MS_UTILS_OPENURL, TRUE, (LPARAM)szUrl);
- mir_free(szUrl);
- }
- else
- {
- // download update
- FILEURL *pFileUrl = &todo[i].File;
- PopupDataText temp;
- temp.Title = TranslateT("Pack Updater");
- if (todo[i].FileType == 1)
- temp.Text = TranslateT("Downloading pack updates...");
- else
- temp.Text = TranslateT("Downloading update...");
- DlgDownloadProc(pFileUrl, temp);
- if (!DlgDld)
- {
- if (UpdatesCount)
- UpdatesCount--;
- continue;
- }
- }
- // Save last version
- //перенести сюда
- //DBWriteContactSettingTString(NULL, MODNAME, _T2A(ffd.cFileName), todo[i].newhash);
-
- //lstrcpyn(todo[i].tszCurVer, todo[i].tszNewVer, SIZEOF(todo[i].tszCurVer));
- //mir_snprintf(szKey, SIZEOF(szKey), "File_%d_CurrentVersion", todo[i].FileNum);
- //DBWriteContactSettingTString(NULL, MODNAME, szKey, todo[i].tszCurVer);
- arFileType.push_back(todo[i].FileType);
- arFilePath.push_back(todo[i].File.tszDiskPath);
- arFileName.push_back(tszFileName);
- arAdvFolder.push_back(todo[i].tszAdvFolder);
- arExt.push_back(tszExt);
- if (todo[i].FileType == 1)
- i = (int)todo.size();
- }
- }
-
- if (UpdatesCount > 1 && lstrcmp(arExt[0].c_str(), _T(".html")) != 0)
- lstrcpyn(tszBuff, TranslateT("Downloads complete. Start updating? All your data will be saved and Miranda IM will be closed."), SIZEOF(tszBuff));
- else if (UpdatesCount == 1 && lstrcmp(arExt[0].c_str(), _T(".html")) != 0)
- lstrcpyn(tszBuff, TranslateT("Download complete. Start updating? All your data will be saved and Miranda IM will be closed."), SIZEOF(tszBuff));
- if (UpdatesCount > 0 && lstrcmp(arExt[0].c_str(), _T(".html")) != 0)
- {
- INT rc = -1;
- PopupDataText temp;
- temp.Title = TranslateT("Pack Updater");
- temp.Text = tszBuff;
- if (ServiceExists(MS_POPUP_ADDPOPUPEX) && ServiceExists(MS_POPUP_REGISTERACTIONS) && DBGetContactSettingByte(NULL, "PopUp", "ModuleIsEnabled", 1) && DBGetContactSettingByte(NULL,MODNAME, "Popups0", DEFAULT_POPUP_ENABLED) && (DBGetContactSettingDword(NULL, "PopUp", "Actions", 0) & 1))
- rc = DialogBoxParam(hInst, MAKEINTRESOURCE(IDD_POPUPDUMMI), NULL, DlgMsgPop, (LPARAM)&temp);
- else
- rc = MessageBox(NULL, temp.Text, temp.Title, MB_YESNO | MB_ICONQUESTION);
- if (rc == IDYES)
- {
- for (int i = 0; i < UpdatesCount; i++)
- {
- TCHAR* tszUtilRootPlug = NULL;
- TCHAR* tszUtilRootIco = NULL;
- TCHAR* tszUtilRoot = NULL;
-
- switch (arFileType[i])
- {
- case 0:
- break;
- case 1:
- if (Reminder == 2)
- DBWriteContactSettingByte(NULL, MODNAME, "Reminder", 1);
- memset(&si, 0, sizeof(STARTUPINFO));
- memset(&pi, 0, sizeof(PROCESS_INFORMATION));
- si.cb = sizeof(STARTUPINFO);
- CreateProcess(arFilePath[i].c_str(), _T(""), NULL, NULL, FALSE, NULL, NULL, NULL, &si, &pi);
- i = UpdatesCount;
- CallFunctionAsync(ExitMe, 0);
- break;
- case 2:
- tszUtilRootPlug = Utils_ReplaceVarsT(_T("%miranda_path%\\Plugins"));
- if (lstrcmp(arAdvFolder[i].c_str(), _T("")) == 0)
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s"), tszUtilRootPlug, arFileName[i].c_str());
- else
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s\\%s"), tszUtilRootPlug, arAdvFolder[i].c_str(), arFileName[i].c_str());
- mir_sntprintf(tszFilePathBack, SIZEOF(tszFilePathBack), _T("%s\\Backups\\%s"), tszRoot, arFileName[i].c_str());
- MoveFile(tszFilePathDest, tszFilePathBack);
- MoveFile(arFilePath[i].c_str(), tszFilePathDest);
- mir_free(tszUtilRootPlug);
- if (i == UpdatesCount - 1)
- CallFunctionAsync(RestartMe, 0);
- break;
- case 3:
- tszUtilRootIco = Utils_ReplaceVarsT(_T("%miranda_path%\\Icons"));
- if (lstrcmp(arAdvFolder[i].c_str(), _T("")) == 0)
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s"), tszUtilRootIco, arFileName[i].c_str());
- else
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s\\%s"), tszUtilRootIco, arAdvFolder[i].c_str(), arFileName[i].c_str());
- mir_sntprintf(tszFilePathBack, SIZEOF(tszFilePathBack), _T("%s\\Backups\\%s"), tszRoot, arFileName[i].c_str());
- MoveFile(tszFilePathDest, tszFilePathBack);
- MoveFile(arFilePath[i].c_str(), tszFilePathDest);
- mir_free(tszUtilRootIco);
- if (i == UpdatesCount - 1)
- CallFunctionAsync(RestartMe, 0);
- break;
- case 4:
- tszUtilRoot = Utils_ReplaceVarsT(_T("%miranda_path%"));
- if (lstrcmp(arAdvFolder[i].c_str(), _T("")) == 0)
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s"), tszUtilRoot, arFileName[i].c_str());
- else
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s\\%s"), tszUtilRoot, arAdvFolder[i].c_str(), arFileName[i].c_str());
- mir_sntprintf(tszFilePathBack, SIZEOF(tszFilePathBack), _T("%s\\Backups\\%s"), tszRoot, arFileName[i].c_str());
- MoveFile(tszFilePathDest, tszFilePathBack);
- MoveFile(arFilePath[i].c_str(), tszFilePathDest);
- mir_free(tszUtilRoot);
- if (i == UpdatesCount - 1)
- CallFunctionAsync(RestartMe, 0);
- break;
- case 5:
- tszUtilRoot = Utils_ReplaceVarsT(_T("%miranda_path%"));
- if (lstrcmp(arAdvFolder[i].c_str(), _T("")) == 0)
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s"), tszUtilRoot, arFileName[i].c_str());
- else
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s\\%s"), tszUtilRoot, arAdvFolder[i].c_str(), arFileName[i].c_str());
- mir_sntprintf(tszFilePathBack, SIZEOF(tszFilePathBack), _T("%s\\Backups\\%s"), tszRoot, arFileName[i].c_str());
- MoveFile(tszFilePathDest, tszFilePathBack);
- MoveFile(arFilePath[i].c_str(), tszFilePathDest);
- mir_free(tszUtilRoot);
- break;
- }//end* switch (arFileType[i])
- }//end* for (int i = 0; i < UpdatesCount; i++)
- }//end* if (IDYES == MessageBox(NULL, tszBuff, Title, MB_YESNO | MB_ICONQUESTION))
- else
- {//reminder for not installed pack update
- if (Reminder && (UpdatesCount == 1) && (arFileType[0] == 1))
- DBWriteContactSettingByte(NULL, MODNAME, "Reminder", 2);
- mir_sntprintf(tszBuff, SIZEOF(tszBuff), TranslateT("You have chosen not to install the pack update immediately.\nYou can install it manually from this location:\n\n%s"), arFilePath[0].c_str());
- LPCTSTR Title = TranslateT("Pack Updater");
- LPCTSTR Text = tszBuff;
- if (ServiceExists(MS_POPUP_ADDPOPUPEX) && DBGetContactSettingByte(NULL, "PopUp", "ModuleIsEnabled", 1) && DBGetContactSettingByte(NULL, MODNAME, "Popups2", DEFAULT_POPUP_ENABLED))
- {
- Number = 2;
- show_popup(0, Title, Text, Number, 0);
- }
- else if (DBGetContactSettingByte(NULL, MODNAME, "Popups2M", DEFAULT_MESSAGE_ENABLED))
- MessageBox(NULL, Text, Title, MB_ICONINFORMATION);
- }
- }//end* if (UpdatesCount > 0)
-
- EndDialog(hDlg, IDOK);
- return TRUE;
- }
- case IDCANCEL:
- {
- SetWindowLongPtr(hDlg, GWLP_USERDATA, 0);
- Utils_SaveWindowPosition(hDlg, NULL, MODNAME, "ConfirmWindow");
- EndDialog(hDlg, IDCANCEL);
- return TRUE;
- }
- case IDC_INFO:
- {
- int sel = ListView_GetSelectionMark(hwndList);
- vector<FILEINFO> &todo = *(vector<FILEINFO> *)GetWindowLongPtr(hDlg, GWLP_USERDATA);
- char* szUrl = mir_t2a(todo[sel].tszInfoURL);
- CallService(MS_UTILS_OPENURL, TRUE, (LPARAM)szUrl);
- mir_free(szUrl);
- break;
- }
- }
- }
- break;
- }
- }
- return FALSE;
-}
-
-INT_PTR CALLBACK DlgMsgPop(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
-{
- switch (uMsg)
- {
- case WM_INITDIALOG:
- {
- PopupDataText *temp = (PopupDataText*)lParam;
- Number = 0;
- show_popup(hDlg, temp->Title, temp->Text, Number, 1);
- return TRUE;
- } // end* WM_INITDIALOG:
- } // end* switch (uMsg)
- ShowWindow(hDlg, SW_HIDE);
- return FALSE;
-} \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Src/Notifications.h b/plugins/PackUpdater_new/Src/Notifications.h
deleted file mode 100644
index 09bc77a810..0000000000
--- a/plugins/PackUpdater_new/Src/Notifications.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
-Copyright (C) 2010 Mataes
-
-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.
-*/
-
-#define POPUPS 4
-
-//=== Objects =====
-//This one is used to easily tie status id, icon, text...
-typedef struct
-{
- int ID;
- int Icon;
- COLORREF colorBack;
- COLORREF colorText;
-} aPopups;
-
-typedef struct _MSGPOPUPDATA
-{
- POPUPACTION pa[4];
- HWND hDialog;
-}
-MSGPOPUPDATA, *LPMSGPOPUPDATA;
-
-#define DEFAULT_POPUP_LCLICK 1
-#define DEFAULT_POPUP_RCLICK 0
-#define DEFAULT_POPUP_ENABLED 1
-#define DEFAULT_MESSAGE_ENABLED 1
-#define DEFAULT_TIMEOUT_VALUE 0
-
-#define COLOR_BG_FIRSTDEFAULT RGB(173,206,247)
-#define COLOR_BG_SECONDDEFAULT RGB(255,189,189)
-#define COLOR_TX_DEFAULT RGB(0,0,0)
-
-#define byCOLOR_OWN 0x1
-#define byCOLOR_WINDOWS 0x2
-#define byCOLOR_POPUP 0x3
-#define DEFAULT_COLORS byCOLOR_POPUP
-
-// Actions on popup click
-#define PCA_CLOSEPOPUP 0 // close popup
-#define PCA_DONOTHING 1 // do nothing
-
-//===== Options flags
-typedef struct tagMYOPTIONS {
- BYTE DefColors;
- BYTE LeftClickAction;
- BYTE RightClickAction;
- int Timeout;
-} MYOPTIONS;
-
-static struct {
- TCHAR *Text;
- int Action;
-} PopupActions[] = {
- _T("Close popup"), PCA_CLOSEPOPUP,
- _T("Do nothing"), PCA_DONOTHING
-};
diff --git a/plugins/PackUpdater_new/Src/Options.cpp b/plugins/PackUpdater_new/Src/Options.cpp
deleted file mode 100644
index 5b0be1b730..0000000000
--- a/plugins/PackUpdater_new/Src/Options.cpp
+++ /dev/null
@@ -1,493 +0,0 @@
-/*
-Copyright (C) 2010 Mataes
-
-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"
-
-WNDPROC g_pOldProc;
-
-LRESULT CALLBACK MyEditProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
-{
- switch (message)
- {
- case WM_KEYDOWN:
- SendMessage(GetParent(GetParent(hwnd)), PSM_CHANGED, 0, 0);
- break;
- }
- return CallWindowProc (g_pOldProc, hwnd, message, wParam, lParam);
-}
-
-INT_PTR CALLBACK UpdateNotifyOptsProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam)
-{
- WORD i = 0;
- char str[20] = {0};
- switch (msg)
- {
- case WM_INITDIALOG:
- {
- TranslateDialogDefault(hwndDlg);
- CheckDlgButton(hwndDlg, IDC_UPDATEONSTARTUP, (int)UpdateOnStartup);
- CheckDlgButton(hwndDlg, IDC_ONLYONCEADAY, (int)OnlyOnceADay);
- EnableWindow(GetDlgItem(hwndDlg, IDC_ONLYONCEADAY), UpdateOnStartup);
- CheckDlgButton(hwndDlg, IDC_UPDATEONPERIOD, (int)UpdateOnPeriod);
- EnableWindow(GetDlgItem(hwndDlg, IDC_PERIOD), UpdateOnPeriod);
- EnableWindow(GetDlgItem(hwndDlg, IDC_PERIODSPIN), UpdateOnPeriod);
- EnableWindow(GetDlgItem(hwndDlg, IDC_PERIODMEASURE), UpdateOnPeriod);
-
- SendDlgItemMessage(hwndDlg, IDC_PERIODSPIN, UDM_SETRANGE, 0, MAKELONG(99, 1));
- SendDlgItemMessage(hwndDlg, IDC_PERIODSPIN, UDM_SETPOS, 0, (LPARAM)Period);
-
- Edit_LimitText(GetDlgItem(hwndDlg, IDC_PERIOD), 2);
- g_pOldProc = (WNDPROC)SetWindowLongPtr(GetDlgItem(hwndDlg, IDC_PERIOD), GWLP_WNDPROC, (LONG)MyEditProc);
-
- ComboBox_InsertString(GetDlgItem(hwndDlg, IDC_PERIODMEASURE), 0, TranslateT("hours"));
- ComboBox_InsertString(GetDlgItem(hwndDlg, IDC_PERIODMEASURE), 1, TranslateT("days"));
- ComboBox_SetCurSel(GetDlgItem(hwndDlg, IDC_PERIODMEASURE), PeriodMeasure);
-
- CheckDlgButton(hwndDlg, IDC_REMINDER, (int)Reminder);
- if (ServiceExists(MS_POPUP_ADDPOPUP))
- {
- ShowWindow(GetDlgItem(hwndDlg, IDC_NOTIFY2), SW_HIDE);
- ShowWindow(GetDlgItem(hwndDlg, IDC_MSG_BOXES2), SW_HIDE);
- ShowWindow(GetDlgItem(hwndDlg, IDC_ERRORS2), SW_HIDE);
- ShowWindow(GetDlgItem(hwndDlg, IDC_INFO_MESSAGES2), SW_HIDE);
- ShowWindow(GetDlgItem(hwndDlg, IDC_PROGR_DLG2), SW_HIDE);
- }
- else
- {
- for (i = 1; i < POPUPS; i++)
- {
- mir_snprintf(str, SIZEOF(str), "Popups%dM", i);
- CheckDlgButton(hwndDlg, (i+1029), (DBGetContactSettingByte(NULL, MODNAME, str, DEFAULT_MESSAGE_ENABLED)) ? BST_CHECKED: BST_UNCHECKED);
- }
- }
- DBVARIANT dbVar = {0};
- if (!DBGetContactSettingTString(NULL, MODNAME, "UpdateURL", &dbVar))
- SetDlgItemText(hwndDlg, IDC_UPDATE_URL, dbVar.ptszVal);
- else
- {
- SetDlgItemText(hwndDlg, IDC_UPDATE_URL, _T(DEFAULT_UPDATE_URL));
- DBWriteContactSettingTString(NULL, MODNAME, "UpdateURL", _T(DEFAULT_UPDATE_URL));
- }
- DBFreeVariant(&dbVar);
- return TRUE;
- }
-
- case WM_COMMAND:
- {
- switch (LOWORD(wParam))
- {
- case IDC_UPDATEONSTARTUP:
- {
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
- EnableWindow(GetDlgItem(hwndDlg, IDC_ONLYONCEADAY), IsDlgButtonChecked(hwndDlg, IDC_UPDATEONSTARTUP));
- }
- break;
- case IDC_ONLYONCEADAY:
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
- break;
- case IDC_UPDATEONPERIOD:
- {
- BOOL value = IsDlgButtonChecked(hwndDlg, IDC_UPDATEONPERIOD);
- EnableWindow(GetDlgItem(hwndDlg, IDC_PERIOD), value);
- EnableWindow(GetDlgItem(hwndDlg, IDC_PERIODSPIN), value);
- EnableWindow(GetDlgItem(hwndDlg, IDC_PERIODMEASURE), value);
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
- }
- break;
- case IDC_PERIODMEASURE:
- if (HIWORD(wParam) == CBN_SELCHANGE)
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
- break;
- case IDC_REMINDER:
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
- break;
- case IDC_LINK_HOTKEY:
- {
- OPENOPTIONSDIALOG ood = {0};
- ood.cbSize = sizeof(ood);
- ood.pszGroup = "Customize";
- ood.pszPage = "Hotkeys";
- CallService( MS_OPT_OPENOPTIONS, 0, (LPARAM)&ood );
- return (true);
- }
- case IDC_MSG_BOXES2:
- case IDC_ERRORS2:
- case IDC_INFO_MESSAGES2:
- case IDC_PROGR_DLG2:
- case IDC_UPDATE_URL:
- if ((HIWORD(wParam) == BN_CLICKED || HIWORD(wParam) == EN_CHANGE) && (HWND)lParam == GetFocus())
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
- break;
- }
- break;
- }
- case WM_NOTIFY:
- {
- NMHDR *hdr = (NMHDR *)lParam;
- if(hdr && hdr->code == UDN_DELTAPOS)
- {
- SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0);
- }
- if (hdr && hdr->code == PSN_APPLY)
- {
- UpdateOnStartup = IsDlgButtonChecked(hwndDlg, IDC_UPDATEONSTARTUP);
- OnlyOnceADay = IsDlgButtonChecked(hwndDlg, IDC_ONLYONCEADAY);
-
- UpdateOnPeriod = IsDlgButtonChecked(hwndDlg, IDC_UPDATEONPERIOD);
-
- char buffer[3] = {0};
- Edit_GetText(GetDlgItem(hwndDlg, IDC_PERIOD), (LPWSTR)&buffer, 2);
- Period = atoi(buffer);
-
- PeriodMeasure = ComboBox_GetCurSel(GetDlgItem(hwndDlg, IDC_PERIODMEASURE));
-
- InitTimer();
-
- DBWriteContactSettingByte(NULL, MODNAME, "UpdateOnStartup", UpdateOnStartup);
- DBWriteContactSettingByte(NULL, MODNAME, "OnlyOnceADay", OnlyOnceADay);
- DBWriteContactSettingByte(NULL, MODNAME, "UpdateOnPeriod", UpdateOnPeriod);
- DBWriteContactSettingDword(NULL, MODNAME, "Period", Period);
- DBWriteContactSettingByte(NULL, MODNAME, "PeriodMeasure", PeriodMeasure);
- Reminder = IsDlgButtonChecked(hwndDlg, IDC_REMINDER);
- DBWriteContactSettingByte(NULL, MODNAME, "Reminder", Reminder);
- if (!ServiceExists(MS_POPUP_ADDPOPUP))
- {
- for (i = 1; i < POPUPS; i++)
- {
- mir_snprintf(str, SIZEOF(str), "Popups%dM", i);
- DBWriteContactSettingByte(NULL, MODNAME, str, (BYTE)(IsDlgButtonChecked(hwndDlg, (i+1029))));
- }
- }
- TCHAR buf[MAX_PATH];
- GetDlgItemText(hwndDlg, IDC_UPDATE_URL, buf, SIZEOF(buf));
- DBWriteContactSettingTString(NULL, MODNAME, "UpdateURL", buf);
- }
- break;
- }
- }//end* switch (msg)
- return FALSE;
-}
-
-INT_PTR CALLBACK DlgPopUpOpts(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam)
-{
- WORD i = 0;
- char str[20] = {0}, str2[20] = {0};
-
- switch (msg)
- {
- case WM_INITDIALOG:
- {
- TranslateDialogDefault(hdlg);
- //Colors
- if (MyOptions.DefColors == byCOLOR_OWN)
- {
- CheckDlgButton(hdlg, IDC_USEOWNCOLORS, BST_CHECKED);
- CheckDlgButton(hdlg, IDC_USEPOPUPCOLORS, BST_UNCHECKED);
- CheckDlgButton(hdlg, IDC_USEWINCOLORS, BST_UNCHECKED);
- }
- if (MyOptions.DefColors == byCOLOR_WINDOWS)
- {
- CheckDlgButton(hdlg, IDC_USEOWNCOLORS, BST_UNCHECKED);
- CheckDlgButton(hdlg, IDC_USEPOPUPCOLORS, BST_UNCHECKED);
- CheckDlgButton(hdlg, IDC_USEWINCOLORS, BST_CHECKED);
- }
- if (MyOptions.DefColors == byCOLOR_POPUP)
- {
- CheckDlgButton(hdlg, IDC_USEOWNCOLORS, BST_UNCHECKED);
- CheckDlgButton(hdlg, IDC_USEPOPUPCOLORS, BST_CHECKED);
- CheckDlgButton(hdlg, IDC_USEWINCOLORS, BST_UNCHECKED);
- }
- SendDlgItemMessage(hdlg, (42071), CPM_SETCOLOUR, 0, PopupsList[0].colorBack);
- SendDlgItemMessage(hdlg, (41071), CPM_SETCOLOUR, 0, PopupsList[0].colorText);
- for (i = 1; i < POPUPS; i++)
- {
- SendDlgItemMessage(hdlg, (i+42071), CPM_SETCOLOUR, 0, PopupsList[i].colorBack);
- SendDlgItemMessage(hdlg, (i+41071), CPM_SETCOLOUR, 0, PopupsList[i].colorText);
- EnableWindow(GetDlgItem(hdlg, (i+42071)), (MyOptions.DefColors == byCOLOR_OWN));
- EnableWindow(GetDlgItem(hdlg, (i+41071)), (MyOptions.DefColors == byCOLOR_OWN));
- }
- //Timeout
- SendDlgItemMessage(hdlg, IDC_TIMEOUT_VALUE, EM_LIMITTEXT, 4, 0);
- SendDlgItemMessage(hdlg, IDC_TIMEOUT_VALUE_SPIN, UDM_SETRANGE32, -1, 9999);
- SetDlgItemInt(hdlg, IDC_TIMEOUT_VALUE, MyOptions.Timeout, TRUE);
- //Mouse actions
- for (i = 0; i < SIZEOF(PopupActions); i++)
- {
- SendMessage(GetDlgItem(hdlg, IDC_LC), CB_SETITEMDATA, SendMessage(GetDlgItem(hdlg, IDC_LC), CB_ADDSTRING, 0, (LPARAM)TranslateTS(PopupActions[i].Text)), PopupActions[i].Action);
- SendMessage(GetDlgItem(hdlg, IDC_RC), CB_SETITEMDATA, SendMessage(GetDlgItem(hdlg, IDC_RC), CB_ADDSTRING, 0, (LPARAM)TranslateTS(PopupActions[i].Text)), PopupActions[i].Action);
- }
- SendDlgItemMessage(hdlg, IDC_LC, CB_SETCURSEL, MyOptions.LeftClickAction, 0);
- SendDlgItemMessage(hdlg, IDC_RC, CB_SETCURSEL, MyOptions.RightClickAction, 0);
- //Popups nitified
- for (i = 0; i < POPUPS; i++)
- {
- mir_snprintf(str, SIZEOF(str), "Popups%d", i);
- mir_snprintf(str2, SIZEOF(str2), "Popups%dM", i);
- CheckDlgButton(hdlg, (i+40071), (DBGetContactSettingByte(NULL, MODNAME, str, DEFAULT_POPUP_ENABLED)) ? BST_CHECKED: BST_UNCHECKED);
- CheckDlgButton(hdlg, (i+1024), (DBGetContactSettingByte(NULL, MODNAME, str2, DEFAULT_MESSAGE_ENABLED)) ? BST_CHECKED: BST_UNCHECKED);
- if (IsDlgButtonChecked(hdlg, (i+40071)))
- EnableWindow(GetDlgItem(hdlg, (i+1024)), FALSE);
- else if (i > 0)
- EnableWindow(GetDlgItem(hdlg, (i+1024)), TRUE);
- }
- if (!(DBGetContactSettingDword(NULL, "PopUp", "Actions", 0) & 1) || !ServiceExists(MS_POPUP_REGISTERACTIONS))
- {
- EnableWindow(GetDlgItem(hdlg, (40071)), FALSE);
- EnableWindow(GetDlgItem(hdlg, (41071)), FALSE);
- EnableWindow(GetDlgItem(hdlg, (42071)), FALSE);
- }
- else
- {
- EnableWindow(GetDlgItem(hdlg, (40071)), TRUE);
- EnableWindow(GetDlgItem(hdlg, (41071)), (MyOptions.DefColors == byCOLOR_OWN));
- EnableWindow(GetDlgItem(hdlg, (42071)), (MyOptions.DefColors == byCOLOR_OWN));
- }
- return TRUE;
- }
- case WM_SHOWWINDOW:
- if (!(DBGetContactSettingDword(NULL, "PopUp", "Actions", 0) & 1) || !ServiceExists(MS_POPUP_REGISTERACTIONS))
- {
- EnableWindow(GetDlgItem(hdlg, (40071)), FALSE);
- EnableWindow(GetDlgItem(hdlg, (41071)), FALSE);
- EnableWindow(GetDlgItem(hdlg, (42071)), FALSE);
- }
- else
- {
- EnableWindow(GetDlgItem(hdlg, (40071)), TRUE);
- EnableWindow(GetDlgItem(hdlg, (41071)), (MyOptions.DefColors == byCOLOR_OWN));
- EnableWindow(GetDlgItem(hdlg, (42071)), (MyOptions.DefColors == byCOLOR_OWN));
- }
- return TRUE;
- case WM_COMMAND:
- {
- WORD idCtrl = LOWORD(wParam), wNotifyCode = HIWORD(wParam);
- if (wNotifyCode == CPN_COLOURCHANGED)
- {
- if(idCtrl > 40070)
- {
- //It's a color picker change. idCtrl is the control id.
- COLORREF color = SendDlgItemMessage(hdlg, idCtrl, CPM_GETCOLOUR, 0, 0);
- int ctlID = idCtrl;
- if ((ctlID > 41070) && (ctlID < 42070)) //It's 41071 or above => Text color.
- PopupsList[ctlID-41071].colorText = color;
- else if (ctlID > 42070)//Background color.
- PopupsList[ctlID-42071].colorBack = color;
- SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
- return TRUE;
- }
- }
- if (wNotifyCode == CBN_SELCHANGE)
- {
- if (idCtrl == IDC_LC)
- {
- MyOptions.LeftClickAction = (BYTE)SendDlgItemMessage(hdlg, IDC_LC, CB_GETCURSEL, 0, 0);
- }
- else if(idCtrl == IDC_RC)
- {
- MyOptions.RightClickAction = (BYTE)SendDlgItemMessage(hdlg, IDC_RC, CB_GETCURSEL, 0, 0);
- }
- SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
- return TRUE;
- }
- switch(idCtrl)
- {
- case IDC_USEOWNCOLORS:
- {
- BOOL bEnableOthers = FALSE;
- if (wNotifyCode != BN_CLICKED)
- break;
- MyOptions.DefColors = byCOLOR_OWN;
- bEnableOthers = TRUE;
- if (!(DBGetContactSettingDword(NULL, "PopUp", "Actions", 0) & 1) || !ServiceExists(MS_POPUP_REGISTERACTIONS))
- {
- EnableWindow(GetDlgItem(hdlg, (41071)), FALSE);
- EnableWindow(GetDlgItem(hdlg, (42071)), FALSE);
- }
- else
- {
- EnableWindow(GetDlgItem(hdlg, (41071)), bEnableOthers);
- EnableWindow(GetDlgItem(hdlg, (42071)), bEnableOthers);
- }
- for (i = 1; i < POPUPS; i++)
- {
- EnableWindow(GetDlgItem(hdlg, (i+42071)), bEnableOthers); //Background
- EnableWindow(GetDlgItem(hdlg, (i+41071)), bEnableOthers); //Text
- }
- SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
- break;
- }
- case IDC_USEWINCOLORS:
- {
- BOOL bEnableOthers = FALSE;
- if (wNotifyCode != BN_CLICKED)
- break;
- //Use Windows colors
- MyOptions.DefColors = byCOLOR_WINDOWS;
- bEnableOthers = FALSE;
- for (i = 0; i < POPUPS; i++)
- {
- EnableWindow(GetDlgItem(hdlg, (i+42071)), bEnableOthers); //Background
- EnableWindow(GetDlgItem(hdlg, (i+41071)), bEnableOthers); //Text
- }
- SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
- break;
- }
- case IDC_USEPOPUPCOLORS:
- {
- BOOL bEnableOthers = FALSE;
- if (wNotifyCode != BN_CLICKED)
- break;
- //Use Popup colors
- MyOptions.DefColors = byCOLOR_POPUP;
- bEnableOthers = FALSE;
- for (i = 0; i < POPUPS; i++)
- {
- EnableWindow(GetDlgItem(hdlg, (i+42071)), bEnableOthers); //Background
- EnableWindow(GetDlgItem(hdlg, (i+41071)), bEnableOthers); //Text
- }
- SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
- break;
- }
- case IDC_PREVIEW:
- {//Declarations and initializations
- LPCTSTR Title = TranslateT("Pack Updater");
- LPCTSTR Text = TranslateT("Test");
- for (int i = 0; i < POPUPS; i++)
- {
- if ((!IsDlgButtonChecked(hdlg, (i+40071))) || (!IsWindowEnabled(GetDlgItem(hdlg, (i+40071)))))
- continue;
- show_popup(0, Title, Text, i, 0);
- }
- break;
- }
- case IDC_TIMEOUT_VALUE:
- case IDC_MSG_BOXES:
- case IDC_ERRORS:
- {
- if (!IsDlgButtonChecked(hdlg, IDC_ERRORS))
- EnableWindow(GetDlgItem(hdlg, IDC_ERRORS_MSG), TRUE);
- else
- EnableWindow(GetDlgItem(hdlg, IDC_ERRORS_MSG), FALSE);
- if ((HIWORD(wParam) == BN_CLICKED || HIWORD(wParam) == EN_CHANGE) && (HWND)lParam == GetFocus())
- SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
- break;
- }
- case IDC_INFO_MESSAGES:
- {
- if (!IsDlgButtonChecked(hdlg, IDC_INFO_MESSAGES))
- EnableWindow(GetDlgItem(hdlg, IDC_INFO_MESSAGES_MSG), TRUE);
- else
- EnableWindow(GetDlgItem(hdlg, IDC_INFO_MESSAGES_MSG), FALSE);
- if ((HIWORD(wParam) == BN_CLICKED || HIWORD(wParam) == EN_CHANGE) && (HWND)lParam == GetFocus())
- SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
- break;
- }
- case IDC_PROGR_DLG:
- {
- if (!IsDlgButtonChecked(hdlg, IDC_PROGR_DLG))
- EnableWindow(GetDlgItem(hdlg, IDC_PROGR_DLG_MSG), TRUE);
- else
- EnableWindow(GetDlgItem(hdlg, IDC_PROGR_DLG_MSG), FALSE);
- if ((HIWORD(wParam) == BN_CLICKED || HIWORD(wParam) == EN_CHANGE) && (HWND)lParam == GetFocus())
- SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
- break;
- }
- case IDC_MSG_BOXES_MSG:
- case IDC_ERRORS_MSG:
- case IDC_INFO_MESSAGES_MSG:
- case IDC_PROGR_DLG_MSG:
- if ((HIWORD(wParam) == BN_CLICKED || HIWORD(wParam) == EN_CHANGE) && (HWND)lParam == GetFocus())
- SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
- break;
- }//end* switch(idCtrl)
- break;
- }//end* case WM_COMMAND:
- case WM_NOTIFY:
- switch (((LPNMHDR)lParam)->code)
- {
- case PSN_RESET:
- {
- //Restore the options stored in memory.
- LoadOptions();
- InitPopupList();
- return TRUE;
- }
- case PSN_APPLY:
- {
- //Text color
- char szSetting[20] = {0};
- DWORD ctlColor = 0;
- for (i = 0; i <= POPUPS-1; i++)
- {
- ctlColor = SendDlgItemMessage(hdlg, (i+42071), CPM_GETCOLOUR, 0, 0);
- PopupsList[i].colorBack = ctlColor;
- mir_snprintf(szSetting, SIZEOF(szSetting), "Popups%iBg", i);
- DBWriteContactSettingDword(NULL, MODNAME, szSetting, ctlColor);
- ctlColor = SendDlgItemMessage(hdlg, (i+41071), CPM_GETCOLOUR, 0, 0);
- PopupsList[i].colorText = ctlColor;
- mir_snprintf(szSetting, SIZEOF(szSetting), "Popups%iTx", i);
- DBWriteContactSettingDword(NULL, MODNAME, szSetting, ctlColor);
- }
- //Colors
- DBWriteContactSettingByte(NULL, MODNAME, "DefColors", MyOptions.DefColors);
- //Timeout
- MyOptions.Timeout = GetDlgItemInt(hdlg, IDC_TIMEOUT_VALUE, 0, TRUE);
- DBWriteContactSettingDword(NULL, MODNAME, "Timeout", MyOptions.Timeout);
- //Left mouse click
- DBWriteContactSettingByte(NULL, MODNAME, "LeftClickAction", MyOptions.LeftClickAction);
- //Right mouse click
- DBWriteContactSettingByte(NULL, MODNAME, "RightClickAction", MyOptions.RightClickAction);
- //Notified popups
- for (i = 0; i < POPUPS; i++)
- {
- mir_snprintf(str, SIZEOF(str), "Popups%d", i);
- DBWriteContactSettingByte(NULL, MODNAME, str, (BYTE)(IsDlgButtonChecked(hdlg, (i+40071))));
- mir_snprintf(str2, SIZEOF(str2), "Popups%dM", i);
- DBWriteContactSettingByte(NULL, MODNAME, str2, (BYTE)(IsDlgButtonChecked(hdlg, (i+1024))));
- }
- return TRUE;
- } //case PSN_APPLY
- } // switch code
- break; //End WM_NOTIFY
- } //switch message
-return FALSE;
-}
-
-int OptInit(WPARAM wParam, LPARAM lParam)
-{
- OPTIONSDIALOGPAGE odp = {0};
- odp.cbSize = sizeof(odp);
- odp.position = 100000000;
- odp.hInstance = hInst;
- odp.flags = ODPF_BOLDGROUPS | ODPF_TCHAR;
- odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPT_UPDATENOTIFY);
- odp.ptszGroup = LPGENT("Events");
- odp.ptszTitle = LPGENT("Pack Updater");
- odp.pfnDlgProc = UpdateNotifyOptsProc;
- Options_AddPage(wParam, &odp);
-
- if (ServiceExists(MS_POPUP_ADDPOPUP)) {
- odp.pszTemplate = MAKEINTRESOURCEA(IDD_POPUP);
- odp.ptszGroup = LPGENT("PopUps");
- odp.ptszTitle = LPGENT("Pack Updater");
- odp.pfnDlgProc = DlgPopUpOpts;
- Options_AddPage(wParam, &odp);
- }
- return 0;
-} \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Src/PackUpdater.cpp b/plugins/PackUpdater_new/Src/PackUpdater.cpp
deleted file mode 100644
index 1d58853c1c..0000000000
--- a/plugins/PackUpdater_new/Src/PackUpdater.cpp
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
-Copyright (C) 2010 Mataes
-
-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"
-
-HINSTANCE hInst = NULL;
-
-HANDLE hOptHook = NULL, hLoadHook = NULL, hPackUpdaterFolder = NULL, hCheckUpdates = NULL, hEmptyFolder = NULL, hOnPreShutdown = NULL;
-TCHAR tszRoot[MAX_PATH] = {0};
-int hLangpack;
-
-PLUGININFOEX pluginInfoEx = {
- sizeof(PLUGININFOEX),
- __PLUGIN_NAME,
- PLUGIN_MAKE_VERSION(__MAJOR_VERSION, __MINOR_VERSION, __RELEASE_NUM, __BUILD_NUM),
- __DESCRIPTION,
- __AUTHOR,
- __AUTHOREMAIL,
- __COPYRIGHT,
- __AUTHORWEB,
- UNICODE_AWARE,
- //{29517BE5-779A-48e5-8950-CB4DE1D43172}
- {0x29517be5, 0x779a, 0x48e5, {0x89, 0x50, 0xcb, 0x4d, 0xe1, 0xd4, 0x31, 0x72}}
-};
-
-BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
-{
- hInst = hinstDLL;
- return TRUE;
-}
-
-extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD mirandaVersion)
-{
- return &pluginInfoEx;
-}
-
-extern "C" __declspec(dllexport) int Load(void)
-{
- CLISTMENUITEM mi;
-
- mir_getLP(&pluginInfoEx);
- TCHAR* tszFolder = Utils_ReplaceVarsT(_T("%miranda_userdata%\\"DEFAULT_UPDATES_FOLDER));
- lstrcpyn(tszRoot, tszFolder, SIZEOF(tszRoot));
- if (ServiceExists(MS_FOLDERS_REGISTER_PATH))
- {
- hPackUpdaterFolder = FoldersRegisterCustomPathT(MODULEA, "Pack Updater", MIRANDA_USERDATAT _T("\\")DEFAULT_UPDATES_FOLDER);
- FoldersGetCustomPathT(hPackUpdaterFolder, tszRoot, MAX_PATH, _T(""));
- }
- mir_free(tszFolder);
- LoadOptions();
- InitPopupList();
- NetlibInit();
- IcoLibInit();
-
- // Add cheking update menu item
- hCheckUpdates = CreateServiceFunction(MODNAME"/CheckUpdates", MenuCommand);
- ZeroMemory(&mi, sizeof(mi));
- mi.cbSize = sizeof(mi);
- mi.position = -0x7FFFFFFF;
- mi.flags = CMIF_TCHAR;
- mi.hIcon = (HICON)CallService(MS_SKIN2_GETICON, 0, (LPARAM)"check_update");
- mi.ptszName = _T("Check for pack updates");
- mi.pszService = MODNAME"/CheckUpdates";
- Menu_AddMainMenuItem(&mi);
- // Add empty updates folder menu item
- hEmptyFolder = CreateServiceFunction(MODNAME"/EmptyFolder", EmptyFolder);
- ZeroMemory(&mi, sizeof(mi));
- mi.cbSize = sizeof(mi);
- mi.position = -0x7FFFFFFF;
- mi.flags = CMIF_TCHAR;
- mi.hIcon = (HICON)CallService(MS_SKIN2_GETICON, 0, (LPARAM)"empty_folder");
- mi.ptszName = _T("Clear pack updates folder");
- mi.pszService = MODNAME"/EmptyFolder";
- Menu_AddMainMenuItem(&mi);
-
- // Add options hook
- hOptHook = HookEvent(ME_OPT_INITIALISE, OptInit);
- hLoadHook = HookEvent(ME_SYSTEM_MODULESLOADED, ModulesLoaded);
- hOnPreShutdown = HookEvent(ME_SYSTEM_PRESHUTDOWN, OnPreShutdown);
-
- return 0;
-}
-
-extern "C" __declspec(dllexport) int Unload(void)
-{
- if (CheckThread)
- CheckThread = NULL;
- NetlibUnInit();
- DestroyServiceFunction(hCheckUpdates);
- DestroyServiceFunction(hEmptyFolder);
- return 0;
-} \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Src/Utils.cpp b/plugins/PackUpdater_new/Src/Utils.cpp
deleted file mode 100644
index 0174961e0e..0000000000
--- a/plugins/PackUpdater_new/Src/Utils.cpp
+++ /dev/null
@@ -1,497 +0,0 @@
-/*
-Copyright (C) 2010 Mataes
-
-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"
-
-//vector<FILEINFO> Files;
-BOOL DlgDld;
-INT /*CurrentFile = 0,*/ Number = 0;
-BYTE Reminder, AutoUpdate;
-BYTE UpdateOnStartup, UpdateOnPeriod, OnlyOnceADay, PeriodMeasure;
-INT Period;
-TCHAR tszDialogMsg[2048] = {0};
-FILEINFO* pFileInfo = NULL;
-//FILEURL* pFileUrl = NULL;
-HANDLE CheckThread = NULL, hNetlibUser = NULL;
-MYOPTIONS MyOptions = {0};
-aPopups PopupsList[POPUPS];
-
-PackUpdaterIconList iconList[] =
-{
- { "check_update", _T("Check for pack updates"), IDI_MENU },
- { "empty_folder", _T("Clear pack updates folder"), IDI_DELETE },
- { "btn_ok", _T("'Yes' Button"), IDI_OK },
- { "btn_cancel", _T("'No' Button"), IDI_CANCEL }
-};
-
-VOID IcoLibInit()
-{
- SKINICONDESC sid;
- TCHAR destfile[MAX_PATH];
-
- GetModuleFileName(hInst, destfile, MAX_PATH);
-
- sid.cbSize = sizeof(sid);
- sid.flags = SIDF_ALL_TCHAR;
- sid.cx = sid.cy = 16;
- sid.ptszDefaultFile = destfile;
- sid.ptszSection = MODULE;
-
- for (int i = 0; i < SIZEOF(iconList); i++)
- {
- sid.pszName = iconList[i].szIconName;
- sid.ptszDescription = iconList[i].tszDescr;
- sid.iDefaultIndex = -iconList[i].IconID;
- Skin_AddIcon(&sid);
- }
-}
-
-BOOL NetlibInit()
-{
- NETLIBUSER nlu = {0};
- nlu.cbSize = sizeof(nlu);
- nlu.flags = NUF_OUTGOING | NUF_INCOMING | NUF_HTTPCONNS | NUF_TCHAR; // | NUF_HTTPGATEWAY;
- nlu.ptszDescriptiveName = TranslateT("Pack Updater HTTP connection");
- nlu.szSettingsModule = MODNAME;
- hNetlibUser = (HANDLE)CallService(MS_NETLIB_REGISTERUSER, 0, (LPARAM)&nlu);
-
- return hNetlibUser != NULL;
-}
-
-VOID NetlibUnInit()
-{
- Netlib_CloseHandle(hNetlibUser);
- hNetlibUser = NULL;
-}
-
-VOID InitPopupList()
-{
- int index = 0;
- PopupsList[index].ID = index;
- PopupsList[index].Icon = SKINICON_OTHER_MIRANDA;
- PopupsList[index].colorBack = DBGetContactSettingDword(NULL, MODNAME, "Popups0Bg", COLOR_BG_FIRSTDEFAULT);
- PopupsList[index].colorText = DBGetContactSettingDword(NULL, MODNAME, "Popups0Tx", COLOR_TX_DEFAULT);
-
- index = 1;
- PopupsList[index].ID = index;
- PopupsList[index].Icon = SKINICON_OTHER_MIRANDA;
- PopupsList[index].colorBack = DBGetContactSettingDword(NULL, MODNAME, "Popups1Bg", COLOR_BG_SECONDDEFAULT);
- PopupsList[index].colorText = DBGetContactSettingDword(NULL, MODNAME, "Popups1Tx", COLOR_TX_DEFAULT);
-
- index = 2;
- PopupsList[index].ID = index;
- PopupsList[index].Icon = SKINICON_OTHER_MIRANDA;
- PopupsList[index].colorBack = DBGetContactSettingDword(NULL, MODNAME, "Popups2Bg", COLOR_BG_FIRSTDEFAULT);
- PopupsList[index].colorText = DBGetContactSettingDword(NULL, MODNAME, "Popups2Tx", COLOR_TX_DEFAULT);
-
- index = 3;
- PopupsList[index].ID = index;
- PopupsList[index].Icon = SKINICON_OTHER_MIRANDA;
- PopupsList[index].colorBack = DBGetContactSettingDword(NULL, MODNAME, "Popups3Bg", COLOR_BG_SECONDDEFAULT);
- PopupsList[index].colorText = DBGetContactSettingDword(NULL, MODNAME, "Popups3Tx", COLOR_TX_DEFAULT);
-}
-
-VOID LoadOptions()
-{
- MyOptions.DefColors = DBGetContactSettingByte(NULL, MODNAME, "DefColors", DEFAULT_COLORS);
- MyOptions.LeftClickAction= DBGetContactSettingByte(NULL, MODNAME, "LeftClickAction", DEFAULT_POPUP_LCLICK);
- MyOptions.RightClickAction = DBGetContactSettingByte(NULL, MODNAME, "RightClickAction", DEFAULT_POPUP_RCLICK);
- MyOptions.Timeout = DBGetContactSettingDword(NULL, MODNAME, "Timeout", DEFAULT_TIMEOUT_VALUE);
- UpdateOnStartup = DBGetContactSettingByte(NULL, MODNAME, "UpdateOnStartup", DEFAULT_UPDATEONSTARTUP);
- OnlyOnceADay = DBGetContactSettingByte(NULL, MODNAME, "OnlyOnceADay", DEFAULT_ONLYONCEADAY);
- UpdateOnPeriod = DBGetContactSettingByte(NULL, MODNAME, "UpdateOnPeriod", DEFAULT_UPDATEONPERIOD);
- Period = DBGetContactSettingDword(NULL, MODNAME, "Period", DEFAULT_PERIOD);
- PeriodMeasure = DBGetContactSettingByte(NULL, MODNAME, "PeriodMeasure", DEFAULT_PERIODMEASURE);
- Reminder = DBGetContactSettingByte(NULL, MODNAME, "Reminder", DEFAULT_REMINDER);
-}
-
-BOOL DownloadFile(LPCTSTR tszURL, LPCTSTR tszLocal)
-{
- HANDLE hFile = NULL;
- DWORD dwBytes;
-
- NETLIBHTTPREQUEST nlhr = {0};
- nlhr.cbSize = sizeof(nlhr);
- nlhr.requestType = REQUEST_GET;
- nlhr.flags = NLHRF_DUMPASTEXT | NLHRF_HTTP11;
- char* szUrl = mir_t2a(tszURL);
- nlhr.szUrl = szUrl;
- nlhr.headersCount = 4;
- nlhr.headers=(NETLIBHTTPHEADER*)mir_alloc(sizeof(NETLIBHTTPHEADER)*nlhr.headersCount);
- nlhr.headers[0].szName = "User-Agent";
- nlhr.headers[0].szValue = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
- nlhr.headers[1].szName = "Connection";
- nlhr.headers[1].szValue = "close";
- nlhr.headers[2].szName = "Cache-Control";
- nlhr.headers[2].szValue = "no-cache";
- nlhr.headers[3].szName = "Pragma";
- nlhr.headers[3].szValue = "no-cache";
-
- bool ret = false;
- NETLIBHTTPREQUEST* pReply = NULL;
- pReply = (NETLIBHTTPREQUEST*)CallService(MS_NETLIB_HTTPTRANSACTION, (WPARAM)hNetlibUser,(LPARAM)&nlhr);
-
- if (pReply)
- {
- if ((200 == pReply->resultCode) && (pReply->dataLength > 0))
- {
- hFile = CreateFile(tszLocal, GENERIC_READ | GENERIC_WRITE, NULL, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
- WriteFile(hFile, pReply->pData, (DWORD)pReply->dataLength, &dwBytes, NULL);
- ret = true;
- }
- CallService(MS_NETLIB_FREEHTTPREQUESTSTRUCT,0,(LPARAM)pReply);
- }
-
- mir_free(szUrl);
- mir_free(nlhr.headers);
-
- if (hFile)
- CloseHandle(hFile);
- DlgDld = ret;
- return ret;
-}
-
-VOID __stdcall ExitMe(void*)
-{
- CallService("CloseAction", 0, 0);
-}
-
-VOID __stdcall RestartMe(void*)
-{
- CallService(MS_SYSTEM_RESTART, 0, 0);
-}
-
-BOOL Exists(LPCTSTR strName)
-{
- return GetFileAttributes(strName) != INVALID_FILE_ATTRIBUTES;
-}
-
-BOOL IsPluginDisabled(TCHAR* filename)
-{
- char* fname = mir_t2a(filename);
- int res = DBGetContactSettingByte(NULL, "PluginDisable", fname, 0);
- mir_free(fname);
- return res;
-}
-
-/*INT getVer(const TCHAR* verStr)
-{
- INT v1 = 0, v2 = 0, v3 = 0, v4 = 0;
- _stscanf(verStr, _T("%d.%d.%d.%d"), &v1, &v2, &v3, &v4);
- return v1*1000000 + v2*10000 + v3*1000 + v4;
-}*/
-
-static void CheckUpdates(void *)
-{
- TCHAR tszBuff[2048] = {0}, /*tszFileInfo[30] = {0},*/ tszTmpIni[MAX_PATH] = {0};
- char szKey[64] = {0};
- INT upd_ret;
- DBVARIANT dbVar = {0};
- vector<FILEINFO> UpdateFiles;
-
- if (!Exists(tszRoot))
- CreateDirectory(tszRoot, NULL);
- //Files.clear();
- Reminder = DBGetContactSettingByte(NULL, MODNAME, "Reminder", DEFAULT_REMINDER);
-
- // Load files info
- if (DBGetContactSettingTString(NULL, MODNAME, "UpdateURL", &dbVar))// URL is not set
- {
- LPCTSTR Title=TranslateT("Pack Updater");
- LPCTSTR Text = TranslateT("URL for checking updates not found.");
- if (ServiceExists(MS_POPUP_ADDPOPUPEX) && DBGetContactSettingByte(NULL, "PopUp", "ModuleIsEnabled", 1) && DBGetContactSettingByte(NULL, MODNAME, "Popups1", DEFAULT_POPUP_ENABLED))
- {
- Number = 1;
- show_popup(0, Title, Text, Number, 0);
- }
- else if (DBGetContactSettingByte(NULL, MODNAME, "Popups1M", DEFAULT_MESSAGE_ENABLED))
- MessageBox(NULL, Text, Title, MB_ICONSTOP);
- DBFreeVariant(&dbVar);
- CheckThread = NULL;
- return;
- }
-
- // Download version info
- FILEURL *pFileUrl = (FILEURL *)mir_alloc(sizeof(*pFileUrl));
- lstrcpyn(pFileUrl->tszDownloadURL, dbVar.ptszVal, SIZEOF(pFileUrl->tszDownloadURL));
- DBFreeVariant(&dbVar);
- mir_sntprintf(tszBuff, SIZEOF(tszBuff), _T("%s\\tmp.ini"), tszRoot);
- lstrcpyn(pFileUrl->tszDiskPath, tszBuff, SIZEOF(pFileUrl->tszDiskPath));
- lstrcpyn(tszTmpIni, tszBuff, SIZEOF(tszTmpIni));
- PopupDataText temp;
- temp.Title = TranslateT("Pack Updater");
- temp.Text = TranslateT("Downloading version info...");
- DlgDownloadProc(pFileUrl, temp);
- mir_free(pFileUrl);
- if (!DlgDld)
- {
- CheckThread = NULL;
- return;
- }
-
-
- WIN32_FIND_DATA ffd;
- TCHAR *dirname = Utils_ReplaceVarsT(_T("%miranda_path%\\Plugins\\*"));
- HANDLE hFind = INVALID_HANDLE_VALUE;
-
- hFind = FindFirstFile(dirname, &ffd);
- mir_free(dirname);
- while( hFind != INVALID_HANDLE_VALUE )
- {
- if (!(ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) && !lstrcmp(&ffd.cFileName[lstrlen(ffd.cFileName)-4], _T(".dll")))
- {
- TCHAR *plugname = ffd.cFileName;
- FILEINFO FileInfo = {_T(""), _T(""), _T(""), _T(""), _T(""), _T(""), {_T(""), _T("")}};
-
- //dbVar.ptszVal = NULL;
- //mir_snprintf(szKey, SIZEOF(szKey), "File_%d_CurrentVersion", CurrentFile + 1);
- if (!DBGetContactSettingTString(NULL, MODNAME, _T2A(ffd.cFileName), &dbVar))
- {
- //считать хэш файла
- lstrcpyn(FileInfo.curhash, _T(""), SIZEOF(FileInfo.curhash));
- }
- else
- lstrcpyn(FileInfo.curhash, dbVar.ptszVal, SIZEOF(FileInfo.curhash));
- DBFreeVariant(&dbVar);
- //dbVar.ptszVal = NULL;
- //Files.push_back(FileInfo);
-
- // Read version info
- //mir_sntprintf(tszFileInfo, SIZEOF(tszFileInfo), _T("FileInfo_%d"), CurrentFile + 1);
- GetPrivateProfileString(ffd.cFileName, _T("Hash"), _T(""), FileInfo.newhash, SIZEOF(FileInfo.newhash), tszTmpIni);
-
- // Compare versions
- if (lstrcmp(FileInfo.curhash, FileInfo.newhash)) // Yeah, we've got new version.
- {
- GetPrivateProfileString(ffd.cFileName, _T("Message"), _T(""), FileInfo.tszMessage, SIZEOF(FileInfo.tszMessage), tszTmpIni);
- GetPrivateProfileString(ffd.cFileName, _T("DownloadURL"), _T(""), FileInfo.File.tszDownloadURL, SIZEOF(FileInfo.File.tszDownloadURL), tszTmpIni);
- GetPrivateProfileString(ffd.cFileName, _T("AdvFolder"), _T(""), FileInfo.tszAdvFolder, SIZEOF(FileInfo.tszAdvFolder), tszTmpIni);
- GetPrivateProfileString(ffd.cFileName, _T("Descr"), _T(""), FileInfo.tszDescr, SIZEOF(FileInfo.tszDescr), tszTmpIni);
- GetPrivateProfileString(ffd.cFileName, _T("DiskFileName"), _T(""), tszBuff, MAX_PATH, tszTmpIni);
-
- if (_tcsstr(tszBuff, _T("\\"))) //check update name
- {
- LPCTSTR Title = TranslateT("Pack Updater");
- LPCTSTR Text = TranslateT("Name of Update's file is not supported.");
- if (ServiceExists(MS_POPUP_ADDPOPUPEX) && DBGetContactSettingByte(NULL, "PopUp", "ModuleIsEnabled", 1) && DBGetContactSettingByte(NULL, MODNAME, "Popups1", DEFAULT_POPUP_ENABLED))
- {
- Number = 1;
- show_popup(0, Title, Text, Number, 0);
- }
- else if (DBGetContactSettingByte(NULL, MODNAME, "Popups1M", DEFAULT_MESSAGE_ENABLED))
- MessageBox(NULL, Text, Title, MB_ICONINFORMATION);
- continue;
- } // end check update name
- lstrcpyn(FileInfo.File.tszDiskPath, tszBuff, SIZEOF(FileInfo.File.tszDiskPath));
- GetPrivateProfileString(ffd.cFileName, _T("InfoURL"), _T(""), FileInfo.tszInfoURL, SIZEOF(FileInfo.tszInfoURL), tszTmpIni);
- FileInfo.FileType = GetPrivateProfileInt(ffd.cFileName, _T("FileType"), 0, tszTmpIni);
- FileInfo.Force = GetPrivateProfileInt(ffd.cFileName, _T("Force"), 0, tszTmpIni);
- //FileInfo.FileNum = CurrentFile+1;
-
- if (FileInfo.FileType == 2)
- {
- TCHAR pluginFolgerName[MAX_PATH];
- if (!lstrcmp(FileInfo.tszAdvFolder, _T("")))
- mir_sntprintf(tszBuff, SIZEOF(tszBuff), _T("Plugins\\%s"), FileInfo.File.tszDiskPath);
- else
- mir_sntprintf(tszBuff, SIZEOF(tszBuff), _T("Plugins\\%s\\%s"), FileInfo.tszAdvFolder, FileInfo.File.tszDiskPath);
- CallService(MS_UTILS_PATHTOABSOLUTET, (WPARAM)tszBuff, (LPARAM)pluginFolgerName);
- if ((IsPluginDisabled(FileInfo.File.tszDiskPath) || !Exists(pluginFolgerName))) //check if plugin disabled or not exists
- continue;
- }
- TCHAR* tszSysRoot = Utils_ReplaceVarsT(_T("%SystemRoot%"));
- TCHAR* tszProgFiles = Utils_ReplaceVarsT(_T("%ProgramFiles%"));
-
- if (FileInfo.FileType != 1 && !IsUserAnAdmin() && (_tcsstr(tszRoot, tszSysRoot) || _tcsstr(tszRoot, tszProgFiles)))
- {
- LPCTSTR Title = TranslateT("Pack Updater");
- MessageBox(NULL, TranslateT("Update is not possible!\nYou have no Administrator's rights.\nPlease run Miranda IM with Administrator's rights."), Title, MB_ICONINFORMATION);
- DeleteFile(tszTmpIni);
- CheckThread = NULL;
- return;
- } // user have not admin's rights
- else
- {
- //добавить проверку на существование файла
- TCHAR tszFilePathDest[MAX_PATH] = {0};
- TCHAR* tszUtilRootPlug = NULL;
- TCHAR* tszUtilRootIco = NULL;
- TCHAR* tszUtilRoot = NULL;
-
- switch (FileInfo.FileType)
- {
- case 0:
- case 1:
- break;
- case 2:
- tszUtilRootPlug = Utils_ReplaceVarsT(_T("%miranda_path%\\Plugins"));
- if (lstrcmp(FileInfo.tszAdvFolder, _T("")) == 0)
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s"), tszUtilRootPlug, FileInfo.File.tszDiskPath);
- else
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s\\%s"), tszUtilRootPlug, FileInfo.tszAdvFolder, FileInfo.File.tszDiskPath);
- mir_free(tszUtilRootPlug);
- break;
- case 3:
- tszUtilRootIco = Utils_ReplaceVarsT(_T("%miranda_path%\\Icons"));
- if (lstrcmp(FileInfo.tszAdvFolder, _T("")) == 0)
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s"), tszUtilRootIco, FileInfo.File.tszDiskPath);
- else
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s\\%s"), tszUtilRootIco, FileInfo.tszAdvFolder, FileInfo.File.tszDiskPath);
- mir_free(tszUtilRootIco);
- break;
- case 4:
- case 5:
- tszUtilRoot = Utils_ReplaceVarsT(_T("%miranda_path%"));
- if (lstrcmp(FileInfo.tszAdvFolder, _T("")) == 0)
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s"), tszUtilRoot, FileInfo.File.tszDiskPath);
- else
- mir_sntprintf(tszFilePathDest, SIZEOF(tszFilePathDest), _T("%s\\%s\\%s"), tszUtilRoot, FileInfo.tszAdvFolder, FileInfo.File.tszDiskPath);
- mir_free(tszUtilRoot);
- break;
- }//end* switch (Files[CurrentFile].FileType)
-
- if (FileInfo.Force || Exists(tszFilePathDest))
- UpdateFiles.push_back(FileInfo);
- // Save last version
- //убрать отсюда
- DBWriteContactSettingTString(NULL, MODNAME, _T2A(ffd.cFileName), FileInfo.newhash);
- } // user have admin's rights
- mir_free(tszSysRoot);
- mir_free(tszProgFiles);
- } // end compare versions
-
- }
-
- if (!FindNextFile(hFind, &ffd ))
- break;
- }
- FindClose(hFind);
-
-
- // Show dialog
- if (UpdateFiles.size()>0)
- upd_ret = DialogBoxParam(hInst, MAKEINTRESOURCE(IDD_UPDATE), GetDesktopWindow(), DlgUpdate, (LPARAM)&UpdateFiles);
- DeleteFile(tszTmpIni);
- if (upd_ret == IDCANCEL)
- {
- CheckThread = NULL;
- return;
- }
- if (!UpdatesCount && !Silent)
- {
- LPCTSTR Title = TranslateT("Pack Updater");
- LPCTSTR Text = TranslateT("No updates found.");
- if (ServiceExists(MS_POPUP_ADDPOPUPEX) && DBGetContactSettingByte(NULL, "PopUp", "ModuleIsEnabled", 1) && DBGetContactSettingByte(NULL, MODNAME, "Popups2", DEFAULT_POPUP_ENABLED))
- {
- Number = 2;
- show_popup(0, Title, Text, Number, 0);
- }
- else if (DBGetContactSettingByte(NULL, MODNAME, "Popups2M", DEFAULT_MESSAGE_ENABLED))
- MessageBox(NULL, Text, Title, MB_ICONINFORMATION);
- }
- /*if (!FileCount)
- {
- Title = TranslateT("Pack Updater");
- Text = TranslateT("No files for update.");
- if (ServiceExists(MS_POPUP_ADDPOPUPEX) && DBGetContactSettingByte(NULL, "PopUp", "ModuleIsEnabled", 1) && DBGetContactSettingByte(NULL, MODNAME, "Popups2", DEFAULT_POPUP_ENABLED))
- {
- Number = 2;
- show_popup(0, Title, Text, Number, 0);
- }
- else if (DBGetContactSettingByte(NULL, MODNAME, "Popups2M", DEFAULT_MESSAGE_ENABLED))
- MessageBox(NULL, Text, Title, MB_ICONINFORMATION);
- }*/
- CheckThread = NULL;
-}//end* static void CheckUpdates(void *)
-
-void DoCheck(int iFlag, int iFlag2)
-{
- if (iFlag2)
- {
- LPCTSTR Title = TranslateT("Pack Updater");
- LPCTSTR Text = TranslateT("Update checking already started!");
- if (ServiceExists(MS_POPUP_ADDPOPUPEX) && DBGetContactSettingByte(NULL, "PopUp", "ModuleIsEnabled", 1) && DBGetContactSettingByte(NULL, MODNAME, "Popups2", DEFAULT_POPUP_ENABLED))
- {
- Number = 2;
- show_popup(0, Title, Text, Number, 0);
- }
- else if (DBGetContactSettingByte(NULL, MODNAME, "Popups2M", DEFAULT_MESSAGE_ENABLED))
- MessageBox(NULL, Text, Title, MB_ICONINFORMATION);
- }
- else if (iFlag)
- {
- CheckThread = mir_forkthread(CheckUpdates, 0);
- DBWriteContactSettingDword(NULL, MODNAME, "LastUpdate", time(NULL));
- }
-}
-
-BOOL AllowUpdateOnStartup()
-{
- if(OnlyOnceADay)
- {
- time_t now = time(NULL);
- time_t was = DBGetContactSettingDword(NULL, MODNAME, "LastUpdate", 0);
-
- if((now - was) < 86400)
- return FALSE;
- }
- return TRUE;
-}
-
-LONG PeriodToMilliseconds(const INT period, BYTE& periodMeasure)
-{
- LONG result = period * 1000;
- switch(periodMeasure)
- {
- case 1:
- // day
- result *= 60 * 60 * 24;
- break;
-
- default:
- // hour
- if(periodMeasure != 0)
- periodMeasure = 0;
- result *= 60 * 60;
- break;
- }
- return result;
-}
-
-VOID CALLBACK TimerAPCProc(LPVOID lpArg, DWORD dwTimerLowValue, DWORD dwTimerHighValue)
-{
- DoCheck(1, (int)CheckThread);
-}
-
-VOID InitTimer()
-{
- CancelWaitableTimer(Timer);
- if(UpdateOnPeriod)
- {
- LONG interval = PeriodToMilliseconds(Period, PeriodMeasure);
-
- _int64 qwDueTime = -10000i64 * interval;
-
- LARGE_INTEGER li = {0};
- li.LowPart = (DWORD) ( qwDueTime & 0xFFFFFFFF );
- li.HighPart = (LONG) ( qwDueTime >> 32 );
-
- SetWaitableTimer(Timer, &li, interval, TimerAPCProc, NULL, 0);
- }
-} \ No newline at end of file
diff --git a/plugins/PackUpdater_new/Version.h b/plugins/PackUpdater_new/Version.h
deleted file mode 100644
index e16ce1f9ef..0000000000
--- a/plugins/PackUpdater_new/Version.h
+++ /dev/null
@@ -1,20 +0,0 @@
-#define __MAJOR_VERSION 0
-#define __MINOR_VERSION 0
-#define __RELEASE_NUM 1
-#define __BUILD_NUM 1
-
-#define __FILEVERSION_STRING __MAJOR_VERSION,__MINOR_VERSION,__RELEASE_NUM,__BUILD_NUM
-#define __FILEVERSION_DOTS __MAJOR_VERSION.__MINOR_VERSION.__RELEASE_NUM.__BUILD_NUM
-
-#define __STRINGIFY_IMPL(x) #x
-#define __STRINGIFY(x) __STRINGIFY_IMPL(x)
-#define __VERSION_STRING __STRINGIFY(__FILEVERSION_DOTS)
-
-#define __PLUGIN_NAME "PackUpdater"
-#define __INTERNAL_NAME "PackUpdater"
-#define __FILENAME "PackUpdater.dll"
-#define __DESCRIPTION "Simple updater for Miranda IM premodified packs."
-#define __AUTHOR "Mataes, ZERO_BiT"
-#define __AUTHOREMAIL "mataes2007@gmail.com, zero-bit@mail.ru"
-#define __AUTHORWEB "http://miranda-ng.org/"
-#define __COPYRIGHT "© 2011 Mataes, 2007 ZERO_BiT"
diff --git a/plugins/PackUpdater_new/Version.rc b/plugins/PackUpdater_new/Version.rc
deleted file mode 100644
index e637f0cb33..0000000000
--- a/plugins/PackUpdater_new/Version.rc
+++ /dev/null
@@ -1,38 +0,0 @@
-// Microsoft Visual C++ generated resource script.
-//
-#include "afxres.h"
-#include "version.h"
-
-#ifdef _WIN32
-LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
-#endif //_WIN32
-
-VS_VERSION_INFO VERSIONINFO
- FILEVERSION __FILEVERSION_STRING
- PRODUCTVERSION __FILEVERSION_STRING
- FILEFLAGSMASK 0x17L
-#ifdef _DEBUG
- FILEFLAGS 0x1L
-#else
- FILEFLAGS 0x0L
-#endif
- FILEOS 0x4L
- FILETYPE 0x0L
- FILESUBTYPE 0x0L
-BEGIN
- BLOCK "StringFileInfo"
- BEGIN
- BLOCK "000004b0"
- BEGIN
- VALUE "FileDescription", __DESCRIPTION
- VALUE "InternalName", __PLUGIN_NAME
- VALUE "LegalCopyright", __COPYRIGHT
- VALUE "OriginalFilename", __FILENAME
- VALUE "ProductName", __PLUGIN_NAME
- END
- END
- BLOCK "VarFileInfo"
- BEGIN
- VALUE "Translation", 0x0, 1200
- END
-END
diff --git a/plugins/PackUpdater_new/packupdater-translation.txt b/plugins/PackUpdater_new/packupdater-translation.txt
deleted file mode 100644
index 5945f1f25b..0000000000
--- a/plugins/PackUpdater_new/packupdater-translation.txt
+++ /dev/null
@@ -1,69 +0,0 @@
-; Common strings that belong to many files
-;[Pack Updater]
-;[PopUps]
-
-; ../../plugins/PackUpdater/Resource.rc
-;[(but only once a day)]
-;[* Needs popup actions to be enabled]
-;[-1 = Infinite]
-;[0 = Default]
-;[Back]
-;[Boxes]
-;[Cancel]
-;[Click action]
-;[Colours]
-;[Description]
-;[Downloading...]
-;[Errors]
-;[Every]
-;[Go to Customize -> Hotkeys to change the hotkey]
-;[Hotkey]
-;[Info messages]
-;[Message boxes]
-;[Message boxes (*)]
-;[Not sets for \"Message boxes\"]
-;[Notifications]
-;[On left click]
-;[On right click]
-;[On startup]
-;[Pack update options]
-;[PackUpdater has detected updated versions\nof the following Miranda components:]
-;[Preview]
-;[Progress dialogs]
-;[Remind about not installed pack update]
-;[Sec]
-;[Text]
-;[Timeout]
-;[Update]
-;[Updates found!]
-;[Use &Windows colours]
-;[Use Pop&up colours]
-;[Use cus&tom colors]
-;[View info]
-
-; ../../plugins/PackUpdater/Src/Notifications.cpp
-;[An error occured while downloading the update.]
-;[Component Name]
-;[Current Version]
-;[Download complete. Start updating? All your data will be saved and Miranda IM will be closed.]
-;[Downloading pack updates...]
-;[Downloading update...]
-;[Downloads complete. Start updating? All your data will be saved and Miranda IM will be closed.]
-;[New Version]
-;[You have chosen not to install the pack update immediately.\nYou can install it manually from this location:\n\n%s]
-
-; ../../plugins/PackUpdater/Src/Options.cpp
-;[Events]
-;[Test]
-;[days]
-;[hours]
-
-; ../../plugins/PackUpdater/Src/Utils.cpp
-;[Downloading version info...]
-;[Name of Update's file is not supported.]
-;[No files for update.]
-;[No updates found.]
-;[Pack Updater HTTP connection]
-;[URL for checking updates not found.]
-;[Update checking already started!]
-;[Update is not possible!\nYou have no Administrator's rights.\nPlease run Miranda IM with Administrator's rights.]
diff --git a/plugins/PackUpdater_new/resource.h b/plugins/PackUpdater_new/resource.h
deleted file mode 100644
index 8b89bf3777..0000000000
--- a/plugins/PackUpdater_new/resource.h
+++ /dev/null
@@ -1,79 +0,0 @@
-//{{NO_DEPENDENCIES}}
-// Microsoft Visual C++ generated include file.
-// Used by Resource.rc
-//
-#define IDI_MENU 101
-#define IDD_UPDATE 102
-#define IDD_DOWNLOAD 103
-#define IDD_OPT_UPDATENOTIFY 104
-#define IDD_POPUP 105
-#define IDD_POPUPDUMMI 106
-#define IDI_DELETE 107
-#define IDI_OK 108
-#define IDI_CANCEL 109
-#define IDC_UPDATETEXT 1001
-#define IDC_CURVER 1002
-#define IDC_NEWVER 1003
-#define IDC_INFO 1004
-#define IDC_PB 1005
-#define IDC_LABEL 1006
-#define IDC_USEWINCOLORS 1007
-#define IDC_RC 1008
-#define IDC_USEPOPUPCOLORS 1009
-#define IDC_COLORS 1010
-#define IDC_STATIC_INFINITE 1011
-#define IDC_STATIC_DEFAULT 1012
-#define IDC_TIMEOUT_VALUE_SPIN 1013
-#define IDC_STATIC_SEC 1014
-#define IDC_LC 1015
-#define IDC_PREVIEW 1016
-#define IDC_TIMEOUT_VALUE 1017
-#define IDC_USEOWNCOLORS 1018
-#define IDC_ENABLEUPDATES 1019
-#define IDC_REMINDER 1020
-#define IDC_LIST_UPDATES 1021
-#define IDC_MESSAGE 1022
-#define IDC_DESCR 1023
-#define IDC_MSG_BOXES_MSG 1024
-#define IDC_ERRORS_MSG 1025
-#define IDC_INFO_MESSAGES_MSG 1026
-#define IDC_PROGR_DLG_MSG 1027
-#define IDC_SYSLINK1 1028
-#define IDC_LINK_HOTKEY 1028
-#define IDC_MSG_BOXES2 1029
-#define IDC_ERRORS2 1030
-#define IDC_INFO_MESSAGES2 1031
-#define IDC_PROGR_DLG2 1032
-#define IDC_NOTIFY2 1033
-#define IDC_NOTIFY 1034
-#define IDC_UPDATEONSTARTUP 1035
-#define IDC_ONLYONCEADAY 1036
-#define IDC_UPDATEONPERIOD 1037
-#define IDC_PERIOD 1038
-#define IDC_PERIODSPIN 1039
-#define IDC_PERIODMEASURE 1040
-#define IDC_EDIT1 1041
-#define IDC_UPDATE_URL 1041
-#define IDC_MSG_BOXES 40071
-#define IDC_ERRORS 40072
-#define IDC_INFO_MESSAGES 40073
-#define IDC_PROGR_DLG 40074
-#define IDC_MSG_BOXES_TX 41071
-#define IDC_ERR_TX 41072
-#define IDC_INFO_MESSAGES_TX 41073
-#define IDC_PROGR_DLG_TX 41074
-#define IDC_MSG_BOXES_BG 42071
-#define IDC_ERR_BG 42072
-#define IDC_INFO_MESSAGES_BG 42073
-#define IDC_PROGR_DLG_BG 42074
-
-// Next default values for new objects
-//
-#ifdef APSTUDIO_INVOKED
-#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 110
-#define _APS_NEXT_COMMAND_VALUE 40075
-#define _APS_NEXT_CONTROL_VALUE 1042
-#define _APS_NEXT_SYMED_VALUE 101
-#endif
-#endif