From 6643af9a0ce6d8531f2843c087bc69951755e8f0 Mon Sep 17 00:00:00 2001 From: Vadim Dashevskiy Date: Tue, 18 Sep 2012 17:59:18 +0000 Subject: Restart piugin added git-svn-id: http://svn.miranda-ng.org/main/trunk@1596 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/Restart/Restart.vcxproj | 261 ++++++++++++++++++++++++++++++++ plugins/Restart/Restart.vcxproj.filters | 29 ++++ plugins/Restart/res/Restart.rc | 72 +++++++++ plugins/Restart/res/restart.ico | Bin 0 -> 1150 bytes plugins/Restart/src/resource.h | 17 +++ plugins/Restart/src/restart.c | 80 ++++++++++ 6 files changed, 459 insertions(+) create mode 100644 plugins/Restart/Restart.vcxproj create mode 100644 plugins/Restart/Restart.vcxproj.filters create mode 100644 plugins/Restart/res/Restart.rc create mode 100644 plugins/Restart/res/restart.ico create mode 100644 plugins/Restart/src/resource.h create mode 100644 plugins/Restart/src/restart.c (limited to 'plugins') diff --git a/plugins/Restart/Restart.vcxproj b/plugins/Restart/Restart.vcxproj new file mode 100644 index 0000000000..44b0b82cad --- /dev/null +++ b/plugins/Restart/Restart.vcxproj @@ -0,0 +1,261 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + Restart + {18195F68-A747-8643-050C-C5101DA658FD} + + + + DynamicLibrary + false + MultiByte + true + + + DynamicLibrary + false + MultiByte + true + + + DynamicLibrary + false + MultiByte + + + DynamicLibrary + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + $(SolutionDir)$(Configuration)\Plugins\ + $(SolutionDir)$(Configuration)\Obj\$(ProjectName)\ + true + + + $(SolutionDir)$(Configuration)64\Plugins\ + $(SolutionDir)$(Configuration)64\Obj\$(ProjectName)\ + true + + + $(SolutionDir)$(Configuration)\Plugins\ + $(SolutionDir)$(Configuration)\Obj\$(ProjectName)\ + false + + + $(SolutionDir)$(Configuration)64\Plugins\ + $(SolutionDir)$(Configuration)64\Obj\$(ProjectName)\ + false + + + + MultiThreadedDebugDLL + Default + false + Disabled + true + Level3 + true + EditAndContinue + ..\..\include;%(AdditionalIncludeDirectories) + WIN32;_DEBUG;_WINDOWS;_USRDLL;RESTART_EXPORTS;%(PreprocessorDefinitions) + EnableFastChecks + + + true + _DEBUG;%(PreprocessorDefinitions) + .\Debug\Restart.tlb + true + Win32 + + + 0x0409 + _DEBUG;%(PreprocessorDefinitions) + ..\..\include\msapi + + + true + $(IntDir)$(TargetName).bsc + + + true + true + true + Windows + $(IntDir)$(TargetName).lib + kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\lib + + + + + MultiThreadedDebugDLL + Default + false + Disabled + true + Level3 + ProgramDatabase + ..\..\include;%(AdditionalIncludeDirectories) + WIN64;_DEBUG;_WINDOWS;_USRDLL;RESTART_EXPORTS;%(PreprocessorDefinitions) + EnableFastChecks + + + true + _DEBUG;%(PreprocessorDefinitions) + .\Debug\Restart.tlb + true + + + 0x0409 + _DEBUG;%(PreprocessorDefinitions) + ..\..\include\msapi + + + true + $(IntDir)$(TargetName).bsc + + + true + true + true + Windows + $(IntDir)$(TargetName).lib + kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\lib + + + + + MultiThreadedDLL + OnlyExplicitInline + true + true + MaxSpeed + true + Level3 + ..\..\include;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_WINDOWS;_USRDLL;RESTART_EXPORTS;%(PreprocessorDefinitions) + true + Size + + + true + NDEBUG;%(PreprocessorDefinitions) + .\Release\Restart.tlb + true + Win32 + + + 0x0409 + NDEBUG;%(PreprocessorDefinitions) + ..\..\include\msapi + + + true + $(IntDir)$(TargetName).bsc + + + true + true + Windows + $(IntDir)$(TargetName).lib + kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\lib + true + true + true + + + + + MultiThreadedDLL + OnlyExplicitInline + true + true + MaxSpeed + true + Level3 + ..\..\include;%(AdditionalIncludeDirectories) + WIN64;NDEBUG;_WINDOWS;_USRDLL;RESTART_EXPORTS;%(PreprocessorDefinitions) + true + Size + + + true + NDEBUG;%(PreprocessorDefinitions) + .\Release\Restart.tlb + true + + + 0x0409 + NDEBUG;%(PreprocessorDefinitions) + ..\..\include\msapi + + + true + $(IntDir)$(TargetName).bsc + + + true + true + Windows + $(IntDir)$(TargetName).lib + kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + $(SolutionDir)\lib + true + true + true + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/Restart/Restart.vcxproj.filters b/plugins/Restart/Restart.vcxproj.filters new file mode 100644 index 0000000000..9010c77480 --- /dev/null +++ b/plugins/Restart/Restart.vcxproj.filters @@ -0,0 +1,29 @@ + + + + + {e8aa2230-8568-4173-9e3d-97a356a22822} + + + {f2ac9c4e-4527-4a17-bf1d-41e43b91ec27} + + + {d1b03507-f6e8-450c-b4cd-c9209e4615ec} + + + + + Header Files + + + + + Source Files + + + + + Resource Files + + + \ No newline at end of file diff --git a/plugins/Restart/res/Restart.rc b/plugins/Restart/res/Restart.rc new file mode 100644 index 0000000000..6153050f66 --- /dev/null +++ b/plugins/Restart/res/Restart.rc @@ -0,0 +1,72 @@ +//Microsoft Developer Studio generated resource script. +// +#include "..\src\resource.h" + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#include "afxres.h" + +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// Russian resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS) +#ifdef _WIN32 +LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT +#pragma code_page(1251) +#endif //_WIN32 + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +1 TEXTINCLUDE MOVEABLE PURE +BEGIN + "resource.h\0" +END + +2 TEXTINCLUDE MOVEABLE PURE +BEGIN + "#include ""afxres.h""\r\n" + "\0" +END + +3 TEXTINCLUDE MOVEABLE PURE +BEGIN + "\r\n" + "\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDI_RESTARTICON ICON DISCARDABLE "restart.ico" +#endif // Russian resources +///////////////////////////////////////////////////////////////////////////// + + + +#ifndef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 3 resource. +// + + +///////////////////////////////////////////////////////////////////////////// +#endif // not APSTUDIO_INVOKED + diff --git a/plugins/Restart/res/restart.ico b/plugins/Restart/res/restart.ico new file mode 100644 index 0000000000..305f7b39c9 Binary files /dev/null and b/plugins/Restart/res/restart.ico differ diff --git a/plugins/Restart/src/resource.h b/plugins/Restart/src/resource.h new file mode 100644 index 0000000000..0c6d35d224 --- /dev/null +++ b/plugins/Restart/src/resource.h @@ -0,0 +1,17 @@ +//{{NO_DEPENDENCIES}} +// Microsoft Developer Studio generated include file. +// Used by Restart.rc +// +#define IDI_ICON1 101 +#define IDI_RESTARTICON 101 + +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS +#define _APS_NEXT_RESOURCE_VALUE 102 +#define _APS_NEXT_COMMAND_VALUE 40001 +#define _APS_NEXT_CONTROL_VALUE 1001 +#define _APS_NEXT_SYMED_VALUE 101 +#endif +#endif diff --git a/plugins/Restart/src/restart.c b/plugins/Restart/src/restart.c new file mode 100644 index 0000000000..2c09f2f0ab --- /dev/null +++ b/plugins/Restart/src/restart.c @@ -0,0 +1,80 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include "resource.h" + +HINSTANCE hInst; +HANDLE hIconHandle; +int hLangpack; + +PLUGININFOEX pluginInfo={ + sizeof(PLUGININFOEX), + "Restart plugin", + PLUGIN_MAKE_VERSION(0,0,6,0), + "Adds Restart menu item", + "(..íóæíîå âïèñàòü..)", + "ep@eugn.me", + "© 2008 - 2012 -=J-Scar=-", + "http://miranda.im", + UNICODE_AWARE, + 0x61bedf3a, 0xcc2, 0x41a3, { 0xb9, 0x80, 0xbb, 0x93, 0x93, 0x36, 0x89, 0x35 } // {61BEDF3A-0CC2-41a3-B980-BB9393368935} +}; + +BOOL WINAPI DllMain(HINSTANCE hinstDLL,DWORD fdwReason,LPVOID lpvReserved) +{ + hInst = hinstDLL; + return TRUE; +} + +static int RestartMenuCommand(WPARAM wParam,LPARAM lParam) +{ + CallService("Miranda/System/Restart",0,0); + CallService("CloseAction",0,0); + return 0; +} + +__declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD mirandaVersion) +{ + return &pluginInfo; +} + +int __declspec(dllexport) Load(void) +{ + SKINICONDESC sid = {0}; + CLISTMENUITEM mi = {0}; + TCHAR szFile[MAX_PATH]; + + // IcoLib support + GetModuleFileName(hInst, szFile, MAX_PATH); + sid.pszDefaultFile = szFile; + sid.cbSize = sizeof(sid); + + sid.pszSection = "Restart Plugin"; + sid.pszDescription = "Restart"; + sid.pszName = "rst_restart_icon"; + sid.iDefaultIndex = -IDI_RESTARTICON; + hIconHandle = Skin_AddIcon(&sid); + + CreateServiceFunction("RestartPlug/MenuCommand",RestartMenuCommand); + + mi.cbSize = sizeof(mi); + mi.position = -0x7FFFFFFF; + mi.flags = CMIF_ICONFROMICOLIB; + mi.icolibItem = hIconHandle; + mi.pszName="Restart"; + mi.pszService="RestartPlug/MenuCommand"; + Menu_AddMainMenuItem(&mi); + Menu_AddTrayMenuItem(&mi); + return 0; +} + + +int __declspec(dllexport) Unload(void) +{ + return 0; +} \ No newline at end of file -- cgit v1.2.3