• 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
knconfigwidgets.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 KNCONFIGWIDGETS_H
16 #define KNCONFIGWIDGETS_H
17 
18 #include "knnntpaccount.h"
19 #include "knode_export.h"
20 
21 #include <kpagedialog.h>
22 #include <kcmodule.h>
23 
24 #include "ui_nntpaccountdialog_base.h"
25 #include "ui_nntpaccountlistwidget_base.h"
26 #include "ui_postnewstechnicalwidget_base.h"
27 #include "ui_readnewsgeneralwidget_base.h"
28 
29 
30 class KComboBox;
31 
32 namespace Sonnet{
33 class ConfigWidget;
34 }
35 
36 namespace KPIM {
37  class KScoringEditorWidget;
38 }
39 
40 namespace Kpgp {
41  class Config;
42 }
43 
44 class KNArticleFilter;
45 class KNDisplayedHeader;
46 class KNFilterManager;
47 
48 namespace KNode {
49  class Cleanup;
50  class DisplayedHeaders;
51  class GroupCleanupWidget;
52  class IdentityWidget;
53 }
54 
55 namespace KNode {
56 
58 class KNODE_EXPORT NntpAccountListWidget : public KCModule, private Ui::NntpAccountListWidgetBase
59 {
60  Q_OBJECT
61 
62  public:
64  explicit NntpAccountListWidget( const KComponentData &inst, QWidget *parent = 0 );
65 
67  virtual void load();
68 
69  protected:
71  class AccountListItem : public QListWidgetItem {
72  public:
76  explicit AccountListItem( KNNntpAccount::Ptr a )
77  : mAccount( a )
78  {}
80  KNNntpAccount::Ptr account() const
81  { return mAccount; }
82  private:
83  KNNntpAccount::Ptr mAccount;
84  };
85 
86  public slots:
90  void slotAddItem( KNNntpAccount::Ptr a );
94  void slotRemoveItem( KNNntpAccount::Ptr a );
98  void slotUpdateItem( KNNntpAccount::Ptr a );
99 
100  protected slots:
102  void slotSelectionChanged();
104  void slotAddBtnClicked();
106  void slotDelBtnClicked();
108  void slotEditBtnClicked();
110  void slotSubBtnClicked();
111 
112 };
113 
114 
116 class KNODE_EXPORT NntpAccountConfDialog : public KPageDialog, private Ui::NntpAccountDialogBase
117 {
118  Q_OBJECT
119 
120  public:
121  explicit NntpAccountConfDialog( KNNntpAccount *a, QWidget *parent = 0 );
122  ~NntpAccountConfDialog();
123 
124  protected slots:
125  void slotServerTextEdited();
126  void slotEditingFinished();
127  virtual void slotButtonClicked( int button );
128 
129  private slots:
130  void slotPasswordChanged();
134  void encryptionChanged( bool checked );
135 
136  private:
137  KNNntpAccount *mAccount;
138  IdentityWidget* mIdentityWidget;
139  GroupCleanupWidget *mCleanupWidget;
140  bool mUseServerForName;
141 };
142 
143 
145 class KNODE_EXPORT AppearanceWidget : public KCModule
146 {
147  Q_OBJECT
148 
149  public:
154  explicit AppearanceWidget( const KComponentData &inst, QWidget *parent = 0 );
155 
157  virtual void load();
159  virtual void save();
161  virtual void defaults();
162 
163  //===================================================================================
164 
166  class KNODE_EXPORT ColorListItem : public QListWidgetItem {
167 
168  public:
174  explicit ColorListItem( const QString &text, const QColor &color = Qt::black, QListWidget *parent = 0 );
176  const QColor& color() { return mColor; }
178  void setColor( const QColor &color );
179 
180  private:
182  QColor mColor;
183  };
184 
185  //===================================================================================
186 
188  class KNODE_EXPORT FontListItem : public QListWidgetItem {
189 
190  public:
196  FontListItem( const QString &text, const QFont &font, QListWidget *parent = 0 );
198  const QFont& font() { return mFont; }
202  void setFont( const QFont &font );
203 
204  private:
206  QFont mFont;
208  QString mText;
209  };
210 
211  //===================================================================================
212 
213  protected:
215  QListWidget *mColorList;
217  QListWidget *mFontList;
218  QCheckBox *c_olorCB,
219  *f_ontCB;
220  QPushButton *c_olChngBtn,
221  *f_ntChngBtn;
222 
223  protected slots:
224  //colors
225  void slotColCheckBoxToggled(bool b);
229  void slotColItemActivated( QListWidgetItem *item );
230  void slotColChangeBtnClicked();
231  void slotColSelectionChanged();
232 
233  //fonts
234  void slotFontCheckBoxToggled(bool b);
238  void slotFontItemActivated( QListWidgetItem *item );
239  void slotFontChangeBtnClicked();
240  void slotFontSelectionChanged();
241 
242 };
243 
244 
248 class KNODE_EXPORT ReadNewsGeneralWidget : public KCModule, KNode::Ui::ReadNewsGeneralWidgetBase
249 {
250  public:
254  explicit ReadNewsGeneralWidget( const KComponentData &inst, QWidget *parent = 0 );
255 
257  virtual void load();
259  virtual void save();
260 };
261 
262 
264 class KNODE_EXPORT ReadNewsNavigationWidget : public KCModule
265 {
266  public:
270  explicit ReadNewsNavigationWidget( const KComponentData &inst, QWidget *parent = 0 );
271 };
272 
273 
275 class KNODE_EXPORT ReadNewsViewerWidget : public KCModule
276 {
277  public:
281  explicit ReadNewsViewerWidget( const KComponentData &inst, QWidget *parent = 0 );
282 };
283 
284 
286 class KNODE_EXPORT DisplayedHeadersWidget : public KCModule {
287 
288  Q_OBJECT
289 
290  public:
291  DisplayedHeadersWidget( DisplayedHeaders *d, const KComponentData &inst, QWidget *parent = 0 );
292 
294  virtual void load();
296  virtual void save();
297 
298  protected:
299 
301  class HdrItem : public QListWidgetItem {
302 
303  public:
308  HdrItem( const QString &text, KNDisplayedHeader *header ) : QListWidgetItem( text ), mHdr( header ) {}
310  KNDisplayedHeader *header() const { return mHdr; }
311  private:
312  KNDisplayedHeader *mHdr;
313  };
314 
315  HdrItem* generateItem(KNDisplayedHeader *);
316 
317  QListWidget *mHeaderList;
318  QPushButton *a_ddBtn,
319  *d_elBtn,
320  *e_ditBtn,
321  *u_pBtn,
322  *d_ownBtn;
323  bool s_ave;
324 
325  DisplayedHeaders *d_ata;
326 
327  protected slots:
328  void slotSelectionChanged();
329  void slotAddBtnClicked();
330  void slotDelBtnClicked();
331  void slotEditBtnClicked();
332  void slotUpBtnClicked();
333  void slotDownBtnClicked();
334 
335 };
336 
337 
339 class KNODE_EXPORT DisplayedHeaderConfDialog : public KDialog {
340 
341  Q_OBJECT
342 
343  public:
344  explicit DisplayedHeaderConfDialog( KNDisplayedHeader *h, QWidget *parent = 0 );
345  ~DisplayedHeaderConfDialog();
346 
347 
348  protected:
349  KNDisplayedHeader *h_dr;
350  KComboBox *h_drC;
351  KLineEdit *n_ameE;
352  QCheckBox *n_ameCB[4],
353  *v_alueCB[4];
354 
355 
356  protected slots:
357  void slotOk();
358  void slotActivated(int);
359  void slotNameChanged(const QString&);
360 };
361 
362 
364 class KNODE_EXPORT ScoringWidget : public KCModule
365 {
366  public:
370  explicit ScoringWidget( const KComponentData &inst, QWidget *parent = 0 );
371 
372  private:
373  KPIM::KScoringEditorWidget *mKsc;
374  KIntSpinBox *mIgnored, *mWatched;
375 };
376 
377 
379 class KNODE_EXPORT FilterListWidget : public KCModule {
380 
381  Q_OBJECT
382 
383  public:
384  explicit FilterListWidget( const KComponentData &inst, QWidget *parent = 0 );
385  ~FilterListWidget();
386 
387  void load();
388  void save();
389 
390  void addItem(KNArticleFilter *f);
391  void removeItem(KNArticleFilter *f);
392  void updateItem(KNArticleFilter *f);
393  void addMenuItem(KNArticleFilter *f);
394  void removeMenuItem(KNArticleFilter *f);
395  QList<int> menuOrder();
396 
397 
398  protected:
400  class FilterListItem : public QListWidgetItem {
401  public:
406  FilterListItem( KNArticleFilter *filter, const QString &text ) : QListWidgetItem( text ), mFilter( filter ) {}
408  KNArticleFilter* filter() const { return mFilter; }
409  private:
410  KNArticleFilter *mFilter;
411  };
412 
417  int findItem( QListWidget *l, KNArticleFilter *f );
418 
419  QListWidget *mFilterList;
420  QListWidget *mMenuList;
421 
422  QPushButton *a_ddBtn,
423  *d_elBtn,
424  *e_ditBtn,
425  *c_opyBtn,
426  *u_pBtn,
427  *d_ownBtn,
428  *s_epAddBtn,
429  *s_epRemBtn;
430 
431  QPixmap a_ctive,
432  d_isabled;
433 
434  KNFilterManager *f_ilManager;
435 
436 
437  protected slots:
438  void slotAddBtnClicked();
439  void slotDelBtnClicked();
440  void slotEditBtnClicked();
441  void slotCopyBtnClicked();
442  void slotUpBtnClicked();
443  void slotDownBtnClicked();
444  void slotSepAddBtnClicked();
445  void slotSepRemBtnClicked();
446  void slotSelectionChangedFilter();
447  void slotSelectionChangedMenu();
448 
449 };
450 
451 
453 class KNODE_EXPORT PostNewsTechnicalWidget : public KCModule, KNode::Ui::PostNewsTechnicalWidgetBase
454 {
455  Q_OBJECT
456  public:
458  explicit PostNewsTechnicalWidget( const KComponentData &inst, QWidget *parent = 0 );
459 
461  virtual void load();
463  virtual void save();
464 
465  private slots:
466  void slotSelectionChanged();
467  void slotAddBtnClicked();
468  void slotDelBtnClicked();
469  void slotEditBtnClicked();
470 
471 };
472 
473 
475 class KNODE_EXPORT XHeaderConfDialog : public KDialog
476 {
477  public:
482  explicit XHeaderConfDialog( const QString &h = QString(), QWidget *parent = 0 );
484  ~XHeaderConfDialog();
485 
487  QString result() const;
488 
489  private:
490  KLineEdit *mNameEdit, *mValueEdit;
491 };
492 
493 
495 class KNODE_EXPORT PostNewsComposerWidget : public KCModule
496 {
497  public:
501  explicit PostNewsComposerWidget( const KComponentData &inst, QWidget *parent = 0 );
502 };
503 
504 
506 class KNODE_EXPORT PostNewsSpellingWidget : public KCModule {
507 
508  public:
509  explicit PostNewsSpellingWidget( const KComponentData &inst, QWidget *parent = 0 );
510  ~PostNewsSpellingWidget();
511 
512  void save();
513 
514  protected:
515  Sonnet::ConfigWidget *c_conf;
516 
517 };
518 
519 
521 class KNODE_EXPORT PrivacyWidget : public KCModule {
522 
523  Q_OBJECT
524 
525  public:
526  explicit PrivacyWidget( const KComponentData &inst, QWidget *parent = 0 );
527  ~PrivacyWidget();
528 
529  void save();
530 
531  protected:
532  Kpgp::Config *c_onf;
533 };
534 
535 
536 
537 //BEGIN: Cleanup configuration -----------------------------------------------
538 
540 class KNODE_EXPORT GroupCleanupWidget : public QWidget {
541 
542  Q_OBJECT
543 
544  public:
545  explicit GroupCleanupWidget( Cleanup *data, QWidget *parent = 0 );
546 
547  void load();
548  void save();
549 
550  signals:
551  void changed();
552 
553  private:
554  QCheckBox *mDefault, *mExpEnabled, *mExpUnavailable, *mPreserveThreads;
555  KIntSpinBox *mExpDays, *mExpReadDays, *mExpUnreadDays;
556  QGroupBox *mExpGroup;
557  Cleanup *mData;
558 
559  private slots:
560  void slotDefaultToggled( bool state );
561 };
562 
563 
565 class KNODE_EXPORT CleanupWidget : public KCModule {
566 
567  Q_OBJECT
568 
569  public:
570  explicit CleanupWidget( const KComponentData &inst, QWidget *parent = 0 );
571  ~CleanupWidget();
572 
573  void load();
574  void save();
575 
576  protected:
577  QCheckBox *f_olderCB;
578  KIntSpinBox *f_olderDays;
579  QLabel *f_olderDaysL;
580 
581  Cleanup *d_ata;
582 
583 
584  protected slots:
585  void slotFolderCBtoggled(bool b);
586 
587  private:
588  GroupCleanupWidget *mGroupCleanup;
589 
590 };
591 
592 //END: Cleanup configuration -------------------------------------------------
593 
594 } //KNode
595 
596 #endif //KNCONFIGWIDGETS_H
KNNntpAccount
Represents an account on a news server.
Definition: knnntpaccount.h:56
KNode::IdentityWidget
Configuration widget for an identity.
Definition: identity_widget.h:39
KPageDialog
KNode::FilterListWidget::mMenuList
QListWidget * mMenuList
Definition: knconfigwidgets.h:420
KNode::AppearanceWidget::ColorListItem
Color list view item.
Definition: knconfigwidgets.h:166
KNode::FilterListWidget::u_pBtn
QPushButton * u_pBtn
Definition: knconfigwidgets.h:422
KNFilterManager
Filter manager.
Definition: knfiltermanager.h:55
KNode::FilterListWidget::f_ilManager
KNFilterManager * f_ilManager
Definition: knconfigwidgets.h:434
KNode::AppearanceWidget::f_ontCB
QCheckBox * f_ontCB
Definition: knconfigwidgets.h:218
KNode::FilterListWidget::mFilterList
QListWidget * mFilterList
Definition: knconfigwidgets.h:419
text
virtual QByteArray text(quint32 serialNumber) const =0
QWidget
QListWidget
KNode::DisplayedHeaderConfDialog::h_drC
KComboBox * h_drC
Definition: knconfigwidgets.h:350
KNDisplayedHeader
A header displayed in the article viewer.
Definition: kndisplayedheader.h:23
KDialog
KNode::AppearanceWidget::FontListItem::font
const QFont & font()
Returns the current font.
Definition: knconfigwidgets.h:198
KNode::DisplayedHeadersWidget::d_ata
DisplayedHeaders * d_ata
Definition: knconfigwidgets.h:325
KNode::AppearanceWidget::f_ntChngBtn
QPushButton * f_ntChngBtn
Definition: knconfigwidgets.h:220
KNode::Cleanup
Expirery/cleaup settings (globally or per account/group/folder).
Definition: knconfig.h:132
KNode::NntpAccountConfDialog
News server configuration dialog.
Definition: knconfigwidgets.h:116
KNode::XHeaderConfDialog
Dialog to edit additional headers.
Definition: knconfigwidgets.h:475
KNNntpAccount::Ptr
boost::shared_ptr< KNNntpAccount > Ptr
Shared pointer to a KNNntpAccount.
Definition: knnntpaccount.h:62
KNode::NntpAccountListWidget::AccountListItem::account
KNNntpAccount::Ptr account() const
Returns the account assiciated with this item.
Definition: knconfigwidgets.h:80
KNode::AppearanceWidget::mColorList
QListWidget * mColorList
The color selection list.
Definition: knconfigwidgets.h:215
KNode::PostNewsSpellingWidget::c_conf
Sonnet::ConfigWidget * c_conf
Definition: knconfigwidgets.h:515
KNode::DisplayedHeadersWidget::u_pBtn
QPushButton * u_pBtn
Definition: knconfigwidgets.h:318
knnntpaccount.h
knode_export.h
KNode::NntpAccountListWidget
News server account list widget.
Definition: knconfigwidgets.h:58
KNode::DisplayedHeadersWidget::HdrItem
Header list view item.
Definition: knconfigwidgets.h:301
KNode::PrivacyWidget
Privacy configuration widget.
Definition: knconfigwidgets.h:521
KNode::PrivacyWidget::c_onf
Kpgp::Config * c_onf
Definition: knconfigwidgets.h:532
KNode::DisplayedHeaderConfDialog::n_ameE
KLineEdit * n_ameE
Definition: knconfigwidgets.h:351
KNode::FilterListWidget::FilterListItem::filter
KNArticleFilter * filter() const
Returns the associated filter.
Definition: knconfigwidgets.h:408
KNode::AppearanceWidget::FontListItem
Font list view item.
Definition: knconfigwidgets.h:188
KNArticleFilter
Article filter.
Definition: knarticlefilter.h:33
KNode::DisplayedHeaderConfDialog::h_dr
KNDisplayedHeader * h_dr
Definition: knconfigwidgets.h:349
PostNewsTechnicalWidgetBase
KNode::DisplayedHeadersWidget
Configuration widget for headers displayed in the article viewer.
Definition: knconfigwidgets.h:286
KNode::PostNewsComposerWidget
Composer configuration widget.
Definition: knconfigwidgets.h:495
QGroupBox
KPIM::KScoringEditorWidget
Definition: kscoringeditor.h:313
KNode::NntpAccountListWidget::AccountListItem
Account list widget item.
Definition: knconfigwidgets.h:71
KNode::ReadNewsNavigationWidget
Read news navigation configuration page.
Definition: knconfigwidgets.h:264
KNode::ReadNewsViewerWidget
Article viewer configuration page.
Definition: knconfigwidgets.h:275
KNode::AppearanceWidget::ColorListItem::color
const QColor & color()
Returns the current color.
Definition: knconfigwidgets.h:176
KNode::GroupCleanupWidget
Configuration widget for group expireration.
Definition: knconfigwidgets.h:540
QListWidgetItem
KNode::DisplayedHeadersWidget::HdrItem::header
KNDisplayedHeader * header() const
Returns the associated header.
Definition: knconfigwidgets.h:310
ReadNewsGeneralWidgetBase
KNode::FilterListWidget
Configuration widget for filters.
Definition: knconfigwidgets.h:379
KNode::AppearanceWidget
Appearance configuration widget.
Definition: knconfigwidgets.h:145
KNode::ScoringWidget
Scoring configuration widget.
Definition: knconfigwidgets.h:364
KNode::PostNewsTechnicalWidget
Configuration widget for technical posting settings.
Definition: knconfigwidgets.h:453
KNode::CleanupWidget::f_olderDaysL
QLabel * f_olderDaysL
Definition: knconfigwidgets.h:579
KLineEdit
KNode::PostNewsSpellingWidget
Spell-checking configuration widget.
Definition: knconfigwidgets.h:506
KNode::DisplayedHeadersWidget::HdrItem::HdrItem
HdrItem(const QString &text, KNDisplayedHeader *header)
Creates a new header list view item.
Definition: knconfigwidgets.h:308
KNode::AppearanceWidget::mFontList
QListWidget * mFontList
The font selection list.
Definition: knconfigwidgets.h:217
KNode::CleanupWidget::f_olderCB
QCheckBox * f_olderCB
Definition: knconfigwidgets.h:577
KNode::DisplayedHeaderConfDialog
Configuration dialog for a single header displayed in the article viewer.
Definition: knconfigwidgets.h:339
KNODE_EXPORT
#define KNODE_EXPORT
Definition: knode_export.h:35
KNode::FilterListWidget::FilterListItem
Filter list view item.
Definition: knconfigwidgets.h:400
KNode::DisplayedHeadersWidget::mHeaderList
QListWidget * mHeaderList
Definition: knconfigwidgets.h:317
QLabel
KNode::ReadNewsGeneralWidget
General read news configuration page.
Definition: knconfigwidgets.h:248
KComboBox
KNode::CleanupWidget::d_ata
Cleanup * d_ata
Definition: knconfigwidgets.h:581
KNode::FilterListWidget::d_isabled
QPixmap d_isabled
Definition: knconfigwidgets.h:431
KNode::CleanupWidget::f_olderDays
KIntSpinBox * f_olderDays
Definition: knconfigwidgets.h:578
KNode::DisplayedHeaders
Headers displayed in the article viewer.
Definition: knconfig.h:80
KNode::DisplayedHeadersWidget::s_ave
bool s_ave
Definition: knconfigwidgets.h:323
KCModule
KNode::NntpAccountListWidget::AccountListItem::AccountListItem
AccountListItem(KNNntpAccount::Ptr a)
Creates a new account list item.
Definition: knconfigwidgets.h:76
KNode::CleanupWidget
Global cleanup configuration widget.
Definition: knconfigwidgets.h:565
QList< int >
KNode::FilterListWidget::FilterListItem::FilterListItem
FilterListItem(KNArticleFilter *filter, const QString &text)
Create new filter list item.
Definition: knconfigwidgets.h:406
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