• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdepim API Reference
  • KDE Home
  • Contact Us
 

knode

  • sources
  • kde-4.12
  • kdepim
  • knode
kngroupbrowser.h
Go to the documentation of this file.
1 /*
2  KNode, the KDE newsreader
3  Copyright (c) 1999-2006 the KNode authors.
4  See file AUTHORS for details
5 
6  This program is free software; you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation; either version 2 of the License, or
9  (at your option) any later version.
10  You should have received a copy of the GNU General Public License
11  along with this program; if not, write to the Free Software Foundation,
12  Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, US
13 */
14 
15 #ifndef KNGROUPBROWSER_H
16 #define KNGROUPBROWSER_H
17 
18 #include "kngroupmanager.h"
19 
20 #include <kdialog.h>
21 #include <q3listview.h>
22 
23 class KLineEdit;
24 class QCheckBox;
25 class QLabel;
26 class QGridLayout;
27 
28 class KNNntpAccount;
29 
30 
32 class KNGroupBrowser : public KDialog {
33 
34  Q_OBJECT
35 
36  public:
38  class CheckItem : public Q3CheckListItem {
39 
40  public:
41  CheckItem(Q3ListView *v, const KNGroupInfo &gi, KNGroupBrowser *b);
42  CheckItem(Q3ListViewItem *i, const KNGroupInfo &gi, KNGroupBrowser *b);
43  ~CheckItem();
44  void setChecked(bool c);
45 
46  KNGroupInfo info;
47 
48  protected:
49  void stateChange(bool s);
50  KNGroupBrowser *browser;
51  };
52 
54  class GroupItem : public Q3ListViewItem {
55 
56  public:
57  GroupItem(Q3ListView *v, const KNGroupInfo &gi);
58  GroupItem(Q3ListViewItem *i, const KNGroupInfo &gi);
59  ~GroupItem();
60 
61  KNGroupInfo info;
62  };
63 
64  KNGroupBrowser( QWidget *parent, const QString &caption, KNNntpAccount::Ptr a, ButtonCodes buttons = 0,
65  bool newCBact = false, const QString &user1 = QString(), const QString &user2 = QString() );
66  ~KNGroupBrowser();
67 
68  KNNntpAccount::Ptr account() const { return a_ccount; }
69  virtual void itemChangedState(CheckItem *it, bool s)=0;
70 
71  public slots:
72  void slotReceiveList( KNGroupListData::Ptr d );
73 
74  signals:
75  void loadList( KNNntpAccount::Ptr a );
76 
77  protected:
78  virtual void updateItemState(CheckItem *it)=0;
79  void changeItemState(const KNGroupInfo &gi, bool s);
80  bool itemInListView(Q3ListView *view, const KNGroupInfo &gi);
81  void removeListItem(Q3ListView *view, const KNGroupInfo &gi);
82  void createListItems(Q3ListViewItem *parent=0);
83 
84  QWidget *page;
85  Q3ListView *groupView;
86  int delayedCenter;
87  KLineEdit *filterEdit;
88  QCheckBox *noTreeCB, *subCB, *newCB;
89  QPushButton *arrowBtn1, *arrowBtn2;
90  QPixmap pmGroup, pmNew;
91  QIcon pmRight, pmLeft;
92  QGridLayout *listL;
93  QLabel *leftLabel, *rightLabel;
94  QTimer *refilterTimer;
95  QString lastFilter;
96  bool incrementalFilter;
97 
98  KNNntpAccount::Ptr a_ccount;
99  QList<KNGroupInfo> *allList, *matchList;
100 
101  protected slots:
102  void slotLoadList();
103  void slotItemExpand(Q3ListViewItem *it);
104  void slotCenterDelayed();
106  void slotItemDoubleClicked(Q3ListViewItem *it);
107  void slotFilter(const QString &txt);
108  void slotTreeCBToggled();
109  void slotSubCBToggled();
110  void slotNewCBToggled();
111  void slotFilterTextChanged(const QString &txt);
112  void slotRefilter();
113 
114 };
115 
116 #endif
KNGroupBrowser::arrowBtn1
QPushButton * arrowBtn1
Definition: kngroupbrowser.h:89
KNNntpAccount
Represents an account on a news server.
Definition: knnntpaccount.h:56
KNGroupBrowser::delayedCenter
int delayedCenter
Definition: kngroupbrowser.h:86
KNGroupBrowser::slotReceiveList
void slotReceiveList(KNGroupListData::Ptr d)
Definition: kngroupbrowser.cpp:163
KNGroupBrowser::pmRight
QIcon pmRight
Definition: kngroupbrowser.h:91
KNGroupBrowser::changeItemState
void changeItemState(const KNGroupInfo &gi, bool s)
Definition: kngroupbrowser.cpp:177
KNGroupBrowser::leftLabel
QLabel * leftLabel
Definition: kngroupbrowser.h:93
KNGroupBrowser::slotLoadList
void slotLoadList()
Definition: kngroupbrowser.cpp:272
KNGroupBrowser
Base class for group selection dialogs.
Definition: kngroupbrowser.h:32
KNGroupBrowser::slotNewCBToggled
void slotNewCBToggled()
Definition: kngroupbrowser.cpp:390
KNGroupBrowser::subCB
QCheckBox * subCB
Definition: kngroupbrowser.h:88
KNGroupBrowser::refilterTimer
QTimer * refilterTimer
Definition: kngroupbrowser.h:94
KNGroupBrowser::pmGroup
QPixmap pmGroup
Definition: kngroupbrowser.h:90
KNGroupBrowser::slotTreeCBToggled
void slotTreeCBToggled()
Definition: kngroupbrowser.cpp:376
KNGroupBrowser::page
QWidget * page
Definition: kngroupbrowser.h:84
KNGroupListData::Ptr
boost::shared_ptr< KNGroupListData > Ptr
Shared pointer to a KNGroupListData.
Definition: kngroupmanager.h:59
KNGroupBrowser::removeListItem
void removeListItem(Q3ListView *view, const KNGroupInfo &gi)
Definition: kngroupbrowser.cpp:259
QWidget
KNGroupBrowser::lastFilter
QString lastFilter
Definition: kngroupbrowser.h:95
KNGroupBrowser::GroupItem
List view item with special handling for displaying moderated groups.
Definition: kngroupbrowser.h:54
KDialog
kngroupmanager.h
KNGroupBrowser::newCB
QCheckBox * newCB
Definition: kngroupbrowser.h:88
KNNntpAccount::Ptr
boost::shared_ptr< KNNntpAccount > Ptr
Shared pointer to a KNNntpAccount.
Definition: knnntpaccount.h:62
KNGroupBrowser::filterEdit
KLineEdit * filterEdit
Definition: kngroupbrowser.h:87
KNGroupBrowser::account
KNNntpAccount::Ptr account() const
Definition: kngroupbrowser.h:68
KNGroupBrowser::listL
QGridLayout * listL
Definition: kngroupbrowser.h:92
KNGroupBrowser::CheckItem::stateChange
void stateChange(bool s)
Definition: kngroupbrowser.cpp:456
KNGroupBrowser::CheckItem::~CheckItem
~CheckItem()
Definition: kngroupbrowser.cpp:442
KNGroupBrowser::noTreeCB
QCheckBox * noTreeCB
Definition: kngroupbrowser.h:88
KNGroupBrowser::GroupItem::info
KNGroupInfo info
Definition: kngroupbrowser.h:61
KNGroupBrowser::groupView
Q3ListView * groupView
Definition: kngroupbrowser.h:85
KNGroupBrowser::slotFilter
void slotFilter(const QString &txt)
Definition: kngroupbrowser.cpp:317
KNGroupBrowser::~KNGroupBrowser
~KNGroupBrowser()
Definition: kngroupbrowser.cpp:151
KNGroupBrowser::slotSubCBToggled
void slotSubCBToggled()
Definition: kngroupbrowser.cpp:383
KNGroupBrowser::loadList
void loadList(KNNntpAccount::Ptr a)
KNGroupBrowser::CheckItem::browser
KNGroupBrowser * browser
Definition: kngroupbrowser.h:50
Q3ListViewItem
KNGroupBrowser::CheckItem::setChecked
void setChecked(bool c)
Definition: kngroupbrowser.cpp:447
KNGroupBrowser::slotCenterDelayed
void slotCenterDelayed()
Definition: kngroupbrowser.cpp:303
KNGroupBrowser::rightLabel
QLabel * rightLabel
Definition: kngroupbrowser.h:93
KNGroupBrowser::incrementalFilter
bool incrementalFilter
Definition: kngroupbrowser.h:96
KLineEdit
KNGroupBrowser::slotItemDoubleClicked
void slotItemDoubleClicked(Q3ListViewItem *it)
double click checks/unchecks (opens/closes) item
Definition: kngroupbrowser.cpp:310
KNGroupBrowser::slotFilterTextChanged
void slotFilterTextChanged(const QString &txt)
Definition: kngroupbrowser.cpp:397
Q3CheckListItem
KNGroupBrowser::updateItemState
virtual void updateItemState(CheckItem *it)=0
KNGroupBrowser::allList
QList< KNGroupInfo > * allList
Definition: kngroupbrowser.h:99
QLabel
KNGroupBrowser::a_ccount
KNNntpAccount::Ptr a_ccount
Definition: kngroupbrowser.h:98
KNGroupBrowser::CheckItem::info
KNGroupInfo info
Definition: kngroupbrowser.h:46
KNGroupBrowser::itemInListView
bool itemInListView(Q3ListView *view, const KNGroupInfo &gi)
Definition: kngroupbrowser.cpp:187
KNGroupBrowser::arrowBtn2
QPushButton * arrowBtn2
Definition: kngroupbrowser.h:89
KNGroupBrowser::pmNew
QPixmap pmNew
Definition: kngroupbrowser.h:90
KNGroupBrowser::KNGroupBrowser
KNGroupBrowser(QWidget *parent, const QString &caption, KNNntpAccount::Ptr a, ButtonCodes buttons=0, bool newCBact=false, const QString &user1=QString(), const QString &user2=QString())
Definition: kngroupbrowser.cpp:35
KNGroupBrowser::CheckItem
Checkable list view item with special handling for displaying moderated groups.
Definition: kngroupbrowser.h:38
KNGroupBrowser::CheckItem::CheckItem
CheckItem(Q3ListView *v, const KNGroupInfo &gi, KNGroupBrowser *b)
Definition: kngroupbrowser.cpp:416
KNGroupBrowser::GroupItem::~GroupItem
~GroupItem()
Definition: kngroupbrowser.cpp:482
KNGroupInfo
Helper classes for the group selection dialog, contains info about a newsgroup (name, description)
Definition: kngroupmanager.h:34
KNGroupBrowser::slotRefilter
void slotRefilter()
Definition: kngroupbrowser.cpp:406
KNGroupBrowser::GroupItem::GroupItem
GroupItem(Q3ListView *v, const KNGroupInfo &gi)
Definition: kngroupbrowser.cpp:468
KNGroupBrowser::matchList
QList< KNGroupInfo > * matchList
Definition: kngroupbrowser.h:99
KNGroupBrowser::pmLeft
QIcon pmLeft
Definition: kngroupbrowser.h:91
QList< KNGroupInfo >
KNGroupBrowser::createListItems
void createListItems(Q3ListViewItem *parent=0)
Definition: kngroupbrowser.cpp:200
KNGroupBrowser::slotItemExpand
void slotItemExpand(Q3ListViewItem *it)
Definition: kngroupbrowser.cpp:278
KNGroupBrowser::itemChangedState
virtual void itemChangedState(CheckItem *it, bool s)=0
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:58:36 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

knode

Skip menu "knode"
  • Main Page
  • Namespace List
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdepim API Reference

Skip menu "kdepim API Reference"
  • akonadi_next
  • akregator
  • blogilo
  • calendarsupport
  • console
  •   kabcclient
  •   konsolekalendar
  • kaddressbook
  • kalarm
  •   lib
  • kdgantt2
  • kjots
  • kleopatra
  • kmail
  • knode
  • knotes
  • kontact
  • korgac
  • korganizer
  • ktimetracker
  • libkdepim
  • libkleo
  • libkpgp
  • mailcommon
  • messagelist
  • messageviewer

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal