From 4e406184646a2d90f228f58abd74661b4de2e2d2 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Thu, 1 Nov 2012 15:11:28 +0000 Subject: extraicons moved to the core git-svn-id: http://svn.miranda-ng.org/main/trunk@2131 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- src/modules/extraicons/BaseExtraIcon.cpp | 81 ++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 src/modules/extraicons/BaseExtraIcon.cpp (limited to 'src/modules/extraicons/BaseExtraIcon.cpp') diff --git a/src/modules/extraicons/BaseExtraIcon.cpp b/src/modules/extraicons/BaseExtraIcon.cpp new file mode 100644 index 0000000000..0e5dad79ee --- /dev/null +++ b/src/modules/extraicons/BaseExtraIcon.cpp @@ -0,0 +1,81 @@ +/* + Copyright (C) 2009 Ricardo Pescuma Domenecci + + 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 "..\..\core\commonheaders.h" + +#include "BaseExtraIcon.h" +#include "extraicons.h" + +BaseExtraIcon::BaseExtraIcon(int id, const char *name, const TCHAR *description, const char *descIcon, + MIRANDAHOOKPARAM OnClick, LPARAM param) : + ExtraIcon(name), id(id), description(description), descIcon(descIcon), OnClick(OnClick), onClickParam(param) +{ +} + +BaseExtraIcon::~BaseExtraIcon() +{ +} + +void BaseExtraIcon::setOnClick(MIRANDAHOOKPARAM OnClick, LPARAM param) +{ + this->OnClick = OnClick; + this->onClickParam = param; +} + +int BaseExtraIcon::getID() const +{ + return id; +} + +const TCHAR *BaseExtraIcon::getDescription() const +{ + return description.c_str(); +} + +void BaseExtraIcon::setDescription(const TCHAR *desc) +{ + description = desc; +} + +const char *BaseExtraIcon::getDescIcon() const +{ + return descIcon.c_str(); +} + +void BaseExtraIcon::setDescIcon(const char *icon) +{ + descIcon = icon; +} + +void BaseExtraIcon::onClick(HANDLE hContact) +{ + if (OnClick == NULL) + return; + + OnClick((WPARAM) hContact, (LPARAM) ConvertToClistSlot(slot), onClickParam); +} + +int BaseExtraIcon::ClistSetExtraIcon(HANDLE hContact, HANDLE hImage) +{ + ExtraIcon *tmp = extraIconsByHandle[id - 1]; + if (tmp != this) + return tmp->ClistSetExtraIcon(hContact, hImage); + else + return Clist_SetExtraIcon(hContact, slot, hImage); +} -- cgit v1.2.3