qtbindings 4.8.6.1-x64-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/CHANGELOG.txt +48 -0
- data/COPYING.LIB.txt +510 -0
- data/COPYING.txt +286 -0
- data/KNOWN_ISSUES.txt +17 -0
- data/Rakefile +121 -0
- data/TODO.txt +2 -0
- data/bin/2.0/rbrcc.exe +0 -0
- data/bin/2.0/rbuic4.exe +0 -0
- data/bin/2.0/smokeapi.exe +0 -0
- data/bin/2.0/smokedeptool.exe +0 -0
- data/bin/2.1/rbrcc.exe +0 -0
- data/bin/2.1/rbuic4.exe +0 -0
- data/bin/2.1/smokeapi.exe +0 -0
- data/bin/2.1/smokedeptool.exe +0 -0
- data/bin/2.2/rbrcc.exe +0 -0
- data/bin/2.2/rbuic4.exe +0 -0
- data/bin/2.2/smokeapi.exe +0 -0
- data/bin/2.2/smokedeptool.exe +0 -0
- data/bin/rbqtapi +152 -0
- data/bin/rbrcc +14 -0
- data/bin/rbuic4 +14 -0
- data/bin/smokeapi +14 -0
- data/bin/smokedeptool +14 -0
- data/examples/designer/calculatorbuilder/calculatorbuilder.qrc +5 -0
- data/examples/designer/calculatorbuilder/calculatorform.rb +60 -0
- data/examples/designer/calculatorbuilder/calculatorform.ui +299 -0
- data/examples/designer/calculatorbuilder/main.rb +34 -0
- data/examples/designer/calculatorbuilder/makefile +2 -0
- data/examples/designer/calculatorform/calculatorform.rb +46 -0
- data/examples/designer/calculatorform/calculatorform.ui +277 -0
- data/examples/designer/calculatorform/main.rb +32 -0
- data/examples/designer/calculatorform/makefile +3 -0
- data/examples/desktop/screenshot/main.rb +32 -0
- data/examples/desktop/screenshot/screenshot.rb +157 -0
- data/examples/desktop/systray/images/bad.svg +64 -0
- data/examples/desktop/systray/images/heart.svg +55 -0
- data/examples/desktop/systray/images/trash.svg +58 -0
- data/examples/desktop/systray/main.rb +41 -0
- data/examples/desktop/systray/makefile +2 -0
- data/examples/desktop/systray/systray.qrc +7 -0
- data/examples/desktop/systray/window.rb +219 -0
- data/examples/dialogs/complexwizard/complexwizard.rb +140 -0
- data/examples/dialogs/complexwizard/licensewizard.rb +294 -0
- data/examples/dialogs/complexwizard/main.rb +31 -0
- data/examples/dialogs/configdialog/configdialog.rb +109 -0
- data/examples/dialogs/configdialog/images/config.png +0 -0
- data/examples/dialogs/configdialog/images/query.png +0 -0
- data/examples/dialogs/configdialog/images/update.png +0 -0
- data/examples/dialogs/configdialog/main.rb +31 -0
- data/examples/dialogs/configdialog/pages.rb +140 -0
- data/examples/dialogs/extension/finddialog.rb +89 -0
- data/examples/dialogs/extension/main.rb +31 -0
- data/examples/dialogs/findfiles/main.rb +32 -0
- data/examples/dialogs/findfiles/window.rb +177 -0
- data/examples/dialogs/simplewizard/classwizard.rb +374 -0
- data/examples/dialogs/simplewizard/main.rb +31 -0
- data/examples/dialogs/simplewizard/simplewizard.rb +110 -0
- data/examples/dialogs/standarddialogs/dialog.rb +340 -0
- data/examples/dialogs/standarddialogs/main.rb +31 -0
- data/examples/dialogs/tabdialog/main.rb +38 -0
- data/examples/dialogs/tabdialog/tabdialog.rb +178 -0
- data/examples/draganddrop/draggableicons/dragwidget.rb +125 -0
- data/examples/draganddrop/draggableicons/images/boat.png +0 -0
- data/examples/draganddrop/draggableicons/images/car.png +0 -0
- data/examples/draganddrop/draggableicons/images/house.png +0 -0
- data/examples/draganddrop/draggableicons/main.rb +41 -0
- data/examples/draganddrop/draggabletext/draglabel.rb +51 -0
- data/examples/draganddrop/draggabletext/dragwidget.rb +94 -0
- data/examples/draganddrop/draggabletext/main.rb +33 -0
- data/examples/draganddrop/draggabletext/words.txt +41 -0
- data/examples/draganddrop/dropsite/dropsitewidget.rb +99 -0
- data/examples/draganddrop/dropsite/dropsitewindow.rb +114 -0
- data/examples/draganddrop/dropsite/main.rb +33 -0
- data/examples/draganddrop/fridgemagnets/draglabel.rb +78 -0
- data/examples/draganddrop/fridgemagnets/dragwidget.rb +130 -0
- data/examples/draganddrop/fridgemagnets/main.rb +33 -0
- data/examples/draganddrop/fridgemagnets/words.txt +48 -0
- data/examples/draganddrop/puzzle/example.jpg +0 -0
- data/examples/draganddrop/puzzle/main.rb +33 -0
- data/examples/draganddrop/puzzle/mainwindow.rb +136 -0
- data/examples/draganddrop/puzzle/pieceslist.rb +95 -0
- data/examples/draganddrop/puzzle/puzzlewidget.rb +190 -0
- data/examples/graphicsview/collidingmice/images/cheese.jpg +0 -0
- data/examples/graphicsview/collidingmice/main.rb +53 -0
- data/examples/graphicsview/collidingmice/makefile +2 -0
- data/examples/graphicsview/collidingmice/mice.qrc +5 -0
- data/examples/graphicsview/collidingmice/mouse.rb +176 -0
- data/examples/graphicsview/dragdroprobot/coloritem.rb +86 -0
- data/examples/graphicsview/dragdroprobot/images/head.png +0 -0
- data/examples/graphicsview/dragdroprobot/main.rb +57 -0
- data/examples/graphicsview/dragdroprobot/makefile +2 -0
- data/examples/graphicsview/dragdroprobot/robot.qrc +5 -0
- data/examples/graphicsview/dragdroprobot/robot.rb +246 -0
- data/examples/itemviews/chart/chart.qrc +5 -0
- data/examples/itemviews/chart/main.rb +33 -0
- data/examples/itemviews/chart/mainwindow.rb +151 -0
- data/examples/itemviews/chart/makefile +2 -0
- data/examples/itemviews/chart/mydata.cht +8 -0
- data/examples/itemviews/chart/pieview.rb +516 -0
- data/examples/itemviews/chart/qtdata.cht +14 -0
- data/examples/itemviews/dirview/main.rb +39 -0
- data/examples/itemviews/pixelator/imagemodel.rb +51 -0
- data/examples/itemviews/pixelator/images.qrc +5 -0
- data/examples/itemviews/pixelator/images/qt.png +0 -0
- data/examples/itemviews/pixelator/main.rb +34 -0
- data/examples/itemviews/pixelator/mainwindow.rb +218 -0
- data/examples/itemviews/pixelator/makefile +3 -0
- data/examples/itemviews/pixelator/pixeldelegate.rb +67 -0
- data/examples/itemviews/puzzle/example.jpg +0 -0
- data/examples/itemviews/puzzle/main.rb +36 -0
- data/examples/itemviews/puzzle/mainwindow.rb +143 -0
- data/examples/itemviews/puzzle/piecesmodel.rb +174 -0
- data/examples/itemviews/puzzle/puzzlewidget.rb +192 -0
- data/examples/itemviews/simpledommodel/domitem.rb +62 -0
- data/examples/itemviews/simpledommodel/dommodel.rb +139 -0
- data/examples/itemviews/simpledommodel/main.rb +33 -0
- data/examples/itemviews/simpledommodel/mainwindow.rb +66 -0
- data/examples/itemviews/simpletreemodel/default.txt +40 -0
- data/examples/itemviews/simpletreemodel/main.rb +41 -0
- data/examples/itemviews/simpletreemodel/makefile +2 -0
- data/examples/itemviews/simpletreemodel/simpletreemodel.qrc +5 -0
- data/examples/itemviews/simpletreemodel/treeitem.rb +67 -0
- data/examples/itemviews/simpletreemodel/treemodel.rb +164 -0
- data/examples/itemviews/sortingmodel/default.txt +40 -0
- data/examples/itemviews/sortingmodel/main.rb +53 -0
- data/examples/itemviews/sortingmodel/treeitem.rb +73 -0
- data/examples/itemviews/sortingmodel/treemodel.rb +166 -0
- data/examples/itemviews/spinboxdelegate/main.rb +47 -0
- data/examples/itemviews/spinboxdelegate/spinboxdelegate.rb +62 -0
- data/examples/killerfilter/killerfilter.rb +55 -0
- data/examples/layouts/basiclayouts/dialog.rb +110 -0
- data/examples/layouts/basiclayouts/main.rb +31 -0
- data/examples/layouts/borderlayout/borderlayout.rb +190 -0
- data/examples/layouts/borderlayout/main.rb +32 -0
- data/examples/layouts/borderlayout/window.rb +52 -0
- data/examples/layouts/flowlayouts/flowlayout.rb +108 -0
- data/examples/layouts/flowlayouts/main.rb +32 -0
- data/examples/layouts/flowlayouts/window.rb +43 -0
- data/examples/mainwindows/application/images/copy.png +0 -0
- data/examples/mainwindows/application/images/cut.png +0 -0
- data/examples/mainwindows/application/images/new.png +0 -0
- data/examples/mainwindows/application/images/open.png +0 -0
- data/examples/mainwindows/application/images/paste.png +0 -0
- data/examples/mainwindows/application/images/save.png +0 -0
- data/examples/mainwindows/application/main.rb +32 -0
- data/examples/mainwindows/application/mainwindow.rb +285 -0
- data/examples/mainwindows/dockwidgets/images/new.png +0 -0
- data/examples/mainwindows/dockwidgets/images/print.png +0 -0
- data/examples/mainwindows/dockwidgets/images/save.png +0 -0
- data/examples/mainwindows/dockwidgets/images/undo.png +0 -0
- data/examples/mainwindows/dockwidgets/main.rb +32 -0
- data/examples/mainwindows/dockwidgets/mainwindow.rb +302 -0
- data/examples/mainwindows/mdi/images/copy.png +0 -0
- data/examples/mainwindows/mdi/images/cut.png +0 -0
- data/examples/mainwindows/mdi/images/new.png +0 -0
- data/examples/mainwindows/mdi/images/open.png +0 -0
- data/examples/mainwindows/mdi/images/paste.png +0 -0
- data/examples/mainwindows/mdi/images/save.png +0 -0
- data/examples/mainwindows/mdi/main.rb +32 -0
- data/examples/mainwindows/mdi/mainwindow.rb +363 -0
- data/examples/mainwindows/mdi/mdichild.rb +152 -0
- data/examples/mainwindows/menus/main.rb +32 -0
- data/examples/mainwindows/menus/mainwindow.rb +327 -0
- data/examples/mainwindows/recentfiles/main.rb +32 -0
- data/examples/mainwindows/recentfiles/mainwindow.rb +258 -0
- data/examples/mainwindows/sdi/images/copy.png +0 -0
- data/examples/mainwindows/sdi/images/cut.png +0 -0
- data/examples/mainwindows/sdi/images/new.png +0 -0
- data/examples/mainwindows/sdi/images/open.png +0 -0
- data/examples/mainwindows/sdi/images/paste.png +0 -0
- data/examples/mainwindows/sdi/images/save.png +0 -0
- data/examples/mainwindows/sdi/main.rb +32 -0
- data/examples/mainwindows/sdi/mainwindow.rb +335 -0
- data/examples/network/broadcastreceiver/main.rb +32 -0
- data/examples/network/broadcastreceiver/receiver.rb +64 -0
- data/examples/network/broadcastsender/main.rb +32 -0
- data/examples/network/broadcastsender/sender.rb +72 -0
- data/examples/network/fortuneclient/client.rb +149 -0
- data/examples/network/fortuneclient/main.rb +32 -0
- data/examples/network/fortuneserver/main.rb +32 -0
- data/examples/network/fortuneserver/server.rb +88 -0
- data/examples/network/ftp/ftpwindow.rb +259 -0
- data/examples/network/ftp/images/cdtoparent.png +0 -0
- data/examples/network/ftp/images/dir.png +0 -0
- data/examples/network/ftp/images/file.png +0 -0
- data/examples/network/ftp/main.rb +32 -0
- data/examples/network/http/httpwindow.rb +187 -0
- data/examples/network/http/main.rb +32 -0
- data/examples/network/loopback/dialog.rb +163 -0
- data/examples/network/loopback/main.rb +32 -0
- data/examples/opengl/grabber/glwidget.rb +265 -0
- data/examples/opengl/grabber/main.rb +32 -0
- data/examples/opengl/grabber/mainwindow.rb +189 -0
- data/examples/opengl/hellogl/glwidget.rb +226 -0
- data/examples/opengl/hellogl/main.rb +32 -0
- data/examples/opengl/hellogl/window.rb +66 -0
- data/examples/opengl/textures/glwidget.rb +151 -0
- data/examples/opengl/textures/images/side1.png +0 -0
- data/examples/opengl/textures/images/side2.png +0 -0
- data/examples/opengl/textures/images/side3.png +0 -0
- data/examples/opengl/textures/images/side4.png +0 -0
- data/examples/opengl/textures/images/side5.png +0 -0
- data/examples/opengl/textures/images/side6.png +0 -0
- data/examples/opengl/textures/main.rb +32 -0
- data/examples/opengl/textures/window.rb +77 -0
- data/examples/painting/basicdrawing/images/brick.png +0 -0
- data/examples/painting/basicdrawing/images/qt-logo.png +0 -0
- data/examples/painting/basicdrawing/main.rb +32 -0
- data/examples/painting/basicdrawing/renderarea.rb +166 -0
- data/examples/painting/basicdrawing/window.rb +215 -0
- data/examples/painting/concentriccircles/circlewidget.rb +88 -0
- data/examples/painting/concentriccircles/main.rb +32 -0
- data/examples/painting/concentriccircles/window.rb +72 -0
- data/examples/painting/fontsampler/main.rb +32 -0
- data/examples/painting/fontsampler/mainwindow.rb +369 -0
- data/examples/painting/fontsampler/mainwindowbase.ui +136 -0
- data/examples/painting/fontsampler/makefile +8 -0
- data/examples/painting/fontsampler/previewdialog.rb +257 -0
- data/examples/painting/fontsampler/previewdialogbase.ui +224 -0
- data/examples/painting/fontsampler/previewlabel.rb +43 -0
- data/examples/painting/imagecomposition/imagecomposer.rb +152 -0
- data/examples/painting/imagecomposition/imagecomposition.qrc +6 -0
- data/examples/painting/imagecomposition/images/background.png +0 -0
- data/examples/painting/imagecomposition/images/blackrectangle.png +0 -0
- data/examples/painting/imagecomposition/images/butterfly.png +0 -0
- data/examples/painting/imagecomposition/images/checker.png +0 -0
- data/examples/painting/imagecomposition/main.rb +33 -0
- data/examples/painting/imagecomposition/makefile +2 -0
- data/examples/painting/painterpaths/main.rb +32 -0
- data/examples/painting/painterpaths/renderarea.rb +97 -0
- data/examples/painting/painterpaths/window.rb +247 -0
- data/examples/painting/svgviewer/files/bubbles.svg +212 -0
- data/examples/painting/svgviewer/files/cubic.svg +77 -0
- data/examples/painting/svgviewer/files/spheres.svg +79 -0
- data/examples/painting/svgviewer/main.rb +38 -0
- data/examples/painting/svgviewer/mainwindow.rb +99 -0
- data/examples/painting/svgviewer/makefile +2 -0
- data/examples/painting/svgviewer/svgview.rb +156 -0
- data/examples/painting/svgviewer/svgviewer.qrc +6 -0
- data/examples/painting/svgviewer/svgwindow.rb +87 -0
- data/examples/painting/transformations/main.rb +32 -0
- data/examples/painting/transformations/renderarea.rb +127 -0
- data/examples/painting/transformations/window.rb +153 -0
- data/examples/passivepopup/passivepopup.rb +38 -0
- data/examples/qdbus/chat/chat.rb +146 -0
- data/examples/qdbus/chat/chat_adaptor.rb +12 -0
- data/examples/qdbus/chat/chat_interface.rb +13 -0
- data/examples/qdbus/chat/chatmainwindow.ui +184 -0
- data/examples/qdbus/chat/chatsetnickname.ui +145 -0
- data/examples/qdbus/chat/makefile +8 -0
- data/examples/qdbus/complexpingpong/complexping.rb +92 -0
- data/examples/qdbus/complexpingpong/complexpong.rb +83 -0
- data/examples/qdbus/complexpingpong/ping-common.rb +1 -0
- data/examples/qdbus/listnames/listnames.rb +69 -0
- data/examples/qdbus/pingpong/ping-common.rb +1 -0
- data/examples/qdbus/pingpong/ping.rb +52 -0
- data/examples/qdbus/pingpong/pong.rb +55 -0
- data/examples/qdbus/remotecontrolledcar/car/car.rb +151 -0
- data/examples/qdbus/remotecontrolledcar/car/main.rb +50 -0
- data/examples/qdbus/remotecontrolledcar/controller/controller.rb +66 -0
- data/examples/qdbus/remotecontrolledcar/controller/controller.ui +61 -0
- data/examples/qdbus/remotecontrolledcar/controller/main.rb +32 -0
- data/examples/qdbus/remotecontrolledcar/controller/makefile +2 -0
- data/examples/qtscribble/scribble.rb +270 -0
- data/examples/richtext/calendar/main.rb +33 -0
- data/examples/richtext/calendar/mainwindow.rb +173 -0
- data/examples/richtext/orderform/detailsdialog.rb +130 -0
- data/examples/richtext/orderform/main.rb +34 -0
- data/examples/richtext/orderform/mainwindow.rb +194 -0
- data/examples/richtext/syntaxhighlighter/examples/example +79 -0
- data/examples/richtext/syntaxhighlighter/highlighter.rb +90 -0
- data/examples/richtext/syntaxhighlighter/main.rb +34 -0
- data/examples/richtext/syntaxhighlighter/mainwindow.rb +105 -0
- data/examples/ruboids/LICENSE.txt +58 -0
- data/examples/ruboids/Manifest +26 -0
- data/examples/ruboids/README +53 -0
- data/examples/ruboids/TODO +29 -0
- data/examples/ruboids/boids.properties +33 -0
- data/examples/ruboids/generateManifest.rb +42 -0
- data/examples/ruboids/index.html +147 -0
- data/examples/ruboids/release.rb +152 -0
- data/examples/ruboids/ruboids/Boid.rb +141 -0
- data/examples/ruboids/ruboids/BoidView.rb +159 -0
- data/examples/ruboids/ruboids/Camera.rb +24 -0
- data/examples/ruboids/ruboids/CameraDialog.rb +218 -0
- data/examples/ruboids/ruboids/Canvas.rb +143 -0
- data/examples/ruboids/ruboids/Cloud.rb +61 -0
- data/examples/ruboids/ruboids/CloudView.rb +54 -0
- data/examples/ruboids/ruboids/Flock.rb +47 -0
- data/examples/ruboids/ruboids/Graphics.rb +278 -0
- data/examples/ruboids/ruboids/Params.rb +87 -0
- data/examples/ruboids/ruboids/Point.rb +153 -0
- data/examples/ruboids/ruboids/Thing.rb +34 -0
- data/examples/ruboids/ruboids/Triangle.rb +21 -0
- data/examples/ruboids/ruboids/View.rb +88 -0
- data/examples/ruboids/ruboids/World.rb +82 -0
- data/examples/ruboids/ruboids/WorldWindow.rb +52 -0
- data/examples/ruboids/ruboids/info.rb +12 -0
- data/examples/ruboids/ruboids/ruboids.rb +29 -0
- data/examples/run_all.rb +15 -0
- data/examples/threading/main_thread.rb +19 -0
- data/examples/tutorial/t1/t1.rb +10 -0
- data/examples/tutorial/t10/cannon.rb +72 -0
- data/examples/tutorial/t10/lcdrange.rb +45 -0
- data/examples/tutorial/t10/t10.rb +55 -0
- data/examples/tutorial/t11/cannon.rb +124 -0
- data/examples/tutorial/t11/lcdrange.rb +45 -0
- data/examples/tutorial/t11/t11.rb +65 -0
- data/examples/tutorial/t12/cannon.rb +158 -0
- data/examples/tutorial/t12/lcdrange.rb +59 -0
- data/examples/tutorial/t12/t12.rb +66 -0
- data/examples/tutorial/t13/cannon.rb +208 -0
- data/examples/tutorial/t13/gamebrd.rb +113 -0
- data/examples/tutorial/t13/lcdrange.rb +60 -0
- data/examples/tutorial/t13/t13.rb +11 -0
- data/examples/tutorial/t14/cannon.rb +263 -0
- data/examples/tutorial/t14/gamebrd.rb +123 -0
- data/examples/tutorial/t14/lcdrange.rb +63 -0
- data/examples/tutorial/t14/t14.rb +11 -0
- data/examples/tutorial/t2/t2.rb +16 -0
- data/examples/tutorial/t3/t3.rb +18 -0
- data/examples/tutorial/t4/t4.rb +25 -0
- data/examples/tutorial/t5/t5.rb +37 -0
- data/examples/tutorial/t6/t6.rb +52 -0
- data/examples/tutorial/t7/lcdrange.rb +32 -0
- data/examples/tutorial/t7/t7.rb +42 -0
- data/examples/tutorial/t8/cannon.rb +38 -0
- data/examples/tutorial/t8/lcdrange.rb +45 -0
- data/examples/tutorial/t8/t8.rb +43 -0
- data/examples/tutorial/t9/cannon.rb +45 -0
- data/examples/tutorial/t9/lcdrange.rb +46 -0
- data/examples/tutorial/t9/t9.rb +43 -0
- data/examples/widgets/analogclock/analogclock.rb +94 -0
- data/examples/widgets/analogclock/main.rb +9 -0
- data/examples/widgets/calculator/button.rb +45 -0
- data/examples/widgets/calculator/calculator.rb +382 -0
- data/examples/widgets/calculator/main.rb +32 -0
- data/examples/widgets/charactermap/characterwidget.rb +110 -0
- data/examples/widgets/charactermap/main.rb +32 -0
- data/examples/widgets/charactermap/mainwindow.rb +118 -0
- data/examples/widgets/digitalclock/digitalclock.rb +30 -0
- data/examples/widgets/digitalclock/main.rb +9 -0
- data/examples/widgets/groupbox/main.rb +32 -0
- data/examples/widgets/groupbox/window.rb +134 -0
- data/examples/widgets/icons/iconpreviewarea.rb +111 -0
- data/examples/widgets/icons/iconsizespinbox.rb +39 -0
- data/examples/widgets/icons/imagedelegate.rb +73 -0
- data/examples/widgets/icons/images/designer.png +0 -0
- data/examples/widgets/icons/images/find_disabled.png +0 -0
- data/examples/widgets/icons/images/find_normal.png +0 -0
- data/examples/widgets/icons/images/monkey_off_128x128.png +0 -0
- data/examples/widgets/icons/images/monkey_off_16x16.png +0 -0
- data/examples/widgets/icons/images/monkey_off_32x32.png +0 -0
- data/examples/widgets/icons/images/monkey_off_64x64.png +0 -0
- data/examples/widgets/icons/images/monkey_on_128x128.png +0 -0
- data/examples/widgets/icons/images/monkey_on_16x16.png +0 -0
- data/examples/widgets/icons/images/monkey_on_32x32.png +0 -0
- data/examples/widgets/icons/images/monkey_on_64x64.png +0 -0
- data/examples/widgets/icons/images/qtopia_16x16.png +0 -0
- data/examples/widgets/icons/images/qtopia_32x32.png +0 -0
- data/examples/widgets/icons/images/qtopia_48x48.png +0 -0
- data/examples/widgets/icons/main.rb +32 -0
- data/examples/widgets/icons/mainwindow.rb +351 -0
- data/examples/widgets/imageviewer/imageviewer.rb +219 -0
- data/examples/widgets/imageviewer/main.rb +32 -0
- data/examples/widgets/lineedits/main.rb +32 -0
- data/examples/widgets/lineedits/window.rb +199 -0
- data/examples/widgets/movie/images/open.png +0 -0
- data/examples/widgets/movie/images/pause.png +0 -0
- data/examples/widgets/movie/images/play.png +0 -0
- data/examples/widgets/movie/images/quit.png +0 -0
- data/examples/widgets/movie/images/stop.png +0 -0
- data/examples/widgets/movie/main.rb +32 -0
- data/examples/widgets/movie/movieplayer.rb +201 -0
- data/examples/widgets/movie/movies/fire.mng +0 -0
- data/examples/widgets/screenshot/main.rb +32 -0
- data/examples/widgets/screenshot/screenshot.rb +155 -0
- data/examples/widgets/scribble/main.rb +32 -0
- data/examples/widgets/scribble/mainwindow.rb +202 -0
- data/examples/widgets/scribble/scribblearea.rb +154 -0
- data/examples/widgets/sliders/main.rb +32 -0
- data/examples/widgets/sliders/slidersgroup.rb +97 -0
- data/examples/widgets/sliders/window.rb +124 -0
- data/examples/widgets/spinboxes/main.rb +32 -0
- data/examples/widgets/spinboxes/window.rb +213 -0
- data/examples/widgets/tetrix/main.rb +33 -0
- data/examples/widgets/tetrix/tetrixboard.rb +346 -0
- data/examples/widgets/tetrix/tetrixpiece.rb +135 -0
- data/examples/widgets/tetrix/tetrixwindow.rb +88 -0
- data/examples/widgets/tooltips/images/circle.png +0 -0
- data/examples/widgets/tooltips/images/square.png +0 -0
- data/examples/widgets/tooltips/images/triangle.png +0 -0
- data/examples/widgets/tooltips/main.rb +32 -0
- data/examples/widgets/tooltips/shapeitem.rb +31 -0
- data/examples/widgets/tooltips/sortingbox.rb +222 -0
- data/examples/widgets/wiggly/dialog.rb +48 -0
- data/examples/widgets/wiggly/main.rb +9 -0
- data/examples/widgets/wiggly/wigglywidget.rb +76 -0
- data/examples/widgets/windowflags/controllerwindow.rb +195 -0
- data/examples/widgets/windowflags/main.rb +32 -0
- data/examples/widgets/windowflags/previewwindow.rb +103 -0
- data/examples/xml/dombookmarks/frank.xbel +230 -0
- data/examples/xml/dombookmarks/jennifer.xbel +93 -0
- data/examples/xml/dombookmarks/main.rb +34 -0
- data/examples/xml/dombookmarks/mainwindow.rb +129 -0
- data/examples/xml/dombookmarks/xbeltree.rb +172 -0
- data/examples/xml/saxbookmarks/frank.xbel +230 -0
- data/examples/xml/saxbookmarks/jennifer.xbel +93 -0
- data/examples/xml/saxbookmarks/main.rb +34 -0
- data/examples/xml/saxbookmarks/mainwindow.rb +144 -0
- data/examples/xml/saxbookmarks/xbelgenerator.rb +95 -0
- data/examples/xml/saxbookmarks/xbelhandler.rb +122 -0
- data/extconf.rb +256 -0
- data/lib/2.0/libqtruby4shared.dll +0 -0
- data/lib/2.0/libsmokebase.dll +0 -0
- data/lib/2.0/libsmokeqtcore.dll +0 -0
- data/lib/2.0/libsmokeqtdeclarative.dll +0 -0
- data/lib/2.0/libsmokeqtgui.dll +0 -0
- data/lib/2.0/libsmokeqthelp.dll +0 -0
- data/lib/2.0/libsmokeqtmultimedia.dll +0 -0
- data/lib/2.0/libsmokeqtnetwork.dll +0 -0
- data/lib/2.0/libsmokeqtopengl.dll +0 -0
- data/lib/2.0/libsmokeqtscript.dll +0 -0
- data/lib/2.0/libsmokeqtsql.dll +0 -0
- data/lib/2.0/libsmokeqtsvg.dll +0 -0
- data/lib/2.0/libsmokeqttest.dll +0 -0
- data/lib/2.0/libsmokeqtuitools.dll +0 -0
- data/lib/2.0/libsmokeqtwebkit.dll +0 -0
- data/lib/2.0/libsmokeqtxml.dll +0 -0
- data/lib/2.0/libsmokeqtxmlpatterns.dll +0 -0
- data/lib/2.0/qtdeclarative.so +0 -0
- data/lib/2.0/qtruby4.so +0 -0
- data/lib/2.0/qtscript.so +0 -0
- data/lib/2.0/qttest.so +0 -0
- data/lib/2.0/qtuitools.so +0 -0
- data/lib/2.0/qtwebkit.so +0 -0
- data/lib/2.1/libqtruby4shared.dll +0 -0
- data/lib/2.1/libsmokebase.dll +0 -0
- data/lib/2.1/libsmokeqtcore.dll +0 -0
- data/lib/2.1/libsmokeqtdeclarative.dll +0 -0
- data/lib/2.1/libsmokeqtgui.dll +0 -0
- data/lib/2.1/libsmokeqthelp.dll +0 -0
- data/lib/2.1/libsmokeqtmultimedia.dll +0 -0
- data/lib/2.1/libsmokeqtnetwork.dll +0 -0
- data/lib/2.1/libsmokeqtopengl.dll +0 -0
- data/lib/2.1/libsmokeqtscript.dll +0 -0
- data/lib/2.1/libsmokeqtsql.dll +0 -0
- data/lib/2.1/libsmokeqtsvg.dll +0 -0
- data/lib/2.1/libsmokeqttest.dll +0 -0
- data/lib/2.1/libsmokeqtuitools.dll +0 -0
- data/lib/2.1/libsmokeqtwebkit.dll +0 -0
- data/lib/2.1/libsmokeqtxml.dll +0 -0
- data/lib/2.1/libsmokeqtxmlpatterns.dll +0 -0
- data/lib/2.1/qtdeclarative.so +0 -0
- data/lib/2.1/qtruby4.so +0 -0
- data/lib/2.1/qtscript.so +0 -0
- data/lib/2.1/qttest.so +0 -0
- data/lib/2.1/qtuitools.so +0 -0
- data/lib/2.1/qtwebkit.so +0 -0
- data/lib/2.2/libqtruby4shared.dll +0 -0
- data/lib/2.2/libsmokebase.dll +0 -0
- data/lib/2.2/libsmokeqtcore.dll +0 -0
- data/lib/2.2/libsmokeqtdeclarative.dll +0 -0
- data/lib/2.2/libsmokeqtgui.dll +0 -0
- data/lib/2.2/libsmokeqthelp.dll +0 -0
- data/lib/2.2/libsmokeqtmultimedia.dll +0 -0
- data/lib/2.2/libsmokeqtnetwork.dll +0 -0
- data/lib/2.2/libsmokeqtopengl.dll +0 -0
- data/lib/2.2/libsmokeqtscript.dll +0 -0
- data/lib/2.2/libsmokeqtsql.dll +0 -0
- data/lib/2.2/libsmokeqtsvg.dll +0 -0
- data/lib/2.2/libsmokeqttest.dll +0 -0
- data/lib/2.2/libsmokeqtuitools.dll +0 -0
- data/lib/2.2/libsmokeqtwebkit.dll +0 -0
- data/lib/2.2/libsmokeqtxml.dll +0 -0
- data/lib/2.2/libsmokeqtxmlpatterns.dll +0 -0
- data/lib/2.2/qtdeclarative.so +0 -0
- data/lib/2.2/qtruby4.so +0 -0
- data/lib/2.2/qtscript.so +0 -0
- data/lib/2.2/qttest.so +0 -0
- data/lib/2.2/qtuitools.so +0 -0
- data/lib/2.2/qtwebkit.so +0 -0
- data/lib/Qt.rb +1 -0
- data/lib/Qt/qtruby4.rb +3258 -0
- data/lib/Qt4.rb +111 -0
- data/lib/qtbindings_version.rb +2 -0
- data/lib/qtdeclarative/qtdeclarative.rb +17 -0
- data/lib/qtscript/qtscript.rb +40 -0
- data/lib/qttest/qttest.rb +166 -0
- data/lib/qtuitools/qtuitools.rb +17 -0
- data/lib/qtwebkit/qtwebkit.rb +17 -0
- data/qtbindings.gemspec +18 -0
- data/qtbindingsnative.gemspec +19 -0
- metadata +559 -0
@@ -0,0 +1,50 @@
|
|
1
|
+
=begin
|
2
|
+
**
|
3
|
+
** Copyright (C) 2004-2005 Trolltech AS. All rights reserved.
|
4
|
+
**
|
5
|
+
** This file is part of the example classes of the Qt Toolkit.
|
6
|
+
**
|
7
|
+
** This file may be used under the terms of the GNU General Public
|
8
|
+
** License version 2.0 as published by the Free Software Foundation
|
9
|
+
** and appearing in the file LICENSE.GPL included in the packaging of
|
10
|
+
** this file. Please review the following information to ensure GNU
|
11
|
+
** General Public Licensing requirements will be met:
|
12
|
+
** http://www.trolltech.com/products/qt/opensource.html
|
13
|
+
**
|
14
|
+
** If you are unsure which license is appropriate for your use, please
|
15
|
+
** review the following information:
|
16
|
+
** http://www.trolltech.com/products/qt/licensing.html or contact the
|
17
|
+
** sales department at sales@trolltech.com.
|
18
|
+
**
|
19
|
+
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
20
|
+
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
21
|
+
**
|
22
|
+
|
23
|
+
** Translated to QtRuby by Richard Dale
|
24
|
+
=end
|
25
|
+
|
26
|
+
require 'Qt'
|
27
|
+
require './car.rb'
|
28
|
+
|
29
|
+
app = Qt::Application.new(ARGV)
|
30
|
+
|
31
|
+
scene = Qt::GraphicsScene.new
|
32
|
+
scene.setSceneRect(-500, -500, 1000, 1000)
|
33
|
+
scene.itemIndexMethod = Qt::GraphicsScene::NoIndex
|
34
|
+
|
35
|
+
car = Car.new
|
36
|
+
scene.addItem(car)
|
37
|
+
|
38
|
+
view = Qt::GraphicsView.new(scene)
|
39
|
+
view.renderHint = Qt::Painter::Antialiasing
|
40
|
+
view.backgroundBrush = Qt::Brush.new(Qt::darkGray)
|
41
|
+
view.setWindowTitle(QT_TRANSLATE_NOOP(Qt::GraphicsView, "Qt DBus Controlled Car"))
|
42
|
+
view.resize(400, 300)
|
43
|
+
view.show()
|
44
|
+
|
45
|
+
adaptor = CarAdaptor.new(car)
|
46
|
+
connection = Qt::DBusConnection::sessionBus()
|
47
|
+
connection.registerObject("/Car", adaptor, Qt::DBusConnection::ExportScriptableSlots)
|
48
|
+
connection.registerService("com.trolltech.CarExample")
|
49
|
+
|
50
|
+
app.exec
|
@@ -0,0 +1,66 @@
|
|
1
|
+
=begin
|
2
|
+
**
|
3
|
+
** Copyright (C) 2004-2005 Trolltech AS. All rights reserved.
|
4
|
+
**
|
5
|
+
** This file is part of the example classes of the Qt Toolkit.
|
6
|
+
**
|
7
|
+
** This file may be used under the terms of the GNU General Public
|
8
|
+
** License version 2.0 as published by the Free Software Foundation
|
9
|
+
** and appearing in the file LICENSE.GPL included in the packaging of
|
10
|
+
** this file. Please review the following information to ensure GNU
|
11
|
+
** General Public Licensing requirements will be met:
|
12
|
+
** http://www.trolltech.com/products/qt/opensource.html
|
13
|
+
**
|
14
|
+
** If you are unsure which license is appropriate for your use, please
|
15
|
+
** review the following information:
|
16
|
+
** http://www.trolltech.com/products/qt/licensing.html or contact the
|
17
|
+
** sales department at sales@trolltech.com.
|
18
|
+
**
|
19
|
+
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
20
|
+
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
21
|
+
**
|
22
|
+
|
23
|
+
** Translated to QtRuby by Richard Dale
|
24
|
+
=end
|
25
|
+
|
26
|
+
require './ui_controller.rb'
|
27
|
+
|
28
|
+
class Controller < Qt::Widget
|
29
|
+
|
30
|
+
slots :on_accelerate_clicked, :on_decelerate_clicked,
|
31
|
+
:on_left_clicked, :on_right_clicked
|
32
|
+
|
33
|
+
def initialize(parent = nil)
|
34
|
+
super(parent)
|
35
|
+
@ui = Ui_Controller.new
|
36
|
+
@ui.setupUi(self)
|
37
|
+
@car = Qt::DBusInterface.new("com.trolltech.CarExample", "/Car",
|
38
|
+
"com.trolltech.Examples.CarInterface",
|
39
|
+
Qt::DBusConnection::sessionBus(), self)
|
40
|
+
startTimer(1000)
|
41
|
+
end
|
42
|
+
|
43
|
+
def timerEvent(event)
|
44
|
+
if @car.valid?
|
45
|
+
@ui.label.text = "connected"
|
46
|
+
else
|
47
|
+
@ui.label.text = "disconnected"
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
def on_accelerate_clicked
|
52
|
+
@car.accelerate
|
53
|
+
end
|
54
|
+
|
55
|
+
def on_decelerate_clicked
|
56
|
+
@car.decelerate
|
57
|
+
end
|
58
|
+
|
59
|
+
def on_left_clicked
|
60
|
+
@car.turnLeft
|
61
|
+
end
|
62
|
+
|
63
|
+
def on_right_clicked
|
64
|
+
@car.turnRight
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
<ui version="4.0" >
|
2
|
+
<class>Controller</class>
|
3
|
+
<widget class="QWidget" name="Controller" >
|
4
|
+
<property name="geometry" >
|
5
|
+
<rect>
|
6
|
+
<x>0</x>
|
7
|
+
<y>0</y>
|
8
|
+
<width>255</width>
|
9
|
+
<height>111</height>
|
10
|
+
</rect>
|
11
|
+
</property>
|
12
|
+
<layout class="QGridLayout" >
|
13
|
+
<property name="margin" >
|
14
|
+
<number>9</number>
|
15
|
+
</property>
|
16
|
+
<property name="spacing" >
|
17
|
+
<number>6</number>
|
18
|
+
</property>
|
19
|
+
<item row="1" column="1" >
|
20
|
+
<widget class="QLabel" name="label" >
|
21
|
+
<property name="text" >
|
22
|
+
<string>Controller</string>
|
23
|
+
</property>
|
24
|
+
<property name="alignment" >
|
25
|
+
<set>Qt::AlignCenter</set>
|
26
|
+
</property>
|
27
|
+
</widget>
|
28
|
+
</item>
|
29
|
+
<item row="2" column="1" >
|
30
|
+
<widget class="QPushButton" name="decelerate" >
|
31
|
+
<property name="text" >
|
32
|
+
<string>Decelerate</string>
|
33
|
+
</property>
|
34
|
+
</widget>
|
35
|
+
</item>
|
36
|
+
<item row="0" column="1" >
|
37
|
+
<widget class="QPushButton" name="accelerate" >
|
38
|
+
<property name="text" >
|
39
|
+
<string>Accelerate</string>
|
40
|
+
</property>
|
41
|
+
</widget>
|
42
|
+
</item>
|
43
|
+
<item row="1" column="2" >
|
44
|
+
<widget class="QPushButton" name="right" >
|
45
|
+
<property name="text" >
|
46
|
+
<string>Right</string>
|
47
|
+
</property>
|
48
|
+
</widget>
|
49
|
+
</item>
|
50
|
+
<item row="1" column="0" >
|
51
|
+
<widget class="QPushButton" name="left" >
|
52
|
+
<property name="text" >
|
53
|
+
<string>Left</string>
|
54
|
+
</property>
|
55
|
+
</widget>
|
56
|
+
</item>
|
57
|
+
</layout>
|
58
|
+
</widget>
|
59
|
+
<resources/>
|
60
|
+
<connections/>
|
61
|
+
</ui>
|
@@ -0,0 +1,32 @@
|
|
1
|
+
=begin
|
2
|
+
**
|
3
|
+
** Copyright (C) 2004-2005 Trolltech AS. All rights reserved.
|
4
|
+
**
|
5
|
+
** This file is part of the example classes of the Qt Toolkit.
|
6
|
+
**
|
7
|
+
** This file may be used under the terms of the GNU General Public
|
8
|
+
** License version 2.0 as published by the Free Software Foundation
|
9
|
+
** and appearing in the file LICENSE.GPL included in the packaging of
|
10
|
+
** this file. Please review the following information to ensure GNU
|
11
|
+
** General Public Licensing requirements will be met:
|
12
|
+
** http://www.trolltech.com/products/qt/opensource.html
|
13
|
+
**
|
14
|
+
** If you are unsure which license is appropriate for your use, please
|
15
|
+
** review the following information:
|
16
|
+
** http://www.trolltech.com/products/qt/licensing.html or contact the
|
17
|
+
** sales department at sales@trolltech.com.
|
18
|
+
**
|
19
|
+
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
20
|
+
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
21
|
+
**
|
22
|
+
|
23
|
+
** Translated to QtRuby by Richard Dale
|
24
|
+
=end
|
25
|
+
|
26
|
+
require 'Qt'
|
27
|
+
require './controller.rb'
|
28
|
+
|
29
|
+
app = Qt::Application.new(ARGV)
|
30
|
+
controller = Controller.new
|
31
|
+
controller.show
|
32
|
+
app.exec
|
@@ -0,0 +1,270 @@
|
|
1
|
+
#!/usr/bin/env ruby -w
|
2
|
+
|
3
|
+
#
|
4
|
+
# A class that lets the user draw with the mouse. The
|
5
|
+
# window knows how to redraw itself.
|
6
|
+
#
|
7
|
+
|
8
|
+
require 'Qt'
|
9
|
+
|
10
|
+
class ScribbleArea < Qt::Widget
|
11
|
+
|
12
|
+
slots "setColor(QColor)", "slotLoad(const QString&)", "slotSave(const QString&)", "slotClearArea()"
|
13
|
+
|
14
|
+
#
|
15
|
+
# The constructor. Initializes the member variables.
|
16
|
+
#
|
17
|
+
def initialize(parent)
|
18
|
+
super(parent)
|
19
|
+
# initialize member variables
|
20
|
+
@_buffer = Qt::Pixmap.new()
|
21
|
+
@_last = Qt::Point.new()
|
22
|
+
@_currentcolor = Qt::black
|
23
|
+
|
24
|
+
# don't blank the window before repainting
|
25
|
+
setAttribute( Qt::WA_NoBackground )
|
26
|
+
|
27
|
+
# create a pop-up menu
|
28
|
+
@_popupmenu = Qt::Menu.new()
|
29
|
+
@_popupmenu.addAction( "&Clear", self, SLOT( "slotClearArea()" ) )
|
30
|
+
end
|
31
|
+
|
32
|
+
#
|
33
|
+
# This slot sets the curren color for the scribble area. It will be
|
34
|
+
# connected with the colorChanged( Qt::Color ) signal from the
|
35
|
+
# ScribbleWindow.
|
36
|
+
#
|
37
|
+
def setColor( new_color )
|
38
|
+
@_currentcolor = new_color
|
39
|
+
end
|
40
|
+
|
41
|
+
#
|
42
|
+
# This slot clears the drawing area by filling the off-screen buffer with
|
43
|
+
# white and copying it over to the window.
|
44
|
+
#
|
45
|
+
def slotClearArea()
|
46
|
+
# fill the off screen buffer with plain white
|
47
|
+
@_buffer.fill( white )
|
48
|
+
|
49
|
+
# and copy it over to the window
|
50
|
+
bitBlt( self, 0, 0, @_buffer )
|
51
|
+
end
|
52
|
+
|
53
|
+
|
54
|
+
#
|
55
|
+
# This method does the actual loading. It relies on Qt::Pixmap (and the
|
56
|
+
# underlying I/O machinery) to determine the filetype.
|
57
|
+
#
|
58
|
+
def slotLoad( filename )
|
59
|
+
if !@_buffer.load( filename )
|
60
|
+
Qt::MessageBox.warning( nil, "Load error", "Could not load file" )
|
61
|
+
end
|
62
|
+
|
63
|
+
repaint() # refresh the window
|
64
|
+
end
|
65
|
+
|
66
|
+
|
67
|
+
#
|
68
|
+
# This method does the actual saving. We hard-code the file type as
|
69
|
+
# BMP. Unix users might want to replace this with something like XPM.
|
70
|
+
#
|
71
|
+
def slotSave( filename )
|
72
|
+
if !@_buffer.save( filename, "BMP" )
|
73
|
+
Qt::MessageBox.warning( nil, "Save error", "Could not save file" )
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
|
78
|
+
#
|
79
|
+
# This method is called whenever the user presses the
|
80
|
+
# mouse over the window. It just records the position of the mouse
|
81
|
+
# at the time of the click.
|
82
|
+
#
|
83
|
+
def mousePressEvent(event)
|
84
|
+
if event.button() == RightButton
|
85
|
+
@_popupmenu.exec( Qt::Cursor.pos() )
|
86
|
+
else
|
87
|
+
@_last = event.pos() # retrieve the coordinates from the event
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
|
92
|
+
#
|
93
|
+
# The method is called whenever the usr moves the mouse
|
94
|
+
# while the mouse button is pressed. If we had called
|
95
|
+
# setMouseTracking(true) before, the method would also be called
|
96
|
+
# when the mouse was moved with any button pressed. We know that
|
97
|
+
# we haven't, and thus don't have to check whether any buttons are
|
98
|
+
# pressed.
|
99
|
+
#
|
100
|
+
def mouseMoveEvent(event)
|
101
|
+
# create a Qt::Painter object for drawing onto the window
|
102
|
+
windowpainter = Qt::Painter.new()
|
103
|
+
# and another Qt::Painter object for drawing int an off-screen pixmap
|
104
|
+
bufferpainter = Qt::Painter.new()
|
105
|
+
|
106
|
+
# start painting
|
107
|
+
windowpainter.begin( self ) # This painter paints onto the window
|
108
|
+
bufferpainter.begin( @_buffer ) # and this one paints in the buffer
|
109
|
+
|
110
|
+
# set a standard pen with the currently selected color
|
111
|
+
windowpainter.setPen( @_currentcolor )
|
112
|
+
bufferpainter.setPen( @_currentcolor )
|
113
|
+
|
114
|
+
# draw a line in both the window and the buffer
|
115
|
+
windowpainter.drawLine( @_last, event.pos() )
|
116
|
+
bufferpainter.drawLine( @_last, event.pos() )
|
117
|
+
|
118
|
+
# done with painting
|
119
|
+
windowpainter.end()
|
120
|
+
bufferpainter.end()
|
121
|
+
|
122
|
+
# remember the current mouse position
|
123
|
+
@_last = event.pos()
|
124
|
+
end
|
125
|
+
|
126
|
+
#
|
127
|
+
# This method is called whenever the widget needs
|
128
|
+
# painting, for example when it has been obscured and then revealed again.
|
129
|
+
#
|
130
|
+
def paintEvent(event)
|
131
|
+
bitBlt(self, 0, 0, @_buffer)
|
132
|
+
end
|
133
|
+
|
134
|
+
#
|
135
|
+
# This method get called whenever the widget needs
|
136
|
+
# painting, for example, when it has been obscured and then revealed again.
|
137
|
+
#
|
138
|
+
def resizeEvent(event)
|
139
|
+
save = Qt::Pixmap.new( @_buffer )
|
140
|
+
@_buffer = save.scaled(event.size.width, event.size.height)
|
141
|
+
@_buffer.fill( Qt::Color.new(Qt::white) )
|
142
|
+
drawPixmap( @_buffer, 0, 0, save )
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
class ScribbleWindow < Qt::Widget
|
147
|
+
|
148
|
+
slots "slotAbout()", "slotAboutQt()", "slotColorMenu(int)", "slotLoad()", "slotSave()"
|
149
|
+
signals "colorChanged(QColor)", "load(const QString&)", "save(const QString&)"
|
150
|
+
|
151
|
+
COLOR_MENU_ID_BLACK = 0
|
152
|
+
COLOR_MENU_ID_RED = 1
|
153
|
+
COLOR_MENU_ID_BLUE = 2
|
154
|
+
COLOR_MENU_ID_GREEN = 3
|
155
|
+
COLOR_MENU_ID_YELLOW = 4
|
156
|
+
|
157
|
+
def initialize()
|
158
|
+
super
|
159
|
+
# The next lines build the menu bar. We first create the menus
|
160
|
+
# one by one, then add them to the menu bar. #
|
161
|
+
@_menubar = Qt::MenuBar.new( self ) # create a menu bar
|
162
|
+
|
163
|
+
@_filemenu = @_menubar.addMenu( "&File" ) # create a file menu
|
164
|
+
@_filemenu.addAction( "&Load", self, SLOT( "slotLoad()" ) )
|
165
|
+
@_filemenu.addAction( "&Save", self, SLOT( "slotSave()" ) )
|
166
|
+
@_filemenu.addSeparator()
|
167
|
+
@_filemenu.addAction( "&Quit", $qApp, SLOT( "quit()" ) )
|
168
|
+
|
169
|
+
@_colormenu = @_menubar.addMenu( "&Color" ) # create a color menu
|
170
|
+
# @_colormenu.addAction( "B&lack", COLOR_MENU_ID_BLACK)
|
171
|
+
# @_colormenu.addAction( "&Red", COLOR_MENU_ID_RED)
|
172
|
+
# @_colormenu.addAction( "&Blue", COLOR_MENU_ID_BLUE)
|
173
|
+
# @_colormenu.addAction( "&Green", COLOR_MENU_ID_GREEN)
|
174
|
+
# @_colormenu.addAction( "&Yellow", COLOR_MENU_ID_YELLOW)
|
175
|
+
# Qt::Object.connect( @_colormenu, SIGNAL( "activated( int )" ),
|
176
|
+
# self, SLOT( "slotColorMenu( int )" ) )
|
177
|
+
|
178
|
+
@_helpmenu = @_menubar.addMenu( "&Help" ) # create a help menu
|
179
|
+
@_helpmenu.addAction( "&About QtScribble", self, SLOT( "slotAbout()" ) )
|
180
|
+
@_helpmenu.addAction( "&About Qt", self, SLOT( "slotAboutQt()" ) )
|
181
|
+
|
182
|
+
# We create a Qt::ScrollView and a ScribbleArea. The ScribbleArea will
|
183
|
+
# be managed by the scroll view.#
|
184
|
+
@_scrollview = Qt::ScrollArea.new( self )
|
185
|
+
@_scrollview.setGeometry( 0, @_menubar.height(),
|
186
|
+
width(), height() - @_menubar.height() )
|
187
|
+
@_scribblearea = ScribbleArea.new( @_scrollview )
|
188
|
+
@_scribblearea.setGeometry( 0, 0, 1000, 1000 )
|
189
|
+
# @_scrollview.addChild( @_scribblearea )
|
190
|
+
Qt::Object.connect( self, SIGNAL( "colorChanged(QColor)" ),
|
191
|
+
@_scribblearea, SLOT( "setColor(QColor)" ) )
|
192
|
+
Qt::Object.connect( self, SIGNAL( "save(const QString&)" ),
|
193
|
+
@_scribblearea, SLOT( "slotSave(const QString&)" ) )
|
194
|
+
Qt::Object.connect( self, SIGNAL( "load(const QString&)" ),
|
195
|
+
@_scribblearea, SLOT( "slotLoad(const QString&)" ) )
|
196
|
+
end
|
197
|
+
|
198
|
+
def resizeEvent( event )
|
199
|
+
# When the whole window is resized, we have to rearrange the geometry
|
200
|
+
# in the ScribbleWindow as well. Note that the ScribbleArea does not need
|
201
|
+
# to be changed.
|
202
|
+
@_scrollview.setGeometry( 0, @_menubar.height(),
|
203
|
+
width(), height() - @_menubar.height() )
|
204
|
+
end
|
205
|
+
|
206
|
+
|
207
|
+
|
208
|
+
def slotAbout()
|
209
|
+
Qt::MessageBox.information( self, "About QtScribble 5",
|
210
|
+
"This is the Scribble 5 application\n" +
|
211
|
+
"Copyright 1998 by Mathias Kalle Dalheimer\n")
|
212
|
+
end
|
213
|
+
|
214
|
+
def slotAboutQt()
|
215
|
+
Qt::MessageBox.aboutQt( self, "About Qt" )
|
216
|
+
end
|
217
|
+
|
218
|
+
def slotColorMenu( item )
|
219
|
+
case item
|
220
|
+
when COLOR_MENU_ID_BLACK
|
221
|
+
emit colorChanged( black )
|
222
|
+
when COLOR_MENU_ID_RED
|
223
|
+
emit colorChanged( darkRed )
|
224
|
+
when COLOR_MENU_ID_BLUE
|
225
|
+
emit colorChanged( darkBlue )
|
226
|
+
when COLOR_MENU_ID_GREEN
|
227
|
+
emit colorChanged( darkGreen )
|
228
|
+
when COLOR_MENU_ID_YELLOW
|
229
|
+
emit colorChanged( yellow )
|
230
|
+
end
|
231
|
+
end
|
232
|
+
|
233
|
+
|
234
|
+
#
|
235
|
+
# This is the slot for the menu item File/Load. It opens a
|
236
|
+
# Qt::FileDialog to ask the user for a filename, then emits a save()
|
237
|
+
# signal with the filename as parameter.
|
238
|
+
#
|
239
|
+
def slotLoad()
|
240
|
+
# Open a file dialog for loading. The default directory is the
|
241
|
+
# current directory, the filter *.bmp.
|
242
|
+
#
|
243
|
+
filename = Qt::FileDialog.getOpenFileName( ".", "*.bmp", self )
|
244
|
+
if !filename.nil?
|
245
|
+
emit load( filename )
|
246
|
+
end
|
247
|
+
end
|
248
|
+
|
249
|
+
#
|
250
|
+
# This is the slot for the menu item File/Load. It opens a
|
251
|
+
# Qt::FileDialog to ask the user for a filename, then emits a save()
|
252
|
+
# signal with the filename as parameter.
|
253
|
+
#
|
254
|
+
def slotSave()
|
255
|
+
# Open a file dialog for saving. The default directory is the
|
256
|
+
# current directory, the filter *.bmp.
|
257
|
+
#
|
258
|
+
filename = Qt::FileDialog.getSaveFileName( ".", "*.bmp", self )
|
259
|
+
if !filename.nil?
|
260
|
+
emit save( filename )
|
261
|
+
end
|
262
|
+
end
|
263
|
+
end
|
264
|
+
|
265
|
+
myapp = Qt::Application.new(ARGV)
|
266
|
+
mywidget = ScribbleWindow.new()
|
267
|
+
mywidget.setGeometry(50, 500, 400, 400)
|
268
|
+
|
269
|
+
mywidget.show()
|
270
|
+
myapp.exec()
|