diff options
author | Rozhuk Ivan <rozhuk.im@gmail.com> | 2014-11-26 23:06:03 +0000 |
---|---|---|
committer | Rozhuk Ivan <rozhuk.im@gmail.com> | 2014-11-26 23:06:03 +0000 |
commit | 15cb1c735a559b88c7ede033510d8f106eb9e314 (patch) | |
tree | 990f59a238a88f5f8494b5094a2bd1dedb018d0a /plugins/UserInfoEx/src/svc_timezone.cpp | |
parent | e94cb836621c0c4432ad7670ea18619812088a10 (diff) |
UInfoEx: code cleanup, req for review
git-svn-id: http://svn.miranda-ng.org/main/trunk@11108 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/UserInfoEx/src/svc_timezone.cpp')
-rw-r--r-- | plugins/UserInfoEx/src/svc_timezone.cpp | 156 |
1 files changed, 80 insertions, 76 deletions
diff --git a/plugins/UserInfoEx/src/svc_timezone.cpp b/plugins/UserInfoEx/src/svc_timezone.cpp index 8318e911bc..4b4ccd4053 100644 --- a/plugins/UserInfoEx/src/svc_timezone.cpp +++ b/plugins/UserInfoEx/src/svc_timezone.cpp @@ -1,76 +1,80 @@ -/*
-UserinfoEx plugin for Miranda IM
-
-Copyright:
-© 2006-2010 DeathAxe, Yasnovidyashii, Merlin, K. Romanov, Kreol
-
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-*/
-
-#include "commonheaders.h"
-
-/***********************************************************************************************************
- * services
- ***********************************************************************************************************/
-
-/**
-* This service function provides a TIME_ZONE_INFORMATION structure
-* for the desired contact, in case the contact's timezone can be determined.
-* parsed to new core tzi interface if present.
-*
-* @param wParam - HANDLE of the contact, to retrieve timezone information from.
-* @param lParam - pointer to a TIME_ZONE_INFORMATION to fill.
-*
-* @retval 0 - success
-* @retval 1 - failure
-**/
-
-INT_PTR GetContactTimeZoneInformation(WPARAM wParam,LPARAM lParam)
-{
- //use new core tz interface
- LPTIME_ZONE_INFORMATION pTimeZoneInformation = (LPTIME_ZONE_INFORMATION)lParam;
- (*pTimeZoneInformation) = *tmi.getTzi(tmi.createByContact(wParam, 0, 0));
- return (pTimeZoneInformation == NULL);
-}
-
-/**
-* This function returns the contact's local time.
-*
-* @param wParam - HANDLE of the contact, to retrieve timezone information from.
-* @param lParam - pointer to a systemtime structure
-*
-* @return TRUE or FALSE
-**/
-
-INT_PTR GetContactLocalTime(WPARAM wParam, LPARAM lParam)
-{
- //use new core tz interface
- LPSYSTEMTIME pSystemTime = (LPSYSTEMTIME)lParam;
- return (INT_PTR)tmi.getTimeZoneTimeByContact(wParam, pSystemTime);
-}
-
-/***********************************************************************************************************
- * initialization
- ***********************************************************************************************************/
-
-/**
-* This function initially loads the module upon startup.
-**/
-
-void SvcTimezoneLoadModule()
-{
- CreateServiceFunction(MS_USERINFO_TIMEZONEINFO, GetContactTimeZoneInformation);
- CreateServiceFunction(MS_USERINFO_LOCALTIME, GetContactLocalTime);
-}
+/* +UserinfoEx plugin for Miranda IM + +Copyright: +© 2006-2010 DeathAxe, Yasnovidyashii, Merlin, K. Romanov, Kreol + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ + +#include "commonheaders.h" + +/*********************************************************************************************************** + * services + ***********************************************************************************************************/ + +/** +* This service function provides a TIME_ZONE_INFORMATION structure +* for the desired contact, in case the contact's timezone can be determined. +* parsed to new core tzi interface if present. +* +* @param wParam - HANDLE of the contact, to retrieve timezone information from. +* @param lParam - pointer to a TIME_ZONE_INFORMATION to fill. +* +* @retval 0 - success +* @retval 1 - failure +**/ + +INT_PTR GetContactTimeZoneInformation(WPARAM wParam, LPARAM lParam) +{ + if (lParam == NULL) + return (1); + //use new core tz interface + LPTIME_ZONE_INFORMATION pTimeZoneInformation = tmi.getTzi(tmi.createByContact(wParam, 0, 0)); + if (pTimeZoneInformation == NULL) + return (1); + memcpy((void *)lParam, pTimeZoneInformation, sizeof(TIME_ZONE_INFORMATION)); + return (0); +} + +/** +* This function returns the contact's local time. +* +* @param wParam - HANDLE of the contact, to retrieve timezone information from. +* @param lParam - pointer to a systemtime structure +* +* @return TRUE or FALSE +**/ + +INT_PTR GetContactLocalTime(WPARAM wParam, LPARAM lParam) +{ + //use new core tz interface + LPSYSTEMTIME pSystemTime = (LPSYSTEMTIME)lParam; + return (INT_PTR)tmi.getTimeZoneTimeByContact(wParam, pSystemTime); +} + +/*********************************************************************************************************** + * initialization + ***********************************************************************************************************/ + +/** +* This function initially loads the module upon startup. +**/ + +void SvcTimezoneLoadModule() +{ + CreateServiceFunction(MS_USERINFO_TIMEZONEINFO, GetContactTimeZoneInformation); + CreateServiceFunction(MS_USERINFO_LOCALTIME, GetContactLocalTime); +} |