You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kvirc/src/kvirc/ui/kvi_query.h

97 lines
3.7 KiB

#ifndef _KVI_TQUERY_H_
#define _KVI_TQUERY_H_
//=============================================================================
//
// File : kvi_query.h
// Creation date : Mon Aug 7 2000 14:19:00 by Szymon Stefanek
//
// This file is part of the KVirc irc client distribution
// Copyright (C) 2000-2004 Szymon Stefanek (pragma at kvirc dot net)
//
// 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 opinion) 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. ,51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
//
//=============================================================================
#include "kvi_settings.h"
#include "kvi_window.h"
#include "kvi_string.h"
#include "kvi_ircuserdb.h"
#include "kvi_userlistview.h"
#include "kvi_themedlabel.h"
#include "kvi_pointerhashtable.h"
#include "kvi_tal_grid.h"
class KviConsole;
class KviConfig;
class TQSplitter;
class KviWindowToolPageButton;
#define KVI_TQUERY_FLAG_DEAD 1
class KVIRC_API KviQuery : public KviWindow
{
Q_OBJECT
TQ_OBJECT
public:
KviQuery(KviFrame * lpFrm,KviConsole * lpConsole,const TQString &nick);
~KviQuery();
protected:
KviUserListView * m_pUserListView;
KviWindowToolPageButton * m_pListViewButton;
int m_iFlags;
KviThemedLabel * m_pLabel;
TQFrame * m_pButtonGrid;
protected:
virtual TQPixmap * myIconPtr();
virtual void fillCaptionBuffers();
virtual void resizeEvent(TQResizeEvent *e);
virtual void loadProperties(KviConfig * cfg);
virtual void saveProperties(KviConfig * cfg);
virtual void getBaseLogFileName(TQString &buffer);
virtual void triggerCreationEvents();
public:
void setDeadQuery();
void setAliveQuery();
bool isDeadQuery(){ return m_iFlags & KVI_TQUERY_FLAG_DEAD; };
virtual TQSize sizeHint() const;
virtual const TQString & target(){ return windowName(); };
virtual void applyOptions();
KviUserListEntry * setTarget(const TQString &nick,const TQString &user,const TQString &host);
void userAction(KviIrcMask *user,unsigned int uActionType);
void userAction(const TQString &nick,unsigned int uActionType);
void userAction(const TQString &nick,const TQString &user,const TQString &host,unsigned int uActionType);
bool nickChange(const TQString &oldNick,const TQString &newNick);
void ownMessage(const TQString &buffer);
void ownAction(const TQString &buffer);
int selectedCount(){ return m_pUserListView->selectedCount(); };
bool avatarChanged(const TQString &nick){ return m_pUserListView->avatarChanged(nick); };
void notifyCommonChannels(const TQString &nick,const TQString &user,const TQString &host,int iChans,const TQString &szChans);
void showListView(bool bShow);
void mergeQuery(KviQuery * q);
void updateLabelText();
TQFrame * buttonContainer() { return (TQFrame*)m_pButtonGrid; };
protected:
void notifyTargetChange(const TQString &oldNick,const TQString &oldUser,const TQString &oldHost,const TQString &nick,const TQString &user,const TQString &host);
TQString getInfoLabelText();
TQString getInfoLabelTipText();
protected slots:
void textViewRightClicked();
void toggleListView();
void slotDndEvents(const char *);
};
#endif //_KVI_CHANNEL_H_