2 kopetemessagefilter.cpp - Kopete Message Filtering
4 Copyright (c) 2004 by Richard Smith <kde@metafoo.co.uk>
5 Kopete (c) 2002-2004 by the Kopete developers <kopete-devel@kde.org>
7 *************************************************************************
9 * This library is free software; you can redistribute it and/or *
10 * modify it under the terms of the GNU Lesser General Public *
11 * License as published by the Free Software Foundation; either *
12 * version 2 of the License, or (at your option) any later version. *
14 *************************************************************************
17 #include "kopetesimplemessagehandler.h"
18 #include "kopetemessageevent.h"
25 //BEGIN SimpleMessageHandlerFactory
27 class SimpleMessageHandlerFactory::Private
30 Message::MessageDirection direction
;
32 QPointer
<QObject
> target
;
36 SimpleMessageHandlerFactory::SimpleMessageHandlerFactory( Message::MessageDirection direction
,
37 int position
, QObject
*target
, const char *slot
)
40 d
->direction
= direction
;
41 d
->position
= position
;
46 SimpleMessageHandlerFactory::~SimpleMessageHandlerFactory()
51 MessageHandler
*SimpleMessageHandlerFactory::create( ChatSession
*manager
, Message::MessageDirection direction
)
54 if ( direction
!= d
->direction
)
56 MessageHandler
*handler
= new SimpleMessageHandler
;
57 QObject::connect( handler
, SIGNAL( handle( Kopete::Message
& ) ), d
->target
, d
->slot
);
61 int SimpleMessageHandlerFactory::filterPosition( ChatSession
*manager
, Message::MessageDirection direction
)
64 if ( direction
!= d
->direction
)
65 return StageDoNotCreate
;
69 //END SimpleMessageHandlerFactory
71 //BEGIN SimpleMessageHandler
73 class SimpleMessageHandler::Private
77 SimpleMessageHandler::SimpleMessageHandler()
82 SimpleMessageHandler::~SimpleMessageHandler()
87 void SimpleMessageHandler::handleMessage( MessageEvent
*event
)
89 Message message
= event
->message();
90 emit
handle( message
);
91 event
->setMessage( message
);
92 MessageHandler::handleMessage( event
);
95 //END SimpleMessageHandler
99 #include "kopetesimplemessagehandler.moc"
101 // vim: set noet ts=4 sts=4 sw=4: