diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/electronics/components/pushswitch.cpp | 48 | ||||
-rw-r--r-- | src/itemview.cpp | 130 |
2 files changed, 89 insertions, 89 deletions
diff --git a/src/electronics/components/pushswitch.cpp b/src/electronics/components/pushswitch.cpp index 5b926d6..d2ac6d7 100644 --- a/src/electronics/components/pushswitch.cpp +++ b/src/electronics/components/pushswitch.cpp @@ -41,26 +41,26 @@ ECPTBSwitch::ECPTBSwitch( ICNDocument *icnDocument, bool newItem, const char *id { m_name = i18n("Push to Break"); setSize( -16, -16, 32, 24 ); - + addButton( "button", TQRect( -16, 8, 32, 20 ), "" ); - + createProperty( "button_text", Variant::Type::String ); property("button_text")->setCaption( i18n("Button Text") ); - + Variant * v = createProperty( "bounce", Variant::Type::Bool ); v->setCaption( i18n("Bounce") ); v->setAdvanced(true); v->setValue(false); - + v = createProperty( "bounce_period", Variant::Type::Double ); v->setCaption( i18n("Bounce Period") ); v->setAdvanced(true); v->setUnit("s"); v->setValue(5e-3); - + init1PinLeft(0); init1PinRight(0); - + m_switch = createSwitch( m_pPNode[0], m_pNNode[0], false ); pressed = false; } @@ -73,7 +73,7 @@ ECPTBSwitch::~ECPTBSwitch() void ECPTBSwitch::dataChanged() { button("button")->setText( dataString("button_text") ); - + bool bounce = dataBool("bounce"); int bouncePeriod_ms = int(dataDouble("bounce_period")*1e3); m_switch->setBounce( bounce, bouncePeriod_ms ); @@ -83,18 +83,18 @@ void ECPTBSwitch::dataChanged() void ECPTBSwitch::drawShape( TQPainter &p ) { initPainter(p); - + int _x = (int)x()-16; int _y = (int)y()-8; const int radius = 2; const int _height = height()-8; - + int dy = pressed ? 6 : 4; - + p.drawLine( _x+width()/4, _y+dy, _x+(3*width())/4, _y+dy ); // Top horizontal line p.drawLine( _x, _y+(_height/2)-radius+dy, _x+width(), _y+(_height/2)-radius+dy ); // Bottom horizontal line - p.drawLine( _x+width()/2, _y+dy, _x+width()/2, _y+(_height/2)-radius+dy ); //Qt::Vertical line - + p.drawLine( _x+width()/2, _y+dy, _x+width()/2, _y+(_height/2)-radius+dy ); // Vertical line + p.drawEllipse( _x, _y+(_height/2)-radius, 2*radius, 2*radius ); // Left circle p.drawEllipse( _x+width()-2*radius+1, _y+(_height/2)-radius, 2*radius, 2*radius ); // Right circle @@ -133,26 +133,26 @@ ECPTMSwitch::ECPTMSwitch( ICNDocument *icnDocument, bool newItem, const char *id { m_name = i18n("Push to Make"); setSize( -16, -16, 32, 24 ); - + addButton( "button", TQRect( -16, 8, 32, 20 ), "" ); - + createProperty( "button_text", Variant::Type::String ); property("button_text")->setCaption( i18n("Button Text") ); - + Variant * v = createProperty( "bounce", Variant::Type::Bool ); v->setCaption("Bounce"); v->setAdvanced(true); v->setValue(false); - + v = createProperty( "bounce_period", Variant::Type::Double ); v->setCaption("Bounce Period"); v->setAdvanced(true); v->setUnit("s"); v->setValue(5e-3); - + init1PinLeft(0); init1PinRight(0); - + m_switch = createSwitch( m_pPNode[0], m_pNNode[0], true ); pressed = false; } @@ -166,7 +166,7 @@ ECPTMSwitch::~ECPTMSwitch() void ECPTMSwitch::dataChanged() { button("button")->setText( dataString("button_text") ); - + bool bounce = dataBool("bounce"); int bouncePeriod_ms = int(dataDouble("bounce_period")*1e3); m_switch->setBounce( bounce, bouncePeriod_ms ); @@ -176,18 +176,18 @@ void ECPTMSwitch::dataChanged() void ECPTMSwitch::drawShape( TQPainter &p ) { initPainter(p); - + int _x = (int)x()-16; int _y = (int)y()-8; const int radius = 2; const int _height = height()-8; - + int dy = pressed ? 1 : 3; - + p.drawLine( _x+width()/4, _y-dy, _x+(3*width())/4, _y-dy ); // Top horizontal line p.drawLine( _x, _y+(_height/2)-radius-dy, _x+width(), _y+(_height/2)-radius-dy ); // Bottom horizontal line - p.drawLine( _x+width()/2, _y-dy, _x+width()/2, _y+(_height/2)-radius-dy ); //Qt::Vertical line - + p.drawLine( _x+width()/2, _y-dy, _x+width()/2, _y+(_height/2)-radius-dy ); // Vertical line + p.drawEllipse( _x, _y+(_height/2)-radius, 2*radius, 2*radius ); // Left circle p.drawEllipse( _x+width()-2*radius+1, _y+(_height/2)-radius, 2*radius, 2*radius ); // Right circle diff --git a/src/itemview.cpp b/src/itemview.cpp index f2a38a0..5361131 100644 --- a/src/itemview.cpp +++ b/src/itemview.cpp @@ -36,35 +36,35 @@ ItemView::ItemView( ItemDocument * itemDocument, ViewContainer *viewContainer, u : View( itemDocument, viewContainer, viewAreaId, name ) { TDEActionCollection * ac = actionCollection(); - + KStdAction::selectAll( itemDocument, TQT_SLOT(selectAll()), ac ); KStdAction::zoomIn( TQT_TQOBJECT(this), TQT_SLOT(zoomIn()), ac ); KStdAction::zoomOut( TQT_TQOBJECT(this), TQT_SLOT(zoomOut()), ac ); KStdAction::actualSize( TQT_TQOBJECT(this), TQT_SLOT(actualSize()), ac )->setEnabled(false); - - + + TDEAccel *pAccel = new TDEAccel(this); pAccel->insert( "Cancel", i18n("Cancel"), i18n("Cancel the current operation"), TQt::Key_Escape, itemDocument, TQT_SLOT(cancelCurrentOperation()) ); pAccel->readSettings(); - + new TDEAction( i18n("Delete"), "edit-delete", TQt::Key_Delete, itemDocument, TQT_SLOT(deleteSelection()), ac, "edit_delete" ); new TDEAction( i18n("Export as Image..."), 0, 0, itemDocument, TQT_SLOT(exportToImage()), ac, "file_export_image"); - + //BEGIN Item Alignment actions - new TDEAction( i18n("AlignQt::Horizontally"), 0, 0, itemDocument, TQT_SLOT(alignHorizontally()), ac, "align_horizontally" ); - new TDEAction( i18n("AlignQt::Vertically"), 0, 0, itemDocument, TQT_SLOT(alignVertically()), ac, "align_vertically" ); - new TDEAction( i18n("DistributeQt::Horizontally"), 0, 0, itemDocument, TQT_SLOT(distributeHorizontally()), ac, "distribute_horizontally" ); - new TDEAction( i18n("DistributeQt::Vertically"), 0, 0, itemDocument, TQT_SLOT(distributeVertically()), ac, "distribute_vertically" ); + new TDEAction( i18n("Align Horizontally"), 0, 0, itemDocument, TQT_SLOT(alignHorizontally()), ac, "align_horizontally" ); + new TDEAction( i18n("Align Vertically"), 0, 0, itemDocument, TQT_SLOT(alignVertically()), ac, "align_vertically" ); + new TDEAction( i18n("Distribute Horizontally"), 0, 0, itemDocument, TQT_SLOT(distributeHorizontally()), ac, "distribute_horizontally" ); + new TDEAction( i18n("Distribute Vertically"), 0, 0, itemDocument, TQT_SLOT(distributeVertically()), ac, "distribute_vertically" ); //END Item Alignment actions - - + + //BEGIN Draw actions TDEToolBarPopupAction * pa = new TDEToolBarPopupAction( i18n("Draw"), "paintbrush", 0, 0, 0, ac, "edit_draw" ); pa->setDelayed(false); - + TDEPopupMenu * m = pa->popupMenu(); m->insertTitle( i18n("Draw") ); - + m->insertItem( TDEGlobal::iconLoader()->loadIcon( "tool_text", TDEIcon::Small ), i18n("Text"), DrawPart::da_text ); m->insertItem( TDEGlobal::iconLoader()->loadIcon( "tool_line", TDEIcon::Small ), i18n("Line"), DrawPart::da_line ); m->insertItem( TDEGlobal::iconLoader()->loadIcon( "tool_arrow", TDEIcon::Small ), i18n("Arrow"), DrawPart::da_arrow ); @@ -72,30 +72,30 @@ ItemView::ItemView( ItemDocument * itemDocument, ViewContainer *viewContainer, u m->insertItem( TDEGlobal::iconLoader()->loadIcon( "tool_rectangle", TDEIcon::Small ), i18n("Rectangle"), DrawPart::da_rectangle ); connect( m, TQT_SIGNAL(activated(int)), itemDocument, TQT_SLOT(slotSetDrawAction(int)) ); //END Draw actions - - + + //BEGIN Item Control actions new TDEAction( i18n("Raise Selection"), "1uparrow", TQt::Key_PageUp, itemDocument, TQT_SLOT(raiseZ()), ac, "edit_raise" ); new TDEAction( i18n("Lower Selection"), "1downarrow", TQt::Key_PageDown, itemDocument, TQT_SLOT(lowerZ()), ac, "edit_lower" ); //END Item Control actions - - + + TDEAction * na = new TDEAction( "", 0, 0, 0, 0, ac, "null_action" ); na->setEnabled(false); - + setXMLFile( "ktechlabitemviewui.rc" ); - + m_pUpdateStatusTmr = new TQTimer(this); connect( m_pUpdateStatusTmr, TQT_SIGNAL(timeout()), this, TQT_SLOT(updateStatus()) ); connect( this, TQT_SIGNAL(viewUnfocused()), this, TQT_SLOT(stopUpdatingStatus()) ); - + p_itemDocument = itemDocument; m_zoomLevel = 1.; m_CVBEditor = new CVBEditor( p_itemDocument->canvas(), this, "cvbEditor" ); m_CVBEditor->setLineWidth(1); - + m_layout->insertWidget( 0, m_CVBEditor ); - + setAcceptDrops(true); } @@ -119,19 +119,19 @@ void ItemView::zoomIn() { int currentZoomPercent = int(std::floor((100*m_zoomLevel)+0.5)); int newZoom = currentZoomPercent; - + if ( currentZoomPercent < 100 ) newZoom += 25; else if ( currentZoomPercent < 200 ) newZoom += 50; else newZoom += 100; - + m_zoomLevel = newZoom/100.; - + TQWMatrix m( m_zoomLevel, 0.0, 0.0, m_zoomLevel, 1.0, 1.0 ); m_CVBEditor->setWorldMatrix(m); - + p_itemDocument->requestEvent( ItemDocument::ItemDocumentEvent::ResizeCanvasToItems ); updateZoomActions(); } @@ -141,7 +141,7 @@ void ItemView::zoomOut() { int currentZoomPercent = int(std::floor((100*m_zoomLevel)+0.5)); int newZoom = currentZoomPercent; - + if ( currentZoomPercent <= 25 ) return; if ( currentZoomPercent <= 100 ) @@ -150,12 +150,12 @@ void ItemView::zoomOut() newZoom -= 50; else newZoom -= 100; - + m_zoomLevel = newZoom/100.; - + TQWMatrix m( m_zoomLevel, 0.0, 0.0, m_zoomLevel, 1.0, 1.0 ); m_CVBEditor->setWorldMatrix(m); - + p_itemDocument->requestEvent( ItemDocument::ItemDocumentEvent::ResizeCanvasToItems ); updateZoomActions(); } @@ -166,7 +166,7 @@ void ItemView::actualSize() m_zoomLevel = 1.0; TQWMatrix m( m_zoomLevel, 0.0, 0.0, m_zoomLevel, 1.0, 1.0 ); m_CVBEditor->setWorldMatrix(m); - + p_itemDocument->requestEvent( ItemDocument::ItemDocumentEvent::ResizeCanvasToItems ); updateZoomActions(); } @@ -193,10 +193,10 @@ void ItemView::dropEvent( TQDropEvent *event ) } return; } - + if ( !TQString(event->format()).startsWith("ktechlab/") ) return; - + TQString text; TQDataStream stream( event->encodedData(event->format()), IO_ReadOnly ); stream >> text; @@ -207,7 +207,7 @@ void ItemView::dropEvent( TQDropEvent *event ) // Get a new component item p_itemDocument->addItem( text, position, true ); - + setFocus(); } @@ -215,15 +215,15 @@ void ItemView::dropEvent( TQDropEvent *event ) void ItemView::scrollToMouse( const TQPoint &pos ) { TQPoint position = pos * m_zoomLevel; - + int left = m_CVBEditor->contentsX(); int top = m_CVBEditor->contentsY(); int right = left + m_CVBEditor->visibleWidth(); int bottom = top + m_CVBEditor->visibleHeight(); - + if( position.x() < left ) m_CVBEditor->scrollBy( position.x() - left, 0 ); else if( position.x() > right ) m_CVBEditor->scrollBy( position.x() - right, 0 ); - + if( position.y() < top ) m_CVBEditor->scrollBy( 0, position.y() - top ); else if( position.y() > bottom ) m_CVBEditor->scrollBy( 0, position.y() - bottom); } @@ -233,21 +233,21 @@ void ItemView::contentsMousePressEvent( TQMouseEvent *e ) { if (!e) return; - + e->accept(); - + // For some reason, when we are initially unfocused, we only receive the // release event if the user drags the mouse - not very often. So see if we // were initially unfocused, and if so, do unclick as well. bool wasFocused = isFocused(); setFocused(); - + if ( !p_itemDocument ) return; - + p_itemDocument->canvas()->setMessage( TQString() ); p_itemDocument->m_cmManager->mousePressEvent( EventInfo( this, e ) ); - + if ( !wasFocused ) p_itemDocument->m_cmManager->mouseReleaseEvent( EventInfo( this, e ) ); } @@ -257,9 +257,9 @@ void ItemView::contentsMouseDoubleClickEvent( TQMouseEvent *e ) { if (!e) return; - + e->accept(); - + //HACK: Pass this of as a single press event if widget underneath TQCanvasItem * atTop = p_itemDocument->itemAtTop( e->pos()/zoomLevel() ); if ( atTop && atTop->rtti() == ItemDocument::RTTI::Widget ) @@ -273,9 +273,9 @@ void ItemView::contentsMouseMoveEvent( TQMouseEvent *e ) { if ( !e || !p_itemDocument ) return; - + e->accept(); - + p_itemDocument->m_cmManager->mouseMoveEvent( EventInfo( this, e ) ); if ( !m_pUpdateStatusTmr->isActive() ) startUpdatingStatus(); @@ -286,9 +286,9 @@ void ItemView::contentsMouseReleaseEvent( TQMouseEvent *e ) { if (!e) return; - + e->accept(); - + p_itemDocument->m_cmManager->mouseReleaseEvent( EventInfo( this, e ) ); } @@ -297,9 +297,9 @@ void ItemView::contentsWheelEvent( TQWheelEvent *e ) { if (!e) return; - + e->accept(); - + p_itemDocument->m_cmManager->wheelEvent( EventInfo( this, e ) ); } @@ -307,7 +307,7 @@ void ItemView::contentsWheelEvent( TQWheelEvent *e ) void ItemView::dragEnterEvent( TQDragEnterEvent *event ) { startUpdatingStatus(); - + KURL::List urls; if ( KURLDrag::decode( event, urls ) ) { @@ -329,13 +329,13 @@ void ItemView::leaveEvent( TQEvent * e ) { Q_UNUSED(e); stopUpdatingStatus(); - + // Cleanup setCursor(TQt::ArrowCursor); - + if (p_ktechlab) p_ktechlab->slotChangeStatusbar(TQString()); - + if ( p_itemDocument ) p_itemDocument->m_canvasTip->setVisible(false); } @@ -345,7 +345,7 @@ void ItemView::slotUpdateConfiguration() { // m_CVBEditor->setEraseColor( KTLConfig::bgColor() ); m_CVBEditor->setEraseColor( TQt::white ); - + if ( m_pUpdateStatusTmr->isActive() ) startUpdatingStatus(); } @@ -367,18 +367,18 @@ void ItemView::stopUpdatingStatus() void ItemView::updateStatus() { TQPoint pos = (m_CVBEditor->mapFromGlobal( TQCursor::pos() ) + TQPoint( m_CVBEditor->contentsX(), m_CVBEditor->contentsY() )) / zoomLevel(); - + ItemDocument * itemDocument = static_cast<ItemDocument*>(document()); if ( !itemDocument ) return; - + CMManager * cmManager = itemDocument->m_cmManager; CanvasTip * canvasTip = itemDocument->m_canvasTip; - + bool displayTip = false; TQCursor cursor = TQt::ArrowCursor; TQString statusbar; - + if ( cmManager->cmState() & CMManager::cms_repeated_add ) { cursor = TQt::CrossCursor; @@ -413,7 +413,7 @@ void ItemView::updateStatus() default: break; } - + } else if ( TQCanvasItem *qcanvasItem = itemDocument->itemAtTop(pos) ) { @@ -424,7 +424,7 @@ void ItemView::updateStatus() cursor = TQt::CrossCursor; if ( itemDocument->type() != Document::dt_circuit ) break; - + canvasTip->displayVI( static_cast<Connector*>(qcanvasItem), pos ); displayTip = true; break; @@ -435,7 +435,7 @@ void ItemView::updateStatus() ECNode * ecnode = dynamic_cast<ECNode*>(qcanvasItem); if ( !ecnode ) break; - + canvasTip->displayVI( ecnode, pos ); displayTip = true; break; @@ -452,10 +452,10 @@ void ItemView::updateStatus() } } setCursor(cursor); - + if (p_ktechlab) p_ktechlab->slotChangeStatusbar(statusbar); - + canvasTip->setVisible(displayTip); } @@ -560,7 +560,7 @@ void CVBEditor::contentsWheelEvent( TQWheelEvent *e ) e->ignore(); return; } - + if (b_passEventsToView) p_itemView->contentsWheelEvent(e); else |