summaryrefslogtreecommitdiffstats
path: root/src/komposefullscreenwidget.h
blob: 15f3fdf78d03b78440ae25fbb3ecd94494e58281 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
//
// C++ Interface: komposefullscreenwidget
//
// Description:
//
//
// Author: Hans Oischinger <hans.oischinger@kde-mail.net>, (C) 2004
//
// Copyright: See COPYING file that comes with this distribution
//
//
#ifndef KOMPOSEFULLSCREENWIDGET_H
#define KOMPOSEFULLSCREENWIDGET_H


#include "komposetaskcontainerwidget.h"
#include "komposesettings.h"


class KRootPixmap;
class KomposeDesktopWidget;
class TDEPopupMenu;

/**
@author Hans Oischinger
*/
class KomposeFullscreenWidget : public KomposeTaskContainerWidget
{
Q_OBJECT
public:
  KomposeFullscreenWidget( int displayType = KOMPOSEDISPLAY_VIRTUALDESKS ,KomposeLayout *l = 0 );

  virtual ~KomposeFullscreenWidget();

  int getHeightForWidth( int w ) const;
  int getWidthForHeight( int h ) const;
  double getAspectRatio();
 
  void setType( int t ) { type = t; initView(); }
  int getType() { return type; }
  
protected:
  void initView();
  void initMenu();
  void createDesktopWidgets();

  void mouseReleaseEvent( TQMouseEvent * );
  void mousePressEvent( TQMouseEvent * );
  void keyPressEvent( TQKeyEvent *e );
  void keyReleaseEvent( TQKeyEvent *e );
//   void paintEvent ( TQPaintEvent * );

  bool focusNeighbourDesk( int direction );

  void destroyChildWidgets();
//   virtual void closeEvent ( TQCloseEvent * e );

protected slots:
  void desktopChanged( KomposeDesktopWidget* desk );

private:
  int type;
  TDEPopupMenu *menu;
  KRootPixmap *rootpix;
  KomposeDesktopWidget *current;
};

#endif