• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • kwin
 

kwin

  • kwin
tabbox.h
1 /*****************************************************************
2  KWin - the KDE window manager
3  This file is part of the KDE project.
4 
5 Copyright (C) 1999, 2000 Matthias Ettrich <ettrich@kde.org>
6 Copyright (C) 2003 Lubos Lunak <l.lunak@kde.org>
7 
8 You can Freely distribute this program under the GNU General Public
9 License. See the file "COPYING" for the exact licensing terms.
10 ******************************************************************/
11 
12 #ifndef KWIN_TABBOX_H
13 #define KWIN_TABBOX_H
14 
15 #include <tqframe.h>
16 #include <tqtimer.h>
17 #include <tqvaluelist.h>
18 #include "utils.h"
19 
20 class TQLabel;
21 
22 namespace KWinInternal
23 {
24 
25 class Workspace;
26 class Client;
27 
28 class TabBox : public TQFrame
29  {
30  Q_OBJECT
31  public:
32  TabBox( Workspace *ws, const char *name=0 );
33  ~TabBox();
34 
35  Client* currentClient();
36  void setCurrentClient( Client* c );
37  int currentDesktop();
38 
39  // DesktopMode and WindowsMode are based on the order in which the desktop
40  // or window were viewed.
41  // DesktopListMode lists them in the order created.
42  enum Mode { DesktopMode, DesktopListMode, WindowsMode };
43  void setMode( Mode mode );
44  Mode mode() const;
45 
46  void reset();
47  void nextPrev( bool next = TRUE);
48 
49  void delayedShow();
50  void hide();
51 
52  void handleMouseEvent( XEvent* );
53 
54  Workspace* workspace() const;
55 
56  void reconfigure();
57 
58  protected:
59  void showEvent( TQShowEvent* );
60  void hideEvent( TQHideEvent* );
61  void drawContents( TQPainter * );
62 
63  private:
64  void createClientList(ClientList &list, int desktop /*-1 = all*/, Client *start, bool chain);
65  void updateOutline();
66 
67  private:
68  Client* current_client;
69  Mode m;
70  Workspace* wspace;
71  ClientList clients;
72  int desk;
73  int lineHeight;
74  bool showMiniIcon;
75  TQTimer delayedShowTimer;
76  TQString no_tasks;
77  bool options_traverse_all;
78  Window outline_left, outline_right, outline_top, outline_bottom;
79  };
80 
81 
85 inline Workspace* TabBox::workspace() const
86  {
87  return wspace;
88  }
89 
95 inline TabBox::Mode TabBox::mode() const
96  {
97  return m;
98  }
99 
100 } // namespace
101 
102 #endif

kwin

Skip menu "kwin"
  • Main Page
  • Alphabetical List
  • Class List
  • File List
  • Class Members

kwin

Skip menu "kwin"
  • kate
  • kwin
  •   lib
  • libkonq
Generated for kwin by doxygen 1.8.1.2
This website is maintained by Timothy Pearson.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. |