fxruby 1.6.14-universal-darwin-9
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.
- data/LICENSE +456 -0
- data/README +39 -0
- data/doc/apes02.html +21 -0
- data/doc/apes03.html +39 -0
- data/doc/book.html +3 -0
- data/doc/build.html +132 -0
- data/doc/ch03s02.html +23 -0
- data/doc/ch03s03.html +52 -0
- data/doc/ch03s04.html +36 -0
- data/doc/ch03s05.html +60 -0
- data/doc/ch04s02.html +71 -0
- data/doc/ch04s03.html +37 -0
- data/doc/ch04s04.html +72 -0
- data/doc/ch05s02.html +260 -0
- data/doc/ch05s03.html +127 -0
- data/doc/changes.html +697 -0
- data/doc/clipboardtut.html +67 -0
- data/doc/differences.html +190 -0
- data/doc/dragdroptut.html +263 -0
- data/doc/events.html +36 -0
- data/doc/examples.html +104 -0
- data/doc/gems.html +73 -0
- data/doc/goals.html +41 -0
- data/doc/images/babelfish.png +0 -0
- data/doc/images/browser.png +0 -0
- data/doc/images/button.png +0 -0
- data/doc/images/call-chain-example.png +0 -0
- data/doc/images/colordialog.png +0 -0
- data/doc/images/datatarget.png +0 -0
- data/doc/images/dialog.png +0 -0
- data/doc/images/dilbert.png +0 -0
- data/doc/images/dirlist.png +0 -0
- data/doc/images/dropsite-droprejected.png +0 -0
- data/doc/images/foursplit.png +0 -0
- data/doc/images/gltest.png +0 -0
- data/doc/images/glviewer.png +0 -0
- data/doc/images/groupbox.png +0 -0
- data/doc/images/header.png +0 -0
- data/doc/images/hello-with-button.png +0 -0
- data/doc/images/hello-with-icon-1.png +0 -0
- data/doc/images/hello-with-icon-2.png +0 -0
- data/doc/images/hello-with-icon-3.png +0 -0
- data/doc/images/hello-with-tooltip.png +0 -0
- data/doc/images/hello-without-button.png +0 -0
- data/doc/images/hello.png +0 -0
- data/doc/images/hello2.png +0 -0
- data/doc/images/iconlist-bigicons.png +0 -0
- data/doc/images/iconlist-details.png +0 -0
- data/doc/images/image.png +0 -0
- data/doc/images/imageviewer.png +0 -0
- data/doc/images/inheritance.png +0 -0
- data/doc/images/mditest.png +0 -0
- data/doc/images/raabrowser.png +0 -0
- data/doc/images/scribble.png +0 -0
- data/doc/images/shutter.png +0 -0
- data/doc/images/splitter.png +0 -0
- data/doc/images/tabbook.png +0 -0
- data/doc/images/table.png +0 -0
- data/doc/images/tutorial1.png +0 -0
- data/doc/implementation.html +16 -0
- data/doc/infosources.html +33 -0
- data/doc/library.html +30 -0
- data/doc/opengl.html +73 -0
- data/doc/pt01.html +3 -0
- data/doc/pt02.html +3 -0
- data/doc/scintilla.html +36 -0
- data/doc/style.css +247 -0
- data/doc/subversion.html +21 -0
- data/doc/tutorial1.html +90 -0
- data/doc/unicode.html +56 -0
- data/examples/RAA.rb +25 -0
- data/examples/README +53 -0
- data/examples/babelfish.rb +93 -0
- data/examples/bounce.rb +159 -0
- data/examples/browser.rb +191 -0
- data/examples/button.rb +168 -0
- data/examples/custom_table_item.rb +170 -0
- data/examples/datatarget.rb +223 -0
- data/examples/dctest.rb +696 -0
- data/examples/dialog.rb +143 -0
- data/examples/dilbert.rb +66 -0
- data/examples/dirlist.rb +63 -0
- data/examples/dragdrop.rb +97 -0
- data/examples/dragsource.rb +80 -0
- data/examples/dropsite.rb +59 -0
- data/examples/foursplit.rb +97 -0
- data/examples/gltest.rb +330 -0
- data/examples/glviewer.rb +576 -0
- data/examples/groupbox.rb +392 -0
- data/examples/header.rb +149 -0
- data/examples/hello.rb +12 -0
- data/examples/hello2.rb +51 -0
- data/examples/iRAA.rb +153 -0
- data/examples/iconlist.rb +92 -0
- data/examples/icons/AngryGuyInBunnySuit.ico +0 -0
- data/examples/icons/FatBot.ico +0 -0
- data/examples/icons/FlippedySwitch.ico +0 -0
- data/examples/icons/LeGoon.ico +0 -0
- data/examples/icons/Net.ico +0 -0
- data/examples/icons/RedMacOS.ico +0 -0
- data/examples/icons/SawBlade.ico +0 -0
- data/examples/icons/backview.png +0 -0
- data/examples/icons/big.png +0 -0
- data/examples/icons/bigfolder.png +0 -0
- data/examples/icons/bigpenguin.png +0 -0
- data/examples/icons/bottomview.png +0 -0
- data/examples/icons/camera.png +0 -0
- data/examples/icons/capbutt.png +0 -0
- data/examples/icons/capnotlast.png +0 -0
- data/examples/icons/capproj.png +0 -0
- data/examples/icons/capround.png +0 -0
- data/examples/icons/colorpal.png +0 -0
- data/examples/icons/copy.png +0 -0
- data/examples/icons/cut.png +0 -0
- data/examples/icons/delimit.png +0 -0
- data/examples/icons/dippy.png +0 -0
- data/examples/icons/double_dash.png +0 -0
- data/examples/icons/filenew.png +0 -0
- data/examples/icons/fileopen.png +0 -0
- data/examples/icons/filesave.png +0 -0
- data/examples/icons/filesaveas.png +0 -0
- data/examples/icons/fonts.png +0 -0
- data/examples/icons/fox.png +0 -0
- data/examples/icons/foxicon.png +0 -0
- data/examples/icons/frontview.png +0 -0
- data/examples/icons/gem_big.png +0 -0
- data/examples/icons/gem_small.png +0 -0
- data/examples/icons/hello2.png +0 -0
- data/examples/icons/help.png +0 -0
- data/examples/icons/indent.png +0 -0
- data/examples/icons/jbevel.png +0 -0
- data/examples/icons/jmiter.png +0 -0
- data/examples/icons/jround.png +0 -0
- data/examples/icons/kill.png +0 -0
- data/examples/icons/leftview.png +0 -0
- data/examples/icons/light.png +0 -0
- data/examples/icons/minidoc.png +0 -0
- data/examples/icons/minifolder.png +0 -0
- data/examples/icons/minifolderopen.png +0 -0
- data/examples/icons/newfolder.png +0 -0
- data/examples/icons/nolight.png +0 -0
- data/examples/icons/onoff_dash.png +0 -0
- data/examples/icons/palette.png +0 -0
- data/examples/icons/parallel.png +0 -0
- data/examples/icons/paste.png +0 -0
- data/examples/icons/pattern.png +0 -0
- data/examples/icons/penguin.png +0 -0
- data/examples/icons/perspective.png +0 -0
- data/examples/icons/printicon.png +0 -0
- data/examples/icons/prop.png +0 -0
- data/examples/icons/redo.png +0 -0
- data/examples/icons/rightview.png +0 -0
- data/examples/icons/saveas.png +0 -0
- data/examples/icons/shutter1.png +0 -0
- data/examples/icons/shutter2.png +0 -0
- data/examples/icons/small.png +0 -0
- data/examples/icons/smoothlight.png +0 -0
- data/examples/icons/solid_line.png +0 -0
- data/examples/icons/tbuplevel.png +0 -0
- data/examples/icons/topview.png +0 -0
- data/examples/icons/undo.png +0 -0
- data/examples/icons/winapp.png +0 -0
- data/examples/icons/zoom.png +0 -0
- data/examples/image.rb +279 -0
- data/examples/imageviewer.rb +509 -0
- data/examples/inputs.rb +83 -0
- data/examples/mditest.rb +180 -0
- data/examples/pig.rb +77 -0
- data/examples/raabrowser.rb +122 -0
- data/examples/ratio.rb +80 -0
- data/examples/rulerview.rb +27 -0
- data/examples/scintilla-test.rb +81 -0
- data/examples/scribble-orig.rb +186 -0
- data/examples/scribble.rb +162 -0
- data/examples/shutter.rb +158 -0
- data/examples/splitter.rb +211 -0
- data/examples/styledtext.rb +82 -0
- data/examples/tabbook.rb +165 -0
- data/examples/table.rb +182 -0
- data/examples/textedit/commands.rb +114 -0
- data/examples/textedit/helpwindow.rb +299 -0
- data/examples/textedit/prefdialog.rb +239 -0
- data/examples/textedit/textedit.rb +1763 -0
- data/examples/unicode.rb +36 -0
- data/ext/fox16/fox16.bundle +0 -0
- data/lib/fox16/aliases.rb +5598 -0
- data/lib/fox16/calendar.rb +217 -0
- data/lib/fox16/chore.rb +105 -0
- data/lib/fox16/colors.rb +280 -0
- data/lib/fox16/core.rb +681 -0
- data/lib/fox16/dict.rb +35 -0
- data/lib/fox16/execute_nonmodal.rb +70 -0
- data/lib/fox16/glgroup.rb +166 -0
- data/lib/fox16/glshapes.rb +456 -0
- data/lib/fox16/input.rb +59 -0
- data/lib/fox16/irb.rb +178 -0
- data/lib/fox16/iterators.rb +371 -0
- data/lib/fox16/keys.rb +1374 -0
- data/lib/fox16/kwargs.rb +2736 -0
- data/lib/fox16/missingdep.rb +14 -0
- data/lib/fox16/pseudokeyboard.rb +40 -0
- data/lib/fox16/pseudomouse.rb +87 -0
- data/lib/fox16/responder.rb +70 -0
- data/lib/fox16/responder2.rb +131 -0
- data/lib/fox16/scintilla.rb +3641 -0
- data/lib/fox16/settings.rb +18 -0
- data/lib/fox16/signal.rb +71 -0
- data/lib/fox16/splashscreen.rb +82 -0
- data/lib/fox16/timeout.rb +136 -0
- data/lib/fox16/undolist.rb +455 -0
- data/lib/fox16/version.rb +9 -0
- data/rdoc-sources/FX4Splitter.rb +156 -0
- data/rdoc-sources/FX7Segment.rb +54 -0
- data/rdoc-sources/FXAccelTable.rb +102 -0
- data/rdoc-sources/FXApp.rb +545 -0
- data/rdoc-sources/FXArrowButton.rb +69 -0
- data/rdoc-sources/FXBMPIcon.rb +67 -0
- data/rdoc-sources/FXBMPImage.rb +30 -0
- data/rdoc-sources/FXBitmap.rb +115 -0
- data/rdoc-sources/FXBitmapFrame.rb +31 -0
- data/rdoc-sources/FXBitmapView.rb +44 -0
- data/rdoc-sources/FXButton.rb +59 -0
- data/rdoc-sources/FXCURCursor.rb +13 -0
- data/rdoc-sources/FXCanvas.rb +18 -0
- data/rdoc-sources/FXCheckButton.rb +58 -0
- data/rdoc-sources/FXChoiceBox.rb +49 -0
- data/rdoc-sources/FXColorBar.rb +48 -0
- data/rdoc-sources/FXColorDialog.rb +37 -0
- data/rdoc-sources/FXColorList.rb +55 -0
- data/rdoc-sources/FXColorRing.rb +49 -0
- data/rdoc-sources/FXColorSelector.rb +65 -0
- data/rdoc-sources/FXColorWell.rb +65 -0
- data/rdoc-sources/FXColorWheel.rb +57 -0
- data/rdoc-sources/FXComboBox.rb +211 -0
- data/rdoc-sources/FXComposite.rb +34 -0
- data/rdoc-sources/FXCursor.rb +67 -0
- data/rdoc-sources/FXDC.rb +720 -0
- data/rdoc-sources/FXDCPrint.rb +127 -0
- data/rdoc-sources/FXDCWindow.rb +33 -0
- data/rdoc-sources/FXDataTarget.rb +66 -0
- data/rdoc-sources/FXDebugTarget.rb +25 -0
- data/rdoc-sources/FXDelegator.rb +23 -0
- data/rdoc-sources/FXDial.rb +107 -0
- data/rdoc-sources/FXDialogBox.rb +32 -0
- data/rdoc-sources/FXDict.rb +79 -0
- data/rdoc-sources/FXDirBox.rb +55 -0
- data/rdoc-sources/FXDirDialog.rb +47 -0
- data/rdoc-sources/FXDirList.rb +149 -0
- data/rdoc-sources/FXDirSelector.rb +64 -0
- data/rdoc-sources/FXDockBar.rb +151 -0
- data/rdoc-sources/FXDockHandler.rb +26 -0
- data/rdoc-sources/FXDockSite.rb +104 -0
- data/rdoc-sources/FXDockTitle.rb +26 -0
- data/rdoc-sources/FXDocument.rb +29 -0
- data/rdoc-sources/FXDragCorner.rb +19 -0
- data/rdoc-sources/FXDrawable.rb +27 -0
- data/rdoc-sources/FXDriveBox.rb +46 -0
- data/rdoc-sources/FXExtentd.rb +85 -0
- data/rdoc-sources/FXExtentf.rb +85 -0
- data/rdoc-sources/FXFileDialog.rb +217 -0
- data/rdoc-sources/FXFileDict.rb +131 -0
- data/rdoc-sources/FXFileList.rb +208 -0
- data/rdoc-sources/FXFileSelector.rb +184 -0
- data/rdoc-sources/FXFileStream.rb +27 -0
- data/rdoc-sources/FXFoldingList.rb +504 -0
- data/rdoc-sources/FXFont.rb +361 -0
- data/rdoc-sources/FXFontDialog.rb +14 -0
- data/rdoc-sources/FXFontSelector.rb +37 -0
- data/rdoc-sources/FXFrame.rb +53 -0
- data/rdoc-sources/FXGIFCursor.rb +50 -0
- data/rdoc-sources/FXGIFIcon.rb +31 -0
- data/rdoc-sources/FXGIFImage.rb +29 -0
- data/rdoc-sources/FXGLCanvas.rb +45 -0
- data/rdoc-sources/FXGLContext.rb +40 -0
- data/rdoc-sources/FXGLObject.rb +75 -0
- data/rdoc-sources/FXGLShape.rb +69 -0
- data/rdoc-sources/FXGLViewer.rb +332 -0
- data/rdoc-sources/FXGLVisual.rb +94 -0
- data/rdoc-sources/FXGradientBar.rb +301 -0
- data/rdoc-sources/FXGroupBox.rb +33 -0
- data/rdoc-sources/FXHeader.rb +408 -0
- data/rdoc-sources/FXHorizontalFrame.rb +29 -0
- data/rdoc-sources/FXICOIcon.rb +65 -0
- data/rdoc-sources/FXICOImage.rb +31 -0
- data/rdoc-sources/FXIcon.rb +38 -0
- data/rdoc-sources/FXIconDict.rb +48 -0
- data/rdoc-sources/FXIconList.rb +447 -0
- data/rdoc-sources/FXIconSource.rb +100 -0
- data/rdoc-sources/FXId.rb +34 -0
- data/rdoc-sources/FXImage.rb +292 -0
- data/rdoc-sources/FXImageFrame.rb +36 -0
- data/rdoc-sources/FXImageView.rb +35 -0
- data/rdoc-sources/FXInputDialog.rb +77 -0
- data/rdoc-sources/FXJPGIcon.rb +70 -0
- data/rdoc-sources/FXJPGImage.rb +38 -0
- data/rdoc-sources/FXKnob.rb +76 -0
- data/rdoc-sources/FXLabel.rb +69 -0
- data/rdoc-sources/FXList.rb +440 -0
- data/rdoc-sources/FXListBox.rb +191 -0
- data/rdoc-sources/FXMDIButton.rb +67 -0
- data/rdoc-sources/FXMDIChild.rb +155 -0
- data/rdoc-sources/FXMDIClient.rb +65 -0
- data/rdoc-sources/FXMainWindow.rb +26 -0
- data/rdoc-sources/FXMatrix.rb +57 -0
- data/rdoc-sources/FXMemoryBuffer.rb +28 -0
- data/rdoc-sources/FXMemoryStream.rb +50 -0
- data/rdoc-sources/FXMenuBar.rb +23 -0
- data/rdoc-sources/FXMenuButton.rb +84 -0
- data/rdoc-sources/FXMenuCaption.rb +50 -0
- data/rdoc-sources/FXMenuCascade.rb +18 -0
- data/rdoc-sources/FXMenuCheck.rb +30 -0
- data/rdoc-sources/FXMenuCommand.rb +26 -0
- data/rdoc-sources/FXMenuPane.rb +13 -0
- data/rdoc-sources/FXMenuRadio.rb +33 -0
- data/rdoc-sources/FXMenuSeparator.rb +21 -0
- data/rdoc-sources/FXMenuTitle.rb +27 -0
- data/rdoc-sources/FXMessageBox.rb +72 -0
- data/rdoc-sources/FXObject.rb +28 -0
- data/rdoc-sources/FXOptionMenu.rb +83 -0
- data/rdoc-sources/FXPCXIcon.rb +63 -0
- data/rdoc-sources/FXPCXImage.rb +31 -0
- data/rdoc-sources/FXPNGIcon.rb +66 -0
- data/rdoc-sources/FXPNGImage.rb +34 -0
- data/rdoc-sources/FXPPMIcon.rb +36 -0
- data/rdoc-sources/FXPPMImage.rb +31 -0
- data/rdoc-sources/FXPacker.rb +63 -0
- data/rdoc-sources/FXPicker.rb +27 -0
- data/rdoc-sources/FXPopup.rb +53 -0
- data/rdoc-sources/FXPrintDialog.rb +36 -0
- data/rdoc-sources/FXProgressBar.rb +57 -0
- data/rdoc-sources/FXProgressDialog.rb +36 -0
- data/rdoc-sources/FXQuatd.rb +164 -0
- data/rdoc-sources/FXQuatf.rb +173 -0
- data/rdoc-sources/FXRGBIcon.rb +64 -0
- data/rdoc-sources/FXRGBImage.rb +31 -0
- data/rdoc-sources/FXRadioButton.rb +70 -0
- data/rdoc-sources/FXRanged.rb +100 -0
- data/rdoc-sources/FXRangef.rb +100 -0
- data/rdoc-sources/FXRealSlider.rb +101 -0
- data/rdoc-sources/FXRealSpinner.rb +140 -0
- data/rdoc-sources/FXRecentFiles.rb +77 -0
- data/rdoc-sources/FXRectangle.rb +149 -0
- data/rdoc-sources/FXRegion.rb +64 -0
- data/rdoc-sources/FXRegistry.rb +56 -0
- data/rdoc-sources/FXReplaceDialog.rb +56 -0
- data/rdoc-sources/FXRootWindow.rb +17 -0
- data/rdoc-sources/FXRuler.rb +130 -0
- data/rdoc-sources/FXRulerView.rb +225 -0
- data/rdoc-sources/FXScintilla.rb +121 -0
- data/rdoc-sources/FXScrollArea.rb +86 -0
- data/rdoc-sources/FXScrollBar.rb +107 -0
- data/rdoc-sources/FXScrollPane.rb +28 -0
- data/rdoc-sources/FXScrollWindow.rb +38 -0
- data/rdoc-sources/FXSearchDialog.rb +24 -0
- data/rdoc-sources/FXSeparator.rb +74 -0
- data/rdoc-sources/FXSettings.rb +248 -0
- data/rdoc-sources/FXShell.rb +8 -0
- data/rdoc-sources/FXShutter.rb +102 -0
- data/rdoc-sources/FXSize.rb +95 -0
- data/rdoc-sources/FXSlider.rb +98 -0
- data/rdoc-sources/FXSphered.rb +80 -0
- data/rdoc-sources/FXSpheref.rb +80 -0
- data/rdoc-sources/FXSpinner.rb +136 -0
- data/rdoc-sources/FXSplashWindow.rb +27 -0
- data/rdoc-sources/FXSplitter.rb +89 -0
- data/rdoc-sources/FXSpring.rb +61 -0
- data/rdoc-sources/FXStatusBar.rb +42 -0
- data/rdoc-sources/FXStatusLine.rb +60 -0
- data/rdoc-sources/FXStream.rb +142 -0
- data/rdoc-sources/FXStringDict.rb +38 -0
- data/rdoc-sources/FXSwitcher.rb +78 -0
- data/rdoc-sources/FXTGAIcon.rb +63 -0
- data/rdoc-sources/FXTGAImage.rb +31 -0
- data/rdoc-sources/FXTIFIcon.rb +70 -0
- data/rdoc-sources/FXTIFImage.rb +37 -0
- data/rdoc-sources/FXTabBar.rb +80 -0
- data/rdoc-sources/FXTabBook.rb +41 -0
- data/rdoc-sources/FXTabItem.rb +58 -0
- data/rdoc-sources/FXTable.rb +967 -0
- data/rdoc-sources/FXText.rb +578 -0
- data/rdoc-sources/FXTextField.rb +151 -0
- data/rdoc-sources/FXToggleButton.rb +70 -0
- data/rdoc-sources/FXToolBar.rb +61 -0
- data/rdoc-sources/FXToolBarGrip.rb +50 -0
- data/rdoc-sources/FXToolBarShell.rb +44 -0
- data/rdoc-sources/FXToolBarTab.rb +74 -0
- data/rdoc-sources/FXToolTip.rb +36 -0
- data/rdoc-sources/FXTopWindow.rb +163 -0
- data/rdoc-sources/FXTranslator.rb +32 -0
- data/rdoc-sources/FXTreeList.rb +514 -0
- data/rdoc-sources/FXTreeListBox.rb +219 -0
- data/rdoc-sources/FXTriStateButton.rb +49 -0
- data/rdoc-sources/FXVec2d.rb +96 -0
- data/rdoc-sources/FXVec2f.rb +96 -0
- data/rdoc-sources/FXVec3d.rb +113 -0
- data/rdoc-sources/FXVec3f.rb +113 -0
- data/rdoc-sources/FXVec4d.rb +129 -0
- data/rdoc-sources/FXVec4f.rb +129 -0
- data/rdoc-sources/FXVerticalFrame.rb +29 -0
- data/rdoc-sources/FXVisual.rb +79 -0
- data/rdoc-sources/FXWindow.rb +725 -0
- data/rdoc-sources/FXWizard.rb +59 -0
- data/rdoc-sources/FXXBMIcon.rb +37 -0
- data/rdoc-sources/FXXBMImage.rb +32 -0
- data/rdoc-sources/FXXPMIcon.rb +65 -0
- data/rdoc-sources/FXXPMImage.rb +31 -0
- data/rdoc-sources/README.rdoc +53 -0
- data/rdoc-sources/fxdefs.rb +90 -0
- data/tests/README +19 -0
- data/tests/TC_FXAccelTable.rb +43 -0
- data/tests/TC_FXApp.rb +15 -0
- data/tests/TC_FXArc.rb +26 -0
- data/tests/TC_FXBMPIcon.rb +15 -0
- data/tests/TC_FXBMPImage.rb +15 -0
- data/tests/TC_FXButton.rb +72 -0
- data/tests/TC_FXCheckButton.rb +57 -0
- data/tests/TC_FXComboBox.rb +52 -0
- data/tests/TC_FXDC.rb +372 -0
- data/tests/TC_FXDCPrint.rb +102 -0
- data/tests/TC_FXDCWindow.rb +23 -0
- data/tests/TC_FXDataTarget.rb +24 -0
- data/tests/TC_FXDirList.rb +30 -0
- data/tests/TC_FXFileAssoc.rb +62 -0
- data/tests/TC_FXFileStream.rb +90 -0
- data/tests/TC_FXFoldingList.rb +32 -0
- data/tests/TC_FXFont.rb +69 -0
- data/tests/TC_FXFontDesc.rb +58 -0
- data/tests/TC_FXGLGroup.rb +32 -0
- data/tests/TC_FXGLShape.rb +28 -0
- data/tests/TC_FXGLViewer.rb +20 -0
- data/tests/TC_FXGradientBar.rb +89 -0
- data/tests/TC_FXHeader.rb +82 -0
- data/tests/TC_FXIconDict.rb +52 -0
- data/tests/TC_FXIconList.rb +192 -0
- data/tests/TC_FXId.rb +19 -0
- data/tests/TC_FXImage.rb +155 -0
- data/tests/TC_FXLight.rb +33 -0
- data/tests/TC_FXList.rb +116 -0
- data/tests/TC_FXListBox.rb +49 -0
- data/tests/TC_FXMat4f.rb +228 -0
- data/tests/TC_FXMaterial.rb +89 -0
- data/tests/TC_FXMemoryStream.rb +97 -0
- data/tests/TC_FXMenuCheck.rb +57 -0
- data/tests/TC_FXMenuCommand.rb +12 -0
- data/tests/TC_FXMenuRadio.rb +57 -0
- data/tests/TC_FXPoint.rb +57 -0
- data/tests/TC_FXQuatf.rb +77 -0
- data/tests/TC_FXRadioButton.rb +57 -0
- data/tests/TC_FXRangef.rb +48 -0
- data/tests/TC_FXRectangle.rb +88 -0
- data/tests/TC_FXRegion.rb +54 -0
- data/tests/TC_FXRegistry.rb +27 -0
- data/tests/TC_FXScrollArea.rb +28 -0
- data/tests/TC_FXScrollWindow.rb +28 -0
- data/tests/TC_FXSegment.rb +22 -0
- data/tests/TC_FXSettings.rb +34 -0
- data/tests/TC_FXShell.rb +26 -0
- data/tests/TC_FXSize.rb +54 -0
- data/tests/TC_FXStream.rb +11 -0
- data/tests/TC_FXTable.rb +368 -0
- data/tests/TC_FXTableItem.rb +48 -0
- data/tests/TC_FXText.rb +96 -0
- data/tests/TC_FXTopWindow.rb +32 -0
- data/tests/TC_FXTreeList.rb +100 -0
- data/tests/TC_FXTreeListBox.rb +41 -0
- data/tests/TC_FXUndoList.rb +43 -0
- data/tests/TC_FXVec2d.rb +142 -0
- data/tests/TC_FXVec2f.rb +137 -0
- data/tests/TC_FXVec3d.rb +150 -0
- data/tests/TC_FXVec3f.rb +150 -0
- data/tests/TC_FXVec4f.rb +158 -0
- data/tests/TC_FXViewport.rb +30 -0
- data/tests/TC_FXXBMIcon.rb +15 -0
- data/tests/TC_FXXBMImage.rb +15 -0
- data/tests/TC_FXXPMIcon.rb +15 -0
- data/tests/TC_FXXPMImage.rb +15 -0
- data/tests/TC_Misc.rb +157 -0
- data/tests/TC_downcast.rb +15 -0
- data/tests/TS_All.rb +25 -0
- data/tests/blankpage.ps +166 -0
- data/tests/howdypage.ps +181 -0
- data/tests/output.ps +166 -0
- data/tests/stress1.rb +92 -0
- data/tests/stress2.rb +51 -0
- data/tests/stress3.rb +117 -0
- data/tests/testcase.rb +37 -0
- data/web/community.html +94 -0
- data/web/documentation.html +100 -0
- data/web/downloads.html +114 -0
- data/web/index.html +96 -0
- metadata +550 -0
data/tests/blankpage.ps
ADDED
@@ -0,0 +1,166 @@
|
|
1
|
+
%!PS-Adobe-3.0
|
2
|
+
%%Title: Print Job
|
3
|
+
%%Creator: FOX GUI Toolkit Application
|
4
|
+
%%BoundingBox: 72 72 540 720
|
5
|
+
%%Pages: (atend)
|
6
|
+
%%DocumentFonts:
|
7
|
+
%%EndComments
|
8
|
+
%%BeginProlog
|
9
|
+
|
10
|
+
|
11
|
+
% h w x y drawRect
|
12
|
+
/drawRect {
|
13
|
+
newpath moveto dup 0 rlineto exch dup 0 exch
|
14
|
+
rlineto exch neg 0 rlineto neg 0 exch rlineto
|
15
|
+
closepath stroke
|
16
|
+
} def
|
17
|
+
% h w x y fillRect
|
18
|
+
/fillRect {
|
19
|
+
newpath moveto dup 0 rlineto exch dup 0 exch
|
20
|
+
rlineto exch neg 0 rlineto neg 0 exch rlineto
|
21
|
+
closepath fill stroke
|
22
|
+
} def
|
23
|
+
% x y a b drawLine
|
24
|
+
/drawLine {
|
25
|
+
newpath moveto lineto stroke
|
26
|
+
} def
|
27
|
+
% x y ..... npoints drawLines
|
28
|
+
/drawLines {
|
29
|
+
3 1 roll newpath moveto {lineto} repeat stroke
|
30
|
+
} def
|
31
|
+
% x y a b ..... nsegments drawSegmt
|
32
|
+
/drawSegmt {
|
33
|
+
newpath {
|
34
|
+
moveto lineto
|
35
|
+
} repeat stroke
|
36
|
+
} def
|
37
|
+
% x y drawPoint
|
38
|
+
/drawPoint {
|
39
|
+
translate 1 1 scale 8 8 1 [ 8 0 0 8 0 0 ] {<0000>} image
|
40
|
+
} def
|
41
|
+
% centerx centery startAngle endAngle radiusX radiusY drawArc
|
42
|
+
/drawArc {
|
43
|
+
gsave dup 3 1 roll div dup 1 scale 6 -1 roll
|
44
|
+
exch div 5 1 roll 3 -2 roll arc stroke grestore
|
45
|
+
} def
|
46
|
+
% (string) x y height drawText
|
47
|
+
/drawText {
|
48
|
+
gsave findfont exch scalefont setfont moveto
|
49
|
+
show grestore
|
50
|
+
} def
|
51
|
+
/bwproc
|
52
|
+
{ rgbproc
|
53
|
+
dup length 3 idiv string 0 3 0
|
54
|
+
5 -1 roll
|
55
|
+
{ add 2 1 roll 1 sub dup 0 eq
|
56
|
+
{ pop 3 idiv 3 -1 roll dup 4 -1 roll dup
|
57
|
+
3 1 roll 5 -1 roll put 1 add 3 0 }
|
58
|
+
{ 2 1 roll } ifelse
|
59
|
+
} forall
|
60
|
+
pop pop pop
|
61
|
+
} def
|
62
|
+
systemdict /colorimage known not
|
63
|
+
{ /colorimage
|
64
|
+
{ pop pop /rgbproc exch def
|
65
|
+
{ bwproc } image
|
66
|
+
} def
|
67
|
+
} if
|
68
|
+
% Color - r g b C
|
69
|
+
/C { setrgbcolor } bind def
|
70
|
+
% Point - x y r g b P
|
71
|
+
/P { C newpath 0.5 0.0 360.0 arc closepath fill } bind def
|
72
|
+
% Flat Shaded Line - x2 y2 x1 y1 r g b L
|
73
|
+
/L { C newpath moveto lineto stroke } bind def
|
74
|
+
% Smooth-shaded line - x2 y2 r2 g2 b2 x1 y1 r1 g1 b1 SL
|
75
|
+
/SL {
|
76
|
+
/b1 exch def
|
77
|
+
/g1 exch def
|
78
|
+
/r1 exch def
|
79
|
+
/y1 exch def
|
80
|
+
/x1 exch def
|
81
|
+
/b2 exch def
|
82
|
+
/g2 exch def
|
83
|
+
/r2 exch def
|
84
|
+
/y2 exch def
|
85
|
+
/x2 exch def
|
86
|
+
|
87
|
+
b2 b1 sub abs 0.01 gt
|
88
|
+
g2 g1 sub abs 0.005 gt
|
89
|
+
r2 r1 sub abs 0.008 gt
|
90
|
+
or or {
|
91
|
+
/bm b1 b2 add 0.5 mul def
|
92
|
+
/gm g1 g2 add 0.5 mul def
|
93
|
+
/rm r1 r2 add 0.5 mul def
|
94
|
+
/ym y1 y2 add 0.5 mul def
|
95
|
+
/xm x1 x2 add 0.5 mul def
|
96
|
+
|
97
|
+
x1 y1 r1 g1 b1 xm ym rm gm bm SL
|
98
|
+
xm ym rm gm bm x2 y2 r2 g2 b2 SL
|
99
|
+
} {
|
100
|
+
x1 y1 x2 y2 r1 g1 b1 L
|
101
|
+
} ifelse
|
102
|
+
} bind def
|
103
|
+
% Flat-shaded triangle - x3 y3 x2 y2 x1 y1 r g b T
|
104
|
+
/T { C newpath moveto lineto lineto closepath fill } bind def
|
105
|
+
% Smooth-shaded triangle - x3 y3 r3 g3 b3 x2 y2 r2 g2 b2 x1 y1 r1 g1 b1 ST
|
106
|
+
/ST {
|
107
|
+
/b1 exch def
|
108
|
+
/g1 exch def
|
109
|
+
/r1 exch def
|
110
|
+
/y1 exch def
|
111
|
+
/x1 exch def
|
112
|
+
/b2 exch def
|
113
|
+
/g2 exch def
|
114
|
+
/r2 exch def
|
115
|
+
/y2 exch def
|
116
|
+
/x2 exch def
|
117
|
+
/b3 exch def
|
118
|
+
/g3 exch def
|
119
|
+
/r3 exch def
|
120
|
+
/y3 exch def
|
121
|
+
/x3 exch def
|
122
|
+
|
123
|
+
b2 b1 sub abs 0.05 gt
|
124
|
+
g2 g1 sub abs 0.017 gt
|
125
|
+
r2 r1 sub abs 0.032 gt
|
126
|
+
b3 b1 sub abs 0.05 gt
|
127
|
+
g3 g1 sub abs 0.017 gt
|
128
|
+
r3 r1 sub abs 0.032 gt
|
129
|
+
b2 b3 sub abs 0.05 gt
|
130
|
+
g2 g3 sub abs 0.017 gt
|
131
|
+
r2 r3 sub abs 0.032 gt
|
132
|
+
or or or or or or or or {
|
133
|
+
/b12 b1 b2 add 0.5 mul def
|
134
|
+
/g12 g1 g2 add 0.5 mul def
|
135
|
+
/r12 r1 r2 add 0.5 mul def
|
136
|
+
/y12 y1 y2 add 0.5 mul def
|
137
|
+
/x12 x1 x2 add 0.5 mul def
|
138
|
+
|
139
|
+
/b13 b1 b3 add 0.5 mul def
|
140
|
+
/g13 g1 g3 add 0.5 mul def
|
141
|
+
/r13 r1 r3 add 0.5 mul def
|
142
|
+
/y13 y1 y3 add 0.5 mul def
|
143
|
+
/x13 x1 x3 add 0.5 mul def
|
144
|
+
|
145
|
+
/b32 b3 b2 add 0.5 mul def
|
146
|
+
/g32 g3 g2 add 0.5 mul def
|
147
|
+
/r32 r3 r2 add 0.5 mul def
|
148
|
+
/y32 y3 y2 add 0.5 mul def
|
149
|
+
/x32 x3 x2 add 0.5 mul def
|
150
|
+
|
151
|
+
x1 y1 r1 g1 b1 x12 y12 r12 g12 b12 x13 y13 r13 g13 b13
|
152
|
+
x2 y2 r2 g2 b2 x12 y12 r12 g12 b12 x32 y32 r32 g32 b32
|
153
|
+
x3 y3 r3 g3 b3 x32 y32 r32 g32 b32 x13 y13 r13 g13 b13
|
154
|
+
x32 y32 r32 g32 b32 x12 y12 r12 g12 b12 x13 y13 r13 g13 b13
|
155
|
+
ST ST ST ST
|
156
|
+
} {
|
157
|
+
x1 y1 x2 y2 x3 y3 r1 g1 b1 T
|
158
|
+
} ifelse
|
159
|
+
} bind def
|
160
|
+
%%EndProlog
|
161
|
+
%%BeginSetup
|
162
|
+
/#copies 1 def
|
163
|
+
%%EndSetup
|
164
|
+
%%Trailer
|
165
|
+
%%Pages: 0
|
166
|
+
%%EOF
|
data/tests/howdypage.ps
ADDED
@@ -0,0 +1,181 @@
|
|
1
|
+
%!PS-Adobe-3.0
|
2
|
+
%%Title: Print Job
|
3
|
+
%%Creator: FOX GUI Toolkit Application
|
4
|
+
%%BoundingBox: 72 72 540 720
|
5
|
+
%%Pages: (atend)
|
6
|
+
%%DocumentFonts:
|
7
|
+
%%EndComments
|
8
|
+
%%BeginProlog
|
9
|
+
|
10
|
+
|
11
|
+
% h w x y drawRect
|
12
|
+
/drawRect {
|
13
|
+
newpath moveto dup 0 rlineto exch dup 0 exch
|
14
|
+
rlineto exch neg 0 rlineto neg 0 exch rlineto
|
15
|
+
closepath stroke
|
16
|
+
} def
|
17
|
+
% h w x y fillRect
|
18
|
+
/fillRect {
|
19
|
+
newpath moveto dup 0 rlineto exch dup 0 exch
|
20
|
+
rlineto exch neg 0 rlineto neg 0 exch rlineto
|
21
|
+
closepath fill stroke
|
22
|
+
} def
|
23
|
+
% x y a b drawLine
|
24
|
+
/drawLine {
|
25
|
+
newpath moveto lineto stroke
|
26
|
+
} def
|
27
|
+
% x y ..... npoints drawLines
|
28
|
+
/drawLines {
|
29
|
+
3 1 roll newpath moveto {lineto} repeat stroke
|
30
|
+
} def
|
31
|
+
% x y a b ..... nsegments drawSegmt
|
32
|
+
/drawSegmt {
|
33
|
+
newpath {
|
34
|
+
moveto lineto
|
35
|
+
} repeat stroke
|
36
|
+
} def
|
37
|
+
% x y drawPoint
|
38
|
+
/drawPoint {
|
39
|
+
translate 1 1 scale 8 8 1 [ 8 0 0 8 0 0 ] {<0000>} image
|
40
|
+
} def
|
41
|
+
% centerx centery startAngle endAngle radiusX radiusY drawArc
|
42
|
+
/drawArc {
|
43
|
+
gsave dup 3 1 roll div dup 1 scale 6 -1 roll
|
44
|
+
exch div 5 1 roll 3 -2 roll arc stroke grestore
|
45
|
+
} def
|
46
|
+
% (string) x y height drawText
|
47
|
+
/drawText {
|
48
|
+
gsave findfont exch scalefont setfont moveto
|
49
|
+
show grestore
|
50
|
+
} def
|
51
|
+
/bwproc
|
52
|
+
{ rgbproc
|
53
|
+
dup length 3 idiv string 0 3 0
|
54
|
+
5 -1 roll
|
55
|
+
{ add 2 1 roll 1 sub dup 0 eq
|
56
|
+
{ pop 3 idiv 3 -1 roll dup 4 -1 roll dup
|
57
|
+
3 1 roll 5 -1 roll put 1 add 3 0 }
|
58
|
+
{ 2 1 roll } ifelse
|
59
|
+
} forall
|
60
|
+
pop pop pop
|
61
|
+
} def
|
62
|
+
systemdict /colorimage known not
|
63
|
+
{ /colorimage
|
64
|
+
{ pop pop /rgbproc exch def
|
65
|
+
{ bwproc } image
|
66
|
+
} def
|
67
|
+
} if
|
68
|
+
% Color - r g b C
|
69
|
+
/C { setrgbcolor } bind def
|
70
|
+
% Point - x y r g b P
|
71
|
+
/P { C newpath 0.5 0.0 360.0 arc closepath fill } bind def
|
72
|
+
% Flat Shaded Line - x2 y2 x1 y1 r g b L
|
73
|
+
/L { C newpath moveto lineto stroke } bind def
|
74
|
+
% Smooth-shaded line - x2 y2 r2 g2 b2 x1 y1 r1 g1 b1 SL
|
75
|
+
/SL {
|
76
|
+
/b1 exch def
|
77
|
+
/g1 exch def
|
78
|
+
/r1 exch def
|
79
|
+
/y1 exch def
|
80
|
+
/x1 exch def
|
81
|
+
/b2 exch def
|
82
|
+
/g2 exch def
|
83
|
+
/r2 exch def
|
84
|
+
/y2 exch def
|
85
|
+
/x2 exch def
|
86
|
+
|
87
|
+
b2 b1 sub abs 0.01 gt
|
88
|
+
g2 g1 sub abs 0.005 gt
|
89
|
+
r2 r1 sub abs 0.008 gt
|
90
|
+
or or {
|
91
|
+
/bm b1 b2 add 0.5 mul def
|
92
|
+
/gm g1 g2 add 0.5 mul def
|
93
|
+
/rm r1 r2 add 0.5 mul def
|
94
|
+
/ym y1 y2 add 0.5 mul def
|
95
|
+
/xm x1 x2 add 0.5 mul def
|
96
|
+
|
97
|
+
x1 y1 r1 g1 b1 xm ym rm gm bm SL
|
98
|
+
xm ym rm gm bm x2 y2 r2 g2 b2 SL
|
99
|
+
} {
|
100
|
+
x1 y1 x2 y2 r1 g1 b1 L
|
101
|
+
} ifelse
|
102
|
+
} bind def
|
103
|
+
% Flat-shaded triangle - x3 y3 x2 y2 x1 y1 r g b T
|
104
|
+
/T { C newpath moveto lineto lineto closepath fill } bind def
|
105
|
+
% Smooth-shaded triangle - x3 y3 r3 g3 b3 x2 y2 r2 g2 b2 x1 y1 r1 g1 b1 ST
|
106
|
+
/ST {
|
107
|
+
/b1 exch def
|
108
|
+
/g1 exch def
|
109
|
+
/r1 exch def
|
110
|
+
/y1 exch def
|
111
|
+
/x1 exch def
|
112
|
+
/b2 exch def
|
113
|
+
/g2 exch def
|
114
|
+
/r2 exch def
|
115
|
+
/y2 exch def
|
116
|
+
/x2 exch def
|
117
|
+
/b3 exch def
|
118
|
+
/g3 exch def
|
119
|
+
/r3 exch def
|
120
|
+
/y3 exch def
|
121
|
+
/x3 exch def
|
122
|
+
|
123
|
+
b2 b1 sub abs 0.05 gt
|
124
|
+
g2 g1 sub abs 0.017 gt
|
125
|
+
r2 r1 sub abs 0.032 gt
|
126
|
+
b3 b1 sub abs 0.05 gt
|
127
|
+
g3 g1 sub abs 0.017 gt
|
128
|
+
r3 r1 sub abs 0.032 gt
|
129
|
+
b2 b3 sub abs 0.05 gt
|
130
|
+
g2 g3 sub abs 0.017 gt
|
131
|
+
r2 r3 sub abs 0.032 gt
|
132
|
+
or or or or or or or or {
|
133
|
+
/b12 b1 b2 add 0.5 mul def
|
134
|
+
/g12 g1 g2 add 0.5 mul def
|
135
|
+
/r12 r1 r2 add 0.5 mul def
|
136
|
+
/y12 y1 y2 add 0.5 mul def
|
137
|
+
/x12 x1 x2 add 0.5 mul def
|
138
|
+
|
139
|
+
/b13 b1 b3 add 0.5 mul def
|
140
|
+
/g13 g1 g3 add 0.5 mul def
|
141
|
+
/r13 r1 r3 add 0.5 mul def
|
142
|
+
/y13 y1 y3 add 0.5 mul def
|
143
|
+
/x13 x1 x3 add 0.5 mul def
|
144
|
+
|
145
|
+
/b32 b3 b2 add 0.5 mul def
|
146
|
+
/g32 g3 g2 add 0.5 mul def
|
147
|
+
/r32 r3 r2 add 0.5 mul def
|
148
|
+
/y32 y3 y2 add 0.5 mul def
|
149
|
+
/x32 x3 x2 add 0.5 mul def
|
150
|
+
|
151
|
+
x1 y1 r1 g1 b1 x12 y12 r12 g12 b12 x13 y13 r13 g13 b13
|
152
|
+
x2 y2 r2 g2 b2 x12 y12 r12 g12 b12 x32 y32 r32 g32 b32
|
153
|
+
x3 y3 r3 g3 b3 x32 y32 r32 g32 b32 x13 y13 r13 g13 b13
|
154
|
+
x32 y32 r32 g32 b32 x12 y12 r12 g12 b12 x13 y13 r13 g13 b13
|
155
|
+
ST ST ST ST
|
156
|
+
} {
|
157
|
+
x1 y1 x2 y2 x3 y3 r1 g1 b1 T
|
158
|
+
} ifelse
|
159
|
+
} bind def
|
160
|
+
%%EndProlog
|
161
|
+
%%BeginSetup
|
162
|
+
/#copies 1 def
|
163
|
+
%%EndSetup
|
164
|
+
%%Page: 1
|
165
|
+
%%PageBoundingBox: 72 72 540 720
|
166
|
+
%%BeginPageSetup
|
167
|
+
%%EndPageSetup
|
168
|
+
gsave
|
169
|
+
gsave /helvetica findfont
|
170
|
+
9 scalefont
|
171
|
+
setfont
|
172
|
+
newpath
|
173
|
+
100 692 moveto
|
174
|
+
(Howdy!) show
|
175
|
+
grestore
|
176
|
+
%%PageTrailer
|
177
|
+
showpage
|
178
|
+
grestore
|
179
|
+
%%Trailer
|
180
|
+
%%Pages: 1
|
181
|
+
%%EOF
|
data/tests/output.ps
ADDED
@@ -0,0 +1,166 @@
|
|
1
|
+
%!PS-Adobe-3.0
|
2
|
+
%%Title: Print Job
|
3
|
+
%%Creator: FOX GUI Toolkit Application
|
4
|
+
%%BoundingBox: 72 72 540 720
|
5
|
+
%%Pages: (atend)
|
6
|
+
%%DocumentFonts:
|
7
|
+
%%EndComments
|
8
|
+
%%BeginProlog
|
9
|
+
|
10
|
+
|
11
|
+
% h w x y drawRect
|
12
|
+
/drawRect {
|
13
|
+
newpath moveto dup 0 rlineto exch dup 0 exch
|
14
|
+
rlineto exch neg 0 rlineto neg 0 exch rlineto
|
15
|
+
closepath stroke
|
16
|
+
} def
|
17
|
+
% h w x y fillRect
|
18
|
+
/fillRect {
|
19
|
+
newpath moveto dup 0 rlineto exch dup 0 exch
|
20
|
+
rlineto exch neg 0 rlineto neg 0 exch rlineto
|
21
|
+
closepath fill stroke
|
22
|
+
} def
|
23
|
+
% x y a b drawLine
|
24
|
+
/drawLine {
|
25
|
+
newpath moveto lineto stroke
|
26
|
+
} def
|
27
|
+
% x y ..... npoints drawLines
|
28
|
+
/drawLines {
|
29
|
+
3 1 roll newpath moveto {lineto} repeat stroke
|
30
|
+
} def
|
31
|
+
% x y a b ..... nsegments drawSegmt
|
32
|
+
/drawSegmt {
|
33
|
+
newpath {
|
34
|
+
moveto lineto
|
35
|
+
} repeat stroke
|
36
|
+
} def
|
37
|
+
% x y drawPoint
|
38
|
+
/drawPoint {
|
39
|
+
translate 1 1 scale 8 8 1 [ 8 0 0 8 0 0 ] {<0000>} image
|
40
|
+
} def
|
41
|
+
% centerx centery startAngle endAngle radiusX radiusY drawArc
|
42
|
+
/drawArc {
|
43
|
+
gsave dup 3 1 roll div dup 1 scale 6 -1 roll
|
44
|
+
exch div 5 1 roll 3 -2 roll arc stroke grestore
|
45
|
+
} def
|
46
|
+
% (string) x y height drawText
|
47
|
+
/drawText {
|
48
|
+
gsave findfont exch scalefont setfont moveto
|
49
|
+
show grestore
|
50
|
+
} def
|
51
|
+
/bwproc
|
52
|
+
{ rgbproc
|
53
|
+
dup length 3 idiv string 0 3 0
|
54
|
+
5 -1 roll
|
55
|
+
{ add 2 1 roll 1 sub dup 0 eq
|
56
|
+
{ pop 3 idiv 3 -1 roll dup 4 -1 roll dup
|
57
|
+
3 1 roll 5 -1 roll put 1 add 3 0 }
|
58
|
+
{ 2 1 roll } ifelse
|
59
|
+
} forall
|
60
|
+
pop pop pop
|
61
|
+
} def
|
62
|
+
systemdict /colorimage known not
|
63
|
+
{ /colorimage
|
64
|
+
{ pop pop /rgbproc exch def
|
65
|
+
{ bwproc } image
|
66
|
+
} def
|
67
|
+
} if
|
68
|
+
% Color - r g b C
|
69
|
+
/C { setrgbcolor } bind def
|
70
|
+
% Point - x y r g b P
|
71
|
+
/P { C newpath 0.5 0.0 360.0 arc closepath fill } bind def
|
72
|
+
% Flat Shaded Line - x2 y2 x1 y1 r g b L
|
73
|
+
/L { C newpath moveto lineto stroke } bind def
|
74
|
+
% Smooth-shaded line - x2 y2 r2 g2 b2 x1 y1 r1 g1 b1 SL
|
75
|
+
/SL {
|
76
|
+
/b1 exch def
|
77
|
+
/g1 exch def
|
78
|
+
/r1 exch def
|
79
|
+
/y1 exch def
|
80
|
+
/x1 exch def
|
81
|
+
/b2 exch def
|
82
|
+
/g2 exch def
|
83
|
+
/r2 exch def
|
84
|
+
/y2 exch def
|
85
|
+
/x2 exch def
|
86
|
+
|
87
|
+
b2 b1 sub abs 0.01 gt
|
88
|
+
g2 g1 sub abs 0.005 gt
|
89
|
+
r2 r1 sub abs 0.008 gt
|
90
|
+
or or {
|
91
|
+
/bm b1 b2 add 0.5 mul def
|
92
|
+
/gm g1 g2 add 0.5 mul def
|
93
|
+
/rm r1 r2 add 0.5 mul def
|
94
|
+
/ym y1 y2 add 0.5 mul def
|
95
|
+
/xm x1 x2 add 0.5 mul def
|
96
|
+
|
97
|
+
x1 y1 r1 g1 b1 xm ym rm gm bm SL
|
98
|
+
xm ym rm gm bm x2 y2 r2 g2 b2 SL
|
99
|
+
} {
|
100
|
+
x1 y1 x2 y2 r1 g1 b1 L
|
101
|
+
} ifelse
|
102
|
+
} bind def
|
103
|
+
% Flat-shaded triangle - x3 y3 x2 y2 x1 y1 r g b T
|
104
|
+
/T { C newpath moveto lineto lineto closepath fill } bind def
|
105
|
+
% Smooth-shaded triangle - x3 y3 r3 g3 b3 x2 y2 r2 g2 b2 x1 y1 r1 g1 b1 ST
|
106
|
+
/ST {
|
107
|
+
/b1 exch def
|
108
|
+
/g1 exch def
|
109
|
+
/r1 exch def
|
110
|
+
/y1 exch def
|
111
|
+
/x1 exch def
|
112
|
+
/b2 exch def
|
113
|
+
/g2 exch def
|
114
|
+
/r2 exch def
|
115
|
+
/y2 exch def
|
116
|
+
/x2 exch def
|
117
|
+
/b3 exch def
|
118
|
+
/g3 exch def
|
119
|
+
/r3 exch def
|
120
|
+
/y3 exch def
|
121
|
+
/x3 exch def
|
122
|
+
|
123
|
+
b2 b1 sub abs 0.05 gt
|
124
|
+
g2 g1 sub abs 0.017 gt
|
125
|
+
r2 r1 sub abs 0.032 gt
|
126
|
+
b3 b1 sub abs 0.05 gt
|
127
|
+
g3 g1 sub abs 0.017 gt
|
128
|
+
r3 r1 sub abs 0.032 gt
|
129
|
+
b2 b3 sub abs 0.05 gt
|
130
|
+
g2 g3 sub abs 0.017 gt
|
131
|
+
r2 r3 sub abs 0.032 gt
|
132
|
+
or or or or or or or or {
|
133
|
+
/b12 b1 b2 add 0.5 mul def
|
134
|
+
/g12 g1 g2 add 0.5 mul def
|
135
|
+
/r12 r1 r2 add 0.5 mul def
|
136
|
+
/y12 y1 y2 add 0.5 mul def
|
137
|
+
/x12 x1 x2 add 0.5 mul def
|
138
|
+
|
139
|
+
/b13 b1 b3 add 0.5 mul def
|
140
|
+
/g13 g1 g3 add 0.5 mul def
|
141
|
+
/r13 r1 r3 add 0.5 mul def
|
142
|
+
/y13 y1 y3 add 0.5 mul def
|
143
|
+
/x13 x1 x3 add 0.5 mul def
|
144
|
+
|
145
|
+
/b32 b3 b2 add 0.5 mul def
|
146
|
+
/g32 g3 g2 add 0.5 mul def
|
147
|
+
/r32 r3 r2 add 0.5 mul def
|
148
|
+
/y32 y3 y2 add 0.5 mul def
|
149
|
+
/x32 x3 x2 add 0.5 mul def
|
150
|
+
|
151
|
+
x1 y1 r1 g1 b1 x12 y12 r12 g12 b12 x13 y13 r13 g13 b13
|
152
|
+
x2 y2 r2 g2 b2 x12 y12 r12 g12 b12 x32 y32 r32 g32 b32
|
153
|
+
x3 y3 r3 g3 b3 x32 y32 r32 g32 b32 x13 y13 r13 g13 b13
|
154
|
+
x32 y32 r32 g32 b32 x12 y12 r12 g12 b12 x13 y13 r13 g13 b13
|
155
|
+
ST ST ST ST
|
156
|
+
} {
|
157
|
+
x1 y1 x2 y2 x3 y3 r1 g1 b1 T
|
158
|
+
} ifelse
|
159
|
+
} bind def
|
160
|
+
%%EndProlog
|
161
|
+
%%BeginSetup
|
162
|
+
/#copies 1 def
|
163
|
+
%%EndSetup
|
164
|
+
%%Trailer
|
165
|
+
%%Pages: 0
|
166
|
+
%%EOF
|
data/tests/stress1.rb
ADDED
@@ -0,0 +1,92 @@
|
|
1
|
+
#
|
2
|
+
# An FXRuby stress test developed by Gilles Filippini
|
3
|
+
#
|
4
|
+
|
5
|
+
require "fox16"
|
6
|
+
|
7
|
+
include Fox
|
8
|
+
|
9
|
+
# Test case tuning
|
10
|
+
NUMBER_OF_ITEMS = 1000
|
11
|
+
RESTART_FREQUENCY = 20
|
12
|
+
|
13
|
+
# =======================================================================
|
14
|
+
# Tree
|
15
|
+
# =======================================================================
|
16
|
+
class DirTree < FXTreeList
|
17
|
+
def initialize(p)
|
18
|
+
super(p, :opts => TREELIST_SHOWS_LINES|TREELIST_SHOWS_BOXES|TREELIST_ROOT_BOXES|LAYOUT_FILL_X|LAYOUT_FILL_Y)
|
19
|
+
end
|
20
|
+
|
21
|
+
def create
|
22
|
+
super
|
23
|
+
item = addItemLast(nil, "root")
|
24
|
+
@currentItem = item
|
25
|
+
expand
|
26
|
+
end
|
27
|
+
|
28
|
+
def expand
|
29
|
+
expandTree(@currentItem, true)
|
30
|
+
listSubDir(@currentItem)
|
31
|
+
end
|
32
|
+
|
33
|
+
# Updating entries of dir
|
34
|
+
def listSubDir(parentItem)
|
35
|
+
entries = (1..NUMBER_OF_ITEMS).collect { |i| i.to_s }
|
36
|
+
entries.each do |entry|
|
37
|
+
item = addItemLast(parentItem, entry)
|
38
|
+
@currentItem = item if entry == "1"
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
# =======================================================================
|
44
|
+
# Application
|
45
|
+
# =======================================================================
|
46
|
+
class Application < FXApp
|
47
|
+
include Responder
|
48
|
+
|
49
|
+
ID_TIMER, ID_LAST = enum(FXApp::ID_LAST, 2)
|
50
|
+
|
51
|
+
def initialize
|
52
|
+
super("FXTreeList Bug (the come back)", "Pini")
|
53
|
+
|
54
|
+
FXMAPFUNC(SEL_TIMEOUT, ID_TIMER, "onCount")
|
55
|
+
|
56
|
+
self.threadsEnabled = false
|
57
|
+
init(ARGV)
|
58
|
+
|
59
|
+
@mainWindow = FXMainWindow.new(self, appName, nil, nil, DECOR_ALL, 0, 0, 400, 600)
|
60
|
+
@dirTree = DirTree.new(@mainWindow)
|
61
|
+
|
62
|
+
@count = 0
|
63
|
+
end
|
64
|
+
|
65
|
+
def create
|
66
|
+
super
|
67
|
+
@mainWindow.show(PLACEMENT_SCREEN)
|
68
|
+
addTimeout(100, self, ID_TIMER)
|
69
|
+
end
|
70
|
+
|
71
|
+
def onCount(sender, sel, ptr)
|
72
|
+
@count += 1
|
73
|
+
puts "count = #{@count}"
|
74
|
+
if @count % RESTART_FREQUENCY == 0
|
75
|
+
@dirTree.clearItems
|
76
|
+
@dirTree.create
|
77
|
+
end
|
78
|
+
@dirTree.expand
|
79
|
+
addTimeout(100, self, ID_TIMER)
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
if __FILE__ == $0
|
84
|
+
# Make application
|
85
|
+
application = Application.new
|
86
|
+
|
87
|
+
# Create app
|
88
|
+
application.create()
|
89
|
+
|
90
|
+
# Run
|
91
|
+
application.run()
|
92
|
+
end
|
data/tests/stress2.rb
ADDED
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require 'thread'
|
3
|
+
require 'fox16'
|
4
|
+
|
5
|
+
include Fox
|
6
|
+
|
7
|
+
class TC_stress2 < Test::Unit::TestCase
|
8
|
+
def set_up_main_window(theApp)
|
9
|
+
theMainWindow = FXMainWindow.new(theApp, "TC_stress2", nil, nil, DECOR_ALL, 0, 0, 200, 100)
|
10
|
+
@countLabel = FXLabel.new(theMainWindow, "0", nil, LAYOUT_FILL_X|LAYOUT_FILL_Y)
|
11
|
+
theMainWindow
|
12
|
+
end
|
13
|
+
|
14
|
+
def on_timeout(sender, sel, ptr)
|
15
|
+
safeToQuit = false
|
16
|
+
$lock.synchronize {
|
17
|
+
if $count > 1000000
|
18
|
+
# if it were going to crash, it probably would have done
|
19
|
+
# so by now, so it's safe to quit.
|
20
|
+
safeToQuit = true
|
21
|
+
end
|
22
|
+
@countLabel.setText($count.to_s)
|
23
|
+
}
|
24
|
+
if safeToQuit
|
25
|
+
@theApp.handle(@theMainWindow, MKUINT(FXApp::ID_QUIT, SEL_COMMAND), nil)
|
26
|
+
else
|
27
|
+
@theApp.addTimeout(100, method(:on_timeout))
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
def test_run
|
32
|
+
# Set up the counter thread
|
33
|
+
$count = 0
|
34
|
+
$lock = Mutex.new
|
35
|
+
w = Thread.new do
|
36
|
+
loop do
|
37
|
+
$lock.synchronize { $count += 1 }
|
38
|
+
sleep 0
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
# Start the app
|
43
|
+
@theApp = FXApp.new("TC_stress2", "FXRuby")
|
44
|
+
@theMainWindow = set_up_main_window(@theApp)
|
45
|
+
@theApp.create
|
46
|
+
@theMainWindow.show(PLACEMENT_SCREEN)
|
47
|
+
@theApp.addTimeout(100, method(:on_timeout))
|
48
|
+
@theApp.run
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|