diff options
Diffstat (limited to 'krita/ui/kis_controlframe.cc')
-rw-r--r-- | krita/ui/kis_controlframe.cc | 343 |
1 files changed, 0 insertions, 343 deletions
diff --git a/krita/ui/kis_controlframe.cc b/krita/ui/kis_controlframe.cc deleted file mode 100644 index 08f0c4c3..00000000 --- a/krita/ui/kis_controlframe.cc +++ /dev/null @@ -1,343 +0,0 @@ -/* - * kis_controlframe.cc - part of Krita - * - * Copyright (c) 1999 Matthias Elter <[email protected]> - * Copyright (c) 2003 Patrick Julien <[email protected]> - * Copyright (c) 2004 Sven Langkamp <[email protected]> - * - * 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.g - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - */ - -#include <stdlib.h> - -#include <tqapplication.h> -#include <tqlayout.h> -#include <tqtabwidget.h> -#include <tqframe.h> -#include <tqwidget.h> -#include <tqevent.h> - -#include <ktoolbar.h> -#include <kmainwindow.h> -#include <kglobalsettings.h> -#include <kstandarddirs.h> -#include <kdebug.h> -#include <klocale.h> -#include <koFrameButton.h> -#include <kactioncollection.h> - -#include "kis_resourceserver.h" -#include "kis_controlframe.h" -#include "kis_resource_mediator.h" -#include "kis_itemchooser.h" -#include "kis_pattern_chooser.h" -#include "kis_gradient_chooser.h" -#include "kis_icon_item.h" -#include "kis_iconwidget.h" -#include "kis_brush.h" -#include "kis_pattern.h" -#include "kis_gradient.h" -#include "kis_brush_chooser.h" -#include "kis_view.h" -#include "kis_autobrush.h" -#include "kis_autogradient.h" -#include "kis_config.h" -#include "kis_paintop_box.h" -#include "kis_custom_brush.h" -#include "kis_custom_pattern.h" -#ifdef HAVE_TEXT_BRUSH -#include "kis_text_brush.h" -#endif -KisPopupFrame::KisPopupFrame(TQWidget * tqparent, const char* name) - : TQPopupMenu(tqparent, name) -{ - setFocusPolicy(StrongFocus); -} - -void KisPopupFrame::keyPressEvent(TQKeyEvent * e) -{ - if (e->key()== TQt::Key_Escape) - { - hide(); - e->accept(); - } - else { - e->ignore(); - } -} - - -KisControlFrame::KisControlFrame( KMainWindow * /*window*/, KisView * view, const char* name ) - : TQObject(view, name) - //: KToolBar ( window, TQt::DockTop, false, name, true, true ) - , m_view(view) - , m_brushWidget(0) - , m_patternWidget(0) - , m_gradientWidget(0) - , m_brushChooserPopup(0) - , m_patternChooserPopup(0) - , m_gradientChooserPopup(0) - , m_brushMediator(0) - , m_patternMediator(0) - , m_gradientMediator(0) - , m_paintopBox(0) -{ - - KisConfig cfg; - m_font = KGlobalSettings::generalFont(); - m_font.setPointSize((int)cfg.dockerFontSize()); - - m_brushWidget = new KisIconWidget(view, "brushes"); - m_brushWidget->setTextLabel( i18n("Brush Shapes") ); - // XXX: An action without a slot -- that's silly, what kind of action could we use here? - KAction * action = new KWidgetAction(m_brushWidget, - i18n("&Brush"), - 0, - view, - 0, - view->actionCollection(), - "brushes"); - - - m_patternWidget = new KisIconWidget(view, "patterns"); - m_patternWidget->setTextLabel( i18n("Fill Patterns") ); - action = new KWidgetAction(m_patternWidget, - i18n("&Patterns"), - 0, - view, - 0, - view->actionCollection(), - "patterns"); - - m_gradientWidget = new KisIconWidget(view, "gradients"); - m_gradientWidget->setTextLabel( i18n("Gradients") ); - action = new KWidgetAction(m_gradientWidget, - i18n("&Gradients"), - 0, - view, - 0, - view->actionCollection(), - "gradients"); - - m_paintopBox = new KisPaintopBox( view, view, "paintopbox" ); - action = new KWidgetAction(m_paintopBox, - i18n("&Painter's Tools"), - 0, - view, - 0, - view->actionCollection(), - "paintops"); - - m_brushWidget->setFixedSize( 26, 26 ); - m_patternWidget->setFixedSize( 26, 26 ); - m_gradientWidget->setFixedSize( 26, 26 ); - - createBrushesChooser(m_view); - createPatternsChooser(m_view); - createGradientsChooser(m_view); - - m_brushWidget->setPopup(m_brushChooserPopup); - m_brushWidget->setPopupDelay(1); - m_patternWidget->setPopup(m_patternChooserPopup); - m_patternWidget->setPopupDelay(1); - m_gradientWidget->setPopup(m_gradientChooserPopup); - m_gradientWidget->setPopupDelay(1); -} - - -void KisControlFrame::slotSetBrush(KoIconItem *item) -{ - if (item) - m_brushWidget->slotSetItem(*item); -} - -void KisControlFrame::slotSetPattern(KoIconItem *item) -{ - if (item) - m_patternWidget->slotSetItem(*item); -} - -void KisControlFrame::slotSetGradient(KoIconItem *item) -{ - if (item) - m_gradientWidget->slotSetItem(*item); -} - -void KisControlFrame::slotBrushChanged(KisBrush * brush) -{ - KisIconItem *item; - - if((item = m_brushMediator->itemFor(brush))) - { - slotSetBrush(item); - } else { - slotSetBrush( new KisIconItem(brush) ); - } - -} - -void KisControlFrame::slotPatternChanged(KisPattern * pattern) -{ - KisIconItem *item; - if (!pattern) - return; - - if ( (item = m_patternMediator->itemFor(pattern)) ) - slotSetPattern(item); - else - slotSetPattern( new KisIconItem(pattern) ); -} - - -void KisControlFrame::slotGradientChanged(KisGradient * gradient) -{ - KisIconItem *item; - if (!gradient) - return; - - if ( (item = m_gradientMediator->itemFor(gradient)) ) - slotSetGradient(item); - else - slotSetGradient( new KisIconItem(gradient) ); -} - -void KisControlFrame::createBrushesChooser(KisView * view) -{ - - m_brushChooserPopup = new KisPopupFrame(m_brushWidget, "brush_chooser_popup"); - - TQHBoxLayout * l = new TQHBoxLayout(m_brushChooserPopup, 2, 2, "brushpopuptqlayout"); - - TQTabWidget * m_brushesTab = new TQTabWidget(m_brushChooserPopup, "brushestab"); - m_brushesTab->setTabShape(TQTabWidget::Triangular); - m_brushesTab->setFocusPolicy(TQ_NoFocus); - m_brushesTab->setFont(m_font); - m_brushesTab->setMargin(1); - - l->add(m_brushesTab); - - KisAutobrush * m_autobrush = new KisAutobrush(m_brushesTab, "autobrush", i18n("Autobrush")); - m_brushesTab->addTab( m_autobrush, i18n("Autobrush")); - connect(m_autobrush, TQT_SIGNAL(activatedResource(KisResource*)), m_view, TQT_SLOT(brushActivated( KisResource* ))); - - KisBrushChooser * m_brushChooser = new KisBrushChooser(m_brushesTab, "brush_chooser"); - m_brushesTab->addTab( m_brushChooser, i18n("Predefined Brushes")); - - KisCustomBrush* customBrushes = new KisCustomBrush(m_brushesTab, "custombrush", - i18n("Custom Brush"), m_view); - m_brushesTab->addTab( customBrushes, i18n("Custom Brush")); - connect(customBrushes, TQT_SIGNAL(activatedResource(KisResource*)), - m_view, TQT_SLOT(brushActivated(KisResource*))); -#ifdef HAVE_TEXT_BRUSH - KisTextBrush* textBrushes = new KisTextBrush(m_brushesTab, "textbrush", - i18n("Text Brush")/*, m_view*/); - m_brushesTab->addTab( textBrushes, i18n("Text Brush")); - connect(textBrushes, TQT_SIGNAL(activatedResource(KisResource*)), - m_view, TQT_SLOT(brushActivated(KisResource*))); -#endif - - m_brushChooser->setFont(m_font); - m_brushMediator = new KisResourceMediator( m_brushChooser, this); - connect(m_brushMediator, TQT_SIGNAL(activatedResource(KisResource*)), m_view, TQT_SLOT(brushActivated(KisResource*))); - - KisResourceServerBase* rServer; - rServer = KisResourceServerRegistry::instance()->get("ImagePipeBrushServer"); - m_brushMediator->connectServer(rServer); - rServer = KisResourceServerRegistry::instance()->get("BrushServer"); - m_brushMediator->connectServer(rServer); - - KisControlFrame::connect(view, TQT_SIGNAL(brushChanged(KisBrush *)), this, TQT_SLOT(slotBrushChanged( KisBrush *))); - m_brushChooser->setCurrent( 0 ); - m_brushMediator->setActiveItem( m_brushChooser->currentItem() ); - customBrushes->setResourceServer(rServer); - - m_autobrush->activate(); -} - -void KisControlFrame::createPatternsChooser(KisView * view) -{ - m_patternChooserPopup = new KisPopupFrame(m_patternWidget, "pattern_chooser_popup"); - - TQHBoxLayout * l2 = new TQHBoxLayout(m_patternChooserPopup, 2, 2, "patternpopuptqlayout"); - - TQTabWidget * m_patternsTab = new TQTabWidget(m_patternChooserPopup, "patternstab"); - m_patternsTab->setTabShape(TQTabWidget::Triangular); - m_patternsTab->setFocusPolicy(TQ_NoFocus); - m_patternsTab->setFont(m_font); - m_patternsTab->setMargin(1); - l2->add( m_patternsTab ); - - KisPatternChooser * chooser = new KisPatternChooser(m_patternChooserPopup, "pattern_chooser"); - chooser->setFont(m_font); - chooser->setMinimumSize(200, 150); - m_patternsTab->addTab(chooser, i18n("Patterns")); - - KisCustomPattern* customPatterns = new KisCustomPattern(m_patternsTab, "custompatterns", - i18n("Custom Pattern"), m_view); - customPatterns->setFont(m_font); - m_patternsTab->addTab( customPatterns, i18n("Custom Pattern")); - - - m_patternMediator = new KisResourceMediator( chooser, view); - connect( m_patternMediator, TQT_SIGNAL(activatedResource(KisResource*)), view, TQT_SLOT(patternActivated(KisResource*))); - connect(customPatterns, TQT_SIGNAL(activatedResource(KisResource*)), - view, TQT_SLOT(patternActivated(KisResource*))); - - KisResourceServerBase* rServer; - rServer = KisResourceServerRegistry::instance()->get("PatternServer"); - m_patternMediator->connectServer(rServer); - - KisControlFrame::connect(view, TQT_SIGNAL(patternChanged(KisPattern *)), this, TQT_SLOT(slotPatternChanged( KisPattern *))); - chooser->setCurrent( 0 ); - m_patternMediator->setActiveItem( chooser->currentItem() ); - - customPatterns->setResourceServer(rServer); -} - - -void KisControlFrame::createGradientsChooser(KisView * view) -{ - m_gradientChooserPopup = new KisPopupFrame(m_gradientWidget, "gradient_chooser_popup"); - - TQHBoxLayout * l2 = new TQHBoxLayout(m_gradientChooserPopup, 2, 2, "gradientpopuptqlayout"); - - TQTabWidget * m_gradientTab = new TQTabWidget(m_gradientChooserPopup, "gradientstab"); - m_gradientTab->setTabShape(TQTabWidget::Triangular); - m_gradientTab->setFocusPolicy(TQ_NoFocus); - m_gradientTab->setFont(m_font); - m_gradientTab->setMargin(1); - - l2->add( m_gradientTab); - - KisGradientChooser * m_gradientChooser = new KisGradientChooser(m_view, m_gradientChooserPopup, "gradient_chooser"); - m_gradientChooser->setFont(m_font); - m_gradientChooser->setMinimumSize(200, 150); - m_gradientTab->addTab( m_gradientChooser, i18n("Gradients")); - - m_gradientMediator = new KisResourceMediator( m_gradientChooser, view); - connect(m_gradientMediator, TQT_SIGNAL(activatedResource(KisResource*)), view, TQT_SLOT(gradientActivated(KisResource*))); - - KisResourceServerBase* rServer; - rServer = KisResourceServerRegistry::instance()->get("GradientServer"); - m_gradientMediator->connectServer(rServer); - - connect(view, TQT_SIGNAL(gradientChanged(KisGradient *)), this, TQT_SLOT(slotGradientChanged( KisGradient *))); - m_gradientChooser->setCurrent( 0 ); - m_gradientMediator->setActiveItem( m_gradientChooser->currentItem() ); -} - - -#include "kis_controlframe.moc" - |