fxruby 1.6.19 → 1.6.20
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +10 -0
- data/Manifest.txt +922 -0
- data/{LICENSE → README.txt} +27 -1
- data/Rakefile +191 -0
- data/TODO +47 -0
- data/doap.rdf +87 -0
- data/examples/icons/bluebullet14x14.gif +0 -0
- data/examples/icons/transpbullet14x14.gif +0 -0
- data/ext/fox16/FXRbApp.cpp +2 -2
- data/ext/fox16/FXRbDataTarget.cpp +2 -2
- data/ext/fox16/FXRbGLViewer.cpp +2 -2
- data/ext/fox16/FXRuby.cpp +7 -3
- data/ext/fox16/extconf.rb +18 -85
- data/ext/fox16/impl.cpp +0 -0
- data/ext/fox16/include/FXMemoryBuffer.h +2 -2
- data/ext/fox16/include/FXRb4Splitter.h +2 -2
- data/ext/fox16/include/FXRb7Segment.h +2 -2
- data/ext/fox16/include/FXRbAccelTable.h +2 -2
- data/ext/fox16/include/FXRbApp.h +2 -2
- data/ext/fox16/include/FXRbAppVirtuals.h +0 -0
- data/ext/fox16/include/FXRbArrowButton.h +2 -2
- data/ext/fox16/include/FXRbBMPIcon.h +2 -2
- data/ext/fox16/include/FXRbBMPImage.h +2 -2
- data/ext/fox16/include/FXRbBitmap.h +2 -2
- data/ext/fox16/include/FXRbBitmapFrame.h +1 -1
- data/ext/fox16/include/FXRbBitmapView.h +2 -2
- data/ext/fox16/include/FXRbBitmapVirtuals.h +0 -0
- data/ext/fox16/include/FXRbButton.h +2 -2
- data/ext/fox16/include/FXRbCURCursor.h +2 -2
- data/ext/fox16/include/FXRbCanvas.h +2 -2
- data/ext/fox16/include/FXRbCheckButton.h +2 -2
- data/ext/fox16/include/FXRbChoiceBox.h +1 -1
- data/ext/fox16/include/FXRbColorBar.h +2 -2
- data/ext/fox16/include/FXRbColorDialog.h +2 -2
- data/ext/fox16/include/FXRbColorList.h +2 -2
- data/ext/fox16/include/FXRbColorRing.h +2 -2
- data/ext/fox16/include/FXRbColorSelector.h +2 -2
- data/ext/fox16/include/FXRbColorWell.h +2 -2
- data/ext/fox16/include/FXRbColorWheel.h +2 -2
- data/ext/fox16/include/FXRbComboBox.h +2 -2
- data/ext/fox16/include/FXRbCommon.h +2 -2
- data/ext/fox16/include/FXRbComposite.h +2 -2
- data/ext/fox16/include/FXRbCursor.h +2 -2
- data/ext/fox16/include/FXRbCursorVirtuals.h +0 -0
- data/ext/fox16/include/FXRbDC.h +2 -2
- data/ext/fox16/include/FXRbDCPrint.h +2 -2
- data/ext/fox16/include/FXRbDCVirtuals.h +0 -0
- data/ext/fox16/include/FXRbDCWindow.h +2 -2
- data/ext/fox16/include/FXRbDataTarget.h +2 -2
- data/ext/fox16/include/FXRbDebugTarget.h +2 -2
- data/ext/fox16/include/FXRbDelegator.h +2 -2
- data/ext/fox16/include/FXRbDial.h +2 -2
- data/ext/fox16/include/FXRbDialogBox.h +2 -2
- data/ext/fox16/include/FXRbDialogBoxVirtuals.h +0 -0
- data/ext/fox16/include/FXRbDict.h +2 -2
- data/ext/fox16/include/FXRbDirBox.h +2 -2
- data/ext/fox16/include/FXRbDirDialog.h +2 -2
- data/ext/fox16/include/FXRbDirList.h +2 -2
- data/ext/fox16/include/FXRbDirSelector.h +2 -2
- data/ext/fox16/include/FXRbDockBar.h +1 -1
- data/ext/fox16/include/FXRbDockBarVirtuals.h +0 -0
- data/ext/fox16/include/FXRbDockHandler.h +2 -2
- data/ext/fox16/include/FXRbDockSite.h +0 -0
- data/ext/fox16/include/FXRbDockSiteVirtuals.h +0 -0
- data/ext/fox16/include/FXRbDockTitle.h +2 -2
- data/ext/fox16/include/FXRbDocument.h +2 -2
- data/ext/fox16/include/FXRbDragCorner.h +2 -2
- data/ext/fox16/include/FXRbDrawable.h +2 -2
- data/ext/fox16/include/FXRbDrawableVirtuals.h +0 -0
- data/ext/fox16/include/FXRbDriveBox.h +2 -2
- data/ext/fox16/include/FXRbFileDialog.h +2 -2
- data/ext/fox16/include/FXRbFileDict.h +2 -2
- data/ext/fox16/include/FXRbFileDictVirtuals.h +0 -0
- data/ext/fox16/include/FXRbFileList.h +2 -2
- data/ext/fox16/include/FXRbFileSelector.h +2 -2
- data/ext/fox16/include/FXRbFoldingItemVirtuals.h +0 -0
- data/ext/fox16/include/FXRbFoldingList.h +2 -2
- data/ext/fox16/include/FXRbFoldingListVirtuals.h +0 -0
- data/ext/fox16/include/FXRbFont.h +2 -2
- data/ext/fox16/include/FXRbFontDialog.h +2 -2
- data/ext/fox16/include/FXRbFontSelector.h +2 -2
- data/ext/fox16/include/FXRbFontVirtuals.h +0 -0
- data/ext/fox16/include/FXRbFrame.h +2 -2
- data/ext/fox16/include/FXRbGIFCursor.h +2 -2
- data/ext/fox16/include/FXRbGIFIcon.h +2 -2
- data/ext/fox16/include/FXRbGIFImage.h +2 -2
- data/ext/fox16/include/FXRbGLCanvas.h +2 -2
- data/ext/fox16/include/FXRbGLCanvasVirtuals.h +0 -0
- data/ext/fox16/include/FXRbGLContext.h +2 -2
- data/ext/fox16/include/FXRbGLObject.h +2 -2
- data/ext/fox16/include/FXRbGLObjectVirtuals.h +0 -0
- data/ext/fox16/include/FXRbGLShape.h +2 -2
- data/ext/fox16/include/FXRbGLShapeVirtuals.h +0 -0
- data/ext/fox16/include/FXRbGLViewer.h +2 -2
- data/ext/fox16/include/FXRbGLViewerVirtuals.h +0 -0
- data/ext/fox16/include/FXRbGLVisual.h +2 -2
- data/ext/fox16/include/FXRbGradientBar.h +1 -1
- data/ext/fox16/include/FXRbGroupBox.h +2 -2
- data/ext/fox16/include/FXRbHeader.h +2 -2
- data/ext/fox16/include/FXRbHeaderItemVirtuals.h +0 -0
- data/ext/fox16/include/FXRbHorizontalFrame.h +2 -2
- data/ext/fox16/include/FXRbICOIcon.h +2 -2
- data/ext/fox16/include/FXRbICOImage.h +2 -2
- data/ext/fox16/include/FXRbIcon.h +2 -2
- data/ext/fox16/include/FXRbIconItemVirtuals.h +0 -0
- data/ext/fox16/include/FXRbIconList.h +2 -2
- data/ext/fox16/include/FXRbIconListVirtuals.h +0 -0
- data/ext/fox16/include/FXRbIconSource.h +2 -2
- data/ext/fox16/include/FXRbIconSourceVirtuals.h +0 -0
- data/ext/fox16/include/FXRbId.h +2 -2
- data/ext/fox16/include/FXRbIdVirtuals.h +0 -0
- data/ext/fox16/include/FXRbImage.h +2 -2
- data/ext/fox16/include/FXRbImageFrame.h +1 -1
- data/ext/fox16/include/FXRbImageView.h +2 -2
- data/ext/fox16/include/FXRbImageVirtuals.h +0 -0
- data/ext/fox16/include/FXRbInputDialog.h +2 -2
- data/ext/fox16/include/FXRbJPGIcon.h +2 -2
- data/ext/fox16/include/FXRbJPGImage.h +2 -2
- data/ext/fox16/include/FXRbKnob.h +2 -2
- data/ext/fox16/include/FXRbLabel.h +2 -2
- data/ext/fox16/include/FXRbList.h +2 -2
- data/ext/fox16/include/FXRbListBox.h +2 -2
- data/ext/fox16/include/FXRbListBoxVirtuals.h +0 -0
- data/ext/fox16/include/FXRbListItemVirtuals.h +0 -0
- data/ext/fox16/include/FXRbListVirtuals.h +0 -0
- data/ext/fox16/include/FXRbMDIButton.h +2 -2
- data/ext/fox16/include/FXRbMDIChild.h +2 -2
- data/ext/fox16/include/FXRbMDIChildVirtuals.h +0 -0
- data/ext/fox16/include/FXRbMDIClient.h +2 -2
- data/ext/fox16/include/FXRbMDIClientVirtuals.h +0 -0
- data/ext/fox16/include/FXRbMainWindow.h +2 -2
- data/ext/fox16/include/FXRbMatrix.h +2 -2
- data/ext/fox16/include/FXRbMenuBar.h +1 -1
- data/ext/fox16/include/FXRbMenuButton.h +2 -2
- data/ext/fox16/include/FXRbMenuCaption.h +2 -2
- data/ext/fox16/include/FXRbMenuCascade.h +2 -2
- data/ext/fox16/include/FXRbMenuCheck.h +1 -1
- data/ext/fox16/include/FXRbMenuCommand.h +2 -2
- data/ext/fox16/include/FXRbMenuPane.h +2 -2
- data/ext/fox16/include/FXRbMenuRadio.h +1 -1
- data/ext/fox16/include/FXRbMenuSeparator.h +2 -2
- data/ext/fox16/include/FXRbMenuTitle.h +2 -2
- data/ext/fox16/include/FXRbMessageBox.h +2 -2
- data/ext/fox16/include/FXRbObject.h +2 -2
- data/ext/fox16/include/FXRbObjectVirtuals.h +0 -0
- data/ext/fox16/include/FXRbOptionMenu.h +2 -2
- data/ext/fox16/include/FXRbPCXIcon.h +2 -2
- data/ext/fox16/include/FXRbPCXImage.h +2 -2
- data/ext/fox16/include/FXRbPNGIcon.h +2 -2
- data/ext/fox16/include/FXRbPNGImage.h +2 -2
- data/ext/fox16/include/FXRbPPMIcon.h +2 -2
- data/ext/fox16/include/FXRbPPMImage.h +2 -2
- data/ext/fox16/include/FXRbPacker.h +2 -2
- data/ext/fox16/include/FXRbPicker.h +2 -2
- data/ext/fox16/include/FXRbPopup.h +2 -2
- data/ext/fox16/include/FXRbPopupVirtuals.h +0 -0
- data/ext/fox16/include/FXRbPrintDialog.h +2 -2
- data/ext/fox16/include/FXRbProgressBar.h +2 -2
- data/ext/fox16/include/FXRbProgressDialog.h +2 -2
- data/ext/fox16/include/FXRbRGBIcon.h +2 -2
- data/ext/fox16/include/FXRbRGBImage.h +2 -2
- data/ext/fox16/include/FXRbRadioButton.h +2 -2
- data/ext/fox16/include/FXRbRealSlider.h +2 -2
- data/ext/fox16/include/FXRbRealSpinner.h +2 -2
- data/ext/fox16/include/FXRbRealSpinnerVirtuals.h +0 -0
- data/ext/fox16/include/FXRbRecentFiles.h +2 -2
- data/ext/fox16/include/FXRbRegistry.h +2 -2
- data/ext/fox16/include/FXRbReplaceDialog.h +2 -2
- data/ext/fox16/include/FXRbRootWindow.h +2 -2
- data/ext/fox16/include/FXRbRuler.h +1 -1
- data/ext/fox16/include/FXRbRulerView.h +1 -1
- data/ext/fox16/include/FXRbScintilla.h +2 -2
- data/ext/fox16/include/FXRbScrollArea.h +2 -2
- data/ext/fox16/include/FXRbScrollAreaVirtuals.h +0 -0
- data/ext/fox16/include/FXRbScrollBar.h +1 -1
- data/ext/fox16/include/FXRbScrollPane.h +2 -2
- data/ext/fox16/include/FXRbScrollWindow.h +2 -2
- data/ext/fox16/include/FXRbSearchDialog.h +2 -2
- data/ext/fox16/include/FXRbSeparator.h +2 -2
- data/ext/fox16/include/FXRbSettings.h +2 -2
- data/ext/fox16/include/FXRbShell.h +2 -2
- data/ext/fox16/include/FXRbShutter.h +2 -2
- data/ext/fox16/include/FXRbShutterVirtuals.h +0 -0
- data/ext/fox16/include/FXRbSlider.h +2 -2
- data/ext/fox16/include/FXRbSpinner.h +2 -2
- data/ext/fox16/include/FXRbSpinnerVirtuals.h +0 -0
- data/ext/fox16/include/FXRbSplashWindow.h +2 -2
- data/ext/fox16/include/FXRbSplitter.h +2 -2
- data/ext/fox16/include/FXRbSpring.h +2 -2
- data/ext/fox16/include/FXRbStatusBar.h +1 -1
- data/ext/fox16/include/FXRbStatusLine.h +1 -1
- data/ext/fox16/include/FXRbStream.h +2 -2
- data/ext/fox16/include/FXRbStreamVirtuals.h +0 -0
- data/ext/fox16/include/FXRbStringDict.h +2 -2
- data/ext/fox16/include/FXRbSwitcher.h +2 -2
- data/ext/fox16/include/FXRbTGAIcon.h +2 -2
- data/ext/fox16/include/FXRbTGAImage.h +2 -2
- data/ext/fox16/include/FXRbTIFIcon.h +2 -2
- data/ext/fox16/include/FXRbTIFImage.h +2 -2
- data/ext/fox16/include/FXRbTabBar.h +2 -2
- data/ext/fox16/include/FXRbTabBarVirtuals.h +0 -0
- data/ext/fox16/include/FXRbTabBook.h +2 -2
- data/ext/fox16/include/FXRbTabItem.h +2 -2
- data/ext/fox16/include/FXRbTable.h +2 -2
- data/ext/fox16/include/FXRbTableItemVirtuals.h +0 -0
- data/ext/fox16/include/FXRbTableVirtuals.h +0 -0
- data/ext/fox16/include/FXRbText.h +2 -2
- data/ext/fox16/include/FXRbTextField.h +2 -2
- data/ext/fox16/include/FXRbTextVirtuals.h +0 -0
- data/ext/fox16/include/FXRbToggleButton.h +2 -2
- data/ext/fox16/include/FXRbToolBar.h +1 -1
- data/ext/fox16/include/FXRbToolBarGrip.h +1 -1
- data/ext/fox16/include/FXRbToolBarShell.h +1 -1
- data/ext/fox16/include/FXRbToolBarTab.h +1 -1
- data/ext/fox16/include/FXRbToolTip.h +1 -1
- data/ext/fox16/include/FXRbTopWindow.h +2 -2
- data/ext/fox16/include/FXRbTopWindowVirtuals.h +0 -0
- data/ext/fox16/include/FXRbTranslator.h +2 -2
- data/ext/fox16/include/FXRbTranslatorVirtuals.h +0 -0
- data/ext/fox16/include/FXRbTreeItemVirtuals.h +0 -0
- data/ext/fox16/include/FXRbTreeList.h +2 -2
- data/ext/fox16/include/FXRbTreeListBox.h +2 -2
- data/ext/fox16/include/FXRbTreeListBoxVirtuals.h +0 -0
- data/ext/fox16/include/FXRbTreeListVirtuals.h +0 -0
- data/ext/fox16/include/FXRbTriStateButton.h +2 -2
- data/ext/fox16/include/FXRbVerticalFrame.h +2 -2
- data/ext/fox16/include/FXRbVisual.h +2 -2
- data/ext/fox16/include/FXRbWindow.h +2 -2
- data/ext/fox16/include/FXRbWindowVirtuals.h +0 -0
- data/ext/fox16/include/FXRbWizard.h +1 -1
- data/ext/fox16/include/FXRbXBMIcon.h +2 -2
- data/ext/fox16/include/FXRbXBMImage.h +2 -2
- data/ext/fox16/include/FXRbXPMIcon.h +2 -2
- data/ext/fox16/include/FXRbXPMImage.h +2 -2
- data/ext/fox16/include/FXRuby.h +2 -2
- data/ext/fox16/include/impl.h +2 -2
- data/ext/fox16/make_impl.rb +121 -0
- data/ext/fox16/markfuncs.cpp +0 -0
- data/lib/fox16.rb +8 -0
- data/lib/fox16/bitmapview.rb +223 -0
- data/lib/fox16/scintilla.rb +103 -3
- data/lib/fox16/version.rb +1 -5
- data/rdoc-sources/Makefile +23 -0
- data/scripts/build-fox.rb +31 -0
- data/scripts/generate_kwargs_lib.rb +414 -0
- data/scripts/iface.rb +391 -0
- data/swig-interfaces/FX4Splitter.i +149 -0
- data/swig-interfaces/FX7Segment.i +141 -0
- data/swig-interfaces/FXAccelTable.i +100 -0
- data/swig-interfaces/FXApp.i +735 -0
- data/swig-interfaces/FXArrowButton.i +136 -0
- data/swig-interfaces/FXBMPIcon.i +88 -0
- data/swig-interfaces/FXBMPImage.i +54 -0
- data/swig-interfaces/FXBitmap.i +90 -0
- data/swig-interfaces/FXBitmapFrame.i +72 -0
- data/swig-interfaces/FXBitmapView.i +94 -0
- data/swig-interfaces/FXButton.i +130 -0
- data/swig-interfaces/FXCURCursor.i +49 -0
- data/swig-interfaces/FXCanvas.i +61 -0
- data/swig-interfaces/FXCheckButton.i +108 -0
- data/swig-interfaces/FXChoiceBox.i +91 -0
- data/swig-interfaces/FXColorBar.i +110 -0
- data/swig-interfaces/FXColorDialog.i +79 -0
- data/swig-interfaces/FXColorList.i +99 -0
- data/swig-interfaces/FXColorRing.i +148 -0
- data/swig-interfaces/FXColorSelector.i +157 -0
- data/swig-interfaces/FXColorWell.i +133 -0
- data/swig-interfaces/FXColorWheel.i +108 -0
- data/swig-interfaces/FXComboBox.i +280 -0
- data/swig-interfaces/FXComposeContext.i +66 -0
- data/swig-interfaces/FXComposite.i +103 -0
- data/swig-interfaces/FXCursor.i +120 -0
- data/swig-interfaces/FXDC.i +280 -0
- data/swig-interfaces/FXDCPrint.i +141 -0
- data/swig-interfaces/FXDCWindow.i +75 -0
- data/swig-interfaces/FXDataTarget.i +115 -0
- data/swig-interfaces/FXDebugTarget.i +60 -0
- data/swig-interfaces/FXDelegator.i +56 -0
- data/swig-interfaces/FXDial.i +168 -0
- data/swig-interfaces/FXDialogBox.i +131 -0
- data/swig-interfaces/FXDict.i +200 -0
- data/swig-interfaces/FXDirBox.i +68 -0
- data/swig-interfaces/FXDirDialog.i +97 -0
- data/swig-interfaces/FXDirList.i +274 -0
- data/swig-interfaces/FXDirSelector.i +142 -0
- data/swig-interfaces/FXDockBar.i +180 -0
- data/swig-interfaces/FXDockHandler.i +94 -0
- data/swig-interfaces/FXDockSite.i +91 -0
- data/swig-interfaces/FXDockTitle.i +91 -0
- data/swig-interfaces/FXDocument.i +70 -0
- data/swig-interfaces/FXDragCorner.i +72 -0
- data/swig-interfaces/FXDrawable.i +90 -0
- data/swig-interfaces/FXDriveBox.i +63 -0
- data/swig-interfaces/FXExtentd.i +131 -0
- data/swig-interfaces/FXExtentf.i +131 -0
- data/swig-interfaces/FXFileDialog.i +268 -0
- data/swig-interfaces/FXFileDict.i +121 -0
- data/swig-interfaces/FXFileList.i +345 -0
- data/swig-interfaces/FXFileSelector.i +347 -0
- data/swig-interfaces/FXFileStream.i +49 -0
- data/swig-interfaces/FXFoldingList.i +556 -0
- data/swig-interfaces/FXFont.i +333 -0
- data/swig-interfaces/FXFontDialog.i +63 -0
- data/swig-interfaces/FXFontSelector.i +127 -0
- data/swig-interfaces/FXFrame.i +245 -0
- data/swig-interfaces/FXGIFCursor.i +86 -0
- data/swig-interfaces/FXGIFIcon.i +54 -0
- data/swig-interfaces/FXGIFImage.i +54 -0
- data/swig-interfaces/FXGLCanvas.i +90 -0
- data/swig-interfaces/FXGLContext.i +85 -0
- data/swig-interfaces/FXGLObject.i +70 -0
- data/swig-interfaces/FXGLShape.i +152 -0
- data/swig-interfaces/FXGLViewer.i +691 -0
- data/swig-interfaces/FXGLVisual.i +136 -0
- data/swig-interfaces/FXGradientBar.i +310 -0
- data/swig-interfaces/FXGroupBox.i +94 -0
- data/swig-interfaces/FXHeader.i +432 -0
- data/swig-interfaces/FXHorizontalFrame.i +60 -0
- data/swig-interfaces/FXICOIcon.i +92 -0
- data/swig-interfaces/FXICOImage.i +54 -0
- data/swig-interfaces/FXIcon.i +128 -0
- data/swig-interfaces/FXIconDict.i +90 -0
- data/swig-interfaces/FXIconList.i +596 -0
- data/swig-interfaces/FXIconSource.i +55 -0
- data/swig-interfaces/FXId.i +103 -0
- data/swig-interfaces/FXImage.i +197 -0
- data/swig-interfaces/FXImageFrame.i +66 -0
- data/swig-interfaces/FXImageView.i +88 -0
- data/swig-interfaces/FXInputDialog.i +180 -0
- data/swig-interfaces/FXJPGIcon.i +101 -0
- data/swig-interfaces/FXJPGImage.i +67 -0
- data/swig-interfaces/FXKnob.i +182 -0
- data/swig-interfaces/FXLabel.i +199 -0
- data/swig-interfaces/FXList.i +476 -0
- data/swig-interfaces/FXListBox.i +234 -0
- data/swig-interfaces/FXMDIButton.i +173 -0
- data/swig-interfaces/FXMDIChild.i +242 -0
- data/swig-interfaces/FXMDIClient.i +149 -0
- data/swig-interfaces/FXMainWindow.i +53 -0
- data/swig-interfaces/FXMat3d.i +102 -0
- data/swig-interfaces/FXMat3f.i +102 -0
- data/swig-interfaces/FXMat4d.i +122 -0
- data/swig-interfaces/FXMat4f.i +138 -0
- data/swig-interfaces/FXMatrix.i +101 -0
- data/swig-interfaces/FXMemoryBuffer.i +64 -0
- data/swig-interfaces/FXMemoryStream.i +73 -0
- data/swig-interfaces/FXMenuBar.i +67 -0
- data/swig-interfaces/FXMenuButton.i +152 -0
- data/swig-interfaces/FXMenuCaption.i +176 -0
- data/swig-interfaces/FXMenuCascade.i +76 -0
- data/swig-interfaces/FXMenuCheck.i +90 -0
- data/swig-interfaces/FXMenuCommand.i +69 -0
- data/swig-interfaces/FXMenuPane.i +60 -0
- data/swig-interfaces/FXMenuRadio.i +93 -0
- data/swig-interfaces/FXMenuSeparator.i +65 -0
- data/swig-interfaces/FXMenuTitle.i +74 -0
- data/swig-interfaces/FXMessageBox.i +128 -0
- data/swig-interfaces/FXObject.i +169 -0
- data/swig-interfaces/FXOptionMenu.i +140 -0
- data/swig-interfaces/FXPCXIcon.i +91 -0
- data/swig-interfaces/FXPCXImage.i +55 -0
- data/swig-interfaces/FXPNGIcon.i +95 -0
- data/swig-interfaces/FXPNGImage.i +59 -0
- data/swig-interfaces/FXPPMIcon.i +91 -0
- data/swig-interfaces/FXPPMImage.i +55 -0
- data/swig-interfaces/FXPacker.i +255 -0
- data/swig-interfaces/FXPicker.i +54 -0
- data/swig-interfaces/FXPoint.i +52 -0
- data/swig-interfaces/FXPopup.i +162 -0
- data/swig-interfaces/FXPrintDialog.i +154 -0
- data/swig-interfaces/FXProgressBar.i +133 -0
- data/swig-interfaces/FXProgressDialog.i +105 -0
- data/swig-interfaces/FXQuatd.i +128 -0
- data/swig-interfaces/FXQuatf.i +122 -0
- data/swig-interfaces/FXRGBIcon.i +90 -0
- data/swig-interfaces/FXRGBImage.i +56 -0
- data/swig-interfaces/FXRadioButton.i +117 -0
- data/swig-interfaces/FXRanged.i +163 -0
- data/swig-interfaces/FXRangef.i +172 -0
- data/swig-interfaces/FXRealSlider.i +166 -0
- data/swig-interfaces/FXRealSpinner.i +215 -0
- data/swig-interfaces/FXRecentFiles.i +119 -0
- data/swig-interfaces/FXRectangle.i +104 -0
- data/swig-interfaces/FXRegion.i +88 -0
- data/swig-interfaces/FXRegistry.i +96 -0
- data/swig-interfaces/FXReplaceDialog.i +131 -0
- data/swig-interfaces/FXRootWindow.i +50 -0
- data/swig-interfaces/FXRuler.i +245 -0
- data/swig-interfaces/FXRulerView.i +233 -0
- data/swig-interfaces/FXScintilla.i +192 -0
- data/swig-interfaces/FXScrollArea.i +211 -0
- data/swig-interfaces/FXScrollBar.i +178 -0
- data/swig-interfaces/FXScrollPane.i +83 -0
- data/swig-interfaces/FXScrollWindow.i +67 -0
- data/swig-interfaces/FXSearchDialog.i +48 -0
- data/swig-interfaces/FXSeparator.i +138 -0
- data/swig-interfaces/FXSettings.i +160 -0
- data/swig-interfaces/FXShell.i +91 -0
- data/swig-interfaces/FXShutter.i +140 -0
- data/swig-interfaces/FXSize.i +71 -0
- data/swig-interfaces/FXSlider.i +181 -0
- data/swig-interfaces/FXSphered.i +126 -0
- data/swig-interfaces/FXSpheref.i +126 -0
- data/swig-interfaces/FXSpinner.i +212 -0
- data/swig-interfaces/FXSplashWindow.i +82 -0
- data/swig-interfaces/FXSplitter.i +123 -0
- data/swig-interfaces/FXSpring.i +79 -0
- data/swig-interfaces/FXStatusBar.i +68 -0
- data/swig-interfaces/FXStatusLine.i +100 -0
- data/swig-interfaces/FXStream.i +150 -0
- data/swig-interfaces/FXStringDict.i +61 -0
- data/swig-interfaces/FXSwitcher.i +110 -0
- data/swig-interfaces/FXTGAIcon.i +85 -0
- data/swig-interfaces/FXTGAImage.i +56 -0
- data/swig-interfaces/FXTIFIcon.i +73 -0
- data/swig-interfaces/FXTIFImage.i +93 -0
- data/swig-interfaces/FXTabBar.i +121 -0
- data/swig-interfaces/FXTabBook.i +70 -0
- data/swig-interfaces/FXTabItem.i +82 -0
- data/swig-interfaces/FXTable.i +861 -0
- data/swig-interfaces/FXText.i +763 -0
- data/swig-interfaces/FXTextField.i +290 -0
- data/swig-interfaces/FXToggleButton.i +136 -0
- data/swig-interfaces/FXToolBar.i +75 -0
- data/swig-interfaces/FXToolBarGrip.i +82 -0
- data/swig-interfaces/FXToolBarShell.i +98 -0
- data/swig-interfaces/FXToolBarTab.i +114 -0
- data/swig-interfaces/FXToolTip.i +93 -0
- data/swig-interfaces/FXTopWindow.i +263 -0
- data/swig-interfaces/FXTranslator.i +55 -0
- data/swig-interfaces/FXTreeList.i +549 -0
- data/swig-interfaces/FXTreeListBox.i +317 -0
- data/swig-interfaces/FXTriStateButton.i +77 -0
- data/swig-interfaces/FXURL.i +35 -0
- data/swig-interfaces/FXVec2d.i +87 -0
- data/swig-interfaces/FXVec2f.i +87 -0
- data/swig-interfaces/FXVec3d.i +111 -0
- data/swig-interfaces/FXVec3f.i +109 -0
- data/swig-interfaces/FXVec4d.i +115 -0
- data/swig-interfaces/FXVec4f.i +115 -0
- data/swig-interfaces/FXVerticalFrame.i +69 -0
- data/swig-interfaces/FXVisual.i +162 -0
- data/swig-interfaces/FXWindow.i +851 -0
- data/swig-interfaces/FXWizard.i +125 -0
- data/swig-interfaces/FXXBMIcon.i +56 -0
- data/swig-interfaces/FXXBMImage.i +118 -0
- data/swig-interfaces/FXXPMIcon.i +122 -0
- data/swig-interfaces/FXXPMImage.i +56 -0
- data/swig-interfaces/README +17 -0
- data/swig-interfaces/common.i +48 -0
- data/swig-interfaces/core.i +85 -0
- data/swig-interfaces/dcmodule.i +36 -0
- data/swig-interfaces/dialogs.i +49 -0
- data/swig-interfaces/exceptions.i +249 -0
- data/swig-interfaces/framesmodule.i +54 -0
- data/swig-interfaces/freefuncs.i +93 -0
- data/swig-interfaces/fx3d.i +60 -0
- data/swig-interfaces/fxdefs.i +419 -0
- data/swig-interfaces/handlers.i +615 -0
- data/swig-interfaces/iconlistmodule.i +37 -0
- data/swig-interfaces/icons.i +48 -0
- data/swig-interfaces/ignore-message-handlers.rb +16 -0
- data/swig-interfaces/image.i +49 -0
- data/swig-interfaces/labelmodule.i +47 -0
- data/swig-interfaces/layout.i +47 -0
- data/swig-interfaces/listmodule.i +37 -0
- data/swig-interfaces/macros.i +1326 -0
- data/swig-interfaces/markfuncs.i +210 -0
- data/swig-interfaces/mdi.i +38 -0
- data/swig-interfaces/menumodule.i +44 -0
- data/swig-interfaces/ruby-typemaps.i +772 -0
- data/swig-interfaces/scintilla.i +57 -0
- data/swig-interfaces/table-module.i +36 -0
- data/swig-interfaces/text-module.i +36 -0
- data/swig-interfaces/treelist-module.i +37 -0
- data/swig-interfaces/ui.i +63 -0
- data/{tests → test}/README +0 -0
- data/{tests → test}/TC_FXAccelTable.rb +0 -0
- data/{tests → test}/TC_FXApp.rb +0 -0
- data/{tests → test}/TC_FXArc.rb +0 -0
- data/{tests → test}/TC_FXBMPIcon.rb +0 -0
- data/{tests → test}/TC_FXBMPImage.rb +0 -0
- data/{tests → test}/TC_FXButton.rb +0 -0
- data/{tests → test}/TC_FXCheckButton.rb +0 -0
- data/{tests → test}/TC_FXComboBox.rb +0 -0
- data/{tests → test}/TC_FXDC.rb +0 -0
- data/{tests → test}/TC_FXDCPrint.rb +0 -0
- data/{tests → test}/TC_FXDCWindow.rb +0 -0
- data/{tests → test}/TC_FXDataTarget.rb +0 -0
- data/{tests → test}/TC_FXDialogBox.rb +0 -0
- data/{tests → test}/TC_FXDirList.rb +0 -0
- data/{tests → test}/TC_FXExtentd.rb +0 -0
- data/{tests → test}/TC_FXExtentf.rb +0 -0
- data/{tests → test}/TC_FXFileAssoc.rb +0 -0
- data/{tests → test}/TC_FXFileStream.rb +0 -0
- data/{tests → test}/TC_FXFoldingList.rb +0 -0
- data/{tests → test}/TC_FXFont.rb +0 -0
- data/{tests → test}/TC_FXFontDesc.rb +0 -0
- data/{tests → test}/TC_FXGLGroup.rb +0 -0
- data/{tests → test}/TC_FXGLShape.rb +0 -0
- data/{tests → test}/TC_FXGLViewer.rb +0 -0
- data/{tests → test}/TC_FXGradientBar.rb +0 -0
- data/{tests → test}/TC_FXHeader.rb +0 -0
- data/{tests → test}/TC_FXHiliteStyle.rb +0 -0
- data/{tests → test}/TC_FXIconDict.rb +0 -0
- data/{tests → test}/TC_FXIconList.rb +0 -0
- data/{tests → test}/TC_FXId.rb +0 -0
- data/{tests → test}/TC_FXImage.rb +0 -0
- data/{tests → test}/TC_FXLight.rb +0 -0
- data/{tests → test}/TC_FXList.rb +0 -0
- data/{tests → test}/TC_FXListBox.rb +0 -0
- data/{tests → test}/TC_FXMainWindow.rb +0 -0
- data/{tests → test}/TC_FXMat4f.rb +0 -0
- data/{tests → test}/TC_FXMaterial.rb +0 -0
- data/{tests → test}/TC_FXMemoryStream.rb +0 -0
- data/{tests → test}/TC_FXMenuCheck.rb +0 -0
- data/{tests → test}/TC_FXMenuCommand.rb +0 -0
- data/{tests → test}/TC_FXMenuRadio.rb +0 -0
- data/{tests → test}/TC_FXMessageBox.rb +0 -0
- data/{tests → test}/TC_FXPoint.rb +0 -0
- data/{tests → test}/TC_FXQuatf.rb +0 -0
- data/{tests → test}/TC_FXRadioButton.rb +0 -0
- data/{tests → test}/TC_FXRanged.rb +0 -0
- data/{tests → test}/TC_FXRangef.rb +0 -0
- data/{tests → test}/TC_FXRectangle.rb +0 -0
- data/{tests → test}/TC_FXRegion.rb +0 -0
- data/{tests → test}/TC_FXRegistry.rb +0 -0
- data/{tests → test}/TC_FXScrollArea.rb +0 -0
- data/{tests → test}/TC_FXScrollWindow.rb +0 -0
- data/{tests → test}/TC_FXSegment.rb +0 -0
- data/{tests → test}/TC_FXSettings.rb +0 -0
- data/{tests → test}/TC_FXShell.rb +0 -0
- data/{tests → test}/TC_FXSize.rb +0 -0
- data/{tests → test}/TC_FXStream.rb +0 -0
- data/{tests → test}/TC_FXTable.rb +0 -0
- data/{tests → test}/TC_FXTableItem.rb +0 -0
- data/{tests → test}/TC_FXText.rb +0 -0
- data/{tests → test}/TC_FXTopWindow.rb +0 -0
- data/{tests → test}/TC_FXTreeList.rb +0 -0
- data/{tests → test}/TC_FXTreeListBox.rb +0 -0
- data/{tests → test}/TC_FXUndoList.rb +0 -0
- data/{tests → test}/TC_FXVec2d.rb +0 -0
- data/{tests → test}/TC_FXVec2f.rb +0 -0
- data/{tests → test}/TC_FXVec3d.rb +0 -0
- data/{tests → test}/TC_FXVec3f.rb +0 -0
- data/{tests → test}/TC_FXVec4f.rb +0 -0
- data/{tests → test}/TC_FXViewport.rb +0 -0
- data/{tests → test}/TC_FXXBMIcon.rb +0 -0
- data/{tests → test}/TC_FXXBMImage.rb +0 -0
- data/{tests → test}/TC_FXXPMIcon.rb +0 -0
- data/{tests → test}/TC_FXXPMImage.rb +0 -0
- data/{tests → test}/TC_Misc.rb +0 -0
- data/{tests → test}/TC_downcast.rb +0 -0
- data/{tests → test}/TS_All.rb +0 -0
- data/{tests → test}/blankpage.ps +0 -0
- data/{tests → test}/howdypage.ps +0 -0
- data/{tests → test}/stress1.rb +0 -0
- data/{tests → test}/stress2.rb +0 -0
- data/{tests → test}/stress3.rb +0 -0
- data/{tests → test}/testcase.rb +0 -0
- metadata +718 -458
- data/doc/apes02.html +0 -21
- data/doc/apes03.html +0 -39
- data/doc/book.html +0 -3
- data/doc/build.html +0 -132
- data/doc/ch03s02.html +0 -23
- data/doc/ch03s03.html +0 -52
- data/doc/ch03s04.html +0 -36
- data/doc/ch03s05.html +0 -60
- data/doc/ch04s02.html +0 -71
- data/doc/ch04s03.html +0 -37
- data/doc/ch04s04.html +0 -72
- data/doc/ch05s02.html +0 -260
- data/doc/ch05s03.html +0 -127
- data/doc/changes.html +0 -777
- data/doc/clipboardtut.html +0 -67
- data/doc/differences.html +0 -190
- data/doc/dragdroptut.html +0 -263
- data/doc/events.html +0 -36
- data/doc/examples.html +0 -104
- data/doc/gems.html +0 -73
- data/doc/goals.html +0 -41
- 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 +0 -16
- data/doc/infosources.html +0 -33
- data/doc/library.html +0 -30
- data/doc/opengl.html +0 -73
- data/doc/pt01.html +0 -3
- data/doc/pt02.html +0 -3
- data/doc/scintilla.html +0 -36
- data/doc/style.css +0 -247
- data/doc/subversion.html +0 -21
- data/doc/tutorial1.html +0 -90
- data/doc/unicode.html +0 -56
- data/web/community.html +0 -81
- data/web/documentation.html +0 -83
- data/web/downloads.html +0 -85
- data/web/index.html +0 -88
@@ -0,0 +1,149 @@
|
|
1
|
+
/***********************************************************************
|
2
|
+
* FXRuby -- the Ruby language bindings for the FOX GUI toolkit.
|
3
|
+
* Copyright (c) 2001-2009 by Lyle Johnson. All Rights Reserved.
|
4
|
+
*
|
5
|
+
* This library is free software; you can redistribute it and/or
|
6
|
+
* modify it under the terms of the GNU Lesser General Public
|
7
|
+
* License as published by the Free Software Foundation; either
|
8
|
+
* version 2.1 of the License, or (at your option) any later version.
|
9
|
+
*
|
10
|
+
* This library is distributed in the hope that it will be useful,
|
11
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
13
|
+
* Lesser General Public License for more details.
|
14
|
+
*
|
15
|
+
* You should have received a copy of the GNU Lesser General Public
|
16
|
+
* License along with this library; if not, write to the Free Software
|
17
|
+
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
18
|
+
*
|
19
|
+
* For further information please contact the author by e-mail
|
20
|
+
* at "lyle@lylejohnson.name".
|
21
|
+
***********************************************************************/
|
22
|
+
|
23
|
+
class FXMDIChild;
|
24
|
+
|
25
|
+
|
26
|
+
/**
|
27
|
+
* The MDI client window manages a number of MDI child windows in a multiple-document
|
28
|
+
* interface (MDI) application. MDI child windows usually receive messages from the GUI controls
|
29
|
+
* by delegation via the MDI client. This is accomplished by making the MDI client window
|
30
|
+
* the target for most GUI controls. The MDI client filters out messages intented for itself,
|
31
|
+
* and delegates the remaining messages to its currently active MDI child, if any.
|
32
|
+
* If you use the auto-gray or auto-hide feature available in some GUI controls, these
|
33
|
+
* controls can be automatically grayed out or hidden when there is no active MDI child.
|
34
|
+
* When delegating messages via MDI client to MDI child windows of different types, care
|
35
|
+
* should be taken that message ID's do not overlap, so that all message ID's only map to
|
36
|
+
* the intented handlers no matter which MDI child window type is active.
|
37
|
+
* The MDI client sends a SEL_CHANGED message to its target when the active MDI child is
|
38
|
+
* switched, with the void* pointer refering to the new MDI child.
|
39
|
+
* A MDI Window selection dialog can be brought up through the ID_MDI_OVER_X messages;
|
40
|
+
* a menu button connected to the MDI client with the ID_MDI_OVER_X message will be
|
41
|
+
* automatically grayed out if there are less than X MDI child windows.
|
42
|
+
*/
|
43
|
+
class FXMDIClient : public FXComposite {
|
44
|
+
protected:
|
45
|
+
FXMDIChild *active; // Active child
|
46
|
+
FXint cascadex; // Cascade offset X
|
47
|
+
FXint cascadey; // Cascade offset Y
|
48
|
+
protected:
|
49
|
+
FXMDIClient();
|
50
|
+
public:
|
51
|
+
long onCmdActivateNext(FXObject*,FXSelector,void* PTR_IGNORE);
|
52
|
+
long onCmdActivatePrev(FXObject*,FXSelector,void* PTR_IGNORE);
|
53
|
+
long onCmdTileHorizontal(FXObject*,FXSelector,void* PTR_IGNORE);
|
54
|
+
long onCmdTileVertical(FXObject*,FXSelector,void* PTR_IGNORE);
|
55
|
+
long onCmdCascade(FXObject*,FXSelector,void* PTR_IGNORE);
|
56
|
+
long onUpdActivateNext(FXObject*,FXSelector,void* PTR_IGNORE);
|
57
|
+
long onUpdActivatePrev(FXObject*,FXSelector,void* PTR_IGNORE);
|
58
|
+
long onUpdTileVertical(FXObject*,FXSelector,void* PTR_IGNORE);
|
59
|
+
long onUpdTileHorizontal(FXObject*,FXSelector,void* PTR_IGNORE);
|
60
|
+
long onUpdCascade(FXObject*,FXSelector,void* PTR_IGNORE);
|
61
|
+
long onUpdClose(FXObject*,FXSelector,void* PTR_IGNORE);
|
62
|
+
long onUpdMenuClose(FXObject*,FXSelector,void* PTR_IGNORE);
|
63
|
+
long onUpdRestore(FXObject*,FXSelector,void* PTR_IGNORE);
|
64
|
+
long onUpdMenuRestore(FXObject*,FXSelector,void* PTR_IGNORE);
|
65
|
+
long onUpdMinimize(FXObject*,FXSelector,void* PTR_IGNORE);
|
66
|
+
long onUpdMenuMinimize(FXObject*,FXSelector,void* PTR_IGNORE);
|
67
|
+
long onUpdMaximize(FXObject*,FXSelector,void* PTR_IGNORE);
|
68
|
+
long onUpdMenuWindow(FXObject*,FXSelector,void* PTR_IGNORE);
|
69
|
+
long onCmdWindowSelect(FXObject*,FXSelector,void* PTR_IGNORE);
|
70
|
+
long onUpdWindowSelect(FXObject*,FXSelector,void* PTR_IGNORE);
|
71
|
+
long onCmdOthersWindows(FXObject*,FXSelector,void* PTR_IGNORE);
|
72
|
+
long onUpdOthersWindows(FXObject*,FXSelector,void* PTR_IGNORE);
|
73
|
+
long onUpdAnyWindows(FXObject*,FXSelector,void* PTR_IGNORE);
|
74
|
+
public:
|
75
|
+
enum {
|
76
|
+
ID_MDI_ANY=65400,
|
77
|
+
ID_MDI_1, // Select MDI child 1
|
78
|
+
ID_MDI_2,
|
79
|
+
ID_MDI_3,
|
80
|
+
ID_MDI_4,
|
81
|
+
ID_MDI_5,
|
82
|
+
ID_MDI_6,
|
83
|
+
ID_MDI_7,
|
84
|
+
ID_MDI_8,
|
85
|
+
ID_MDI_9,
|
86
|
+
ID_MDI_10,
|
87
|
+
ID_MDI_OVER_1, // Sensitize MDI menu when 1 or more children
|
88
|
+
ID_MDI_OVER_2,
|
89
|
+
ID_MDI_OVER_3,
|
90
|
+
ID_MDI_OVER_4,
|
91
|
+
ID_MDI_OVER_5,
|
92
|
+
ID_MDI_OVER_6,
|
93
|
+
ID_MDI_OVER_7,
|
94
|
+
ID_MDI_OVER_8,
|
95
|
+
ID_MDI_OVER_9,
|
96
|
+
ID_MDI_OVER_10,
|
97
|
+
ID_LAST
|
98
|
+
};
|
99
|
+
public:
|
100
|
+
%extend {
|
101
|
+
/// Construct MDI Client window
|
102
|
+
FXMDIClient(FXComposite* p,FXuint opts=0,FXint x=0,FXint y=0,FXint w=0,FXint h=0){
|
103
|
+
return new FXRbMDIClient(p,opts,x,y,w,h);
|
104
|
+
}
|
105
|
+
}
|
106
|
+
|
107
|
+
/**
|
108
|
+
* Pass message to all MDI windows, stopping when one of
|
109
|
+
* the MDI windows fails to handle the message.
|
110
|
+
*/
|
111
|
+
long forallWindows(FXObject* sender,FXSelector sel,void* ITEMDATA);
|
112
|
+
|
113
|
+
/**
|
114
|
+
* Pass message once to all MDI windows with the same document,
|
115
|
+
* stopping when one of the MDI windows fails to handle the message.
|
116
|
+
*/
|
117
|
+
long forallDocuments(FXObject* sender,FXSelector sel,void* ITEMDATA);
|
118
|
+
|
119
|
+
/**
|
120
|
+
* Pass message to all MDI Child windows whose target is document,
|
121
|
+
* stopping when one of the MDI windows fails to handle the message.
|
122
|
+
*/
|
123
|
+
long forallDocWindows(FXObject* document,FXObject* sender,FXSelector sel,void* ITEMDATA);
|
124
|
+
|
125
|
+
/// Get current active child; may be NULL!
|
126
|
+
FXMDIChild* getActiveChild() const;
|
127
|
+
|
128
|
+
/// Change cascade offset X
|
129
|
+
void setCascadeX(FXint off);
|
130
|
+
|
131
|
+
/// Change cascade offset Y
|
132
|
+
void setCascadeY(FXint off);
|
133
|
+
|
134
|
+
/// Get cascade offset X
|
135
|
+
FXint getCascadeX() const;
|
136
|
+
|
137
|
+
/// Get cascade offset Y
|
138
|
+
FXint getCascadeY() const;
|
139
|
+
|
140
|
+
/// Destructor
|
141
|
+
virtual ~FXMDIClient();
|
142
|
+
};
|
143
|
+
|
144
|
+
|
145
|
+
DECLARE_FXOBJECT_VIRTUALS(FXMDIClient)
|
146
|
+
DECLARE_FXID_VIRTUALS(FXMDIClient)
|
147
|
+
DECLARE_FXDRAWABLE_VIRTUALS(FXMDIClient)
|
148
|
+
DECLARE_FXWINDOW_VIRTUALS(FXMDIClient)
|
149
|
+
DECLARE_FXMDICLIENT_VIRTUALS(FXMDIClient)
|
@@ -0,0 +1,53 @@
|
|
1
|
+
/***********************************************************************
|
2
|
+
* FXRuby -- the Ruby language bindings for the FOX GUI toolkit.
|
3
|
+
* Copyright (c) 2001-2009 by Lyle Johnson. All Rights Reserved.
|
4
|
+
*
|
5
|
+
* This library is free software; you can redistribute it and/or
|
6
|
+
* modify it under the terms of the GNU Lesser General Public
|
7
|
+
* License as published by the Free Software Foundation; either
|
8
|
+
* version 2.1 of the License, or (at your option) any later version.
|
9
|
+
*
|
10
|
+
* This library is distributed in the hope that it will be useful,
|
11
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
13
|
+
* Lesser General Public License for more details.
|
14
|
+
*
|
15
|
+
* You should have received a copy of the GNU Lesser General Public
|
16
|
+
* License along with this library; if not, write to the Free Software
|
17
|
+
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
18
|
+
*
|
19
|
+
* For further information please contact the author by e-mail
|
20
|
+
* at "lyle@lylejohnson.name".
|
21
|
+
***********************************************************************/
|
22
|
+
|
23
|
+
/**
|
24
|
+
* Main application window. There may be any number of
|
25
|
+
* MainWindows in an application.
|
26
|
+
* When a MainWindow is closed, it sends a SEL_CLOSE message to
|
27
|
+
* its target; the target should return 0 if there is no objection
|
28
|
+
* against proceeding with the close, and 1 otherwise.
|
29
|
+
* After the SEL_CLOSE message has been sent and no objection was
|
30
|
+
* raised, the MainWindow will delete itself.
|
31
|
+
*/
|
32
|
+
class FXMainWindow : public FXTopWindow {
|
33
|
+
protected:
|
34
|
+
FXMainWindow(){}
|
35
|
+
public:
|
36
|
+
%extend {
|
37
|
+
/// Construct a main window
|
38
|
+
FXMainWindow(FXApp* APP,const FXString& name,FXIcon *ic=NULL,FXIcon *mi=NULL,FXuint opts=DECOR_ALL,FXint x=0,FXint y=0,FXint w=0,FXint h=0,FXint pl=0,FXint pr=0,FXint pt=0,FXint pb=0,FXint hs=0,FXint vs=0){
|
39
|
+
return new FXRbMainWindow(APP,name,ic,mi,opts,x,y,w,h,pl,pr,pt,pb,hs,vs);
|
40
|
+
}
|
41
|
+
}
|
42
|
+
|
43
|
+
/// Destructor
|
44
|
+
virtual ~FXMainWindow();
|
45
|
+
};
|
46
|
+
|
47
|
+
|
48
|
+
DECLARE_FXOBJECT_VIRTUALS(FXMainWindow)
|
49
|
+
DECLARE_FXID_VIRTUALS(FXMainWindow)
|
50
|
+
DECLARE_FXDRAWABLE_VIRTUALS(FXMainWindow)
|
51
|
+
DECLARE_FXWINDOW_VIRTUALS(FXMainWindow)
|
52
|
+
DECLARE_FXTOPWINDOW_VIRTUALS(FXMainWindow)
|
53
|
+
|
@@ -0,0 +1,102 @@
|
|
1
|
+
/***********************************************************************
|
2
|
+
* FXRuby -- the Ruby language bindings for the FOX GUI toolkit.
|
3
|
+
* Copyright (c) 2001-2009 by Lyle Johnson. All Rights Reserved.
|
4
|
+
*
|
5
|
+
* This library is free software; you can redistribute it and/or
|
6
|
+
* modify it under the terms of the GNU Lesser General Public
|
7
|
+
* License as published by the Free Software Foundation; either
|
8
|
+
* version 2.1 of the License, or (at your option) any later version.
|
9
|
+
*
|
10
|
+
* This library is distributed in the hope that it will be useful,
|
11
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
13
|
+
* Lesser General Public License for more details.
|
14
|
+
*
|
15
|
+
* You should have received a copy of the GNU Lesser General Public
|
16
|
+
* License along with this library; if not, write to the Free Software
|
17
|
+
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
18
|
+
*
|
19
|
+
* For further information please contact the author by e-mail
|
20
|
+
* at "lyle@lylejohnson.name".
|
21
|
+
***********************************************************************/
|
22
|
+
|
23
|
+
/// Double-precision 3x3 matrix
|
24
|
+
class FXMat3d {
|
25
|
+
protected:
|
26
|
+
FXVec3d m[3];
|
27
|
+
public:
|
28
|
+
|
29
|
+
/// Default constructor
|
30
|
+
FXMat3d();
|
31
|
+
|
32
|
+
/// Initialize matrix from another matrix
|
33
|
+
FXMat3d(const FXMat3d& other);
|
34
|
+
|
35
|
+
/// Initialize matrix from scalar
|
36
|
+
FXMat3d(FXdouble w);
|
37
|
+
|
38
|
+
/// Initialize matrix from components
|
39
|
+
FXMat3d(FXdouble a00,FXdouble a01,FXdouble a02,
|
40
|
+
FXdouble a10,FXdouble a11,FXdouble a12,
|
41
|
+
FXdouble a20,FXdouble a21,FXdouble a22);
|
42
|
+
|
43
|
+
/// Initialize matrix from three vectors
|
44
|
+
FXMat3d(const FXVec3d& a,const FXVec3d& b,const FXVec3d& c);
|
45
|
+
|
46
|
+
/// Initialize matrix from quaternion
|
47
|
+
FXMat3d(const FXQuatd& quat);
|
48
|
+
|
49
|
+
%extend {
|
50
|
+
/// Indexing
|
51
|
+
const FXVec3d& __getitem__(FXint i) const {
|
52
|
+
if(i<0 || i>2) rb_raise(rb_eIndexError,"index %d out of bounds",i);
|
53
|
+
return (*self)[i];
|
54
|
+
}
|
55
|
+
FXVec3d& __setitem__(FXint i,const FXVec3d& other){
|
56
|
+
if(i<0 || i>2) rb_raise(rb_eIndexError,"index %d out of bounds",i);
|
57
|
+
(*self)[i]=other;
|
58
|
+
return (*self)[i];
|
59
|
+
}
|
60
|
+
|
61
|
+
/// Other operators
|
62
|
+
FXMat3d operator+(const FXMat3d& other) const { return (*self)+other; }
|
63
|
+
FXMat3d operator-(const FXMat3d& other) const { return (*self)-other; }
|
64
|
+
FXMat3d operator-() const { return -(*self); }
|
65
|
+
FXMat3d operator*(const FXMat3d& other) const { return (*self)*other; }
|
66
|
+
FXMat3d operator*(FXdouble x) const { return (*self)*x; }
|
67
|
+
FXMat3d operator/(FXdouble x) const {
|
68
|
+
if(x==0.0) rb_raise(rb_eZeroDivError,"divided by 0");
|
69
|
+
return (*self)/x;
|
70
|
+
}
|
71
|
+
|
72
|
+
/// Multiply matrix and vector
|
73
|
+
FXVec3d operator*(const FXVec3d& other) const { return (*self)*other; }
|
74
|
+
|
75
|
+
/// Mutiply matrix and vector, for non-projective matrix
|
76
|
+
FXVec2d operator*(const FXVec2d& other) const { return (*self)*other; }
|
77
|
+
}
|
78
|
+
|
79
|
+
/// Set identity matrix
|
80
|
+
FXMat3d& eye();
|
81
|
+
|
82
|
+
/// Multiply by rotation of phi
|
83
|
+
FXMat3d& rot(FXdouble c,FXdouble s);
|
84
|
+
FXMat3d& rot(FXdouble phi);
|
85
|
+
|
86
|
+
/// Multiply by translation
|
87
|
+
FXMat3d& trans(FXdouble tx,FXdouble ty);
|
88
|
+
|
89
|
+
/// Multiply by scaling
|
90
|
+
FXMat3d& scale(FXdouble sx,FXdouble sy);
|
91
|
+
FXMat3d& scale(FXdouble s);
|
92
|
+
|
93
|
+
/// Determinant
|
94
|
+
FXdouble det() const;
|
95
|
+
|
96
|
+
/// Transpose
|
97
|
+
FXMat3d transpose() const;
|
98
|
+
|
99
|
+
/// Invert
|
100
|
+
FXMat3d invert() const;
|
101
|
+
};
|
102
|
+
|
@@ -0,0 +1,102 @@
|
|
1
|
+
/***********************************************************************
|
2
|
+
* FXRuby -- the Ruby language bindings for the FOX GUI toolkit.
|
3
|
+
* Copyright (c) 2001-2009 by Lyle Johnson. All Rights Reserved.
|
4
|
+
*
|
5
|
+
* This library is free software; you can redistribute it and/or
|
6
|
+
* modify it under the terms of the GNU Lesser General Public
|
7
|
+
* License as published by the Free Software Foundation; either
|
8
|
+
* version 2.1 of the License, or (at your option) any later version.
|
9
|
+
*
|
10
|
+
* This library is distributed in the hope that it will be useful,
|
11
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
13
|
+
* Lesser General Public License for more details.
|
14
|
+
*
|
15
|
+
* You should have received a copy of the GNU Lesser General Public
|
16
|
+
* License along with this library; if not, write to the Free Software
|
17
|
+
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
18
|
+
*
|
19
|
+
* For further information please contact the author by e-mail
|
20
|
+
* at "lyle@lylejohnson.name".
|
21
|
+
***********************************************************************/
|
22
|
+
|
23
|
+
/// Single-precision 3x3 matrix
|
24
|
+
class FXMat3f {
|
25
|
+
protected:
|
26
|
+
FXVec3f m[3];
|
27
|
+
public:
|
28
|
+
|
29
|
+
/// Default constructor
|
30
|
+
FXMat3f();
|
31
|
+
|
32
|
+
/// Copy constructor
|
33
|
+
FXMat3f(const FXMat3f& other);
|
34
|
+
|
35
|
+
/// Construct from scalar number
|
36
|
+
FXMat3f(FXfloat w);
|
37
|
+
|
38
|
+
/// Construct from components
|
39
|
+
FXMat3f(FXfloat a00,FXfloat a01,FXfloat a02,
|
40
|
+
FXfloat a10,FXfloat a11,FXfloat a12,
|
41
|
+
FXfloat a20,FXfloat a21,FXfloat a22);
|
42
|
+
|
43
|
+
/// Construct matrix from three vectors
|
44
|
+
FXMat3f(const FXVec3f& a,const FXVec3f& b,const FXVec3f& c);
|
45
|
+
|
46
|
+
/// Construct rotation matrix from quaternion
|
47
|
+
FXMat3f(const FXQuatf& quat);
|
48
|
+
|
49
|
+
%extend {
|
50
|
+
/// Indexing
|
51
|
+
const FXVec3f& __getitem__(FXint i) const {
|
52
|
+
if(i<0 || i>2) rb_raise(rb_eIndexError,"index %d out of bounds",i);
|
53
|
+
return (*self)[i];
|
54
|
+
}
|
55
|
+
FXVec3f& __setitem__(FXint i,const FXVec3d& other){
|
56
|
+
if(i<0 || i>2) rb_raise(rb_eIndexError,"index %d out of bounds",i);
|
57
|
+
(*self)[i]=other;
|
58
|
+
return (*self)[i];
|
59
|
+
}
|
60
|
+
|
61
|
+
/// Other operators
|
62
|
+
FXMat3f operator+(const FXMat3f& other) const { return (*self)+other; }
|
63
|
+
FXMat3f operator-(const FXMat3f& other) const { return (*self)-other; }
|
64
|
+
FXMat3f operator-() const { return -(*self); }
|
65
|
+
FXMat3f operator*(const FXMat3f& other) const { return (*self)*other; }
|
66
|
+
FXMat3f operator*(FXfloat x) const { return (*self)*x; }
|
67
|
+
FXMat3f operator/(FXfloat x) const {
|
68
|
+
if(x==0.0f) rb_raise(rb_eZeroDivError,"divided by 0");
|
69
|
+
return (*self)/x;
|
70
|
+
}
|
71
|
+
|
72
|
+
/// Multiply matrix and vector
|
73
|
+
FXVec3f operator*(const FXVec3f& other) const { return (*self)*other; }
|
74
|
+
|
75
|
+
/// Mutiply matrix and vector, for non-projective matrix
|
76
|
+
FXVec2f operator*(const FXVec2f& other) const { return (*self)*other; }
|
77
|
+
}
|
78
|
+
|
79
|
+
/// Set identity matrix
|
80
|
+
FXMat3f& eye();
|
81
|
+
|
82
|
+
/// Multiply by rotation of phi
|
83
|
+
FXMat3f& rot(FXfloat c,FXfloat s);
|
84
|
+
FXMat3f& rot(FXfloat phi);
|
85
|
+
|
86
|
+
/// Multiply by translation
|
87
|
+
FXMat3f& trans(FXfloat tx,FXfloat ty);
|
88
|
+
|
89
|
+
/// Multiply by scaling
|
90
|
+
FXMat3f& scale(FXfloat sx,FXfloat sy);
|
91
|
+
FXMat3f& scale(FXfloat s);
|
92
|
+
|
93
|
+
/// Determinant
|
94
|
+
FXfloat det() const;
|
95
|
+
|
96
|
+
/// Transpose
|
97
|
+
FXMat3f transpose() const;
|
98
|
+
|
99
|
+
/// Invert
|
100
|
+
FXMat3f invert() const;
|
101
|
+
};
|
102
|
+
|
@@ -0,0 +1,122 @@
|
|
1
|
+
/***********************************************************************
|
2
|
+
* FXRuby -- the Ruby language bindings for the FOX GUI toolkit.
|
3
|
+
* Copyright (c) 2001-2009 by Lyle Johnson. All Rights Reserved.
|
4
|
+
*
|
5
|
+
* This library is free software; you can redistribute it and/or
|
6
|
+
* modify it under the terms of the GNU Lesser General Public
|
7
|
+
* License as published by the Free Software Foundation; either
|
8
|
+
* version 2.1 of the License, or (at your option) any later version.
|
9
|
+
*
|
10
|
+
* This library is distributed in the hope that it will be useful,
|
11
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
13
|
+
* Lesser General Public License for more details.
|
14
|
+
*
|
15
|
+
* You should have received a copy of the GNU Lesser General Public
|
16
|
+
* License along with this library; if not, write to the Free Software
|
17
|
+
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
18
|
+
*
|
19
|
+
* For further information please contact the author by e-mail
|
20
|
+
* at "lyle@lylejohnson.name".
|
21
|
+
***********************************************************************/
|
22
|
+
|
23
|
+
/// Double-precision 4x4 matrix
|
24
|
+
class FXMat4d {
|
25
|
+
protected:
|
26
|
+
FXVec4d m[4];
|
27
|
+
public:
|
28
|
+
/// Constructors
|
29
|
+
FXMat4d();
|
30
|
+
FXMat4d(FXdouble w);
|
31
|
+
FXMat4d(FXdouble a00,FXdouble a01,FXdouble a02,FXdouble a03,
|
32
|
+
FXdouble a10,FXdouble a11,FXdouble a12,FXdouble a13,
|
33
|
+
FXdouble a20,FXdouble a21,FXdouble a22,FXdouble a23,
|
34
|
+
FXdouble a30,FXdouble a31,FXdouble a32,FXdouble a33);
|
35
|
+
FXMat4d(const FXVec4d& a,const FXVec4d& b,const FXVec4d& c,const FXVec4d& d);
|
36
|
+
FXMat4d(const FXMat4d& other);
|
37
|
+
|
38
|
+
%extend {
|
39
|
+
/// Indexing
|
40
|
+
const FXVec4d& __getitem__(FXint i) const {
|
41
|
+
if(i<0 || i>3) rb_raise(rb_eIndexError,"index %d out of bounds",i);
|
42
|
+
return (*self)[i];
|
43
|
+
}
|
44
|
+
FXVec4d& __setitem__(FXint i,const FXVec3d& other){
|
45
|
+
if(i<0 || i>3) rb_raise(rb_eIndexError,"index %d out of bounds",i);
|
46
|
+
(*self)[i]=other;
|
47
|
+
return (*self)[i];
|
48
|
+
}
|
49
|
+
|
50
|
+
/// Other operators
|
51
|
+
FXMat4d operator+(const FXMat4d& other) const { return (*self)+other; }
|
52
|
+
FXMat4d operator-(const FXMat4d& other) const { return (*self)-other; }
|
53
|
+
FXMat4d operator-() const { return -(*self); }
|
54
|
+
FXMat4d operator*(const FXMat4d& other) const { return (*self)*other; }
|
55
|
+
FXMat4d operator*(FXdouble x) const { return (*self)*x; }
|
56
|
+
FXMat4d operator/(FXdouble x) const {
|
57
|
+
if(x==0.0) rb_raise(rb_eZeroDivError,"divided by 0");
|
58
|
+
return (*self)/x;
|
59
|
+
}
|
60
|
+
|
61
|
+
/// Multiply matrix and vector
|
62
|
+
FXVec4d operator*(const FXVec4d& other) const { return (*self)*other; }
|
63
|
+
|
64
|
+
/// Mutiply matrix and vector, for non-projective matrix
|
65
|
+
FXVec3d operator*(const FXVec3d& v) const { return (*self)*v; }
|
66
|
+
}
|
67
|
+
|
68
|
+
/// Set identity matrix
|
69
|
+
FXMat4d& eye();
|
70
|
+
|
71
|
+
/// Orthographic projection
|
72
|
+
FXMat4d& ortho(FXdouble left,FXdouble right,FXdouble bottom,FXdouble top,FXdouble hither,FXdouble yon);
|
73
|
+
|
74
|
+
/// Perspective projection
|
75
|
+
FXMat4d& frustum(FXdouble left,FXdouble right,FXdouble bottom,FXdouble top,FXdouble hither,FXdouble yon);
|
76
|
+
|
77
|
+
/// Multiply by left-hand matrix
|
78
|
+
FXMat4d& left();
|
79
|
+
|
80
|
+
/// Multiply by rotation about unit-quaternion
|
81
|
+
FXMat4d& rot(const FXQuatd& q);
|
82
|
+
|
83
|
+
/// Multiply by rotation c,s about axis
|
84
|
+
FXMat4d& rot(const FXVec3d& v,FXdouble c,FXdouble s);
|
85
|
+
|
86
|
+
/// Multiply by rotation of phi about axis
|
87
|
+
FXMat4d& rot(const FXVec3d& v,FXdouble phi);
|
88
|
+
|
89
|
+
/// Multiply by x-rotation
|
90
|
+
FXMat4d& xrot(FXdouble c,FXdouble s);
|
91
|
+
FXMat4d& xrot(FXdouble phi);
|
92
|
+
|
93
|
+
/// Multiply by y-rotation
|
94
|
+
FXMat4d& yrot(FXdouble c,FXdouble s);
|
95
|
+
FXMat4d& yrot(FXdouble phi);
|
96
|
+
|
97
|
+
/// Multiply by z-rotation
|
98
|
+
FXMat4d& zrot(FXdouble c,FXdouble s);
|
99
|
+
FXMat4d& zrot(FXdouble phi);
|
100
|
+
|
101
|
+
/// Look at
|
102
|
+
FXMat4d& look(const FXVec3d& eye,const FXVec3d& cntr,const FXVec3d& vup);
|
103
|
+
|
104
|
+
/// Multiply by translation
|
105
|
+
FXMat4d& trans(FXdouble tx,FXdouble ty,FXdouble tz);
|
106
|
+
FXMat4d& trans(const FXVec3d& v);
|
107
|
+
|
108
|
+
/// Multiply by scaling
|
109
|
+
FXMat4d& scale(FXdouble sx,FXdouble sy,FXdouble sz);
|
110
|
+
FXMat4d& scale(FXdouble s);
|
111
|
+
FXMat4d& scale(const FXVec3d& v);
|
112
|
+
|
113
|
+
// Determinant
|
114
|
+
FXdouble det() const;
|
115
|
+
|
116
|
+
/// Transpose
|
117
|
+
FXMat4d transpose() const;
|
118
|
+
|
119
|
+
/// Invert
|
120
|
+
FXMat4d invert() const;
|
121
|
+
};
|
122
|
+
|