From e35f3fe53cd8df85d4fd04e49dfffbaeac971cdf Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Mon, 7 Nov 2011 21:50:31 -0600 Subject: Rename kwin to twin (Part 2 of 2) --- kwin-styles/cde/CMakeLists.txt | 34 -- kwin-styles/cde/Makefile.am | 22 - kwin-styles/cde/cde.desktop | 6 - kwin-styles/cde/cdeclient.cpp | 863 ---------------------------------- kwin-styles/cde/cdeclient.h | 119 ----- kwin-styles/cde/config/CMakeLists.txt | 28 -- kwin-styles/cde/config/Makefile.am | 17 - kwin-styles/cde/config/config.cpp | 131 ------ kwin-styles/cde/config/config.h | 52 -- 9 files changed, 1272 deletions(-) delete mode 100644 kwin-styles/cde/CMakeLists.txt delete mode 100644 kwin-styles/cde/Makefile.am delete mode 100644 kwin-styles/cde/cde.desktop delete mode 100644 kwin-styles/cde/cdeclient.cpp delete mode 100644 kwin-styles/cde/cdeclient.h delete mode 100644 kwin-styles/cde/config/CMakeLists.txt delete mode 100644 kwin-styles/cde/config/Makefile.am delete mode 100644 kwin-styles/cde/config/config.cpp delete mode 100644 kwin-styles/cde/config/config.h (limited to 'kwin-styles/cde') diff --git a/kwin-styles/cde/CMakeLists.txt b/kwin-styles/cde/CMakeLists.txt deleted file mode 100644 index 790ff84c..00000000 --- a/kwin-styles/cde/CMakeLists.txt +++ /dev/null @@ -1,34 +0,0 @@ -################################################# -# -# (C) 2011 Golubev Alexander -# fatzer2 (AT) gmail.com -# -# Improvements and feedback are welcome -# -# This file is released under GPL >= 2 -# -################################################# - -add_subdirectory( config ) - -include_directories( - ${CMAKE_CURRENT_BINARY_DIR} - ${TDE_INCLUDE_DIR} - ${TQT_INCLUDE_DIRS} -) - -link_directories( - ${TQT_LIBRARY_DIRS} -) - -##### other data ################################ - -install( FILES cde.desktop DESTINATION ${DATA_INSTALL_DIR}/twin ) - -##### twin3_cde ################################## - -tde_add_kpart( twin3_cde AUTOMOC - SOURCES cdeclient.cpp - LINK tdecorations-shared - DESTINATION ${PLUGIN_INSTALL_DIR} -) diff --git a/kwin-styles/cde/Makefile.am b/kwin-styles/cde/Makefile.am deleted file mode 100644 index 129a22bc..00000000 --- a/kwin-styles/cde/Makefile.am +++ /dev/null @@ -1,22 +0,0 @@ - -INCLUDES = $(all_includes) - -SUBDIRS = . config - -kde_module_LTLIBRARIES = twin3_cde.la - -twin3_cde_la_SOURCES = cdeclient.cpp -twin3_cde_la_LDFLAGS = $(all_libraries) $(KDE_PLUGIN) -module $(LIB_QT) $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx -twin3_cde_la_LIBADD = -ltdecorations - -METASOURCES = AUTO -noinst_HEADERS = cdeclient.h - -lnkdir = $(kde_datadir)/twin/ -lnk_DATA = cde.desktop - -EXTRA_DIST = $(lnk_DATA) - -###KMAKE-start (don't edit or delete this block) - -###KMAKE-end diff --git a/kwin-styles/cde/cde.desktop b/kwin-styles/cde/cde.desktop deleted file mode 100644 index a5f1ac66..00000000 --- a/kwin-styles/cde/cde.desktop +++ /dev/null @@ -1,6 +0,0 @@ -[Desktop Entry] -Name=CDE -Name[af]=Cde -Name[hi]=सीडीई -Name[ne]=सीडीई -X-KDE-Library=twin3_cde diff --git a/kwin-styles/cde/cdeclient.cpp b/kwin-styles/cde/cdeclient.cpp deleted file mode 100644 index 03eb14fa..00000000 --- a/kwin-styles/cde/cdeclient.cpp +++ /dev/null @@ -1,863 +0,0 @@ -/* - * $Id$ - * - * CDE KWin client - emulates the look and feel - * of dtwm, the CDE window manager. - * - * Copyright (c) 2000-2001, 2002 - * Chris Lee - * Lennart Kudling - * Fredrik H�glund - * - * Copyright (c) 2003,2004 - * Luciano Montanaro - * - * Originally based on the KStep client. - * - * Distributed under the terms of the BSD license. - */ - -#include "cdeclient.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -extern "C" KDE_EXPORT KDecorationFactory* create_factory() -{ - return new CDE::CdeClientFactory(); -} - -namespace CDE { - -static int s_frameWidth = 5; -static int s_buttonSize = 19; -static bool titlebarButtonMode = true; -static bool coloredFrame = true; -static TQt::AlignmentFlags textAlignment = TQt::AlignHCenter; - -// Precomputed border sizes for accessibility -// The sizes are applied for tiny -> normal -> large -> very large -> huge -> -// very huge -> oversized -static const int borderSizes[] = { 4, 6, 9, 12, 18, 26, 42 }; - -// Parameters needed to draw the widgets (offsets from the border) -static int s_o1 = 4; -static int s_o2 = 7; -static int s_w1 = 11; -static int s_w2 = 5; - -// These are the line segments for the X on the close button - -static const int NUM_CLOSEL_COORDS = 2 * 14; -static const TQCOORD closeLLinesTemplate[NUM_CLOSEL_COORDS] = - { 14,3, 12,3, 12,3, 9,6, 5,3, 3,3, 3,3, 3,5, - 3,5, 6,8, 6,9, 3,12, 3,12, 3,14 }; - -static const int NUM_CLOSED_COORDS = 2 * 18; -static const TQCOORD closeDLinesTemplate[NUM_CLOSED_COORDS] = - { 5,3, 8,6, 14,4, 14,5, 14,5, 11,8, 11,9, 14,12, 14,12, 14,14, - 14,14, 12,14, 12,14, 9,11, 8,11, 5,14, 5,14, 4,14 }; - -static TQCOORD closeLLines[NUM_CLOSEL_COORDS]; - -static TQCOORD closeDLines[NUM_CLOSED_COORDS]; - -// These are the line segments for the ? on the help button -static const int NUM_HELPL_COORDS = 2 * 16; -static const TQCOORD helpLLinesTemplate[NUM_HELPL_COORDS] = - { 4,6, 4,5, 4,5, 6,3, 6,3, 9,3, 10,3, 11,4, - 9,7, 7,9, 7,9, 7,10, 7,14, 7,13, 8,12, 9,12 }; - -static const int NUM_HELPD_COORDS = 2 * 14; -static const TQCOORD helpDLinesTemplate[NUM_HELPD_COORDS] = - { 5,7, 8,6, 12,5, 12,8, 12,8, 10,10, 10,10, 10,11, - 10,11, 8,11, 10,14, 10,13, 9,15, 8,15 }; - -static TQCOORD helpLLines[NUM_HELPL_COORDS]; - -static TQCOORD helpDLines[NUM_HELPD_COORDS]; - - -// This question mark is taller than the one above and -// is positioned one pixel higher on the button -/* -static const TQCOORD helpLLines[] = - { 4,5, 4,4, 4,4, 6,2, 6,2, 9,2, 10,2, 11,3, - 9,6, 7,8, 7,9, 7,10, 7,13, 8,12, 8,12, 9,12 }; - -static const TQCOORD helpDLines[] = - { 5,6, 8,5, 12,4, 12,7, 12,7, 10,9, 10,10, 10,11, - 10,11, 8,11, 10,13, 9,14, 9,14, 8,14 }; -*/ -// Same as the one above but with a larger dot under -// the question mark -/* -static const TQCOORD helpLLines[] = - { 4,5, 4,4, 4,4, 6,2, 6,2, 9,2, 10,2, 11,3, - 9,6, 7,8, 7,9, 7,10, 7,14, 7,13, 8,12, 9,12 }; - -static const TQCOORD helpDLines[] = - { 5,6, 8,5, 12,4, 12,7, 12,7, 10,9, 10,10, 10,11, - 10,11, 8,11, 10,13, 10,14, 9,15, 8,15 }; -*/ - -static inline const KDecorationOptions* options() -{ - return KDecoration::options(); -} - -static void fixColorGroup(TQColorGroup & tqcolorGroup) -{ - TQColor light = tqcolorGroup.light(); - - int hue, saturation, value; - - light.hsv(&hue, &saturation, &value); - - if (value < 128) - { - light.setHsv(hue, saturation, 128); - tqcolorGroup.setColor(TQColorGroup::Light, light); - } - - TQColor dark = tqcolorGroup.dark(); - - dark.hsv(&hue, &saturation, &value); - - if (value < 84) - { - dark.setHsv(hue, saturation, 84); - tqcolorGroup.setColor(TQColorGroup::Dark, dark); - } -} - -// scaling helper function used to scale the close 'X' glyph - -static int scaleCoord(int c) -{ - if (c < 6) return c; - if (c <= 11) return c + (s_buttonSize - 19) / 2; - return c + s_buttonSize - 19; -} - -static void readConfig(CdeClientFactory *f) -{ - KConfig conf( "twincderc" ); - - conf.setGroup("General"); - coloredFrame = conf.readBoolEntry( "UseTitleBarBorderColors", true ); - titlebarButtonMode = conf.readBoolEntry( "TitlebarButtonMode", true ); - - TQString value = conf.readEntry( "TextAlignment", "AlignHCenter" ); - if ( value == "AlignLeft" ) - textAlignment = TQt::AlignLeft; - else if ( value == "AlignHCenter" ) - textAlignment = TQt::AlignHCenter; - else if ( value == "AlignRight" ) - textAlignment = TQt::AlignRight; - - - // find preferred border size - int i = options()->preferredBorderSize(f); - if (i >= 0 && i <= 6) s_frameWidth = borderSizes[i]; - - // Do not allow malicious users or corrupt config files to - // go past the domain of the valid border sizes. - - // Size limit increased for accessability. LM - if (s_frameWidth < 0) s_frameWidth = 0; - if (s_frameWidth > 30) s_frameWidth = 30; - - // Force button size to be in a reasonable range. - // If the frame width is large, the button size must be large too. - s_buttonSize = TQFontMetrics(options()->font( true )).height() + 2; - if (s_buttonSize < 19) s_buttonSize = 19; - if (s_buttonSize < s_frameWidth) s_buttonSize = s_frameWidth; - s_buttonSize |= 1; // Be sure the button size is odd. - - // Calculate widths and offsets for the button icons - s_o1 = s_buttonSize * 4 / 19; - s_o2 = s_buttonSize * 7 / 19; - s_w1 = s_buttonSize - 2 * s_o1; - s_w2 = s_buttonSize - 2 * s_o2; - - // Copy and scale the close icon - int offset = (s_buttonSize - 19) / 2; - for (int i = 0; i < NUM_CLOSEL_COORDS; i++) { - closeLLines[i] = scaleCoord(closeLLinesTemplate[i]); - } - for (int i = 0; i < NUM_CLOSED_COORDS; i++) { - closeDLines[i] = scaleCoord(closeDLinesTemplate[i]); - } - // Copy and center the help icon - for (int i = 0; i < NUM_HELPL_COORDS; i++) { - helpLLines[i] = helpLLinesTemplate[i] + offset; - } - for (int i = 0; i < NUM_HELPD_COORDS; i++) { - helpDLines[i] = helpDLinesTemplate[i] + offset; - } -} - -// --------------------------------------- - -CdeClientFactory::CdeClientFactory() -{ - CDE::readConfig(this); -} - -CdeClientFactory::~CdeClientFactory() -{ -} - -KDecoration *CdeClientFactory::createDecoration(KDecorationBridge *b) -{ - return new CdeClient(b, this); -} - -bool CdeClientFactory::reset(unsigned long /*changed*/) -{ - // TODO Do not recreate decorations if it is not needed. Look at - // ModernSystem for how to do that - // For now just return true. - CDE::readConfig(this); - return true; -} - -bool CdeClientFactory::supports( Ability ability ) -{ - switch( ability ) - { - case AbilityAnnounceButtons: - case AbilityButtonMenu: - case AbilityButtonOnAllDesktops: - case AbilityButtonHelp: - case AbilityButtonMinimize: - case AbilityButtonMaximize: - case AbilityButtonClose: - return true; - default: - return false; - }; -} - -TQValueList< CdeClientFactory::BorderSize > -CdeClientFactory::borderSizes() const -{ - // the list must be sorted - return TQValueList< BorderSize >() << BorderTiny << BorderNormal << - BorderLarge << BorderVeryLarge << BorderHuge << - BorderVeryHuge << BorderOversized; -} - -// --------------------------------------- - -CdeClient::CdeClient(KDecorationBridge *b, KDecorationFactory *f) - : KDecoration(b, f) -{ -} - -void CdeClient::init() -{ - createMainWidget(WStaticContents | WResizeNoErase | WRepaintNoErase); - widget()->installEventFilter(this); - - widget()->setBackgroundMode(NoBackground); - - mainLayout = new TQVBoxLayout(widget()); - TQBoxLayout* windowLayout = new TQBoxLayout(0, TQBoxLayout::LeftToRight, 0, 0, 0); - titleLayout = new TQBoxLayout(0, TQBoxLayout::LeftToRight, 0, 0, 0); - - // TODO Check if this stuff can be simplified. - // Border sizes are from a fixed set now. - if ( s_frameWidth > 1 ) - { - // the style normally draws a black frame around the window, so we - // need 1 line of space for that in addition to the normal window frame - mainLayout->setMargin( s_frameWidth+1 ); - } - else - { - // but if the frame is set to just 1 pixel we just draw the black frame - // instead of the normal window frame, so no extra space is needed. if - // its 0 we don't draw anything. - mainLayout->setMargin( s_frameWidth ); - } - - mainLayout->addLayout( titleLayout ); - mainLayout->addLayout( windowLayout, 1 ); - - if (isPreview()) - windowLayout->addWidget(new TQLabel(i18n( - "
CDE preview
"), widget()), 1); - else - windowLayout->addItem( new TQSpacerItem( 0, 0 )); - - for ( int i=0; i < BtnCount; i++ ) - button[i] = NULL; - - addClientButtons( options()->titleButtonsLeft() ); - - titlebar = new TQSpacerItem( 10, 16, TQSizePolicy::Expanding, TQSizePolicy::Minimum ); - titleLayout->addItem( titlebar ); - - addClientButtons( options()->titleButtonsRight() ); - - titlebarPressed = false; - closing = false; -} - -void CdeClient::addClientButtons( const TQString& s ) -{ - if ( s.length() > 0 ) - for ( unsigned int i = 0; i < s.length(); i++ ) - { - switch( s[i].latin1() ) - { - // Menu button - case 'M': - if ( ! button[BtnMenu] ) - { - button[BtnMenu] = new CdeButton( this, "menu", BtnMenu, i18n("Menu"), Qt::LeftButton|Qt::RightButton ); - connect( button[BtnMenu], TQT_SIGNAL(pressed()), TQT_SLOT(menuButtonPressed()) ); - connect( button[BtnMenu], TQT_SIGNAL(released()), TQT_SLOT(menuButtonReleased()) ); - titleLayout->addWidget( button[BtnMenu] ); - } - break; - - //Help button - case 'H': - if ( providesContextHelp() && (! button[BtnHelp] ) ) - { - button[BtnHelp] = new CdeButton( this, "help", BtnHelp, i18n("Help") ); - connect(button[BtnHelp], - TQT_SIGNAL(clicked()), TQT_SLOT(showContextHelp())); - titleLayout->addWidget( button[BtnHelp] ); - } - break; - - //Minimize button - case 'I': - if ( (! button[BtnIconify] ) && isMinimizable() ) - { - button[BtnIconify] = new CdeButton( this, "iconify", BtnIconify, i18n("Minimize") ); - connect(button[BtnIconify], - TQT_SIGNAL(clicked()), TQT_SLOT(minimize())); - titleLayout->addWidget( button[BtnIconify] ); - } - break; - - // Maximize button - case 'A': - if ( (! button[BtnMax] ) && isMaximizable() ) - { - button[BtnMax] = new CdeButton(this, "maximize", BtnMax, i18n("Maximize"), Qt::LeftButton|Qt::MidButton|Qt::RightButton); - connect(button[BtnMax], TQT_SIGNAL(clicked()), - TQT_SLOT(maximizeButtonClicked())); - titleLayout->addWidget( button[BtnMax] ); - } - break; - - // Close button - case 'X': - if ( !button[BtnClose] && isCloseable()) - { - button[BtnClose] = new CdeButton(this, "close", BtnClose, i18n("Close")); - connect( button[BtnClose], TQT_SIGNAL( clicked()), TQT_SLOT(closeWindow()) ); - titleLayout->addWidget( button[BtnClose] ); - } - // Add onAlldesktops button and spacers - } - } - -} - -void CdeClient::captionChange() -{ - widget()->tqrepaint(titlebar->tqgeometry(), false); -} - -void CdeClient::activeChange() -{ - for ( int i=0; i < BtnCount; i++ ) - if ( button[i] ) button[i]->reset(); - - widget()->tqrepaint(false); -} - -void CdeClient::maximizeChange() -{ - if ( button[BtnMax] ) { - bool m = maximizeMode() == MaximizeFull; - TQToolTip::remove(button[BtnMax]); - TQToolTip::add(button[BtnMax], m ? i18n("Restore") : i18n("Maximize")); - button[BtnMax]->tqrepaint(); - } -} - -void CdeClient::iconChange() -{ -} - -void CdeClient::shadeChange() -{ -} - -void CdeClient::showEvent(TQShowEvent *) -{ - widget()->tqrepaint(); -} - -void CdeClient::desktopChange() -{ - // Nothing to do yet -} - -TQSize CdeClient::tqminimumSize() const -{ - return TQSize(2 * (s_buttonSize + s_frameWidth), - 2 * s_frameWidth + s_buttonSize); -} - -void CdeClient::resize(const TQSize& s) -{ - widget()->resize(s); -} - -void CdeClient::maximizeButtonClicked() -{ - if (button[BtnMax]) { - maximize(button[BtnMax]->lastButton()); - } -} - -void CdeClient::menuButtonPressed() -{ - static TQTime* t = NULL; - static CdeClient* lastClient = NULL; - if( t == NULL ) - t = new TQTime; - bool dbl = ( lastClient == this && t->elapsed() <= TQApplication::doubleClickInterval()); - lastClient = this; - t->start(); - if( !dbl ) - { - TQRect menuRect = button[BtnMenu]->rect(); - TQPoint menuTop = button[BtnMenu]->mapToGlobal(menuRect.topLeft()); - TQPoint menuBottom = - button[BtnMenu]->mapToGlobal(menuRect.bottomRight()); - KDecorationFactory* f = factory(); - showWindowMenu(TQRect(menuTop, menuBottom)); - if( !f->exists( this )) // 'this' was deleted - return; - button[BtnMenu]->setDown(false); - } - else - closing = true; -} - -void CdeClient::menuButtonReleased() -{ - if( closing ) - closeWindow(); -} - -void CdeClient::resizeEvent( TQResizeEvent* e) -{ - if (widget()->isVisibleToTLW()) { - widget()->update(); - int dx = 0; - int dy = 0; - - if ( e->oldSize().width() != width() ) - dx = 32 + TQABS( e->oldSize().width() - width() ); - - if ( e->oldSize().height() != height() ) - dy = 8 + TQABS( e->oldSize().height() - height() ); - - if ( dy ) - widget()->update( 0, height() - dy + 1, width(), dy ); - - if ( dx ) - { - widget()->update( width() - dx + 1, 0, dx, height() ); - widget()->update( TQRect( TQPoint(4,4), - titlebar->tqgeometry().bottomLeft() - TQPoint(1,0) ) ); - widget()->update(TQRect(titlebar->tqgeometry().topRight(), - TQPoint(width() - 4, titlebar->tqgeometry().bottom()))); - - // Titlebar needs no paint event - TQApplication::postEvent( this, new TQPaintEvent( titlebar->tqgeometry(), false ) ); - } - } -} - -void CdeClient::paintEvent( TQPaintEvent* ) -{ - TQPainter p(widget()); - - TQColorGroup tqcolorGroup; - - if ( coloredFrame ) - tqcolorGroup = options()->tqcolorGroup( KDecoration::ColorTitleBar, isActive() ); - else - tqcolorGroup = options()->tqcolorGroup( KDecoration::ColorFrame, isActive() ); - - fixColorGroup( tqcolorGroup ); - - TQRect trect = titlebar->tqgeometry(); - TQRect mrect = widget()->rect(); - - if ( s_frameWidth > 0 ) - { - // draw black frame: - p.setPen( TQt::black ); - p.drawRect( mrect ); - } - - p.setPen( TQt::NoPen ); - p.setBrush( tqcolorGroup.background() ); - - - if ( s_frameWidth > 1 ) - { - bool shaded = isShade(); - int longSide = s_frameWidth + s_buttonSize; - - // draw frame-background: - p.drawRect( 1, 1, - mrect.width() - 2, s_frameWidth ); - p.drawRect( 1, mrect.height() - s_frameWidth - 1, - mrect.width() - 2, s_frameWidth ); - p.drawRect( 1, s_frameWidth + 1, - s_frameWidth, mrect.height() - 2*s_frameWidth - 2 ); - p.drawRect( mrect.width() - s_frameWidth - 1, s_frameWidth + 1, - s_frameWidth, mrect.height() - 2*s_frameWidth - 2 ); - - if ( ! shaded ) - { - // draw left and right frames: - qDrawShadePanel( &p, 1, longSide + 1, - s_frameWidth, mrect.height() - 2 * (longSide + 1), - tqcolorGroup ); - - qDrawShadePanel( &p, mrect.width() - s_frameWidth - 1, longSide + 1, - s_frameWidth, mrect.height() - 2 * (longSide + 1), - tqcolorGroup ); - } - - // draw top and bottom frames: - qDrawShadePanel( &p, longSide + 1, 1, - mrect.width() - 2 * (longSide + 1), s_frameWidth, - tqcolorGroup ); - - qDrawShadePanel( &p, longSide + 1, mrect.height() - s_frameWidth - 1, - mrect.width() - 2 * (longSide + 1), s_frameWidth, - tqcolorGroup ); - - // draw light corner parts: - p.setPen( tqcolorGroup.light() ); - - // tl corner: - p.drawLine( 1, 1, longSide - 1, 1 ); - p.drawLine( 1, 1, 1, longSide - 1 ); - - // tr corner: - p.drawLine( mrect.width() - 3, 1, mrect.width() - longSide - 1, 1 ); - p.drawLine( mrect.width() - longSide - 1, 1, - mrect.width() - longSide - 1, s_frameWidth - 1 ); - p.drawLine( mrect.width() - s_frameWidth - 1, s_frameWidth, - mrect.width() - s_frameWidth - 1, longSide - 1 ); - - // br corner: - if ( !shaded ) - { - p.drawLine( mrect.width() - 3, mrect.height() - longSide - 1, - mrect.width() - s_frameWidth - 1, mrect.height() - longSide - 1 ); - } - p.drawLine( mrect.width() - s_frameWidth - 1, mrect.height() - longSide, - mrect.width() - s_frameWidth - 1, mrect.height() - s_frameWidth - 1 ); - p.drawLine( mrect.width() - s_frameWidth - 2, mrect.height() - s_frameWidth - 1, - mrect.width() - longSide - 1, mrect.height() - s_frameWidth - 1 ); - p.drawLine( mrect.width() - longSide - 1, mrect.height() - s_frameWidth, - mrect.width() - longSide - 1, mrect.height() - 2 ); - - // bl corner: - if ( !shaded ) - { - p.drawLine( s_frameWidth-1, mrect.height() - longSide - 1, - 2, mrect.height() - longSide - 1 ); - } - p.drawLine( 1, mrect.height() - longSide - 1, - 1, mrect.height() - 3 ); - p.drawLine( longSide - 1, mrect.height() - s_frameWidth - 1, - s_frameWidth + 1, mrect.height() - s_frameWidth - 1 ); - - // draw dark corner parts: - p.setPen( tqcolorGroup.dark() ); - - // tl corner: - if ( !shaded ) - p.drawLine( 1, longSide, s_frameWidth, longSide ); - p.drawLine( s_frameWidth, longSide - 1, s_frameWidth, s_frameWidth ); - p.drawLine( s_frameWidth + 1, s_frameWidth, longSide, s_frameWidth ); - p.drawLine( s_frameWidth + s_buttonSize, s_frameWidth, longSide, 1 ); - - // tr corner: - p.drawLine( mrect.width() - longSide - 1, s_frameWidth, - mrect.width() - s_frameWidth - 2, s_frameWidth ); - if ( !shaded ) - { - p.drawLine( mrect.width() - s_frameWidth - 1, longSide, - mrect.width() - 2, longSide ); - } - p.drawLine( mrect.width() - 2, longSide, mrect.width() - 2, 1 ); - - // br corner: - p.drawLine( mrect.width() - longSide - 1, mrect.height() - 2, - mrect.width() - 3, mrect.height() - 2 ); - p.drawLine( mrect.width() - 2, mrect.height() - 2, - mrect.width() - 2, mrect.height() - longSide - 2 ); - - // bl corner: - p.drawLine( 1, mrect.height() - 2, - longSide, mrect.height() - 2 ); - p.drawLine( s_frameWidth + s_buttonSize, mrect.height() - 3, - longSide, mrect.height() - s_frameWidth - 1 ); - p.drawLine( s_frameWidth, mrect.height() - s_frameWidth - 1, - s_frameWidth, mrect.height() - longSide - 1 ); - } - - - p.setPen( TQt::NoPen ); - - if ( !coloredFrame ) - { - tqcolorGroup = options()->tqcolorGroup( KDecoration::ColorTitleBar, isActive() ); - fixColorGroup( tqcolorGroup ); - p.setBrush( tqcolorGroup.background() ); - } - - // draw titlebar: - p.drawRect( trect ); - qDrawShadePanel( &p, trect, tqcolorGroup, titlebarPressed ); - - // draw caption: - if ( titlebarPressed ) // move the caption right and down if the titlebar is pressed - trect.moveBy( 1,1 ); // Note: the real Mwm doesn't actually do this - - p.setFont( options()->font( true ) ); - p.setPen( options()->color( KDecoration::ColorFont, isActive() ) ); - if ( p.fontMetrics().width( caption() ) > trect.width() - 6 ) - { - // left align the text if its too wide to fit in the titlebar - p.drawText( trect.x() + 3, trect.y(), - trect.width() - 6, trect.height(), - AlignLeft | AlignVCenter, caption() ); - } - else - { - // otherwise we'll draw it according to the user settings - p.drawText( trect.x() + 3, trect.y(), - trect.width() - 6, trect.height(), - textAlignment | AlignVCenter, caption() ); - } - - // Draw a line behind the wrapped window to prevent having - // unpainted areas when we're shaded. - p.setPen( tqcolorGroup.dark() ); - p.drawLine(s_frameWidth + 1, mrect.height() - s_frameWidth - 2, - mrect.width() - s_frameWidth - 2, mrect.height() - s_frameWidth - 2); - -} - -KDecoration::Position CdeClient::mousePosition( const TQPoint& p ) const -{ - const int range = s_frameWidth + s_buttonSize; - const int border = s_frameWidth + 1; - - Position m = PositionCenter; - - if ((p.x() > border && p.x() < width() - border) - && (p.y() > border && p.y() < height() - border)) - return PositionCenter; - - if (p.y() < range && p.x() <= range) - m = PositionTopLeft; - else if (p.y() >= height() - range && p.x() >= width() - range) - m = PositionBottomRight; - else if (p.y() >= height()-range && p.x() <= range) - m = PositionBottomLeft; - else if (p.y() < range && p.x() >= width() - range) - m = PositionTopRight; - else if (p.y() < border) - m = PositionTop; - else if (p.y() >= height() - border) - m = PositionBottom; - else if (p.x() <= border) - m = PositionLeft; - else if (p.x() >= width() - border) - m = PositionRight; - else - m = PositionCenter; - return m; -} - -void CdeClient::mouseDoubleClickEvent( TQMouseEvent * e ) -{ - if ( e->button() == Qt::LeftButton && titlebar->tqgeometry().contains( e->pos() ) ) - titlebarDblClickOperation(); -} - -void CdeClient::wheelEvent( TQWheelEvent * e ) -{ - if (isSetShade() || titleLayout->tqgeometry().contains( e->pos() ) ) - titlebarMouseWheelOperation( e->delta()); -} - -void CdeClient::mousePressEvent( TQMouseEvent * e ) -{ - if ( e->button() == Qt::LeftButton && titlebar->tqgeometry().contains( e->pos() ) ) - { - if ( titlebarButtonMode ) - { - titlebarPressed = true; - widget()->tqrepaint(titlebar->tqgeometry(), false); - } - } -} - -void CdeClient::borders(int &left, int &right, int &top, int &bottom) const -{ - left = right = bottom = s_frameWidth + 1; - top = s_buttonSize + s_frameWidth + 1; -} - -void CdeClient::mouseReleaseEvent( TQMouseEvent * e ) -{ - if ( e->button() == Qt::LeftButton && titlebarPressed ) - { - titlebarPressed = false; - widget()->tqrepaint(titlebar->tqgeometry(), false); - } -} - -bool CdeClient::eventFilter(TQObject *o, TQEvent *e) -{ - if (TQT_BASE_OBJECT(o) != TQT_BASE_OBJECT(widget())) - return false; - switch (e->type()) { - case TQEvent::Resize: - resizeEvent(TQT_TQRESIZEEVENT(e)); - return true; - case TQEvent::Paint: - paintEvent(TQT_TQPAINTEVENT(e)); - return true; - case TQEvent::MouseButtonDblClick: - mouseDoubleClickEvent(TQT_TQMOUSEEVENT(e)); - return true; - case TQEvent::MouseButtonPress: - processMousePressEvent(TQT_TQMOUSEEVENT(e)); - return true; - case TQEvent::Show: - showEvent(TQT_TQSHOWEVENT(e)); - return true; - case TQEvent::Wheel: - wheelEvent( TQT_TQWHEELEVENT( e )); - return true; - default: - break; - } - return false; -} - -// --------------------------------------- - -CdeButton::CdeButton(CdeClient* parent, - const char* name, int btnType, const TQString& tip, int realize_btns) - : TQButton(parent->widget(), name), m_btnType(btnType), last_button(Qt::NoButton) -{ - setBackgroundMode( TQWidget::NoBackground ); - setFixedSize( s_buttonSize, s_buttonSize ); - resize( s_buttonSize, s_buttonSize ); - m_parent = parent; - - setCursor(ArrowCursor); - TQToolTip::add(this, tip); - - m_realize_buttons = realize_btns; -} - -void CdeButton::reset() -{ - tqrepaint( false ); -} - -void CdeButton::drawButton( TQPainter* p ) -{ - p->setBrush( options()->color( KDecoration::ColorTitleBar, m_parent->isActive() ) ); - p->drawRect( 0, 0, s_buttonSize, s_buttonSize ); - - TQColorGroup tqcolorGroup = - options()->tqcolorGroup( KDecoration::ColorTitleBar, m_parent->isActive() ); - - fixColorGroup(tqcolorGroup); - - qDrawShadePanel( p, 0, 0, s_buttonSize, s_buttonSize, - tqcolorGroup, isDown() ); - - switch ( m_btnType ) - { - case (BtnMenu): - qDrawShadePanel( p, s_o1, s_o2, s_w1, s_w2, tqcolorGroup ); - break; - case (BtnHelp): - p->setPen( tqcolorGroup.light() ); - p->drawLineSegments( TQPointArray(16, helpLLines) ); - p->setPen( tqcolorGroup.dark() ); - p->drawLineSegments( TQPointArray(14, helpDLines) ); - break; - case (BtnIconify): - qDrawShadePanel( p, s_o2, s_o2, s_w2, s_w2, tqcolorGroup ); - break; - case (BtnMax): - qDrawShadePanel( p, s_o1, s_o1, s_w1, s_w1, tqcolorGroup, - m_parent->maximizeMode() == KDecoration::MaximizeFull ); - break; - case (BtnClose): - p->setPen( tqcolorGroup.dark() ); - p->drawLineSegments( TQPointArray(18, closeDLines) ); - p->setPen( tqcolorGroup.light() ); - p->drawLineSegments( TQPointArray(15, closeLLines) ); - break; - } -} - -void CdeButton::mousePressEvent(TQMouseEvent *e) -{ - last_button = e->button(); - TQMouseEvent me(e->type(), e->pos(), - e->globalPos(), (e->button()&m_realize_buttons)?Qt::LeftButton:Qt::NoButton, e->state()); - TQButton::mousePressEvent(&me); -} - -void CdeButton::mouseReleaseEvent(TQMouseEvent * e) -{ - last_button = e->button(); - TQMouseEvent me(e->type(), e->pos(), - e->globalPos(), (e->button()&m_realize_buttons)?Qt::LeftButton:Qt::NoButton, e->state()); - TQButton::mouseReleaseEvent(&me); -} - -} // CDE namespace - -#include "cdeclient.moc" - -// vim: sw=4 diff --git a/kwin-styles/cde/cdeclient.h b/kwin-styles/cde/cdeclient.h deleted file mode 100644 index e3a0e9ad..00000000 --- a/kwin-styles/cde/cdeclient.h +++ /dev/null @@ -1,119 +0,0 @@ -/* - * CDE KWin client - emulates the look and feel - * of dtwm, the CDE window manager. - * - * Copyright (c) 2000-2001, 2002 - * Chris Lee - * Lennart Kudling - * Fredrik H�glund - * - * Copyright (c) 2003 - * Luciano Montanaro - * - * Originally based on the KStep client. - * - * Distributed under the terms of the BSD license. - */ - -#ifndef __CDECLIENT_H -#define __CDECLIENT_H - -#include -#include -#include -#include -#include - -class TQLabel; -class TQBoxLayout; -class TQVBoxLayout; -class TQSpacerItem; - -namespace CDE { - -class CdeClient; - -enum Buttons { BtnMenu=0, BtnHelp, BtnIconify, BtnMax, BtnClose, BtnCount }; - -class CdeButton : public TQButton -{ -public: - CdeButton( CdeClient* parent=0, const char* name=0, int btnType=0, - const TQString& tip=NULL, int realize_btns = Qt::LeftButton ); - void reset(); - ButtonState lastButton() { return last_button; } - -protected: - void mousePressEvent(TQMouseEvent *e); - void mouseReleaseEvent(TQMouseEvent *e); - virtual void drawButton(TQPainter *p); - -private: - CdeClient *m_parent; - int m_btnType; - int m_realize_buttons; - ButtonState last_button; -}; - -class CdeClient : public KDecoration -{ - Q_OBJECT - TQ_OBJECT -public: - CdeClient(KDecorationBridge *b, KDecorationFactory *f); - ~CdeClient() {}; - void init(); - -protected: - bool eventFilter(TQObject *o, TQEvent *e); - void resizeEvent( TQResizeEvent* ); - void paintEvent( TQPaintEvent* ); - - void showEvent(TQShowEvent *); - void addClientButtons( const TQString& ); - void mouseDoubleClickEvent( TQMouseEvent* ); - void wheelEvent( TQWheelEvent * ); - void captionChange(); - void desktopChange(); - void activeChange(); - void shadeChange(); - void iconChange(); - TQSize tqminimumSize() const; - void resize(const TQSize &size); - void borders(int &left, int &right, int &top, int &bottom) const; - void mousePressEvent( TQMouseEvent* ); - void mouseReleaseEvent( TQMouseEvent* ); - void maximizeChange(); - Position mousePosition( const TQPoint& p ) const; - -protected slots: - void menuButtonPressed(); - void menuButtonReleased(); - void maximizeButtonClicked(); - -private: - CdeButton* button[BtnCount]; - TQVBoxLayout* mainLayout; - TQBoxLayout* titleLayout; - TQSpacerItem* titlebar; - bool titlebarPressed; - bool closing; -}; - -class CdeClientFactory: public TQObject, public KDecorationFactory -{ -public: - CdeClientFactory(); - virtual ~CdeClientFactory(); - virtual KDecoration *createDecoration(KDecorationBridge *); - virtual bool supports( Ability ability ); - virtual bool reset(unsigned long changed); - - TQValueList< CdeClientFactory::BorderSize > borderSizes() const; - -}; - -} - -#endif - diff --git a/kwin-styles/cde/config/CMakeLists.txt b/kwin-styles/cde/config/CMakeLists.txt deleted file mode 100644 index 5faec263..00000000 --- a/kwin-styles/cde/config/CMakeLists.txt +++ /dev/null @@ -1,28 +0,0 @@ -################################################# -# -# (C) 2011 Golubev Alexander -# fatzer2 (AT) gmail.com -# -# Improvements and feedback are welcome -# -# This file is released under GPL >= 2 -# -################################################# - -include_directories( - ${CMAKE_CURRENT_BINARY_DIR} - ${TDE_INCLUDE_DIR} - ${TQT_INCLUDE_DIRS} -) - -link_directories( - ${TQT_LIBRARY_DIRS} -) - -##### twin_cde_config (module) ################### - -tde_add_kpart( twin_cde_config AUTOMOC - SOURCES config.cpp - LINK tdeui-shared - DESTINATION ${PLUGIN_INSTALL_DIR} -) diff --git a/kwin-styles/cde/config/Makefile.am b/kwin-styles/cde/config/Makefile.am deleted file mode 100644 index 3e5bd243..00000000 --- a/kwin-styles/cde/config/Makefile.am +++ /dev/null @@ -1,17 +0,0 @@ -INCLUDES = $(all_includes) - -kde_module_LTLIBRARIES = twin_cde_config.la - -twin_cde_config_la_SOURCES = config.cpp -twin_cde_config_la_LDFLAGS = $(all_libraries) $(KDE_PLUGIN) -module $(LIB_QT) $(LIB_TDECORE) $(LIB_TDEUI) -ltdefx -twin_cde_config_la_LIBADD = $(LIB_TDEUI) - -METASOURCES = AUTO -noinst_HEADERS = config.h - -lnkdir = $(kde_datadir)/twin/ - - -###KMAKE-start (don't edit or delete this block) - -###KMAKE-end diff --git a/kwin-styles/cde/config/config.cpp b/kwin-styles/cde/config/config.cpp deleted file mode 100644 index fcd2de42..00000000 --- a/kwin-styles/cde/config/config.cpp +++ /dev/null @@ -1,131 +0,0 @@ -// $Id$ -#include "config.h" -#include -#include -#include -#include -#include - -extern "C" KDE_EXPORT TQObject* allocate_config( KConfig* conf, TQWidget* parent ) -{ - return new CdeConfig(conf, parent); -} - - -/* NOTE: - * 'conf' is a pointer to the twindecoration modules open twin config, - * and is by default set to the "Style" group. - * - * 'parent' is the parent of the TQObject, which is a VBox inside the - * Configure tab in twindecoration - */ - -CdeConfig::CdeConfig( KConfig* conf, TQWidget* parent ) - : TQObject( parent ) -{ - cdeConfig = new KConfig("twincderc"); - KGlobal::locale()->insertCatalogue("twin_art_clients"); - - groupBox = new TQVBox( parent ); - - bgAlign = new TQButtonGroup( 3, Qt::Horizontal, i18n("Text &Alignment"), groupBox ); - bgAlign->setExclusive( true ); - TQWhatsThis::add( bgAlign, i18n("Use these buttons to set the tqalignment of the titlebar caption text.") ); - new TQRadioButton( i18n("Left"), bgAlign, "AlignLeft" ); - TQRadioButton *radio2 = new TQRadioButton( i18n("Centered"), bgAlign, "AlignHCenter" ); - radio2->setChecked( true ); - new TQRadioButton( i18n("Right"), bgAlign, "AlignRight" ); - - cbColorBorder = new TQCheckBox( i18n("Draw window frames using &titlebar colors"), groupBox ); - TQWhatsThis::add( cbColorBorder, i18n("When selected, the window decoration borders " - "are drawn using the titlebar colors. Otherwise, they are " - "drawn using normal border colors instead.") ); - -// cbTitlebarButton = new TQCheckBox( i18n("Titlebar acts like a &pushbutton when clicked"), groupBox ); -// TQWhatsThis::add( cbTitlebarButton, i18n("When selected, this option causes the window titlebar to behave " -// "as if it was a pushbutton when you click it to move the window.") ); - - (void) new TQLabel( i18n("Tip: If you want the look of the original Motif(tm) Window Manager,\n" - "click the \"Buttons\" tab above and remove the help\n" - "and close buttons from the titlebar."), groupBox ); - - // Load configuration options - load( conf ); - - // Ensure we track user changes properly - connect( cbColorBorder, TQT_SIGNAL(clicked()), TQT_SLOT(slotSelectionChanged()) ); -// connect( cbTitlebarButton, TQT_SIGNAL(clicked()), TQT_SLOT(slotSelectionChanged()) ); - connect( bgAlign, TQT_SIGNAL(clicked(int)), TQT_SLOT(slotSelectionChanged(int)) ); - - // Make the widgets visible in twindecoration - groupBox->show(); -} - - -CdeConfig::~CdeConfig() -{ - delete bgAlign; - delete groupBox; - delete cdeConfig; -} - - -void CdeConfig::slotSelectionChanged() -{ - emit changed(); -} - -void CdeConfig::slotSelectionChanged( int ) -{ - emit changed(); -} - -// Loads the configurable options from the twinrc config file -// It is passed the open config from twindecoration to improve efficiency -void CdeConfig::load( KConfig* /*conf*/ ) -{ - cdeConfig->setGroup("General"); - - TQString value = cdeConfig->readEntry( "TextAlignment", "AlignHCenter" ); - TQRadioButton *button = (TQRadioButton*)bgAlign->child( (const char *)value.latin1() ); - if ( button ) - button->setChecked( true ); - - bool coloredFrame = cdeConfig->readBoolEntry( "UseTitleBarBorderColors", true ); - cbColorBorder->setChecked( coloredFrame ); - -// bool titlebarButton = cdeConfig->readBoolEntry( "TitlebarButtonMode", true ); -// cbTitlebarButton->setChecked( titlebarButton ); -} - - -// Saves the configurable options to the twinrc config file -void CdeConfig::save( KConfig* /*conf*/ ) -{ - cdeConfig->setGroup("General"); - - TQRadioButton *button = (TQRadioButton*)bgAlign->selected(); - if ( button ) - cdeConfig->writeEntry( "TextAlignment", TQString(button->name()) ); - - cdeConfig->writeEntry( "UseTitleBarBorderColors", cbColorBorder->isChecked() ); -// cdeConfig->writeEntry( "TitlebarButtonMode", cbTitlebarButton->isChecked() ); - - // Ensure others trying to read this config get updated - cdeConfig->sync(); -} - - -// Sets UI widget defaults which must correspond to style defaults -void CdeConfig::defaults() -{ - TQRadioButton *button = (TQRadioButton*)bgAlign->child( "AlignHCenter" ); - if ( button ) - button->setChecked( true ); - - cbColorBorder->setChecked( true ); -// cbTitlebarButton->setChecked( true ); -} - -#include "config.moc" -// vim: ts=4 diff --git a/kwin-styles/cde/config/config.h b/kwin-styles/cde/config/config.h deleted file mode 100644 index fc7fa136..00000000 --- a/kwin-styles/cde/config/config.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef __KDE_CDECONFIG_H -#define __KDE_CDECONFIG_H - -#include -#include -#include -#include -#include -#include -#include - -class TQCheckBox; -class TQGroupBox; -class TQVBox; -class TQLabel; -class TQRadioButton; - -class CdeConfig: public TQObject -{ - Q_OBJECT - TQ_OBJECT - - public: - CdeConfig( KConfig* conf, TQWidget* parent ); - ~CdeConfig(); - - // These public signals/slots work similar to KCM modules - signals: - void changed(); - - public slots: - void load( KConfig* conf ); - void save( KConfig* conf ); - void defaults(); - - protected slots: - void slotSelectionChanged(); // Internal use - void slotSelectionChanged( int ); - - private: - KConfig* cdeConfig; - TQCheckBox* cbColorBorder; -// TQCheckBox* cbTitlebarButton; - TQHBox* groupBox; - TQGroupBox* gbSlider; - TQButtonGroup* bgAlign; -}; - - -#endif - -// vim: ts=4 -- cgit v1.2.1