summaryrefslogtreecommitdiffstats
path: root/kmdi/kmdidefines.h
blob: 8673876a5371b2bb8bdbc09c5e3cae38fd02601f (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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
//----------------------------------------------------------------------------
//    filename             : kmdidefines.h
//----------------------------------------------------------------------------
//    Project              : KDE MDI extension
//
//    begin                : 07/1999       by Szymon Stefanek as part of kvirc
//                                         (an IRC application)
//    changes              : 09/1999       by Falk Brettschneider to create an
//                                         stand-alone Qt extension set of
//                                         classes and a Qt-based library
//                           2000-2003     maintained by the KDevelop project
//
//    copyright            : (C) 1999-2003 by Falk Brettschneider
//                                         and
//                                         Szymon Stefanek ([email protected])
//    email                :  [email protected] (Falk Brettschneider)
//----------------------------------------------------------------------------
//
//----------------------------------------------------------------------------
//
//    This program is free software; you can redistribute it and/or modify
//    it under the terms of the GNU Library General Public License as
//    published by the Free Software Foundation; either version 2 of the
//    License, or (at your option) any later version.
//
//----------------------------------------------------------------------------
#ifndef _KMDI_DEFINES_H_
#define _KMDI_DEFINES_H_

#include <tdelibs_export.h>

#define KMDI_CHILDFRM_SEPARATOR 2
#define KMDI_CHILDFRM_BORDER 4
#define KMDI_CHILDFRM_DOUBLE_BORDER 8
#define KMDI_CHILDFRM_MIN_WIDTH 130

//----------------------------------------------------------------------------
/** 
* @short A namespace for the KMDI library
*/
namespace KMdi
{
   /** extent Qt events
      @see TQCustomEvent, TQEvent::User
      \code
      bool B_MyWidget::event( TQEvent* e) {
         if( e->type() == TQEvent::Type(TQEvent::User + int(KMdi::EV_Move))) {
            ...
         }
         ...
      }
      \endcode
   */
   enum EventType {
      EV_Move=1,
      EV_DragBegin,
      EV_DragEnd,
      EV_ResizeBegin,
      EV_ResizeEnd
   };

   /**
   * During KMdiMainFrm::addWindow the enum AddWindowFlags is used to determine how the view is initialy being added to the MDI system
   */
   enum AddWindowFlags {
      /**
      * standard is: show normal, attached, visible, document view (not toolview). Maximize, Minimize, Hide adds
      * appropriately. Detach adds a view that appears toplevel, ToolWindow adds the view as tool view.
      * That means it is stay-on-top and toplevel. UseKMdiSizeHint should use the restore geometry of the
      * latest current top childframe but is not supported yet.
      */
      StandardAdd = 0,
      Maximize    = 1,
      Minimize    = 2,
      Hide        = 4,
      Detach      = 8,
      ToolWindow  = 16,
      UseKMdiSizeHint = 32,
      AddWindowFlags = 0xff
   };

   enum FrameDecor {
      Win95Look = 0,
      KDE1Look  = 1,
      KDELook  = 2,
      KDELaptopLook = 3
   };

   enum MdiMode {
      UndefinedMode  = 0,
      ToplevelMode   = 1,
      ChildframeMode = 2,
      TabPageMode    = 3,
      IDEAlMode      = 4
   };

   enum TabWidgetVisibility {
      AlwaysShowTabs         = 0,
      ShowWhenMoreThanOneTab = 1,
      NeverShowTabs          = 2
   };

  /**
   * The style of the toolview tabs
   * \since 3.3
   */
   enum ToolviewStyle {
   /** Show only icons on the toolview tabs. The visible toolviews contain both the icon and text. */
      IconOnly = 0,
   /** Show only the text description on the toolview tabs. */
      TextOnly = 1,
   /** Show both the icon and description on the toolview tabs. */
      TextAndIcon = 3
   };
} //namespace

#endif //_KMDIDEFINES_H_