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

twin

  • twin
geometrytip.cpp
1/*****************************************************************
2 KWin - the KDE window manager
3 This file is part of the KDE project.
4
5Copyright (c) 2003, Karol Szwed <kszwed@kde.org>
6
7You can Freely distribute this program under the GNU General Public
8License. See the file "COPYING" for the exact licensing terms.
9******************************************************************/
10
11#include "geometrytip.h"
12
13namespace KWinInternal
14{
15
16GeometryTip::GeometryTip( const XSizeHints* xSizeHints, bool save_under ):
17 TQLabel(NULL, "twingeometry" )
18 {
19 setMargin(1);
20 setIndent(0);
21 setLineWidth(1);
22 setFrameStyle( TQFrame::Raised | TQFrame::StyledPanel );
23 setAlignment( AlignCenter | AlignTop );
24 sizeHints = xSizeHints;
25 if( save_under )
26 {
27 XSetWindowAttributes attr;
28 attr.save_under = True; // use saveunder if possible to avoid weird effects in transparent mode
29 XChangeWindowAttributes( tqt_xdisplay(), winId(), CWSaveUnder, &attr );
30 }
31 }
32
33GeometryTip::~GeometryTip()
34 {
35 }
36
37void GeometryTip::setGeometry( const TQRect& geom )
38 {
39 int w = geom.width();
40 int h = geom.height();
41
42 if (sizeHints)
43 {
44 if (sizeHints->flags & PResizeInc)
45 {
46 w = ( w - sizeHints->base_width ) / sizeHints->width_inc;
47 h = ( h - sizeHints->base_height ) / sizeHints->height_inc;
48 }
49 }
50
51 h = TQMAX( h, 0 ); // in case of isShade() and PBaseSize
52 TQString pos;
53 pos.sprintf( "%+d,%+d<br>(<b>%d&nbsp;x&nbsp;%d</b>)",
54 geom.x(), geom.y(), w, h );
55 setText( pos );
56 adjustSize();
57 move( geom.x() + ((geom.width() - width()) / 2),
58 geom.y() + ((geom.height() - height()) / 2) );
59 }
60
61} // namespace
62
63#include "geometrytip.moc"

twin

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

twin

Skip menu "twin"
  • kate
  • libkonq
  • twin
  •   lib
Generated for twin by doxygen 1.9.4
This website is maintained by Timothy Pearson.