summaryrefslogtreecommitdiffstats
path: root/kwin-styles/icewm/icewm.h
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-11-07 21:50:31 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-11-07 21:50:31 -0600
commite35f3fe53cd8df85d4fd04e49dfffbaeac971cdf (patch)
tree95836fc22de909b3b20dbf3fc3dea230e5e58e3b /kwin-styles/icewm/icewm.h
parenta5355f151396be579eba5838c7d8d93a43362cd7 (diff)
downloadtdeartwork-e35f3fe53cd8df85d4fd04e49dfffbaeac971cdf.tar.gz
tdeartwork-e35f3fe53cd8df85d4fd04e49dfffbaeac971cdf.zip
Rename kwin to twin (Part 2 of 2)
Diffstat (limited to 'kwin-styles/icewm/icewm.h')
-rw-r--r--kwin-styles/icewm/icewm.h193
1 files changed, 0 insertions, 193 deletions
diff --git a/kwin-styles/icewm/icewm.h b/kwin-styles/icewm/icewm.h
deleted file mode 100644
index f343912c..00000000
--- a/kwin-styles/icewm/icewm.h
+++ /dev/null
@@ -1,193 +0,0 @@
-/*
- $Id$
-
- Gallium-IceWM themeable KWin client
-
- Copyright 2001
- Karol Szwed <gallium@kde.org>
- http://gallium.n3.net/
-
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; see the file COPYING. If not, write to
- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA.
-
- -----------------------------------------------------------------------------
- This client loads most icewm 1.0.X pixmap themes, without taking into account
- specific font settings for clients, or coloured mouse cursors. Titlebar
- fonts can be changed via the kde control center. Bi-colour mouse cursors
- may be added in future if requested by users, as well as theme font support.
- Any styles using inbuilt icewm titlebar drawing without using pixmaps (e.g.
- Warp4, win95 etc.) are not fully supported, and may cause drawing errors,
- as these themes use in-built icewm drawing mechanisms.
-
- When a pixmap theme is not present (or a corrupt one is present) then very
- plain title decorations are painted instead, so that users don't see
- non-painted window areas where possible ;)
-
- At a later date, frame shaping may be added if really requested, and an
- update to support the latest icewm 1.1.X theme format may be made.
-*/
-
-#ifndef __KDEGALLIUM_ICEWM_H
-#define __KDEGALLIUM_ICEWM_H
-
-#include <tqbutton.h>
-#include <tqlayout.h>
-#include <kpixmap.h>
-#include <kdecoration.h>
-#include <kdecorationfactory.h>
-#include <tqbutton.h>
-class TQLabel;
-class TQSpacerItem;
-class TQBoxLayout;
-class TQGridLayout;
-
-namespace IceWM {
-
-class IceWMClient;
-
-// Pixmap group
-enum { InActive=0, Active };
-// Pixmap stretching mode
-enum { Vertical=0, Horizontal=1 };
-
-
-// Handles the resetClients() signal from the Options class,
-// and manages the dynamic pixmaps, configuration and theme changing
-class ThemeHandler: public KDecorationFactory
-{
- public:
- ThemeHandler();
- ~ThemeHandler();
-
- virtual KDecoration* createDecoration( KDecorationBridge* );
- virtual bool reset( unsigned long changed );
- virtual bool supports( Ability ability );
-
- private:
- bool initialized;
- TQString themeName;
-
- void readConfig();
- TQColor decodeColor( TQString& s );
- bool isFrameValid();
- void initTheme();
- void freePixmaps();
- void freePixmapGroup( TQPixmap* p[] );
- void setPixmap( TQPixmap* p[], TQString s1, TQString s2, bool
- stretch=false, bool stretchHoriz=true );
- void setPixmapButton( TQPixmap* p[], TQString s1, TQString s2);
- TQPixmap* stretchPixmap( TQPixmap* src, bool stretchHoriz=true,
- int stretchSize=-1);
- TQPixmap* duplicateValidPixmap( bool act, int size = -1 );
- void convertButtons( TQString& s );
- TQString reverseString( TQString s );
-};
-
-
-class IceWMButton : public TQButton
-{
- public:
- IceWMButton( IceWMClient *parent=0, const char *name=0,
- TQPixmap* (*p)[2]=0L, bool isToggle=false,
- const TQString& tip=NULL, const int realizeBtns = Qt::LeftButton );
- void setTipText(const TQString &tip);
- void usePixmap( TQPixmap* (*p)[2] );
- TQSize tqsizeHint() const;
- void turnOn( bool isOn );
- ButtonState last_button;
-
- protected:
- void mousePressEvent( TQMouseEvent* e );
- void mouseReleaseEvent( TQMouseEvent* e );
-
- void drawButton( TQPainter *p );
- void drawButtonLabel( TQPainter * ) {;}
-
- private:
- int m_realizeButtons;
- IceWMClient* client;
- TQPixmap* (*pix)[2]; // Points to active/inactive pixmap array
-};
-
-
-class IceWMClient : public KDecoration
-{
- Q_OBJECT
- TQ_OBJECT
- public:
- IceWMClient( KDecorationBridge* bridge, KDecorationFactory* factory );
- ~IceWMClient();
-
- virtual void init();
- virtual void resize(const TQSize&);
- virtual bool eventFilter( TQObject* o, TQEvent* e );
-
- protected:
- void resizeEvent( TQResizeEvent* );
- void paintEvent( TQPaintEvent* );
- void showEvent( TQShowEvent* );
- void mouseDoubleClickEvent( TQMouseEvent * );
- void wheelEvent( TQWheelEvent * );
- virtual void captionChange();
- virtual void maximizeChange();
- virtual void shadeChange();
- virtual void activeChange();
- // void shadeChange(bool); /* KWin Client class doesn't provide this yet */
- Position mousePosition( const TQPoint& ) const;
- void renderMenuIcons();
- void iconChange();
- virtual void desktopChange( );
- virtual void borders(int&, int&, int&, int&) const;
- virtual TQSize tqminimumSize() const;
-
- protected slots:
- void slotMaximize();
- void menuButtonPressed();
- void menuButtonReleased();
- void toggleShade();
-
- private:
- // These are all the icewm button types :)
- enum Buttons{ BtnSysMenu=0, BtnClose, BtnMaximize, BtnMinimize,
- BtnHide, BtnRollup, BtnDepth, BtnCount };
-
- TQString shortenCaption( const TQString* s );
- void calcHiddenButtons();
- int titleTextWidth( const TQString& s );
- void addClientButtons( const TQString& s );
- TQSpacerItem* addPixmapSpacer( TQPixmap* p[],
- TQSizePolicy::SizeType = TQSizePolicy::Maximum, int hsize = -1 );
-
- IceWMButton* button[ IceWMClient::BtnCount ];
- TQPixmap* menuButtonWithIconPix[2];
- TQSpacerItem* titleSpacerJ;
- TQSpacerItem* titleSpacerL;
- TQSpacerItem* titleSpacerS;
- TQSpacerItem* titleSpacerP;
- TQSpacerItem* titlebar;
- TQSpacerItem* titleSpacerM;
- TQSpacerItem* titleSpacerB;
- TQSpacerItem* titleSpacerR;
- TQSpacerItem* titleSpacerQ;
- TQBoxLayout* hb;
- TQGridLayout* grid;
- bool m_closing;
-};
-
-}
-
-#endif
-
-// vim: ts=4