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.
tdenetwork/kopete/libkopete/ui/accountselector.h

93 lines
2.4 KiB

/*
accountselector.cpp - An Accountselector
Copyright (c) 2004 by Stefan Gehn <metz AT gehn.net>
Kopete (c) 2002-2004 by the Kopete developers <kopete-devel@kde.org>
*************************************************************************
* *
* This library is free software; you can redistribute it and/or *
* modify it under the terms of the GNU Lesser General Public *
* License as published by the Free Software Foundation; either *
* version 2 of the License, or (at your option) any later version. *
* *
*************************************************************************
*/
#ifndef ACCOUNTSELECTOR_H
#define ACCOUNTSELECTOR_H
#include <qwidget.h>
#include <kopeteprotocol.h>
#include "kopete_export.h"
class AccountSelectorPrivate;
class QListViewItem;
/**
* \brief widget to select an account, based on KListView
* @author Stefan Gehn <metz AT gehn.net>
*/
class KOPETE_EXPORT AccountSelector : public QWidget
{
Q_OBJECT
public:
/**
* Constructor.
*
* The parameters @p parent and @p name are handled by
* KListView.
*/
AccountSelector(QWidget *parent=0, const char *name=0);
/**
* Constructor for a list of accounts for one protocol only
*
* The parameters @p parent and @p name are handled by
* KListView. @p proto defines the protocol whose accounts are
* shown in the list
*/
AccountSelector(Kopete::Protocol *proto, QWidget *parent=0, const char *name=0);
/**
* Destructor.
*/
~AccountSelector();
/**
* Select @p account in the list, in case it's part of the list
*/
void setSelected(Kopete::Account *account);
/**
* Returns true in case @p account is in the list and
* the currently selected item, false otherwise
*/
bool isSelected(Kopete::Account *account);
/**
* @return the currently selected account.
*/
Kopete::Account *selectedItem();
signals:
/**
* Emitted whenever the selection changed, @p acc is a pointer to the
* newly selected account
*/
void selectionChanged(Kopete::Account *acc);
private slots:
void slotSelectionChanged(QListViewItem *item);
private:
void initUI();
private:
AccountSelectorPrivate *d;
};
#endif
// vim: set noet ts=4 sts=4 sw=4: