diff options
Diffstat (limited to 'tqtinterface/qt4/tools/designer/editor/viewmanager.cpp')
-rw-r--r-- | tqtinterface/qt4/tools/designer/editor/viewmanager.cpp | 276 |
1 files changed, 0 insertions, 276 deletions
diff --git a/tqtinterface/qt4/tools/designer/editor/viewmanager.cpp b/tqtinterface/qt4/tools/designer/editor/viewmanager.cpp deleted file mode 100644 index 50760d4..0000000 --- a/tqtinterface/qt4/tools/designer/editor/viewmanager.cpp +++ /dev/null @@ -1,276 +0,0 @@ - /********************************************************************** -** Copyright (C) 2005-2008 Trolltech ASA. All rights reserved. -** -** This file is part of TQt Designer. -** -** This file may be used under the terms of the GNU General -** Public License versions 2.0 or 3.0 as published by the Free -** Software Foundation and appearing in the files LICENSE.GPL2 -** and LICENSE.GPL3 included in the packaging of this file. -** Alternatively you may (at your option) use any later version -** of the GNU General Public License if such license has been -** publicly approved by Trolltech ASA (or its successors, if any) -** and the KDE Free TQt Foundation. -** -** Please review the following information to ensure GNU General -** Public Licensing requirements will be met: -** http://trolltech.com/products/qt/licenses/licensing/opensource/. -** If you are unsure which license is appropriate for your use, please -** review the following information: -** http://trolltech.com/products/qt/licenses/licensing/licensingoverview -** or contact the sales department at [email protected]. -** -** Licensees holding valid TQt Commercial licenses may use this file in -** accordance with the TQt Commercial License Agreement provided with -** the Software. -** -** This file is provided "AS IS" with NO WARRANTY OF ANY KIND, -** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted -** herein. -** -**********************************************************************/ - -#include "viewmanager.h" -#include "editor.h" -#include "markerwidget.h" -#include <tqlayout.h> -#include <private/tqrichtext_p.h> -#include "paragdata.h" -#include <tqobjectlist.h> -#include <tqlabel.h> -#include <tqtimer.h> - -ViewManager::ViewManager( TQWidget *parent, const char *name ) - : TQWidget( parent, name ), curView( 0 ) -{ - TQHBoxLayout *l = new TQHBoxLayout( this ); - markerWidget = new MarkerWidget( this, "editor_markerwidget" ); - connect( markerWidget, TQT_SIGNAL( markersChanged() ), - this, TQT_SIGNAL( markersChanged() ) ); - connect( markerWidget, TQT_SIGNAL( collapseFunction( TQTextParagraph * ) ), - this, TQT_SIGNAL( collapseFunction( TQTextParagraph * ) ) ); - connect( markerWidget, TQT_SIGNAL( expandFunction( TQTextParagraph * ) ), - this, TQT_SIGNAL( expandFunction( TQTextParagraph * ) ) ); - connect( markerWidget, TQT_SIGNAL( collapse( bool ) ), - this, TQT_SIGNAL( collapse( bool ) ) ); - connect( markerWidget, TQT_SIGNAL( expand( bool ) ), - this, TQT_SIGNAL( expand( bool ) ) ); - connect( markerWidget, TQT_SIGNAL( editBreakPoints() ), - this, TQT_SIGNAL( editBreakPoints() ) ); - connect( markerWidget, TQT_SIGNAL( isBreakpointPossible( bool&, const TQString &, int ) ), - this, TQT_SIGNAL( isBreakpointPossible( bool&, const TQString &, int ) ) ); - connect( markerWidget, TQT_SIGNAL( showMessage( const TQString & ) ), - this, TQT_SLOT( showMessage( const TQString & ) ) ); - messageTimer = new TQTimer( this ); - connect( messageTimer, TQT_SIGNAL( timeout() ), this, TQT_SLOT( cleartqStatusBar() ) ); - markerWidget->setFixedWidth( fontMetrics().width( "0000" ) + 20 ); - l->addWidget( markerWidget ); - tqlayout = new TQVBoxLayout( l ); -} - -void ViewManager::addView( TQWidget *view ) -{ - tqlayout->addWidget( view ); - curView = view; - connect( ( (Editor*)curView )->verticalScrollBar(), TQT_SIGNAL( valueChanged( int ) ), - markerWidget, TQT_SLOT( doRepaint() ) ); - connect( (Editor*)curView, TQT_SIGNAL( textChanged() ), - markerWidget, TQT_SLOT( doRepaint() ) ); - connect( (Editor*)curView, TQT_SIGNAL( clearErrorMarker() ), - this, TQT_SLOT( clearErrorMarker() ) ); - posLabel = new TQLabel( this, "editor_poslabel" ); - posLabel->tqsetAlignment( TQt::AlignVCenter | TQt::AlignRight ); - posLabel->setText( " Line: 1 Col: 1" ); - posLabel->setFrameStyle( TQFrame::Sunken | TQFrame::Panel ); - posLabel->setLineWidth( 1 ); - posLabel->setFixedHeight( posLabel->fontMetrics().height() ); - tqlayout->addWidget( posLabel ); - connect( curView, TQT_SIGNAL( cursorPositionChanged( int, int ) ), - this, TQT_SLOT( cursorPositionChanged( int, int ) ) ); -} - -TQWidget *ViewManager::currentView() const -{ - return curView; -} - -void ViewManager::childEvent( TQChildEvent *e ) -{ - if ( e->type() == TQEvent::ChildInserted && ::tqqt_cast<Editor*>(e->child()) ) - addView( (TQWidget*)e->child() ); - TQWidget::childEvent( e ); -} - -void ViewManager::setError( int line ) -{ - TQTextParagraph *p = ( (Editor*)curView )->document()->paragAt( line ); - if ( p ) { - ( (Editor*)curView )->setErrorSelection( line ); - ( (Editor*)curView )->setCursorPosition( line, 0 ); - ( (Editor*)curView )->viewport()->setFocus(); - ( (Editor*)curView )->makeFunctionVisible( p ); - ParagData *paragData = (ParagData*)p->extraData(); - if ( !paragData ) - paragData = new ParagData; - paragData->marker = ParagData::Error; - p->setExtraData( paragData ); - markerWidget->doRepaint(); - } -} - -void ViewManager::setStep( int line ) -{ - TQTextParagraph *p = ( (Editor*)curView )->document()->firstParagraph(); - while ( p ) { - if ( p->extraData() ) - ( (ParagData*)p->extraData() )->step = FALSE; - p = p->next(); - } - p = ( (Editor*)curView )->document()->paragAt( line ); - if ( p ) { - ( (Editor*)curView )->setStepSelection( line ); - ( (Editor*)curView )->setCursorPosition( line, 0 ); - ( (Editor*)curView )->viewport()->setFocus(); - ( (Editor*)curView )->makeFunctionVisible( p ); - ParagData *paragData = (ParagData*)p->extraData(); - if ( !paragData ) - paragData = new ParagData; - paragData->step = TRUE; - p->setExtraData( paragData ); - markerWidget->doRepaint(); - } -} - -void ViewManager::clearStep() -{ - ( (Editor*)curView )->clearStepSelection(); - TQTextParagraph *p = ( (Editor*)curView )->document()->firstParagraph(); - while ( p ) { - if ( p->extraData() ) - ( (ParagData*)p->extraData() )->step = FALSE; - p = p->next(); - } - markerWidget->doRepaint(); -} - -void ViewManager::setStackFrame( int line ) -{ - TQTextParagraph *p = ( (Editor*)curView )->document()->paragAt( line ); - if ( p ) { - ( (Editor*)curView )->sync(); - ( (Editor*)curView )->setCursorPosition( line, 0 ); - ( (Editor*)curView )->ensureCursorVisible(); - ( (Editor*)curView )->viewport()->setFocus(); - ( (Editor*)curView )->makeFunctionVisible( p ); - ParagData *paragData = (ParagData*)p->extraData(); - if ( !paragData ) - paragData = new ParagData; - paragData->stackFrame = TRUE; - p->setExtraData( paragData ); - markerWidget->doRepaint(); - } -} - -void ViewManager::clearStackFrame() -{ - TQTextParagraph *p = ( (Editor*)curView )->document()->firstParagraph(); - while ( p ) { - if ( p->extraData() ) { - ( (ParagData*)p->extraData() )->stackFrame = FALSE; - if ( ( (ParagData*)p->extraData() )->marker == ParagData::Error ) - ( (ParagData*)p->extraData() )->marker = ParagData::NoMarker; - } - p = p->next(); - } - markerWidget->doRepaint(); -} - -void ViewManager::resizeEvent( TQResizeEvent *e ) -{ - TQWidget::resizeEvent( e ); - markerWidget->doRepaint(); -} - -void ViewManager::clearErrorMarker() -{ - TQTextParagraph *p = ( (Editor*)curView )->document()->firstParagraph(); - while ( p ) { - if ( p->extraData() ) - ( (ParagData*)p->extraData() )->marker = ParagData::NoMarker; - p = p->next(); - } - markerWidget->doRepaint(); -} - -void ViewManager::setBreakPoints( const TQValueList<uint> &l ) -{ - TQTextParagraph *p = ( (Editor*)curView )->document()->firstParagraph(); - int i = 0; - while ( p ) { - if ( l.find( i ) != l.end() ) { - if ( !p->extraData() ) { - ParagData *data = new ParagData; - p->setExtraData( data ); - } - ParagData *data = (ParagData*)p->extraData(); - data->marker = ParagData::Breakpoint; - } else if ( p->extraData() ) { - ParagData *data = (ParagData*)p->extraData(); - data->marker = ParagData::NoMarker; - } - p = p->next(); - ++i; - } - markerWidget->doRepaint(); -} - -TQValueList<uint> ViewManager::breakPoints() const -{ - TQValueList<uint> l; - int i = 0; - TQTextParagraph *p = ( (Editor*)curView )->document()->firstParagraph(); - while ( p ) { - if ( p->extraData() && - ( (ParagData*)p->extraData() )->marker == ParagData::Breakpoint ) - l << i; - p = p->next(); - ++i; - } - return l; -} - -void ViewManager::showMarkerWidget( bool b ) -{ - if ( b ) - markerWidget->show(); - else - markerWidget->hide(); -} - -void ViewManager::emitMarkersChanged() -{ - emit markersChanged(); -} - -void ViewManager::cursorPositionChanged( int row, int col ) -{ - posLabel->setText( TQString( " Line: %1 Col: %2" ).arg( row + 1 ).arg( col + 1 ) ); -} - -void ViewManager::showMessage( const TQString &msg ) -{ - int row; - int col; - ( (TQTextEdit*)currentView() )->getCursorPosition( &row, &col ); - posLabel->setText( msg ); - messageTimer->start( 1000, TRUE ); -} - -void ViewManager::cleartqStatusBar() -{ - int row; - int col; - ( (TQTextEdit*)currentView() )->getCursorPosition( &row, &col ); - posLabel->setText( TQString( " Line: %1 Col: %2" ).arg( row + 1 ).arg( col + 1 ) ); -} |