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.
93 lines
2.5 KiB
93 lines
2.5 KiB
/*
|
|
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.
|
|
*/
|
|
|
|
/*
|
|
Copyright (C) 2006 Eike Hein <hein@kde.org>
|
|
*/
|
|
|
|
#ifndef VIEWTREEITEM_H
|
|
#define VIEWTREEITEM_H
|
|
|
|
#include "chatwindow.h"
|
|
|
|
#include <tqobject.h>
|
|
#include <tqlistview.h>
|
|
#include <tqtooltip.h>
|
|
#include <tqguardedptr.h>
|
|
#include <tqpixmap.h>
|
|
|
|
|
|
class ChatWindow;
|
|
class Images;
|
|
|
|
class ViewTreeItem : public TQListViewItem
|
|
{
|
|
|
|
public:
|
|
ViewTreeItem(TQListView* parent, const TQString& name, ChatWindow* view);
|
|
ViewTreeItem(TQListViewItem* parent, const TQString& name, ChatWindow* view, int sortIndex = -1);
|
|
ViewTreeItem(TQListViewItem* parent, TQListViewItem* afterItem, const TQString& name, ChatWindow* view);
|
|
// Minimal constructor for separator items.
|
|
explicit ViewTreeItem(TQListView* parent);
|
|
~ViewTreeItem();
|
|
|
|
void setSortIndex(int newSortIndex);
|
|
int getSortIndex() const;
|
|
|
|
void setName(const TQString& name);
|
|
TQString getName() const;
|
|
bool isTruncated() const;
|
|
|
|
void setView(ChatWindow* view);
|
|
ChatWindow* getView() const;
|
|
|
|
ChatWindow::WindowType getViewType() const;
|
|
void setViewType(ChatWindow::WindowType);
|
|
|
|
void setColor(TQColor color);
|
|
TQColor getColor() const;
|
|
|
|
void setIcon(const TQPixmap& pm);
|
|
|
|
void setHighlighted(bool highlight);
|
|
void setCloseButtonShown(bool show);
|
|
void setCloseButtonEnabled();
|
|
bool getCloseButtonEnabled();
|
|
|
|
bool sortLast() const;
|
|
bool isSeparator() const;
|
|
int compare(TQListViewItem* i, int col, bool ascending) const;
|
|
|
|
void setup();
|
|
void paintFocus(TQPainter* p, const TQColorGroup& cg, const TQRect& r);
|
|
void paintCell(TQPainter* p, const TQColorGroup& cg, int column, int width, int align);
|
|
|
|
TQColor mixColor(const TQColor &color1, const TQColor &color2);
|
|
|
|
private:
|
|
uint m_sortIndex;
|
|
static int s_availableSortIndex;
|
|
TQGuardedPtr<ChatWindow> m_view;
|
|
ChatWindow::WindowType m_viewType;
|
|
TQColor m_color;
|
|
|
|
bool m_isSeparator;
|
|
bool m_isHighlighted;
|
|
bool m_isTruncated;
|
|
bool m_customColorSet;
|
|
|
|
Images* images;
|
|
|
|
TQPixmap m_closeButton;
|
|
TQPixmap m_disabledCloseButton;
|
|
TQPixmap m_oldPixmap;
|
|
bool m_closeButtonShown;
|
|
bool m_closeButtonEnabled;
|
|
};
|
|
|
|
#endif
|