summaryrefslogtreecommitdiffstats
path: root/qtruby/rubylib/examples/testcases/bugs.rb
diff options
context:
space:
mode:
Diffstat (limited to 'qtruby/rubylib/examples/testcases/bugs.rb')
-rw-r--r--qtruby/rubylib/examples/testcases/bugs.rb57
1 files changed, 57 insertions, 0 deletions
diff --git a/qtruby/rubylib/examples/testcases/bugs.rb b/qtruby/rubylib/examples/testcases/bugs.rb
new file mode 100644
index 00000000..6b5e3153
--- /dev/null
+++ b/qtruby/rubylib/examples/testcases/bugs.rb
@@ -0,0 +1,57 @@
+require 'Qt'
+
+
+#### TODO ###
+# dup of qobject crash
+def bug1
+ p1 = Qt::Point.new(5,5)
+ p1.setX 5
+ p p1
+ p3 = p1.dup
+ p3.setX 5
+ p p3
+end
+#bug1
+
+
+#### FIXED ###
+def bug3
+ a = Qt::Application.new(ARGV)
+ @file = Qt::PopupMenu.new
+ @file.insertSeparator
+ Qt::debug_level = Qt::DebugLevel::High
+ p $qApp
+ @file.insertItem("Quit", $qApp, SLOT('quit()'))
+ @file.exec
+end
+#bug3
+
+
+class CPUWaster < Qt::Widget
+ def initialize(*k)
+ super(*k)
+ end
+ def draw
+ painter = Qt::Painter.new(self)
+ 0.upto(1000) { |i|
+ cw, ch = width, height
+ c = Qt::Color.new(rand(255), rand(255), rand(255))
+ x = rand(cw - 8)
+ y = rand(cw - 8)
+ w = rand(cw - x)
+ h = rand(cw - y)
+ brush = Qt::Brush.new(c)
+ brush.setStyle(Qt::Dense6Pattern)
+ Qt::debug_level = Qt::DebugLevel::High
+ painter.fillRect(Qt::Rect.new(x, y, w, h), brush)
+ Qt::debug_level = Qt::DebugLevel::Off
+ }
+ end
+end
+def bug4
+ Qt::Application.new(ARGV)
+ w = CPUWaster.new
+ w.show
+ w.draw
+end
+bug4