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

ktimetracker

  • sources
  • kde-4.12
  • kdepim
  • ktimetracker
treeviewheadercontextmenu.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2007 by Mathias Soeken <msoeken@tzi.de>
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License along
15  * with this program; if not, write to the
16  * Free Software Foundation, Inc.
17  * 51 Franklin Street, Fifth Floor
18  * Boston, MA 02110-1301 USA.
19  *
20  */
21 
22 #ifndef TREEVIEWHEADERCONTEXTMENU_H
23 #define TREEVIEWHEADERCONTEXTMENU_H
24 
25 #include <QObject>
26 #include <QPoint>
27 #include <QHash>
28 #include <QVector>
29 
30 class QAction;
31 class QTreeView;
32 
33 class KMenu;
34 
47 class TreeViewHeaderContextMenu : public QObject {
48  Q_OBJECT
49  Q_PROPERTY(int style READ style)
50  Q_PROPERTY(KMenu* menu READ menu)
51 
52  public:
53  enum { AlwaysCheckBox, CheckBoxOnChecked, ShowHideText };
54 
55  public:
56  explicit TreeViewHeaderContextMenu( QObject *parent, QTreeView *widget, int style = AlwaysCheckBox, QVector<int> excludedColumns = QVector<int>() );
57  ~TreeViewHeaderContextMenu();
58 
59  private:
60  void updateAction( QAction *action, int column );
61 
62  private Q_SLOTS:
63  void slotCustomContextMenuRequested( const QPoint& );
64 
65  protected Q_SLOTS:
66  void updateActions();
67  void slotTriggered( QAction* );
68  void slotAboutToShow();
69 
70  protected:
71  QTreeView *mWidget;
72  QVector<QAction*> mActions;
73  KMenu *mContextMenu;
74  int mStyle;
75  QHash<QAction*, int> mActionColumnMapping;
76  QVector<int> mExcludedColumns;
77 
78  public:
79  int style() const { return mStyle; }
80  void addExcludedColumn( int column ) { mExcludedColumns << column; updateActions(); }
81  void addExcludedColumns( QVector<int> columns ) { mExcludedColumns << columns; updateActions(); }
82  KMenu *menu() const { return mContextMenu; }
83 
84  Q_SIGNALS:
85  void columnToggled( int );
86 };
87 
88 #endif
TreeViewHeaderContextMenu::mExcludedColumns
QVector< int > mExcludedColumns
Definition: treeviewheadercontextmenu.h:76
TreeViewHeaderContextMenu::slotAboutToShow
void slotAboutToShow()
Definition: treeviewheadercontextmenu.cpp:112
TreeViewHeaderContextMenu::updateActions
void updateActions()
Definition: treeviewheadercontextmenu.cpp:70
TreeViewHeaderContextMenu::columnToggled
void columnToggled(int)
TreeViewHeaderContextMenu::menu
KMenu * menu() const
Definition: treeviewheadercontextmenu.h:82
TreeViewHeaderContextMenu::CheckBoxOnChecked
Definition: treeviewheadercontextmenu.h:53
TreeViewHeaderContextMenu::mWidget
QTreeView * mWidget
Definition: treeviewheadercontextmenu.h:71
TreeViewHeaderContextMenu::TreeViewHeaderContextMenu
TreeViewHeaderContextMenu(QObject *parent, QTreeView *widget, int style=AlwaysCheckBox, QVector< int > excludedColumns=QVector< int >())
Definition: treeviewheadercontextmenu.cpp:33
TreeViewHeaderContextMenu::mContextMenu
KMenu * mContextMenu
Definition: treeviewheadercontextmenu.h:73
TreeViewHeaderContextMenu::mActions
QVector< QAction * > mActions
Definition: treeviewheadercontextmenu.h:72
TreeViewHeaderContextMenu
ContextMenu for QTreeView::header() to toggle the visible state of the columns.
Definition: treeviewheadercontextmenu.h:47
QObject
TreeViewHeaderContextMenu::addExcludedColumn
void addExcludedColumn(int column)
Definition: treeviewheadercontextmenu.h:80
TreeViewHeaderContextMenu::ShowHideText
Definition: treeviewheadercontextmenu.h:53
TreeViewHeaderContextMenu::mStyle
int mStyle
Definition: treeviewheadercontextmenu.h:74
TreeViewHeaderContextMenu::AlwaysCheckBox
Definition: treeviewheadercontextmenu.h:53
TreeViewHeaderContextMenu::~TreeViewHeaderContextMenu
~TreeViewHeaderContextMenu()
Definition: treeviewheadercontextmenu.cpp:55
TreeViewHeaderContextMenu::addExcludedColumns
void addExcludedColumns(QVector< int > columns)
Definition: treeviewheadercontextmenu.h:81
TreeViewHeaderContextMenu::mActionColumnMapping
QHash< QAction *, int > mActionColumnMapping
Definition: treeviewheadercontextmenu.h:75
TreeViewHeaderContextMenu::slotTriggered
void slotTriggered(QAction *)
Definition: treeviewheadercontextmenu.cpp:99
TreeViewHeaderContextMenu::style
int style() const
Definition: treeviewheadercontextmenu.h:79
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:55:10 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

ktimetracker

Skip menu "ktimetracker"
  • Main Page
  • Namespace List
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Modules

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