rock-qtbindings 4.8.6.5
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 +85 -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/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/qt.png +0 -0
- data/examples/itemviews/pixelator/images.qrc +5 -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 +123 -0
- data/examples/tutorial/t11/lcdrange.rb +45 -0
- data/examples/tutorial/t11/t11.rb +65 -0
- data/examples/tutorial/t12/cannon.rb +157 -0
- data/examples/tutorial/t12/lcdrange.rb +58 -0
- data/examples/tutorial/t12/t12.rb +65 -0
- data/examples/tutorial/t13/cannon.rb +206 -0
- data/examples/tutorial/t13/gamebrd.rb +112 -0
- data/examples/tutorial/t13/lcdrange.rb +59 -0
- data/examples/tutorial/t13/t13.rb +11 -0
- data/examples/tutorial/t14/cannon.rb +262 -0
- data/examples/tutorial/t14/gamebrd.rb +122 -0
- data/examples/tutorial/t14/lcdrange.rb +61 -0
- data/examples/tutorial/t14/t14.rb +11 -0
- data/examples/tutorial/t2/t2.rb +16 -0
- data/examples/tutorial/t3/t3.rb +17 -0
- data/examples/tutorial/t4/t4.rb +23 -0
- data/examples/tutorial/t5/t5.rb +35 -0
- data/examples/tutorial/t6/t6.rb +48 -0
- data/examples/tutorial/t7/lcdrange.rb +32 -0
- data/examples/tutorial/t7/t7.rb +40 -0
- data/examples/tutorial/t8/cannon.rb +37 -0
- data/examples/tutorial/t8/lcdrange.rb +45 -0
- data/examples/tutorial/t8/t8.rb +43 -0
- data/examples/tutorial/t9/cannon.rb +44 -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/ext/CMakeLists.txt +28 -0
- data/ext/cmake/modules/BasicFindPackageVersion.cmake.in +30 -0
- data/ext/cmake/modules/CMakeCSharpCompiler.cmake.in +7 -0
- data/ext/cmake/modules/CMakeCSharpInformation.cmake +366 -0
- data/ext/cmake/modules/CMakeDetermineCSharpCompiler.cmake +85 -0
- data/ext/cmake/modules/CMakeTestCSharpCompiler.cmake +1 -0
- data/ext/cmake/modules/CheckCXXSourceCompiles.cmake +68 -0
- data/ext/cmake/modules/FindLibraryWithDebug.cmake +113 -0
- data/ext/cmake/modules/FindMono.cmake +36 -0
- data/ext/cmake/modules/FindPHP5.cmake +179 -0
- data/ext/cmake/modules/FindPerlMore.cmake +78 -0
- data/ext/cmake/modules/FindPhonon.cmake +71 -0
- data/ext/cmake/modules/FindQImageBlitz.cmake +51 -0
- data/ext/cmake/modules/FindQScintilla.cmake +57 -0
- data/ext/cmake/modules/FindQt4.cmake +1275 -0
- data/ext/cmake/modules/FindQwt5.cmake +104 -0
- data/ext/cmake/modules/FindRuby.cmake +279 -0
- data/ext/cmake/modules/FindSmoke.cmake +78 -0
- data/ext/cmake/modules/HandleImportedTargetsInCMakeRequiredLibraries.cmake +85 -0
- data/ext/cmake/modules/MacroLogFeature.cmake +146 -0
- data/ext/cmake/modules/MacroOptionalAddBindings.cmake +47 -0
- data/ext/cmake/modules/MacroOptionalFindPackage.cmake +28 -0
- data/ext/cmake/modules/MacroPushRequiredVars.cmake +47 -0
- data/ext/cmake/modules/MacroWriteBasicCMakeVersionFile.cmake +22 -0
- data/ext/cmake/modules/Qt4ConfigDependentSettings.cmake +384 -0
- data/ext/cmake/modules/Qt4Macros.cmake +414 -0
- data/ext/cmake/modules/SmokeConfig.cmake.in +109 -0
- data/ext/generator/CMakeLists.txt +38 -0
- data/ext/generator/cmake/BasicFindPackageVersion.cmake.in +30 -0
- data/ext/generator/cmake/CMakeLists.txt +24 -0
- data/ext/generator/cmake/FindLibraryWithDebug.cmake +113 -0
- data/ext/generator/cmake/FindPhonon.cmake +71 -0
- data/ext/generator/cmake/FindQImageBlitz.cmake +51 -0
- data/ext/generator/cmake/FindQScintilla.cmake +57 -0
- data/ext/generator/cmake/FindQwt5.cmake +104 -0
- data/ext/generator/cmake/HandleImportedTargetsInCMakeRequiredLibraries.cmake +85 -0
- data/ext/generator/cmake/MacroLogFeature.cmake +146 -0
- data/ext/generator/cmake/MacroOptionalAddBindings.cmake +47 -0
- data/ext/generator/cmake/MacroOptionalFindPackage.cmake +28 -0
- data/ext/generator/cmake/MacroWriteBasicCMakeVersionFile.cmake +22 -0
- data/ext/generator/cmake/SmokeConfig.cmake.in +109 -0
- data/ext/generator/config.h +25 -0
- data/ext/generator/generator_export.h +31 -0
- data/ext/generator/generatorenvironment.cpp +52 -0
- data/ext/generator/generatorenvironment.h +35 -0
- data/ext/generator/generatorpreprocessor.cpp +303 -0
- data/ext/generator/generatorpreprocessor.h +83 -0
- data/ext/generator/generators/CMakeLists.txt +4 -0
- data/ext/generator/generators/dump/CMakeLists.txt +15 -0
- data/ext/generator/generators/dump/generator_dump.cpp +36 -0
- data/ext/generator/generators/smoke/CMakeLists.txt +18 -0
- data/ext/generator/generators/smoke/generator_smoke.cpp +240 -0
- data/ext/generator/generators/smoke/globals.h +140 -0
- data/ext/generator/generators/smoke/helpers.cpp +793 -0
- data/ext/generator/generators/smoke/writeClasses.cpp +502 -0
- data/ext/generator/generators/smoke/writeSmokeDataFile.cpp +754 -0
- data/ext/generator/generatorvisitor.cpp +922 -0
- data/ext/generator/generatorvisitor.h +119 -0
- data/ext/generator/main.cpp +243 -0
- data/ext/generator/name_compiler.cpp +205 -0
- data/ext/generator/name_compiler.h +76 -0
- data/ext/generator/options.cpp +33 -0
- data/ext/generator/options.h +46 -0
- data/ext/generator/parser/CMakeLists.txt +50 -0
- data/ext/generator/parser/ast.cpp +21 -0
- data/ext/generator/parser/ast.h +923 -0
- data/ext/generator/parser/astutilities.h +65 -0
- data/ext/generator/parser/codegenerator.cpp +867 -0
- data/ext/generator/parser/codegenerator.h +180 -0
- data/ext/generator/parser/codemodel_fwd.h +76 -0
- data/ext/generator/parser/commentformatter.cpp +54 -0
- data/ext/generator/parser/commentformatter.h +45 -0
- data/ext/generator/parser/commentparser.cpp +109 -0
- data/ext/generator/parser/commentparser.h +84 -0
- data/ext/generator/parser/control.cpp +40 -0
- data/ext/generator/parser/control.h +51 -0
- data/ext/generator/parser/cppparser_export.h +33 -0
- data/ext/generator/parser/default_visitor.cpp +470 -0
- data/ext/generator/parser/default_visitor.h +116 -0
- data/ext/generator/parser/dumptree.cpp +146 -0
- data/ext/generator/parser/dumptree.h +50 -0
- data/ext/generator/parser/indexedstring.cpp +213 -0
- data/ext/generator/parser/indexedstring.h +147 -0
- data/ext/generator/parser/kdevelop-parser-rev +1 -0
- data/ext/generator/parser/kdevvarlengtharray.h +346 -0
- data/ext/generator/parser/lexer.cpp +964 -0
- data/ext/generator/parser/lexer.h +308 -0
- data/ext/generator/parser/listnode.cpp +20 -0
- data/ext/generator/parser/listnode.h +97 -0
- data/ext/generator/parser/memorypool.cpp +20 -0
- data/ext/generator/parser/memorypool.h +41 -0
- data/ext/generator/parser/name_compiler.cpp +190 -0
- data/ext/generator/parser/name_compiler.h +77 -0
- data/ext/generator/parser/parser.cpp +4708 -0
- data/ext/generator/parser/parser.h +290 -0
- data/ext/generator/parser/parsesession.cpp +106 -0
- data/ext/generator/parser/parsesession.h +87 -0
- data/ext/generator/parser/problem.h +21 -0
- data/ext/generator/parser/rpp/CMakeLists.txt +45 -0
- data/ext/generator/parser/rpp/Makefile.am +13 -0
- data/ext/generator/parser/rpp/anchor.h +51 -0
- data/ext/generator/parser/rpp/appendedlist.h +363 -0
- data/ext/generator/parser/rpp/chartools.cpp +146 -0
- data/ext/generator/parser/rpp/chartools.h +99 -0
- data/ext/generator/parser/rpp/macrorepository.cpp +44 -0
- data/ext/generator/parser/rpp/macrorepository.h +59 -0
- data/ext/generator/parser/rpp/pp-configuration +86 -0
- data/ext/generator/parser/rpp/pp-engine.cpp +1216 -0
- data/ext/generator/parser/rpp/pp-engine.h +267 -0
- data/ext/generator/parser/rpp/pp-environment.cpp +271 -0
- data/ext/generator/parser/rpp/pp-environment.h +119 -0
- data/ext/generator/parser/rpp/pp-internal.cpp +38 -0
- data/ext/generator/parser/rpp/pp-internal.h +37 -0
- data/ext/generator/parser/rpp/pp-location.cpp +191 -0
- data/ext/generator/parser/rpp/pp-location.h +89 -0
- data/ext/generator/parser/rpp/pp-macro-expander.cpp +568 -0
- data/ext/generator/parser/rpp/pp-macro-expander.cpp.orig +558 -0
- data/ext/generator/parser/rpp/pp-macro-expander.h +130 -0
- data/ext/generator/parser/rpp/pp-macro.cpp +153 -0
- data/ext/generator/parser/rpp/pp-macro.h +176 -0
- data/ext/generator/parser/rpp/pp-scanner.cpp +311 -0
- data/ext/generator/parser/rpp/pp-scanner.h +97 -0
- data/ext/generator/parser/rpp/pp-stream.cpp +425 -0
- data/ext/generator/parser/rpp/pp-stream.h +183 -0
- data/ext/generator/parser/rpp/preprocessor.cpp +65 -0
- data/ext/generator/parser/rpp/preprocessor.h +80 -0
- data/ext/generator/parser/rpp/rpp.pri +2 -0
- data/ext/generator/parser/rpp/test/t001.cpp +23 -0
- data/ext/generator/parser/rpp/test/t002.cpp +15 -0
- data/ext/generator/parser/rpp/test/t003.cpp +10 -0
- data/ext/generator/parser/rpp/test/t004.cpp +9 -0
- data/ext/generator/parser/rpp/test/t005.cpp +10 -0
- data/ext/generator/parser/rpp/test/t006.cpp +10 -0
- data/ext/generator/parser/rpp/test/t007.cpp +6 -0
- data/ext/generator/parser/rpp/test/t008.cpp +6 -0
- data/ext/generator/parser/rpp/test/t009.cpp +5 -0
- data/ext/generator/parser/rpp/test/t010.cpp +15 -0
- data/ext/generator/parser/rpp/test/t011.cpp +9 -0
- data/ext/generator/parser/rpp/tests/CMakeLists.txt +17 -0
- data/ext/generator/parser/rpp/tests/main.cpp +69 -0
- data/ext/generator/parser/rxx.pri +50 -0
- data/ext/generator/parser/rxx_allocator.h +128 -0
- data/ext/generator/parser/safetycounter.h +57 -0
- data/ext/generator/parser/simplecursor.h +74 -0
- data/ext/generator/parser/stringhelpers.cpp +577 -0
- data/ext/generator/parser/stringhelpers.h +118 -0
- data/ext/generator/parser/symbol.h +140 -0
- data/ext/generator/parser/tests/CMakeLists.txt +46 -0
- data/ext/generator/parser/tests/test_generator.cpp +259 -0
- data/ext/generator/parser/tests/test_parser.cpp +474 -0
- data/ext/generator/parser/tests/test_pool.cpp +109 -0
- data/ext/generator/parser/tests/test_pool.h +35 -0
- data/ext/generator/parser/tests/testconfig.h.cmake +4 -0
- data/ext/generator/parser/tokens.cpp +367 -0
- data/ext/generator/parser/tokens.h +148 -0
- data/ext/generator/parser/type_compiler.cpp +135 -0
- data/ext/generator/parser/type_compiler.h +68 -0
- data/ext/generator/parser/visitor.cpp +115 -0
- data/ext/generator/parser/visitor.h +138 -0
- data/ext/generator/smoke.h +557 -0
- data/ext/generator/smokegen_string.h +43 -0
- data/ext/generator/type.cpp +204 -0
- data/ext/generator/type.h +497 -0
- data/ext/generator/type_compiler.cpp +277 -0
- data/ext/generator/type_compiler.h +80 -0
- data/ext/ruby/CMakeLists.txt +64 -0
- data/ext/ruby/qtdeclarative/CMakeLists.txt +17 -0
- data/ext/ruby/qtdeclarative/qtdeclarative.cpp +67 -0
- data/ext/ruby/qtdeclarative/qtdeclarative.rb +17 -0
- data/ext/ruby/qtdeclarative/qtdeclarativehandlers.cpp +36 -0
- data/ext/ruby/qtruby/AUTHORS +54 -0
- data/ext/ruby/qtruby/CMakeLists.txt +4 -0
- data/ext/ruby/qtruby/COPYING +355 -0
- data/ext/ruby/qtruby/COPYING.LIB +510 -0
- data/ext/ruby/qtruby/ChangeLog +3732 -0
- data/ext/ruby/qtruby/INSTALL +79 -0
- data/ext/ruby/qtruby/README +264 -0
- data/ext/ruby/qtruby/TODO +8 -0
- data/ext/ruby/qtruby/bin/CMakeLists.txt +1 -0
- data/ext/ruby/qtruby/bin/rbqtapi +152 -0
- data/ext/ruby/qtruby/rails_support/CMakeLists.txt +1 -0
- data/ext/ruby/qtruby/rails_support/active_item_model.rb +234 -0
- data/ext/ruby/qtruby/rails_support/active_table_model.rb +122 -0
- data/ext/ruby/qtruby/src/CMakeLists.txt +103 -0
- data/ext/ruby/qtruby/src/Qt.cpp +1327 -0
- data/ext/ruby/qtruby/src/handlers.cpp +2668 -0
- data/ext/ruby/qtruby/src/marshall.h +66 -0
- data/ext/ruby/qtruby/src/marshall_basetypes.h +208 -0
- data/ext/ruby/qtruby/src/marshall_complex.h +175 -0
- data/ext/ruby/qtruby/src/marshall_macros.h +647 -0
- data/ext/ruby/qtruby/src/marshall_primitives.h +306 -0
- data/ext/ruby/qtruby/src/marshall_types.cpp +815 -0
- data/ext/ruby/qtruby/src/marshall_types.h +240 -0
- data/ext/ruby/qtruby/src/qtruby.cpp +2627 -0
- data/ext/ruby/qtruby/src/qtruby.h +198 -0
- data/ext/ruby/qtruby/src/smokeruby.h +164 -0
- data/ext/ruby/qtruby/test/opoverloading.rb +46 -0
- data/ext/ruby/qtruby/test/unittests.rb +151 -0
- data/ext/ruby/qtruby/tools/CMakeLists.txt +2 -0
- data/ext/ruby/qtruby/tools/rbrcc/CMakeLists.txt +6 -0
- data/ext/ruby/qtruby/tools/rbrcc/Messages.sh +7 -0
- data/ext/ruby/qtruby/tools/rbrcc/main.cpp +173 -0
- data/ext/ruby/qtruby/tools/rbrcc/rbrcc.pro +14 -0
- data/ext/ruby/qtruby/tools/rbrcc/rcc.cpp +648 -0
- data/ext/ruby/qtruby/tools/rbrcc/rcc.h +165 -0
- data/ext/ruby/qtruby/tools/rbuic/CMakeLists.txt +35 -0
- data/ext/ruby/qtruby/tools/rbuic/LICENSE.GPL +280 -0
- data/ext/ruby/qtruby/tools/rbuic/Messages.sh +7 -0
- data/ext/ruby/qtruby/tools/rbuic/TODO +4 -0
- data/ext/ruby/qtruby/tools/rbuic/customwidgetsinfo.cpp +106 -0
- data/ext/ruby/qtruby/tools/rbuic/customwidgetsinfo.h +95 -0
- data/ext/ruby/qtruby/tools/rbuic/databaseinfo.cpp +102 -0
- data/ext/ruby/qtruby/tools/rbuic/databaseinfo.h +85 -0
- data/ext/ruby/qtruby/tools/rbuic/driver.cpp +384 -0
- data/ext/ruby/qtruby/tools/rbuic/driver.h +141 -0
- data/ext/ruby/qtruby/tools/rbuic/globaldefs.h +60 -0
- data/ext/ruby/qtruby/tools/rbuic/main.cpp +201 -0
- data/ext/ruby/qtruby/tools/rbuic/option.h +110 -0
- data/ext/ruby/qtruby/tools/rbuic/rbuic.pri +23 -0
- data/ext/ruby/qtruby/tools/rbuic/rbuic4.pro +43 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbextractimages.cpp +150 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbextractimages.h +83 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbwritedeclaration.cpp +217 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbwritedeclaration.h +85 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteicondata.cpp +185 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteicondata.h +86 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteicondeclaration.cpp +88 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteicondeclaration.h +83 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteiconinitialization.cpp +126 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteiconinitialization.h +87 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteinitialization.cpp +2478 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/rbwriteinitialization.h +314 -0
- data/ext/ruby/qtruby/tools/rbuic/ruby/ruby.pri +18 -0
- data/ext/ruby/qtruby/tools/rbuic/treewalker.cpp +318 -0
- data/ext/ruby/qtruby/tools/rbuic/treewalker.h +139 -0
- data/ext/ruby/qtruby/tools/rbuic/ui4.cpp +7623 -0
- data/ext/ruby/qtruby/tools/rbuic/ui4.h +3180 -0
- data/ext/ruby/qtruby/tools/rbuic/uic.cpp +438 -0
- data/ext/ruby/qtruby/tools/rbuic/uic.h +154 -0
- data/ext/ruby/qtruby/tools/rbuic/utils.h +125 -0
- data/ext/ruby/qtruby/tools/rbuic/validator.cpp +100 -0
- data/ext/ruby/qtruby/tools/rbuic/validator.h +80 -0
- data/ext/ruby/qtscript/CMakeLists.txt +19 -0
- data/ext/ruby/qtscript/qtscript.cpp +83 -0
- data/ext/ruby/qtscript/qtscript.rb +40 -0
- data/ext/ruby/qtscript/qtscripthandlers.cpp +37 -0
- data/ext/ruby/qtscript/smokedata.cpp +1403 -0
- data/ext/ruby/qttest/CMakeLists.txt +18 -0
- data/ext/ruby/qttest/ChangeLog +9 -0
- data/ext/ruby/qttest/examples/myfirsttest.rb +30 -0
- data/ext/ruby/qttest/qttest.cpp +83 -0
- data/ext/ruby/qttest/qttest.rb +166 -0
- data/ext/ruby/qttest/qttesthandlers.cpp +37 -0
- data/ext/ruby/qtuitools/CMakeLists.txt +16 -0
- data/ext/ruby/qtuitools/qtuitools.cpp +83 -0
- data/ext/ruby/qtuitools/qtuitools.rb +17 -0
- data/ext/ruby/qtuitools/qtuitoolshandlers.cpp +32 -0
- data/ext/ruby/qtwebkit/CMakeLists.txt +17 -0
- data/ext/ruby/qtwebkit/qtwebkit.cpp +67 -0
- data/ext/ruby/qtwebkit/qtwebkit.rb +17 -0
- data/ext/ruby/qtwebkit/qtwebkithandlers.cpp +40 -0
- data/ext/smoke/CMakeLists.txt +39 -0
- data/ext/smoke/deptool/CMakeLists.txt +7 -0
- data/ext/smoke/deptool/main.cpp +128 -0
- data/ext/smoke/qt_smoke.h +16 -0
- data/ext/smoke/qtcore/CMakeLists.txt +88 -0
- data/ext/smoke/qtcore/QtGuess.txt +180 -0
- data/ext/smoke/qtcore/config.xml.cmake +10 -0
- data/ext/smoke/qtcore/qt-config.xml.cmake +21 -0
- data/ext/smoke/qtcore/qtcore_includes.h +1 -0
- data/ext/smoke/qtcore/smokeconfig.xml +193 -0
- data/ext/smoke/qtcore/tests/CMakeLists.txt +13 -0
- data/ext/smoke/qtcore/tests/test.cpp +846 -0
- data/ext/smoke/qtcore_smoke.h +16 -0
- data/ext/smoke/qtdbus/CMakeLists.txt +38 -0
- data/ext/smoke/qtdbus/config.xml.cmake +11 -0
- data/ext/smoke/qtdbus/qtdbus_includes.h +2 -0
- data/ext/smoke/qtdbus/smokeconfig.xml +65 -0
- data/ext/smoke/qtdbus_smoke.h +16 -0
- data/ext/smoke/qtdeclarative/CMakeLists.txt +45 -0
- data/ext/smoke/qtdeclarative/config.xml.cmake +12 -0
- data/ext/smoke/qtdeclarative/qtdeclarative_includes.h +3 -0
- data/ext/smoke/qtdeclarative/smokeconfig.xml +59 -0
- data/ext/smoke/qtdeclarative_smoke.h +16 -0
- data/ext/smoke/qtgui/CMakeLists.txt +76 -0
- data/ext/smoke/qtgui/config.xml.cmake +11 -0
- data/ext/smoke/qtgui/qtgui_includes.h +7 -0
- data/ext/smoke/qtgui/smokeconfig.xml +500 -0
- data/ext/smoke/qtgui_smoke.h +16 -0
- data/ext/smoke/qthelp/CMakeLists.txt +45 -0
- data/ext/smoke/qthelp/config.xml.cmake +13 -0
- data/ext/smoke/qthelp/qthelp_includes.h +3 -0
- data/ext/smoke/qthelp/smokeconfig.xml +54 -0
- data/ext/smoke/qthelp_smoke.h +16 -0
- data/ext/smoke/qtmultimedia/CMakeLists.txt +42 -0
- data/ext/smoke/qtmultimedia/config.xml.cmake +12 -0
- data/ext/smoke/qtmultimedia/qtmultimedia_includes.h +3 -0
- data/ext/smoke/qtmultimedia/smokeconfig.xml +51 -0
- data/ext/smoke/qtmultimedia_smoke.h +16 -0
- data/ext/smoke/qtnetwork/CMakeLists.txt +38 -0
- data/ext/smoke/qtnetwork/config.xml.cmake +11 -0
- data/ext/smoke/qtnetwork/qtnetwork_includes.h +2 -0
- data/ext/smoke/qtnetwork/smokeconfig.xml +81 -0
- data/ext/smoke/qtnetwork_smoke.h +16 -0
- data/ext/smoke/qtopengl/CMakeLists.txt +43 -0
- data/ext/smoke/qtopengl/config.xml.cmake +13 -0
- data/ext/smoke/qtopengl/qtopengl_includes.h +3 -0
- data/ext/smoke/qtopengl/smokeconfig.xml +58 -0
- data/ext/smoke/qtopengl_smoke.h +16 -0
- data/ext/smoke/qtscript/CMakeLists.txt +31 -0
- data/ext/smoke/qtscript/config.xml.cmake +11 -0
- data/ext/smoke/qtscript/qtscript_includes.h +14 -0
- data/ext/smoke/qtscript/smokeconfig.xml +39 -0
- data/ext/smoke/qtscript_smoke.h +16 -0
- data/ext/smoke/qtsql/CMakeLists.txt +45 -0
- data/ext/smoke/qtsql/config.xml.cmake +11 -0
- data/ext/smoke/qtsql/qtsql_includes.h +3 -0
- data/ext/smoke/qtsql/smokeconfig.xml +60 -0
- data/ext/smoke/qtsql_smoke.h +16 -0
- data/ext/smoke/qtsvg/CMakeLists.txt +43 -0
- data/ext/smoke/qtsvg/config.xml.cmake +12 -0
- data/ext/smoke/qtsvg/qtsvg_includes.h +3 -0
- data/ext/smoke/qtsvg/smokeconfig.xml +46 -0
- data/ext/smoke/qtsvg_smoke.h +16 -0
- data/ext/smoke/qttest/CMakeLists.txt +35 -0
- data/ext/smoke/qttest/config.xml.cmake +12 -0
- data/ext/smoke/qttest/qttest_includes.h +14 -0
- data/ext/smoke/qttest/smokeconfig.xml +36 -0
- data/ext/smoke/qttest_smoke.h +16 -0
- data/ext/smoke/qtuitools/CMakeLists.txt +30 -0
- data/ext/smoke/qtuitools/config.xml.cmake +12 -0
- data/ext/smoke/qtuitools/qtuitools_includes.h +1 -0
- data/ext/smoke/qtuitools/smokeconfig.xml +20 -0
- data/ext/smoke/qtuitools_smoke.h +16 -0
- data/ext/smoke/qtwebkit/CMakeLists.txt +36 -0
- data/ext/smoke/qtwebkit/config.xml.cmake +11 -0
- data/ext/smoke/qtwebkit/qtwebkit_includes.h +1 -0
- data/ext/smoke/qtwebkit/smokeconfig.xml +48 -0
- data/ext/smoke/qtwebkit_smoke.h +16 -0
- data/ext/smoke/qtxml/CMakeLists.txt +41 -0
- data/ext/smoke/qtxml/config.xml.cmake +11 -0
- data/ext/smoke/qtxml/qtxml_includes.h +2 -0
- data/ext/smoke/qtxml/smokeconfig.xml +70 -0
- data/ext/smoke/qtxml_smoke.h +16 -0
- data/ext/smoke/qtxmlpatterns/CMakeLists.txt +42 -0
- data/ext/smoke/qtxmlpatterns/config.xml.cmake +12 -0
- data/ext/smoke/qtxmlpatterns/qtxmlpatterns_includes.h +3 -0
- data/ext/smoke/qtxmlpatterns/smokeconfig.xml +80 -0
- data/ext/smoke/qtxmlpatterns_smoke.h +16 -0
- data/ext/smoke/smoke.h +559 -0
- data/ext/smoke/smokeapi/CMakeLists.txt +9 -0
- data/ext/smoke/smokeapi/main.cpp +309 -0
- data/ext/smoke/smokebase/CMakeLists.txt +11 -0
- data/ext/smoke/smokebase/smokebase.cpp +6 -0
- data/ext/smoke/solid_smoke.h +16 -0
- data/extconf.rb +256 -0
- data/lib/Qt/qtruby4.rb +3268 -0
- data/lib/Qt.rb +1 -0
- data/lib/Qt4.rb +119 -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/rock-qtbindings.gemspec +18 -0
- metadata +819 -0
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/* This file is part of KDevelop
|
|
2
|
+
Copyright 2002-2005 Roberto Raggi <roberto@kdevelop.org>
|
|
3
|
+
Copyright 2006 Hamish Rodda <rodda@kde.org>
|
|
4
|
+
|
|
5
|
+
This library is free software; you can redistribute it and/or
|
|
6
|
+
modify it under the terms of the GNU Library General Public
|
|
7
|
+
License version 2 as published by the Free Software Foundation.
|
|
8
|
+
|
|
9
|
+
This library is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
Library General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU Library General Public License
|
|
15
|
+
along with this library; see the file COPYING.LIB. If not, write to
|
|
16
|
+
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
17
|
+
Boston, MA 02110-1301, USA.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
#include "dumptree.h"
|
|
21
|
+
#include "lexer.h"
|
|
22
|
+
#include "parsesession.h"
|
|
23
|
+
|
|
24
|
+
#include <QtCore/QString>
|
|
25
|
+
#include <QtCore/QtDebug>
|
|
26
|
+
|
|
27
|
+
#include "rpp/chartools.h"
|
|
28
|
+
|
|
29
|
+
char const * const names[] = {
|
|
30
|
+
0,
|
|
31
|
+
"AccessSpecifier",
|
|
32
|
+
"AsmDefinition",
|
|
33
|
+
"BaseClause",
|
|
34
|
+
"BaseSpecifier",
|
|
35
|
+
"BinaryExpression",
|
|
36
|
+
"CastExpression",
|
|
37
|
+
"ClassMemberAccess",
|
|
38
|
+
"ClassSpecifier",
|
|
39
|
+
"CompoundStatement",
|
|
40
|
+
"Condition",
|
|
41
|
+
"ConditionalExpression",
|
|
42
|
+
"CppCastExpression",
|
|
43
|
+
"CtorInitializer",
|
|
44
|
+
"DeclarationStatement",
|
|
45
|
+
"Declarator",
|
|
46
|
+
"DeleteExpression",
|
|
47
|
+
"DoStatement",
|
|
48
|
+
"ElaboratedTypeSpecifier",
|
|
49
|
+
"EnumSpecifier",
|
|
50
|
+
"Enumerator",
|
|
51
|
+
"ExceptionSpecification",
|
|
52
|
+
"ExpressionOrDeclarationStatement",
|
|
53
|
+
"ExpressionStatement",
|
|
54
|
+
"ForStatement",
|
|
55
|
+
"FunctionCall",
|
|
56
|
+
"FunctionDefinition",
|
|
57
|
+
"IfStatement",
|
|
58
|
+
"IncrDecrExpression",
|
|
59
|
+
"InitDeclarator",
|
|
60
|
+
"Initializer",
|
|
61
|
+
"InitializerClause",
|
|
62
|
+
"LabeledStatement",
|
|
63
|
+
"LinkageBody",
|
|
64
|
+
"LinkageSpecification",
|
|
65
|
+
"MemInitializer",
|
|
66
|
+
"Name",
|
|
67
|
+
"Namespace",
|
|
68
|
+
"NamespaceAliasDefinition",
|
|
69
|
+
"NewDeclarator",
|
|
70
|
+
"NewExpression",
|
|
71
|
+
"NewInitializer",
|
|
72
|
+
"NewTypeId",
|
|
73
|
+
"Operator",
|
|
74
|
+
"OperatorFunctionId",
|
|
75
|
+
"ParameterDeclaration",
|
|
76
|
+
"ParameterDeclarationClause",
|
|
77
|
+
"PostfixExpression",
|
|
78
|
+
"PrimaryExpression",
|
|
79
|
+
"PtrOperator",
|
|
80
|
+
"PtrToMember",
|
|
81
|
+
"ReturnStatement",
|
|
82
|
+
"SimpleDeclaration",
|
|
83
|
+
"SimpleTypeSpecifier",
|
|
84
|
+
"SizeofExpression",
|
|
85
|
+
"StringLiteral",
|
|
86
|
+
"SubscriptExpression",
|
|
87
|
+
"SwitchStatement",
|
|
88
|
+
"TemplateArgument",
|
|
89
|
+
"TemplateDeclaration",
|
|
90
|
+
"TemplateParameter",
|
|
91
|
+
"ThrowExpression",
|
|
92
|
+
"TranslationUnit",
|
|
93
|
+
"TryBlockStatement",
|
|
94
|
+
"CatchStatement",
|
|
95
|
+
"TypeId",
|
|
96
|
+
"TypeIdentification",
|
|
97
|
+
"TypeParameter",
|
|
98
|
+
"Typedef",
|
|
99
|
+
"UnaryExpression",
|
|
100
|
+
"UnqualifiedName",
|
|
101
|
+
"Using",
|
|
102
|
+
"UsingDirective",
|
|
103
|
+
"WhileStatement",
|
|
104
|
+
"WinDeclSpec",
|
|
105
|
+
"Kind_Comment",
|
|
106
|
+
"Kind_JumpStatement",
|
|
107
|
+
"Kind_SignalSlotExpression"
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
DumpTree::DumpTree()
|
|
111
|
+
: m_tokenStream(0), indent(0)
|
|
112
|
+
{
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
void DumpTree::dump( AST * node, class TokenStream * tokenStream )
|
|
116
|
+
{
|
|
117
|
+
m_tokenStream = tokenStream;
|
|
118
|
+
visit(node);
|
|
119
|
+
m_tokenStream = 0;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
void DumpTree::visit(AST *node)
|
|
123
|
+
{
|
|
124
|
+
QString nodeText;
|
|
125
|
+
if( m_tokenStream && node ) {
|
|
126
|
+
for( std::size_t a = node->start_token; a != node->end_token; a++ ) {
|
|
127
|
+
const Token& tok( m_tokenStream->token((int) a) );
|
|
128
|
+
nodeText += tok.symbolString() + ' ';
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
if (node)
|
|
132
|
+
qDebug() << QString(indent * 2, ' ').toLatin1().constData() << names[node->kind]
|
|
133
|
+
<< "[" << node->start_token << "," << node->end_token << "]" << nodeText << endl;
|
|
134
|
+
|
|
135
|
+
++indent;
|
|
136
|
+
DefaultVisitor::visit(node);
|
|
137
|
+
--indent;
|
|
138
|
+
|
|
139
|
+
if (node)
|
|
140
|
+
qDebug() << QString(indent * 2, ' ').toLatin1().constData() << names[node->kind];
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
DumpTree::~ DumpTree( )
|
|
144
|
+
{
|
|
145
|
+
}
|
|
146
|
+
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/* This file is part of KDevelop
|
|
2
|
+
Copyright 2002-2005 Roberto Raggi <roberto@kdevelop.org>
|
|
3
|
+
Copyright 2006 Hamish Rodda <rodda@kde.org>
|
|
4
|
+
|
|
5
|
+
This library is free software; you can redistribute it and/or
|
|
6
|
+
modify it under the terms of the GNU Library General Public
|
|
7
|
+
License version 2 as published by the Free Software Foundation.
|
|
8
|
+
|
|
9
|
+
This library is distributed in the hope that it will be useful,
|
|
10
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
12
|
+
Library General Public License for more details.
|
|
13
|
+
|
|
14
|
+
You should have received a copy of the GNU Library General Public License
|
|
15
|
+
along with this library; see the file COPYING.LIB. If not, write to
|
|
16
|
+
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
17
|
+
Boston, MA 02110-1301, USA.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
#ifndef DUMPTREE_H
|
|
21
|
+
#define DUMPTREE_H
|
|
22
|
+
|
|
23
|
+
#include <QtCore/Qt>
|
|
24
|
+
|
|
25
|
+
#include "cppparser_export.h"
|
|
26
|
+
#include "default_visitor.h"
|
|
27
|
+
|
|
28
|
+
class TokenStream;
|
|
29
|
+
|
|
30
|
+
//Contains the name for each AST kind enumerator
|
|
31
|
+
CPPPARSER_EXPORT extern char const * const names[];
|
|
32
|
+
|
|
33
|
+
class CPPPARSER_EXPORT DumpTree: protected DefaultVisitor
|
|
34
|
+
{
|
|
35
|
+
public:
|
|
36
|
+
DumpTree();
|
|
37
|
+
virtual ~DumpTree();
|
|
38
|
+
|
|
39
|
+
void dump(AST *node, TokenStream* tokenStream = 0);
|
|
40
|
+
|
|
41
|
+
protected:
|
|
42
|
+
virtual void visit(AST *node);
|
|
43
|
+
|
|
44
|
+
private:
|
|
45
|
+
TokenStream* m_tokenStream;
|
|
46
|
+
int indent;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
#endif // DUMPTREE_H
|
|
50
|
+
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
/***************************************************************************
|
|
2
|
+
Copyright 2008 David Nolden <david.nolden.kdevelop@art-master.de>
|
|
3
|
+
***************************************************************************/
|
|
4
|
+
|
|
5
|
+
/***************************************************************************
|
|
6
|
+
* *
|
|
7
|
+
* This program is free software; you can redistribute it and/or modify *
|
|
8
|
+
* it under the terms of the GNU General Public License as published by *
|
|
9
|
+
* the Free Software Foundation; either version 2 of the License, or *
|
|
10
|
+
* (at your option) any later version. *
|
|
11
|
+
* *
|
|
12
|
+
***************************************************************************/
|
|
13
|
+
|
|
14
|
+
#include <QtCore/QStringList>
|
|
15
|
+
#include <QtCore/QUrl>
|
|
16
|
+
#include <QtDebug>
|
|
17
|
+
|
|
18
|
+
#include "indexedstring.h"
|
|
19
|
+
// #include "repositories/stringrepository.h"
|
|
20
|
+
|
|
21
|
+
// #include "referencecounting.h"
|
|
22
|
+
|
|
23
|
+
Q_GLOBAL_STATIC(QStringList, strings);
|
|
24
|
+
|
|
25
|
+
int getIndex(const QString& str) {
|
|
26
|
+
int idx = strings()->indexOf(str);
|
|
27
|
+
if (idx > -1) return idx;
|
|
28
|
+
strings()->append(str);
|
|
29
|
+
return strings()->count() - 1;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
IndexedString::IndexedString() : m_index(0) {
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
///@param str must be a utf8 encoded string, does not need to be 0-terminated.
|
|
36
|
+
///@param length must be its length in bytes.
|
|
37
|
+
IndexedString::IndexedString( const char* str, unsigned short length, unsigned int hash ) {
|
|
38
|
+
if(!length)
|
|
39
|
+
m_index = 0;
|
|
40
|
+
else if(length == 1)
|
|
41
|
+
m_index = 0xffff0000 | str[0];
|
|
42
|
+
else {
|
|
43
|
+
m_index = getIndex(QString::fromUtf8(str, length));
|
|
44
|
+
/*QMutexLocker lock(globalIndexedStringRepository->mutex());
|
|
45
|
+
|
|
46
|
+
m_index = globalIndexedStringRepository->index(IndexedStringRepositoryItemRequest(str, hash ? hash : hashString(str, length), length));
|
|
47
|
+
|
|
48
|
+
if(shouldDoDUChainReferenceCounting(this))
|
|
49
|
+
increase(globalIndexedStringRepository->dynamicItemFromIndexSimple(m_index)->refCount);*/
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
IndexedString::IndexedString( char c ) {
|
|
54
|
+
m_index = 0xffff0000 | c;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
IndexedString::IndexedString( const QUrl& url ) {
|
|
58
|
+
QByteArray array(url.path().toUtf8());
|
|
59
|
+
|
|
60
|
+
const char* str = array.constData();
|
|
61
|
+
|
|
62
|
+
int size = array.size();
|
|
63
|
+
|
|
64
|
+
if(!size)
|
|
65
|
+
m_index = 0;
|
|
66
|
+
else if(size == 1)
|
|
67
|
+
m_index = 0xffff0000 | str[0];
|
|
68
|
+
else {
|
|
69
|
+
m_index = getIndex(QString::fromUtf8(str));
|
|
70
|
+
/*QMutexLocker lock(globalIndexedStringRepository->mutex());
|
|
71
|
+
m_index = globalIndexedStringRepository->index(IndexedStringRepositoryItemRequest(str, hashString(str, size), size));
|
|
72
|
+
|
|
73
|
+
if(shouldDoDUChainReferenceCounting(this))
|
|
74
|
+
increase(globalIndexedStringRepository->dynamicItemFromIndexSimple(m_index)->refCount);*/
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
IndexedString::IndexedString( const QString& string ) {
|
|
79
|
+
QByteArray array(string.toUtf8());
|
|
80
|
+
|
|
81
|
+
const char* str = array.constData();
|
|
82
|
+
|
|
83
|
+
int size = array.size();
|
|
84
|
+
|
|
85
|
+
if(!size)
|
|
86
|
+
m_index = 0;
|
|
87
|
+
else if(size == 1)
|
|
88
|
+
m_index = 0xffff0000 | str[0];
|
|
89
|
+
else {
|
|
90
|
+
m_index = getIndex(string);
|
|
91
|
+
/*QMutexLocker lock(globalIndexedStringRepository->mutex());
|
|
92
|
+
m_index = globalIndexedStringRepository->index(IndexedStringRepositoryItemRequest(str, hashString(str, size), size));
|
|
93
|
+
|
|
94
|
+
if(shouldDoDUChainReferenceCounting(this))
|
|
95
|
+
increase(globalIndexedStringRepository->dynamicItemFromIndexSimple(m_index)->refCount);*/
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
IndexedString::IndexedString( const char* str) {
|
|
100
|
+
unsigned int length = strlen(str);
|
|
101
|
+
if(!length)
|
|
102
|
+
m_index = 0;
|
|
103
|
+
else if(length == 1)
|
|
104
|
+
m_index = 0xffff0000 | str[0];
|
|
105
|
+
else {
|
|
106
|
+
m_index = getIndex(QString::fromUtf8(str));
|
|
107
|
+
/*QMutexLocker lock(globalIndexedStringRepository->mutex());
|
|
108
|
+
m_index = globalIndexedStringRepository->index(IndexedStringRepositoryItemRequest(str, hashString(str, length), length));
|
|
109
|
+
|
|
110
|
+
if(shouldDoDUChainReferenceCounting(this))
|
|
111
|
+
increase(globalIndexedStringRepository->dynamicItemFromIndexSimple(m_index)->refCount);*/
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
IndexedString::IndexedString( const QByteArray& str) {
|
|
116
|
+
unsigned int length = str.length();
|
|
117
|
+
if(!length)
|
|
118
|
+
m_index = 0;
|
|
119
|
+
else if(length == 1)
|
|
120
|
+
m_index = 0xffff0000 | str[0];
|
|
121
|
+
else {
|
|
122
|
+
m_index = getIndex(QString::fromUtf8(str));
|
|
123
|
+
/*QMutexLocker lock(globalIndexedStringRepository->mutex());
|
|
124
|
+
m_index = globalIndexedStringRepository->index(IndexedStringRepositoryItemRequest(str, hashString(str, length), length));
|
|
125
|
+
|
|
126
|
+
if(shouldDoDUChainReferenceCounting(this))
|
|
127
|
+
increase(globalIndexedStringRepository->dynamicItemFromIndexSimple(m_index)->refCount);*/
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
IndexedString::~IndexedString() {
|
|
132
|
+
/*if(m_index && (m_index & 0xffff0000) != 0xffff0000) {
|
|
133
|
+
if(shouldDoDUChainReferenceCounting(this)) {
|
|
134
|
+
QMutexLocker lock(globalIndexedStringRepository->mutex());
|
|
135
|
+
|
|
136
|
+
decrease(globalIndexedStringRepository->dynamicItemFromIndexSimple(m_index)->refCount);
|
|
137
|
+
}
|
|
138
|
+
}*/
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
IndexedString::IndexedString( const IndexedString& rhs ) : m_index(rhs.m_index) {
|
|
142
|
+
/*if(m_index && (m_index & 0xffff0000) != 0xffff0000) {
|
|
143
|
+
if(shouldDoDUChainReferenceCounting(this)) {
|
|
144
|
+
QMutexLocker lock(globalIndexedStringRepository->mutex());
|
|
145
|
+
increase(globalIndexedStringRepository->dynamicItemFromIndexSimple(m_index)->refCount);
|
|
146
|
+
}
|
|
147
|
+
}*/
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
IndexedString& IndexedString::operator=(const IndexedString& rhs) {
|
|
151
|
+
if(m_index == rhs.m_index)
|
|
152
|
+
return *this;
|
|
153
|
+
/*if(m_index && (m_index & 0xffff0000) != 0xffff0000) {
|
|
154
|
+
|
|
155
|
+
if(shouldDoDUChainReferenceCounting(this)) {
|
|
156
|
+
QMutexLocker lock(globalIndexedStringRepository->mutex());
|
|
157
|
+
decrease(globalIndexedStringRepository->dynamicItemFromIndexSimple(m_index)->refCount);
|
|
158
|
+
}
|
|
159
|
+
}*/
|
|
160
|
+
|
|
161
|
+
m_index = rhs.m_index;
|
|
162
|
+
|
|
163
|
+
/*if(m_index && (m_index & 0xffff0000) != 0xffff0000) {
|
|
164
|
+
if(shouldDoDUChainReferenceCounting(this)) {
|
|
165
|
+
QMutexLocker lock(globalIndexedStringRepository->mutex());
|
|
166
|
+
increase(globalIndexedStringRepository->dynamicItemFromIndexSimple(m_index)->refCount);
|
|
167
|
+
}
|
|
168
|
+
}*/
|
|
169
|
+
|
|
170
|
+
return *this;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
QUrl IndexedString::toUrl() const {
|
|
175
|
+
QUrl url( str() );
|
|
176
|
+
return url;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
QString IndexedString::str() const {
|
|
180
|
+
if(!m_index)
|
|
181
|
+
return QString();
|
|
182
|
+
else if((m_index & 0xffff0000) == 0xffff0000)
|
|
183
|
+
return QString(QChar((char)m_index & 0xff));
|
|
184
|
+
else
|
|
185
|
+
return strings()->at(m_index); /*stringFromItem(globalIndexedStringRepository->itemFromIndex(m_index));*/
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
int IndexedString::length() const {
|
|
189
|
+
if(!m_index)
|
|
190
|
+
return 0;
|
|
191
|
+
else if((m_index & 0xffff0000) == 0xffff0000)
|
|
192
|
+
return 1;
|
|
193
|
+
else
|
|
194
|
+
return strings()->at(m_index).length(); /*globalIndexedStringRepository->itemFromIndex(m_index)->length;*/
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
QByteArray IndexedString::byteArray() const {
|
|
198
|
+
if(!m_index)
|
|
199
|
+
return QByteArray();
|
|
200
|
+
else if((m_index & 0xffff0000) == 0xffff0000)
|
|
201
|
+
return QString(QChar((char)m_index & 0xff)).toUtf8();
|
|
202
|
+
else
|
|
203
|
+
return strings()->at(m_index).toUtf8(); /*arrayFromItem(globalIndexedStringRepository->itemFromIndex(m_index));*/
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
unsigned int IndexedString::hashString(const char* str, unsigned short length) {
|
|
207
|
+
RunningHash running;
|
|
208
|
+
for(int a = length-1; a >= 0; --a) {
|
|
209
|
+
running.append(*str);
|
|
210
|
+
++str;
|
|
211
|
+
}
|
|
212
|
+
return running.hash;
|
|
213
|
+
}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
/***************************************************************************
|
|
2
|
+
Copyright 2008 David Nolden <david.nolden.kdevelop@art-master.de>
|
|
3
|
+
***************************************************************************/
|
|
4
|
+
|
|
5
|
+
/***************************************************************************
|
|
6
|
+
* *
|
|
7
|
+
* This program is free software; you can redistribute it and/or modify *
|
|
8
|
+
* it under the terms of the GNU General Public License as published by *
|
|
9
|
+
* the Free Software Foundation; either version 2 of the License, or *
|
|
10
|
+
* (at your option) any later version. *
|
|
11
|
+
* *
|
|
12
|
+
***************************************************************************/
|
|
13
|
+
|
|
14
|
+
#ifndef INDEXED_STRING_H
|
|
15
|
+
#define INDEXED_STRING_H
|
|
16
|
+
|
|
17
|
+
//krazy:excludeall=dpointer,inline
|
|
18
|
+
|
|
19
|
+
#include "cppparser_export.h"
|
|
20
|
+
#include <QtCore/QString>
|
|
21
|
+
|
|
22
|
+
class QDataStream;
|
|
23
|
+
class QUrl;
|
|
24
|
+
|
|
25
|
+
class IndexedString;
|
|
26
|
+
|
|
27
|
+
///This string does "disk reference-counting", which means that reference-counts are maintainted, but
|
|
28
|
+
///only when the string is in a disk-stored location. The file referencecounting.h is used to manage this condition.
|
|
29
|
+
///Whenever reference-counting is enabled for a range that contains the IndexedString, it will manipulate the reference-counts.
|
|
30
|
+
///The duchain storage mechanisms automatically are about correctly managing that condition, so you don't need to care, and can
|
|
31
|
+
///just use this class in every duchain data type without restrictions.
|
|
32
|
+
///
|
|
33
|
+
///@warning Do not use IndexedString after QCoreApplication::aboutToQuit() has been emitted, items that are not disk-referenced will be invalid at that point
|
|
34
|
+
///
|
|
35
|
+
///Empty strings have an index of zero.
|
|
36
|
+
///Strings of length one are not put into the repository, but are encoded directly within the index:
|
|
37
|
+
///They are encoded like 0xffff00bb where bb is the byte of the character.
|
|
38
|
+
class CPPPARSER_EXPORT IndexedString {
|
|
39
|
+
public:
|
|
40
|
+
IndexedString();
|
|
41
|
+
///@param str must be a utf8 encoded string, does not need to be 0-terminated.
|
|
42
|
+
///@param length must be its length in bytes.
|
|
43
|
+
///@param hash must be a hash as constructed with the here defined hash functions. If it is zero, it will be computed.
|
|
44
|
+
explicit IndexedString( const char* str, unsigned short length, unsigned int hash = 0 );
|
|
45
|
+
|
|
46
|
+
///Needs a zero terminated string. When the information is already available, try using the other constructor.
|
|
47
|
+
explicit IndexedString( const char* str );
|
|
48
|
+
|
|
49
|
+
explicit IndexedString( char c );
|
|
50
|
+
|
|
51
|
+
///When the information is already available, try using the other constructor. This is expensive.
|
|
52
|
+
explicit IndexedString( const QString& str );
|
|
53
|
+
|
|
54
|
+
///When the information is already available, try using the other constructor. This is expensive.
|
|
55
|
+
explicit IndexedString( const QByteArray& str );
|
|
56
|
+
|
|
57
|
+
///Returns a not reference-counted IndexedString that represents the given index
|
|
58
|
+
///@warning It is dangerous dealing with indices directly, because it may break the reference counting logic
|
|
59
|
+
/// never stay pure indices to disk
|
|
60
|
+
static IndexedString fromIndex( unsigned int index ) {
|
|
61
|
+
IndexedString ret;
|
|
62
|
+
ret.m_index = index;
|
|
63
|
+
return ret;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
IndexedString( const IndexedString& );
|
|
67
|
+
|
|
68
|
+
~IndexedString();
|
|
69
|
+
|
|
70
|
+
///Creates an indexed string from a KUrl, this is expensive.
|
|
71
|
+
explicit IndexedString( const QUrl& url );
|
|
72
|
+
|
|
73
|
+
///Re-construct a KUrl from this indexed string, the result can be used with the
|
|
74
|
+
///KUrl-using constructor. This is expensive.
|
|
75
|
+
QUrl toUrl() const;
|
|
76
|
+
|
|
77
|
+
inline unsigned int hash() const {
|
|
78
|
+
return m_index;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
///The string is uniquely identified by this index. You can use it for comparison.
|
|
82
|
+
///@warning It is dangerous dealing with indices directly, because it may break the reference counting logic
|
|
83
|
+
/// never stay pure indices to disk
|
|
84
|
+
inline unsigned int index() const {
|
|
85
|
+
return m_index;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
bool isEmpty() const {
|
|
89
|
+
return m_index == 0;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
//This is relatively expensive(needs a mutex lock, hash lookups, and eventual loading), so avoid it when possible.
|
|
93
|
+
int length() const;
|
|
94
|
+
|
|
95
|
+
///Convenience function, avoid using it, it's relatively expensive
|
|
96
|
+
QString str() const;
|
|
97
|
+
|
|
98
|
+
///Convenience function, avoid using it, it's relatively expensive(les expensive then str() though)
|
|
99
|
+
QByteArray byteArray() const;
|
|
100
|
+
|
|
101
|
+
IndexedString& operator=(const IndexedString&);
|
|
102
|
+
|
|
103
|
+
bool operator == ( const IndexedString& rhs ) const {
|
|
104
|
+
return m_index == rhs.m_index;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
bool operator != ( const IndexedString& rhs ) const {
|
|
108
|
+
return m_index != rhs.m_index;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
///Does not compare alphabetically, uses the index for ordering.
|
|
112
|
+
bool operator < ( const IndexedString& rhs ) const {
|
|
113
|
+
return m_index < rhs.m_index;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
//Use this to construct a hash-value on-the-fly
|
|
117
|
+
//To read it, just use the hash member, and when a new string is started, call clear(.
|
|
118
|
+
//This needs very fast performance(per character operation), so it must stay inlined.
|
|
119
|
+
struct RunningHash {
|
|
120
|
+
enum {
|
|
121
|
+
HashInitialValue = 5381
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
RunningHash() : hash(HashInitialValue) { //We initialize the hash with zero, because we want empty strings to create a zero hash(invalid)
|
|
125
|
+
}
|
|
126
|
+
inline void append(const char c) {
|
|
127
|
+
hash = ((hash << 5) + hash) + c; /* hash * 33 + c */
|
|
128
|
+
}
|
|
129
|
+
inline void clear() {
|
|
130
|
+
hash = HashInitialValue;
|
|
131
|
+
}
|
|
132
|
+
unsigned int hash;
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
static unsigned int hashString(const char* str, unsigned short length);
|
|
136
|
+
|
|
137
|
+
private:
|
|
138
|
+
explicit IndexedString(bool);
|
|
139
|
+
uint m_index;
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
CPPPARSER_EXPORT inline uint qHash( const IndexedString& str ) {
|
|
143
|
+
return str.index();
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
#endif
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1010222
|