diff options
Diffstat (limited to 'qtruby/rubylib/tutorial/t14/cannon.rb')
-rw-r--r-- | qtruby/rubylib/tutorial/t14/cannon.rb | 62 |
1 files changed, 31 insertions, 31 deletions
diff --git a/qtruby/rubylib/tutorial/t14/cannon.rb b/qtruby/rubylib/tutorial/t14/cannon.rb index b0f77d37..3c1d7663 100644 --- a/qtruby/rubylib/tutorial/t14/cannon.rb +++ b/qtruby/rubylib/tutorial/t14/cannon.rb @@ -1,7 +1,7 @@ -require 'Qt' +retquire 'Qt' include Math -class CannonField < Qt::Widget +class CannonField < TQt::Widget signals 'hit()', 'missed()', 'angleChanged(int)', 'forceChanged(int)', 'canShoot(bool)' @@ -14,17 +14,17 @@ class CannonField < Qt::Widget @ang = 45 @f = 0 @timerCount = 0; - @autoShootTimer = Qt::Timer.new( self, 'movement handler' ) + @autoShootTimer = TQt::Timer.new( self, 'movement handler' ) connect( @autoShootTimer, SIGNAL('timeout()'), self, SLOT('moveShot()') ) @shoot_ang = 0 @shoot_f = 0 - @target = Qt::Point.new(0, 0) + @target = TQt::Point.new(0, 0) @gameEnded = false @barrelPressed = false - setPalette( Qt::Palette.new( Qt::Color.new( 250, 250, 200) ) ) + setPalette( TQt::Palette.new( TQt::Color.new( 250, 250, 200) ) ) newTarget() - @barrelRect = Qt::Rect.new(33, -4, 15, 8) + @barrelRect = TQt::Rect.new(33, -4, 15, 8) end def angle() @@ -80,13 +80,13 @@ class CannonField < Qt::Widget def newTarget() if @@first_time @@first_time = false - midnight = Qt::Time.new( 0, 0, 0 ) - srand( midnight.secsTo(Qt::Time.currentTime()) ) + midnight = TQt::Time.new( 0, 0, 0 ) + srand( midnight.secsTo(TQt::Time.currentTime()) ) end - r = Qt::Region.new( targetRect() ) - @target = Qt::Point.new( 200 + rand(190), + r = TQt::Region.new( targetRect() ) + @target = TQt::Point.new( 200 + rand(190), 10 + rand(255) ) - repaint( r.unite( Qt::Region.new(targetRect()) ) ) + repaint( r.unite( TQt::Region.new(targetRect()) ) ) end def setGameOver() @@ -110,7 +110,7 @@ class CannonField < Qt::Widget end def moveShot() - r = Qt::Region.new( shotRect() ) + r = TQt::Region.new( shotRect() ) @timerCount += 1 shotR = shotRect() @@ -125,7 +125,7 @@ class CannonField < Qt::Widget emit missed() emit canShoot(true) else - r = r.unite( Qt::Region.new( shotR ) ) + r = r.unite( TQt::Region.new( shotR ) ) end repaint( r ) @@ -133,7 +133,7 @@ class CannonField < Qt::Widget private :moveShot def mousePressEvent( e ) - if e.button() != Qt::LeftButton + if e.button() != TQt::LeftButton return end if barrelHit( e.pos() ) @@ -157,19 +157,19 @@ class CannonField < Qt::Widget end def mouseReleaseEvent( e ) - if e.button() == Qt::LeftButton + if e.button() == TQt::LeftButton @barrelPressed = false end end def paintEvent( e ) updateR = e.rect() - p = Qt::Painter.new( self ) + p = TQt::Painter.new( self ) if @gameEnded p.setPen( black ) - p.setFont( Qt::Font.new( 'Courier', 48, Qt::Font::Bold ) ) - p.drawText( rect(), Qt::AlignCenter, 'Game Over' ) + p.setFont( TQt::Font.new( 'Courier', 48, TQt::Font::Bold ) ) + p.drawText( rect(), TQt::AlignCenter, 'Game Over' ) end if updateR.intersects( cannonRect() ) paintCannon( p ) @@ -189,7 +189,7 @@ class CannonField < Qt::Widget def paintShot( p ) p.setBrush( black ) - p.setPen( Qt::NoPen ) + p.setPen( TQt::NoPen ) p.drawRect( shotRect() ) end @@ -207,15 +207,15 @@ class CannonField < Qt::Widget def paintCannon(p) cr = cannonRect() - pix = Qt::Pixmap.new( cr.size() ) + pix = TQt::Pixmap.new( cr.size() ) pix.fill( self, cr.topLeft() ) - tmp = Qt::Painter.new( pix ) + tmp = TQt::Painter.new( pix ) tmp.setBrush( blue ) - tmp.setPen( Qt::NoPen ) + tmp.setPen( TQt::NoPen ) tmp.translate( 0, pix.height() - 1 ) - tmp.drawPie( Qt::Rect.new(-35, -35, 70, 70), 0, 90*16 ) + tmp.drawPie( TQt::Rect.new(-35, -35, 70, 70), 0, 90*16 ) tmp.rotate( - @ang ) tmp.drawRect( @barrelRect ) tmp.end() @@ -225,7 +225,7 @@ class CannonField < Qt::Widget private :paintShot, :paintTarget, :paintBarrier, :paintCannon def cannonRect() - r = Qt::Rect.new( 0, 0, 50, 50) + r = TQt::Rect.new( 0, 0, 50, 50) r.moveBottomLeft( rect().bottomLeft() ) return r end @@ -244,23 +244,23 @@ class CannonField < Qt::Widget x = x0 + velx*time y = y0 + vely*time - 0.5*gravity*time*time - r = Qt::Rect.new( 0, 0, 6, 6 ); - r.moveCenter( Qt::Point.new( x.round, height() - 1 - y.round ) ) + r = TQt::Rect.new( 0, 0, 6, 6 ); + r.moveCenter( TQt::Point.new( x.round, height() - 1 - y.round ) ) return r end def targetRect() - r = Qt::Rect.new( 0, 0, 20, 10 ) - r.moveCenter( Qt::Point.new(@target.x(),height() - 1 - @target.y()) ) + r = TQt::Rect.new( 0, 0, 20, 10 ) + r.moveCenter( TQt::Point.new(@target.x(),height() - 1 - @target.y()) ) return r end def barrierRect() - return Qt::Rect.new( 145, height() - 100, 15, 100 ) + return TQt::Rect.new( 145, height() - 100, 15, 100 ) end def barrelHit( p ) - mtx = Qt::WMatrix.new + mtx = TQt::WMatrix.new mtx.translate( 0, height() - 1 ) mtx.rotate( - @ang ) mtx = mtx.invert() @@ -274,6 +274,6 @@ class CannonField < Qt::Widget end def sizePolicy() - return Qt::SizePolicy.new( Qt::SizePolicy::Expanding, Qt::SizePolicy::Expanding ) + return TQt::SizePolicy.new( TQt::SizePolicy::Expanding, TQt::SizePolicy::Expanding ) end end |