gtk3 2.2.4-x64-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/Rakefile +20 -0
- data/ext/gtk3/conversions.c +34 -0
- data/ext/gtk3/depend +11 -0
- data/ext/gtk3/extconf.rb +99 -0
- data/ext/gtk3/gtk3.def +10 -0
- data/ext/gtk3/init.c +34 -0
- data/ext/gtk3/rbgtk-about-dialog.c +113 -0
- data/ext/gtk3/rbgtk-accel-group-entry.c +94 -0
- data/ext/gtk3/rbgtk-accel-group.c +199 -0
- data/ext/gtk3/rbgtk-accel-key.c +120 -0
- data/ext/gtk3/rbgtk-accel-label.c +55 -0
- data/ext/gtk3/rbgtk-accel-map.c +135 -0
- data/ext/gtk3/rbgtk-accelerator.c +78 -0
- data/ext/gtk3/rbgtk-accessible.c +40 -0
- data/ext/gtk3/rbgtk-action-bar.c +73 -0
- data/ext/gtk3/rbgtk-action-group.c +467 -0
- data/ext/gtk3/rbgtk-action.c +205 -0
- data/ext/gtk3/rbgtk-activatable.c +30 -0
- data/ext/gtk3/rbgtk-adjustment.c +98 -0
- data/ext/gtk3/rbgtk-alignment.c +75 -0
- data/ext/gtk3/rbgtk-allocation.c +166 -0
- data/ext/gtk3/rbgtk-app-chooser-button.c +70 -0
- data/ext/gtk3/rbgtk-app-chooser-dialog.c +68 -0
- data/ext/gtk3/rbgtk-app-chooser-widget.c +40 -0
- data/ext/gtk3/rbgtk-app-chooser.c +47 -0
- data/ext/gtk3/rbgtk-application.c +69 -0
- data/ext/gtk3/rbgtk-arrow.c +56 -0
- data/ext/gtk3/rbgtk-aspect-frame.c +56 -0
- data/ext/gtk3/rbgtk-assistant.c +218 -0
- data/ext/gtk3/rbgtk-bin.c +42 -0
- data/ext/gtk3/rbgtk-binding-set.c +154 -0
- data/ext/gtk3/rbgtk-border.c +119 -0
- data/ext/gtk3/rbgtk-box.c +146 -0
- data/ext/gtk3/rbgtk-buildable.c +96 -0
- data/ext/gtk3/rbgtk-builder.c +166 -0
- data/ext/gtk3/rbgtk-button-box.c +87 -0
- data/ext/gtk3/rbgtk-button.c +93 -0
- data/ext/gtk3/rbgtk-calendar.c +118 -0
- data/ext/gtk3/rbgtk-cell-editable.c +57 -0
- data/ext/gtk3/rbgtk-cell-layout.c +144 -0
- data/ext/gtk3/rbgtk-cell-renderer-accel.c +41 -0
- data/ext/gtk3/rbgtk-cell-renderer-combo.c +38 -0
- data/ext/gtk3/rbgtk-cell-renderer-pixbuf.c +41 -0
- data/ext/gtk3/rbgtk-cell-renderer-progress.c +38 -0
- data/ext/gtk3/rbgtk-cell-renderer-spin.c +39 -0
- data/ext/gtk3/rbgtk-cell-renderer-spinner.c +38 -0
- data/ext/gtk3/rbgtk-cell-renderer-text.c +48 -0
- data/ext/gtk3/rbgtk-cell-renderer-toggle.c +39 -0
- data/ext/gtk3/rbgtk-cell-renderer.c +119 -0
- data/ext/gtk3/rbgtk-cell-view.c +95 -0
- data/ext/gtk3/rbgtk-check-button.c +64 -0
- data/ext/gtk3/rbgtk-check-menu-item.c +64 -0
- data/ext/gtk3/rbgtk-clip-board.c +389 -0
- data/ext/gtk3/rbgtk-color-button.c +55 -0
- data/ext/gtk3/rbgtk-color-selection-dialog.c +56 -0
- data/ext/gtk3/rbgtk-color-selection.c +219 -0
- data/ext/gtk3/rbgtk-combo-box-text.c +138 -0
- data/ext/gtk3/rbgtk-combo-box.c +147 -0
- data/ext/gtk3/rbgtk-const.c +79 -0
- data/ext/gtk3/rbgtk-container.c +788 -0
- data/ext/gtk3/rbgtk-css-provider.c +110 -0
- data/ext/gtk3/rbgtk-dialog.c +206 -0
- data/ext/gtk3/rbgtk-drag-gdk-drag-context.c +108 -0
- data/ext/gtk3/rbgtk-drag.c +93 -0
- data/ext/gtk3/rbgtk-drawing-area.c +42 -0
- data/ext/gtk3/rbgtk-editable.c +149 -0
- data/ext/gtk3/rbgtk-entry-buffer.c +87 -0
- data/ext/gtk3/rbgtk-entry-completion.c +122 -0
- data/ext/gtk3/rbgtk-entry.c +184 -0
- data/ext/gtk3/rbgtk-event-box.c +42 -0
- data/ext/gtk3/rbgtk-expander.c +49 -0
- data/ext/gtk3/rbgtk-file-chooser-button.c +50 -0
- data/ext/gtk3/rbgtk-file-chooser-dialog.c +62 -0
- data/ext/gtk3/rbgtk-file-chooser-widget.c +40 -0
- data/ext/gtk3/rbgtk-file-chooser.c +381 -0
- data/ext/gtk3/rbgtk-file-filter.c +128 -0
- data/ext/gtk3/rbgtk-file-system-error.c +48 -0
- data/ext/gtk3/rbgtk-fixed.c +61 -0
- data/ext/gtk3/rbgtk-font-button.c +49 -0
- data/ext/gtk3/rbgtk-font-chooser-dialog.c +56 -0
- data/ext/gtk3/rbgtk-font-chooser-widget.c +45 -0
- data/ext/gtk3/rbgtk-font-chooser.c +78 -0
- data/ext/gtk3/rbgtk-frame.c +69 -0
- data/ext/gtk3/rbgtk-gdk-event.c +38 -0
- data/ext/gtk3/rbgtk-grid.c +105 -0
- data/ext/gtk3/rbgtk-handle-box.c +45 -0
- data/ext/gtk3/rbgtk-header-bar.c +58 -0
- data/ext/gtk3/rbgtk-hsv.c +102 -0
- data/ext/gtk3/rbgtk-icon-factory.c +85 -0
- data/ext/gtk3/rbgtk-icon-info.c +115 -0
- data/ext/gtk3/rbgtk-icon-set.c +84 -0
- data/ext/gtk3/rbgtk-icon-size.c +91 -0
- data/ext/gtk3/rbgtk-icon-source.c +184 -0
- data/ext/gtk3/rbgtk-icon-theme.c +268 -0
- data/ext/gtk3/rbgtk-icon-view.c +295 -0
- data/ext/gtk3/rbgtk-im-multicontext.c +48 -0
- data/ext/gtk3/rbgtk-image-menu-item.c +67 -0
- data/ext/gtk3/rbgtk-image.c +162 -0
- data/ext/gtk3/rbgtk-imcon-text-simple.c +69 -0
- data/ext/gtk3/rbgtk-imcon-text.c +133 -0
- data/ext/gtk3/rbgtk-infobar.c +121 -0
- data/ext/gtk3/rbgtk-invisible.c +49 -0
- data/ext/gtk3/rbgtk-label.c +139 -0
- data/ext/gtk3/rbgtk-layout.c +93 -0
- data/ext/gtk3/rbgtk-level-bar.c +88 -0
- data/ext/gtk3/rbgtk-link-button.c +49 -0
- data/ext/gtk3/rbgtk-list-store.c +399 -0
- data/ext/gtk3/rbgtk-lock-button.c +50 -0
- data/ext/gtk3/rbgtk-menu-button.c +41 -0
- data/ext/gtk3/rbgtk-menu-item.c +95 -0
- data/ext/gtk3/rbgtk-menu-shell.c +106 -0
- data/ext/gtk3/rbgtk-menu-tool-button.c +81 -0
- data/ext/gtk3/rbgtk-menu.c +168 -0
- data/ext/gtk3/rbgtk-menubar.c +43 -0
- data/ext/gtk3/rbgtk-message-dialog.c +74 -0
- data/ext/gtk3/rbgtk-misc.c +70 -0
- data/ext/gtk3/rbgtk-notebook.c +383 -0
- data/ext/gtk3/rbgtk-numerable-icon.c +50 -0
- data/ext/gtk3/rbgtk-orientable.c +27 -0
- data/ext/gtk3/rbgtk-overlay.c +53 -0
- data/ext/gtk3/rbgtk-page-setup-unix-dialog.c +94 -0
- data/ext/gtk3/rbgtk-page-setup.c +195 -0
- data/ext/gtk3/rbgtk-paned.c +114 -0
- data/ext/gtk3/rbgtk-paper-size.c +179 -0
- data/ext/gtk3/rbgtk-plug.c +85 -0
- data/ext/gtk3/rbgtk-print-context.c +125 -0
- data/ext/gtk3/rbgtk-print-job.c +148 -0
- data/ext/gtk3/rbgtk-print-operation-preview.c +59 -0
- data/ext/gtk3/rbgtk-print-operation.c +149 -0
- data/ext/gtk3/rbgtk-print-settings.c +807 -0
- data/ext/gtk3/rbgtk-print-unix-dialog.c +90 -0
- data/ext/gtk3/rbgtk-printer.c +155 -0
- data/ext/gtk3/rbgtk-progress-bar.c +72 -0
- data/ext/gtk3/rbgtk-radio-action.c +122 -0
- data/ext/gtk3/rbgtk-radio-button.c +89 -0
- data/ext/gtk3/rbgtk-radio-menu-item.c +147 -0
- data/ext/gtk3/rbgtk-radio-tool-button.c +131 -0
- data/ext/gtk3/rbgtk-range.c +68 -0
- data/ext/gtk3/rbgtk-recent-action.c +64 -0
- data/ext/gtk3/rbgtk-recent-chooser-dialog.c +66 -0
- data/ext/gtk3/rbgtk-recent-chooser-menu.c +50 -0
- data/ext/gtk3/rbgtk-recent-chooser-widget.c +48 -0
- data/ext/gtk3/rbgtk-recent-chooser.c +198 -0
- data/ext/gtk3/rbgtk-recent-data.c +188 -0
- data/ext/gtk3/rbgtk-recent-filter-info.c +201 -0
- data/ext/gtk3/rbgtk-recent-filter.c +169 -0
- data/ext/gtk3/rbgtk-recent-info.c +213 -0
- data/ext/gtk3/rbgtk-recent-manager.c +134 -0
- data/ext/gtk3/rbgtk-revealer.c +42 -0
- data/ext/gtk3/rbgtk-scale-button.c +84 -0
- data/ext/gtk3/rbgtk-scale.c +97 -0
- data/ext/gtk3/rbgtk-scrollable.c +31 -0
- data/ext/gtk3/rbgtk-scrollbar.c +52 -0
- data/ext/gtk3/rbgtk-scrolled-window.c +122 -0
- data/ext/gtk3/rbgtk-search-bar.c +59 -0
- data/ext/gtk3/rbgtk-search-entry.c +42 -0
- data/ext/gtk3/rbgtk-selection-data.c +281 -0
- data/ext/gtk3/rbgtk-selection.c +168 -0
- data/ext/gtk3/rbgtk-separator-menu-item.c +39 -0
- data/ext/gtk3/rbgtk-separator-tool-item.c +38 -0
- data/ext/gtk3/rbgtk-separator.c +44 -0
- data/ext/gtk3/rbgtk-settings.c +229 -0
- data/ext/gtk3/rbgtk-size-group.c +66 -0
- data/ext/gtk3/rbgtk-socket.c +82 -0
- data/ext/gtk3/rbgtk-spin-button.c +132 -0
- data/ext/gtk3/rbgtk-spinner.c +55 -0
- data/ext/gtk3/rbgtk-stack-switcher.c +41 -0
- data/ext/gtk3/rbgtk-stack.c +106 -0
- data/ext/gtk3/rbgtk-status-bar.c +77 -0
- data/ext/gtk3/rbgtk-status-icon.c +122 -0
- data/ext/gtk3/rbgtk-stock.c +213 -0
- data/ext/gtk3/rbgtk-style-context-gdk-screen.c +61 -0
- data/ext/gtk3/rbgtk-style-context.c +411 -0
- data/ext/gtk3/rbgtk-style-properties.c +118 -0
- data/ext/gtk3/rbgtk-style-provider.c +67 -0
- data/ext/gtk3/rbgtk-switch.c +40 -0
- data/ext/gtk3/rbgtk-table.c +190 -0
- data/ext/gtk3/rbgtk-target-list.c +125 -0
- data/ext/gtk3/rbgtk-tearoff-menu-item.c +41 -0
- data/ext/gtk3/rbgtk-text-appearance.c +236 -0
- data/ext/gtk3/rbgtk-text-attributes.c +326 -0
- data/ext/gtk3/rbgtk-text-buffer.c +899 -0
- data/ext/gtk3/rbgtk-text-child-anchor.c +56 -0
- data/ext/gtk3/rbgtk-text-iter.c +732 -0
- data/ext/gtk3/rbgtk-text-mark.c +71 -0
- data/ext/gtk3/rbgtk-text-tag-table.c +96 -0
- data/ext/gtk3/rbgtk-text-tag.c +68 -0
- data/ext/gtk3/rbgtk-text-view.c +336 -0
- data/ext/gtk3/rbgtk-theming-engine.c +257 -0
- data/ext/gtk3/rbgtk-toggle-action.c +61 -0
- data/ext/gtk3/rbgtk-toggle-button.c +87 -0
- data/ext/gtk3/rbgtk-toggle-tool-button.c +61 -0
- data/ext/gtk3/rbgtk-tool-button.c +66 -0
- data/ext/gtk3/rbgtk-tool-item.c +200 -0
- data/ext/gtk3/rbgtk-tool-itemgroup.c +70 -0
- data/ext/gtk3/rbgtk-tool-shell.c +96 -0
- data/ext/gtk3/rbgtk-toolbar.c +118 -0
- data/ext/gtk3/rbgtk-tooltip-gdk-display.c +39 -0
- data/ext/gtk3/rbgtk-tooltip.c +100 -0
- data/ext/gtk3/rbgtk-tree-dragdest.c +28 -0
- data/ext/gtk3/rbgtk-tree-dragsource.c +28 -0
- data/ext/gtk3/rbgtk-tree-iter.c +258 -0
- data/ext/gtk3/rbgtk-tree-model.c +246 -0
- data/ext/gtk3/rbgtk-tree-modelfilter.c +197 -0
- data/ext/gtk3/rbgtk-tree-modelsort.c +111 -0
- data/ext/gtk3/rbgtk-tree-path.c +191 -0
- data/ext/gtk3/rbgtk-tree-rowreference.c +140 -0
- data/ext/gtk3/rbgtk-tree-selection.c +190 -0
- data/ext/gtk3/rbgtk-tree-sortable.c +122 -0
- data/ext/gtk3/rbgtk-tree-store.c +330 -0
- data/ext/gtk3/rbgtk-tree-view-column.c +256 -0
- data/ext/gtk3/rbgtk-tree-view.c +716 -0
- data/ext/gtk3/rbgtk-ui-manager.c +189 -0
- data/ext/gtk3/rbgtk-viewport.c +44 -0
- data/ext/gtk3/rbgtk-volume-button.c +41 -0
- data/ext/gtk3/rbgtk-widget-path.c +229 -0
- data/ext/gtk3/rbgtk-widget.c +1554 -0
- data/ext/gtk3/rbgtk-window-group.c +80 -0
- data/ext/gtk3/rbgtk-window.c +565 -0
- data/ext/gtk3/rbgtk.c +783 -0
- data/ext/gtk3/rbgtk3.h +90 -0
- data/ext/gtk3/rbgtk3conversions.h +439 -0
- data/ext/gtk3/rbgtk3private.h +300 -0
- data/ext/gtk3/rbgtk3util.c +67 -0
- data/ext/gtk3/rbgtk3util.h +32 -0
- data/extconf.rb +49 -0
- data/lib/2.0/gtk3.so +0 -0
- data/lib/2.1/gtk3.so +0 -0
- data/lib/2.2/gtk3.so +0 -0
- data/lib/gtk3.rb +11 -0
- data/lib/gtk3/base.rb +67 -0
- data/lib/gtk3/deprecated.rb +1004 -0
- data/sample/gtk-demo/README +7 -0
- data/sample/gtk-demo/alphatest.png +0 -0
- data/sample/gtk-demo/apple-red.png +0 -0
- data/sample/gtk-demo/appwindow.rb +233 -0
- data/sample/gtk-demo/background.jpg +0 -0
- data/sample/gtk-demo/builder.rb +51 -0
- data/sample/gtk-demo/button_box.rb +83 -0
- data/sample/gtk-demo/cairo-arc-negative.rb +41 -0
- data/sample/gtk-demo/cairo-arc.rb +41 -0
- data/sample/gtk-demo/cairo-clip-image.rb +51 -0
- data/sample/gtk-demo/cairo-clip-rectangle.rb +35 -0
- data/sample/gtk-demo/cairo-clip.rb +35 -0
- data/sample/gtk-demo/cairo-curve-rectangle.rb +76 -0
- data/sample/gtk-demo/cairo-curve-to.rb +43 -0
- data/sample/gtk-demo/cairo-dash.rb +39 -0
- data/sample/gtk-demo/cairo-fill-and-stroke.rb +32 -0
- data/sample/gtk-demo/cairo-fill-and-stroke2.rb +38 -0
- data/sample/gtk-demo/cairo-gradient.rb +35 -0
- data/sample/gtk-demo/cairo-image-pattern.rb +39 -0
- data/sample/gtk-demo/cairo-image.rb +49 -0
- data/sample/gtk-demo/cairo-line-cap.rb +53 -0
- data/sample/gtk-demo/cairo-line-join.rb +41 -0
- data/sample/gtk-demo/cairo-long-lines.rb +41 -0
- data/sample/gtk-demo/cairo-operator.rb +83 -0
- data/sample/gtk-demo/cairo-path.rb +28 -0
- data/sample/gtk-demo/cairo-pattern-fill.rb +88 -0
- data/sample/gtk-demo/cairo-self-intersect.rb +32 -0
- data/sample/gtk-demo/cairo-text-align-center.rb +45 -0
- data/sample/gtk-demo/cairo-text-extents.rb +46 -0
- data/sample/gtk-demo/cairo-text.rb +43 -0
- data/sample/gtk-demo/changedisplay.rb +407 -0
- data/sample/gtk-demo/clipboard.rb +67 -0
- data/sample/gtk-demo/colorsel.rb +82 -0
- data/sample/gtk-demo/common.rb +87 -0
- data/sample/gtk-demo/css_accordion.css +53 -0
- data/sample/gtk-demo/css_accordion.rb +75 -0
- data/sample/gtk-demo/demo.ui +258 -0
- data/sample/gtk-demo/dialog.rb +137 -0
- data/sample/gtk-demo/drawingarea.rb +205 -0
- data/sample/gtk-demo/editable_cells.rb +173 -0
- data/sample/gtk-demo/entry_completion.rb +63 -0
- data/sample/gtk-demo/expander.rb +42 -0
- data/sample/gtk-demo/floppybuddy.gif +0 -0
- data/sample/gtk-demo/gnome-applets.png +0 -0
- data/sample/gtk-demo/gnome-calendar.png +0 -0
- data/sample/gtk-demo/gnome-foot.png +0 -0
- data/sample/gtk-demo/gnome-fs-directory.png +0 -0
- data/sample/gtk-demo/gnome-fs-regular.png +0 -0
- data/sample/gtk-demo/gnome-gimp.png +0 -0
- data/sample/gtk-demo/gnome-gmush.png +0 -0
- data/sample/gtk-demo/gnome-gsame.png +0 -0
- data/sample/gtk-demo/gnu-keys.png +0 -0
- data/sample/gtk-demo/gtk-logo-rgb.gif +0 -0
- data/sample/gtk-demo/hypertext.rb +211 -0
- data/sample/gtk-demo/iconview.rb +110 -0
- data/sample/gtk-demo/images.rb +197 -0
- data/sample/gtk-demo/infobar.rb +78 -0
- data/sample/gtk-demo/item_factory.rb +94 -0
- data/sample/gtk-demo/links.rb +53 -0
- data/sample/gtk-demo/list_store.rb +138 -0
- data/sample/gtk-demo/main.rb +384 -0
- data/sample/gtk-demo/menus.rb +172 -0
- data/sample/gtk-demo/panes.rb +156 -0
- data/sample/gtk-demo/pixbufs.rb +167 -0
- data/sample/gtk-demo/printing.rb +128 -0
- data/sample/gtk-demo/reset.css +69 -0
- data/sample/gtk-demo/rotated_text.rb +72 -0
- data/sample/gtk-demo/ruby-gnome2-logo.png +0 -0
- data/sample/gtk-demo/sizegroup.rb +118 -0
- data/sample/gtk-demo/spinner.rb +59 -0
- data/sample/gtk-demo/stock_browser.rb +233 -0
- data/sample/gtk-demo/textview.rb +436 -0
- data/sample/gtk-demo/theming.ui +319 -0
- data/sample/gtk-demo/theming_style_classes.rb +48 -0
- data/sample/gtk-demo/tree_store.rb +270 -0
- data/sample/misc/aboutdialog.rb +42 -0
- data/sample/misc/aboutdialog2.rb +42 -0
- data/sample/misc/alpha-demo.rb +70 -0
- data/sample/misc/assistant.rb +281 -0
- data/sample/misc/bindings.rb +97 -0
- data/sample/misc/button.rb +72 -0
- data/sample/misc/button2.rb +28 -0
- data/sample/misc/buttonbox.rb +93 -0
- data/sample/misc/cairo-pong.rb +217 -0
- data/sample/misc/calendar.rb +66 -0
- data/sample/misc/checkbutton.rb +49 -0
- data/sample/misc/colorselection.rb +22 -0
- data/sample/misc/combo_check.rb +79 -0
- data/sample/misc/combobox.rb +85 -0
- data/sample/misc/composited-windows.rb +113 -0
- data/sample/misc/cursor.rb +34 -0
- data/sample/misc/dialog.rb +44 -0
- data/sample/misc/dialog2.rb +36 -0
- data/sample/misc/dnd.rb +64 -0
- data/sample/misc/dndtreeview.rb +56 -0
- data/sample/misc/drag-move.rb +139 -0
- data/sample/misc/drawing.rb +109 -0
- data/sample/misc/entry.rb +34 -0
- data/sample/misc/entrycompletion.rb +33 -0
- data/sample/misc/expander.rb +27 -0
- data/sample/misc/filechooser.rb +41 -0
- data/sample/misc/frame.rb +69 -0
- data/sample/misc/gdkscreen.rb +32 -0
- data/sample/misc/gnome-logo-icon.png +0 -0
- data/sample/misc/helloworld.rb +35 -0
- data/sample/misc/iconview.rb +38 -0
- data/sample/misc/image.rb +42 -0
- data/sample/misc/itemfactory.rb +73 -0
- data/sample/misc/itemfactory2.rb +74 -0
- data/sample/misc/keyboard_grab.rb +29 -0
- data/sample/misc/label.rb +33 -0
- data/sample/misc/linkbutton.rb +42 -0
- data/sample/misc/listview.rb +92 -0
- data/sample/misc/menu.rb +81 -0
- data/sample/misc/misc_button.rb +49 -0
- data/sample/misc/mouse-gesture.rb +465 -0
- data/sample/misc/pangorenderer.rb +66 -0
- data/sample/misc/pointer_grab.rb +34 -0
- data/sample/misc/print.rb +247 -0
- data/sample/misc/properties.rb +86 -0
- data/sample/misc/radiobutton.rb +47 -0
- data/sample/misc/recentchooserdialog.rb +52 -0
- data/sample/misc/rgtk+cairo.rb +42 -0
- data/sample/misc/scalebutton.rb +19 -0
- data/sample/misc/settings.rb +41 -0
- data/sample/misc/statusicon.rb +106 -0
- data/sample/misc/stock.rb +36 -0
- data/sample/misc/style_property.rb +67 -0
- data/sample/misc/style_property.rc +19 -0
- data/sample/misc/t-gtkplug.rb +58 -0
- data/sample/misc/t-gtksocket.rb +65 -0
- data/sample/misc/test.xpm +92 -0
- data/sample/misc/textbuffer_serialize.rb +130 -0
- data/sample/misc/threads.rb +70 -0
- data/sample/misc/to_drawable.rb +42 -0
- data/sample/misc/togglebutton.rb +34 -0
- data/sample/misc/toolbar.rb +55 -0
- data/sample/misc/tooltips.rb +204 -0
- data/sample/misc/tree_combo.rb +79 -0
- data/sample/misc/tree_progress.rb +61 -0
- data/sample/misc/treemodelfilter.rb +49 -0
- data/sample/misc/treeview.rb +71 -0
- data/sample/misc/uimanager.rb +148 -0
- data/sample/misc/uimanager2.rb +91 -0
- data/sample/misc/uimanager2.xml +36 -0
- data/sample/misc/window.rb +24 -0
- data/sample/misc/xbm_cursor.rb +43 -0
- data/sample/testgtk/3DRings.xpm +116 -0
- data/sample/testgtk/FilesQueue.xpm +98 -0
- data/sample/testgtk/Modeller.xpm +117 -0
- data/sample/testgtk/README +14 -0
- data/sample/testgtk/button.rb +124 -0
- data/sample/testgtk/buttonbox.rb +100 -0
- data/sample/testgtk/check-n.xpm +21 -0
- data/sample/testgtk/check-y.xpm +21 -0
- data/sample/testgtk/checkbutton.rb +67 -0
- data/sample/testgtk/circles.xbm +46 -0
- data/sample/testgtk/colorselect.rb +33 -0
- data/sample/testgtk/dialog.rb +48 -0
- data/sample/testgtk/entry.rb +73 -0
- data/sample/testgtk/filesel.rb +65 -0
- data/sample/testgtk/fontselection.rb +56 -0
- data/sample/testgtk/labels.rb +74 -0
- data/sample/testgtk/layout.rb +108 -0
- data/sample/testgtk/marble.xpm +408 -0
- data/sample/testgtk/menu.rb +79 -0
- data/sample/testgtk/notebook.rb +280 -0
- data/sample/testgtk/pixmap.rb +58 -0
- data/sample/testgtk/progressbar.rb +173 -0
- data/sample/testgtk/radiobutton.rb +61 -0
- data/sample/testgtk/range.rb +65 -0
- data/sample/testgtk/reparent.rb +91 -0
- data/sample/testgtk/sample.rb +80 -0
- data/sample/testgtk/savedposition.rb +87 -0
- data/sample/testgtk/scrolledwindow.rb +67 -0
- data/sample/testgtk/shapedwindow.rb +99 -0
- data/sample/testgtk/spinbutton.rb +181 -0
- data/sample/testgtk/statusbar.rb +89 -0
- data/sample/testgtk/test.xpm +92 -0
- data/sample/testgtk/testgtk.rb +176 -0
- data/sample/testgtk/testgtkrc +146 -0
- data/sample/testgtk/testgtkrc2 +21 -0
- data/sample/testgtk/togglebutton.rb +53 -0
- data/sample/testgtk/toolbar.rb +82 -0
- data/sample/testgtk/tooltips.rb +41 -0
- data/sample/testgtk/wmhints.rb +40 -0
- data/test/gtk-test-utils.rb +15 -0
- data/test/run-test.rb +58 -0
- data/test/test_gc.rb +22 -0
- data/test/test_gtk.rb +23 -0
- data/test/test_gtk_about_dialog.rb +13 -0
- data/test/test_gtk_accel_group_entry.rb +24 -0
- data/test/test_gtk_accel_key.rb +24 -0
- data/test/test_gtk_accessible.rb +31 -0
- data/test/test_gtk_action_group.rb +46 -0
- data/test/test_gtk_allocation.rb +24 -0
- data/test/test_gtk_border.rb +24 -0
- data/test/test_gtk_buildable.rb +56 -0
- data/test/test_gtk_builder.rb +166 -0
- data/test/test_gtk_container.rb +32 -0
- data/test/test_gtk_css_provider.rb +27 -0
- data/test/test_gtk_entry.rb +52 -0
- data/test/test_gtk_header_bar.rb +66 -0
- data/test/test_gtk_icon_theme.rb +31 -0
- data/test/test_gtk_icon_view.rb +41 -0
- data/test/test_gtk_image.rb +8 -0
- data/test/test_gtk_level_bar.rb +82 -0
- data/test/test_gtk_list_store.rb +105 -0
- data/test/test_gtk_menu_button.rb +49 -0
- data/test/test_gtk_menu_item.rb +13 -0
- data/test/test_gtk_recent_data.rb +24 -0
- data/test/test_gtk_recent_filter_info.rb +26 -0
- data/test/test_gtk_revealer.rb +57 -0
- data/test/test_gtk_search_bar.rb +55 -0
- data/test/test_gtk_search_entry.rb +34 -0
- data/test/test_gtk_stack.rb +115 -0
- data/test/test_gtk_stack_switcher.rb +30 -0
- data/test/test_gtk_style_context.rb +30 -0
- data/test/test_gtk_style_properties.rb +38 -0
- data/test/test_gtk_tree_path.rb +20 -0
- data/test/test_gtk_tree_selection.rb +31 -0
- data/test/test_gtk_unix_print.rb +14 -0
- data/test/test_gtk_widget.rb +24 -0
- metadata +582 -0
@@ -0,0 +1,48 @@
|
|
1
|
+
#
|
2
|
+
# This sample code is a port of gtk3/demos/gtk-demo/theming_style_classes.c.
|
3
|
+
# The UI file used in this sample code is copied from gtk3/demos/gtk-demo.
|
4
|
+
# This is licensed under the terms of the GNU Lesser General Public
|
5
|
+
# License, version 2.1 or (at your option) later.
|
6
|
+
#
|
7
|
+
# Copyright (C) 2014 Ruby-GNOME2 Project Team
|
8
|
+
#
|
9
|
+
# This library is free software; you can redistribute it and/or
|
10
|
+
# modify it under the terms of the GNU Lesser General Public
|
11
|
+
# License as published by the Free Software Foundation; either
|
12
|
+
# version 2.1 of the License, or (at your option) any later version.
|
13
|
+
#
|
14
|
+
# This library is distributed in the hope that it will be useful,
|
15
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
16
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
17
|
+
# Lesser General Public License for more details.
|
18
|
+
#
|
19
|
+
# You should have received a copy of the GNU Lesser General Public
|
20
|
+
# License along with this library; if not, write to the Free Software
|
21
|
+
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
22
|
+
=begin
|
23
|
+
= CSS Theming/Style Classes
|
24
|
+
|
25
|
+
GTK+ uses CSS for theming. Style classes can be associated
|
26
|
+
with widgets to inform the theme about intended rendering.
|
27
|
+
|
28
|
+
This demo shows some common examples where theming features
|
29
|
+
of GTK+ are used for certain effects: primary toolbars,
|
30
|
+
inline toolbars and linked buttons.
|
31
|
+
=end
|
32
|
+
|
33
|
+
require "common"
|
34
|
+
|
35
|
+
module Demo
|
36
|
+
class ThemingStyleClasses < BasicWindow
|
37
|
+
def initialize
|
38
|
+
super("Style Claases")
|
39
|
+
self.border_width = 12
|
40
|
+
|
41
|
+
builder = Gtk::Builder.new
|
42
|
+
builder.add("theming.ui")
|
43
|
+
|
44
|
+
grid = builder.get_object("grid")
|
45
|
+
add(grid)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
@@ -0,0 +1,270 @@
|
|
1
|
+
# Copyright (c) 2003-2005 Ruby-GNOME2 Project Team
|
2
|
+
# This program is licenced under the same licence as Ruby-GNOME2.
|
3
|
+
#
|
4
|
+
# $Id: tree_store.rb,v 1.7 2005/02/06 18:25:13 kzys Exp $
|
5
|
+
=begin
|
6
|
+
= Tree View/Tree Store
|
7
|
+
|
8
|
+
The Gtk::TreeStore is used to store data in tree form, to be
|
9
|
+
used later on by a Gtk::TreeView to display it. This demo builds
|
10
|
+
a simple Gtk::TreeStore and displays it. If you're new to the
|
11
|
+
GtkTreeView widgets and associates, look into the Gtk::ListStore
|
12
|
+
example first.
|
13
|
+
=end
|
14
|
+
require 'common'
|
15
|
+
|
16
|
+
module Demo
|
17
|
+
class TreeStore < BasicWindow
|
18
|
+
# TreeItem structure
|
19
|
+
TreeItem = Struct.new('TreeItem',
|
20
|
+
:label,
|
21
|
+
:alex, :havoc, :tim, :owen, :dave,
|
22
|
+
:world_holiday) # shared by the European hackers
|
23
|
+
|
24
|
+
# columns
|
25
|
+
(
|
26
|
+
HOLIDAY_NAME_COLUMN,
|
27
|
+
ALEX_COLUMN,
|
28
|
+
HAVOC_COLUMN,
|
29
|
+
TIM_COLUMN,
|
30
|
+
OWEN_COLUMN,
|
31
|
+
DAVE_COLUMN,
|
32
|
+
|
33
|
+
VISIBLE_COLUMN,
|
34
|
+
WORLD_COLUMN,
|
35
|
+
NUM_COLUMNS,
|
36
|
+
) = *(0..9).to_a
|
37
|
+
|
38
|
+
|
39
|
+
# tree data
|
40
|
+
TOPLEVEL = [
|
41
|
+
['January',
|
42
|
+
[
|
43
|
+
["New Years Day", true, true, true, true, false, true],
|
44
|
+
["Presidential Inauguration", false, true, false, true, false, false],
|
45
|
+
["Martin Luther King Jr. day", false, true, false, true, false, false],
|
46
|
+
]
|
47
|
+
],
|
48
|
+
['February',
|
49
|
+
[
|
50
|
+
["Presidents' Day", false, true, false, true, false, false],
|
51
|
+
["Groundhog Day", false, false, false, false, false, false],
|
52
|
+
["Valentine's Day", false, false, false, false, true, true],
|
53
|
+
]
|
54
|
+
],
|
55
|
+
['March',
|
56
|
+
[
|
57
|
+
["National Tree Planting Day", false, false, false, false, false, false],
|
58
|
+
[ "St Patrick's Day", false, false, false, false, false, true],
|
59
|
+
]
|
60
|
+
],
|
61
|
+
['April',
|
62
|
+
[
|
63
|
+
[ "April Fools' Day", false, false, false, false, false, true ],
|
64
|
+
[ "Army Day", false, false, false, false, false, false ],
|
65
|
+
[ "Earth Day", false, false, false, false, false, true ],
|
66
|
+
[ "Administrative Professionals' Day", false, false, false, false, false, false ],
|
67
|
+
]],
|
68
|
+
['May',
|
69
|
+
[
|
70
|
+
[ "Nurses' Day", false, false, false, false, false, false ],
|
71
|
+
[ "National Day of Prayer", false, false, false, false, false, false ],
|
72
|
+
[ "Mothers' Day", false, false, false, false, false, true ],
|
73
|
+
[ "Armed Forces Day", false, false, false, false, false, false ],
|
74
|
+
[ "Memorial Day", true, true, true, true, false, true ],
|
75
|
+
|
76
|
+
]
|
77
|
+
],
|
78
|
+
['June',
|
79
|
+
[
|
80
|
+
[ "June Fathers' Day", false, false, false, false, false, true ],
|
81
|
+
[ "Juneteenth (Liberation of Slaves)", false, false, false, false, false, false ],
|
82
|
+
[ "Flag Day", false, true, false, true, false, false ],
|
83
|
+
]
|
84
|
+
],
|
85
|
+
['July',
|
86
|
+
[
|
87
|
+
[ "Parents' Day", false, false, false, false, false, true ],
|
88
|
+
[ "Independence Day", false, true, false, true, false, false ],
|
89
|
+
]
|
90
|
+
],
|
91
|
+
['August',
|
92
|
+
[
|
93
|
+
[ "Air Force Day", false, false, false, false, false, false ],
|
94
|
+
[ "Coast Guard Day", false, false, false, false, false, false ],
|
95
|
+
[ "Friendship Day", false, false, false, false, false, false ],
|
96
|
+
]
|
97
|
+
],
|
98
|
+
['September',
|
99
|
+
[
|
100
|
+
[ "Grandparents' Day", false, false, false, false, false, true ],
|
101
|
+
[ "Citizenship Day or Constitution Day", false, false, false, false, false, false ],
|
102
|
+
[ "Labor Day", true, true, true, true, false, true ],
|
103
|
+
]
|
104
|
+
],
|
105
|
+
['October',
|
106
|
+
[
|
107
|
+
[ "National Children's Day", false, false, false, false, false, false ],
|
108
|
+
[ "Bosses' Day", false, false, false, false, false, false ],
|
109
|
+
[ "Sweetest Day", false, false, false, false, false, false ],
|
110
|
+
[ "Mother-in-Law's Day", false, false, false, false, false, false ],
|
111
|
+
[ "Navy Day", false, false, false, false, false, false ],
|
112
|
+
[ "Columbus Day", false, true, false, true, false, false ],
|
113
|
+
[ "Halloween", false, false, false, false, false, true ],
|
114
|
+
]
|
115
|
+
],
|
116
|
+
['November',
|
117
|
+
[
|
118
|
+
[ "Marine Corps Day", false, false, false, false, false, false ],
|
119
|
+
[ "Veterans' Day", true, true, true, true, false, true ],
|
120
|
+
[ "Thanksgiving", false, true, false, true, false, false ],
|
121
|
+
]
|
122
|
+
],
|
123
|
+
['December',
|
124
|
+
[
|
125
|
+
[ 'Pearl Harbor Remembrance Day', false, false, false, false, false, false ],
|
126
|
+
[ 'Christmas', true, true, true, true, false, true ],
|
127
|
+
[ 'Kwanzaa', false, false, false, false, false, false ],
|
128
|
+
]
|
129
|
+
],
|
130
|
+
].collect do |month_name, holidays|
|
131
|
+
[
|
132
|
+
month_name,
|
133
|
+
holidays.collect do |args| TreeItem.new(args) end,
|
134
|
+
]
|
135
|
+
end
|
136
|
+
|
137
|
+
def initialize
|
138
|
+
# create window, etc
|
139
|
+
super('Card planning sheet')
|
140
|
+
|
141
|
+
vbox = Gtk::VBox.new(false, 8)
|
142
|
+
vbox.border_width = 8
|
143
|
+
add(vbox)
|
144
|
+
|
145
|
+
vbox.pack_start(Gtk::Label.new("Jonathan's Holiday Card Planning Sheet"),
|
146
|
+
:expand => false, :fill => false, :padding => 0)
|
147
|
+
|
148
|
+
sw = Gtk::ScrolledWindow.new(nil, nil)
|
149
|
+
sw.shadow_type = Gtk::SHADOW_ETCHED_IN
|
150
|
+
sw.set_policy(:automatic,
|
151
|
+
:automatic)
|
152
|
+
vbox.pack_start(sw, :expand => true, :fill => true, :padding => 0)
|
153
|
+
|
154
|
+
# create model
|
155
|
+
model = create_model
|
156
|
+
|
157
|
+
# create tree view
|
158
|
+
treeview = Gtk::TreeView.new(model)
|
159
|
+
treeview.rules_hint = true
|
160
|
+
treeview.selection.mode = Gtk::SELECTION_MULTIPLE
|
161
|
+
|
162
|
+
add_columns(treeview)
|
163
|
+
|
164
|
+
sw.add(treeview)
|
165
|
+
|
166
|
+
# expand all rows after the treeview widget has been realized
|
167
|
+
treeview.signal_connect('realize') do
|
168
|
+
treeview.expand_all
|
169
|
+
end
|
170
|
+
set_default_size(650, 400)
|
171
|
+
end
|
172
|
+
|
173
|
+
def create_model
|
174
|
+
# create tree store
|
175
|
+
model = Gtk::TreeStore.new(String,
|
176
|
+
TrueClass,
|
177
|
+
TrueClass,
|
178
|
+
TrueClass,
|
179
|
+
TrueClass,
|
180
|
+
TrueClass,
|
181
|
+
TrueClass,
|
182
|
+
TrueClass)
|
183
|
+
|
184
|
+
# add data to the tree store
|
185
|
+
TOPLEVEL.each do |month_name, holidays|
|
186
|
+
iter = model.append(nil)
|
187
|
+
|
188
|
+
iter[HOLIDAY_NAME_COLUMN] = month_name
|
189
|
+
(ALEX_COLUMN..DAVE_COLUMN).each do |index|
|
190
|
+
iter[index] = false
|
191
|
+
end
|
192
|
+
|
193
|
+
# add children
|
194
|
+
holidays.each do |holiday|
|
195
|
+
child_iter = model.append(iter)
|
196
|
+
child_iter[HOLIDAY_NAME_COLUMN] = holiday.label[0]
|
197
|
+
%w(alex havoc tim owen dave).each_with_index do |person, i|
|
198
|
+
child_iter[ALEX_COLUMN + i] = holiday[person]
|
199
|
+
end
|
200
|
+
child_iter[VISIBLE_COLUMN] = true
|
201
|
+
child_iter[WORLD_COLUMN] = holiday.world_holiday
|
202
|
+
end
|
203
|
+
|
204
|
+
end
|
205
|
+
|
206
|
+
return model
|
207
|
+
end
|
208
|
+
|
209
|
+
def add_columns(treeview)
|
210
|
+
model = treeview.model
|
211
|
+
|
212
|
+
# column for holiday names
|
213
|
+
renderer = Gtk::CellRendererText.new
|
214
|
+
renderer.xalign = 0.0
|
215
|
+
|
216
|
+
col_offset = treeview.insert_column(-1, 'Holiday',
|
217
|
+
renderer,
|
218
|
+
'text' => HOLIDAY_NAME_COLUMN)
|
219
|
+
column = treeview.get_column(col_offset - 1)
|
220
|
+
column.clickable = true
|
221
|
+
|
222
|
+
[
|
223
|
+
['Alex', true ],
|
224
|
+
['Havoc', false],
|
225
|
+
['Tim', true ],
|
226
|
+
['Owen', false],
|
227
|
+
['Dave', false],
|
228
|
+
].each_with_index do |args, i|
|
229
|
+
person, european = *args
|
230
|
+
renderer = Gtk::CellRendererToggle.new
|
231
|
+
renderer.xalign = 0.0
|
232
|
+
eval(%Q[def renderer.column; #{ALEX_COLUMN + i}; end])
|
233
|
+
|
234
|
+
renderer.signal_connect('toggled') do |cell, path|
|
235
|
+
item_toggled(cell, path, model)
|
236
|
+
end
|
237
|
+
|
238
|
+
attributes = {
|
239
|
+
'active' => (ALEX_COLUMN + i),
|
240
|
+
'visible' => VISIBLE_COLUMN,
|
241
|
+
}
|
242
|
+
if european
|
243
|
+
attributes['activatable'] = WORLD_COLUMN
|
244
|
+
end
|
245
|
+
col_offset = treeview.insert_column(-1, person, renderer, attributes)
|
246
|
+
|
247
|
+
column = treeview.get_column(col_offset - 1)
|
248
|
+
column.sizing = Gtk::TreeViewColumn::FIXED
|
249
|
+
column.fixed_width = 50
|
250
|
+
column.clickable = true
|
251
|
+
end
|
252
|
+
end
|
253
|
+
|
254
|
+
def item_toggled (cell, path_str, model)
|
255
|
+
path = Gtk::TreePath.new(path_str)
|
256
|
+
|
257
|
+
column = cell.column
|
258
|
+
|
259
|
+
# get toggled iter
|
260
|
+
iter = model.get_iter(path)
|
261
|
+
toggle_item = iter[column]
|
262
|
+
|
263
|
+
# do something with the value
|
264
|
+
toggle_item ^= 1
|
265
|
+
|
266
|
+
# set new value
|
267
|
+
iter[column] = toggle_item
|
268
|
+
end
|
269
|
+
end
|
270
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
=begin
|
3
|
+
aboutdialog.rb - Ruby/GTK sample script.
|
4
|
+
|
5
|
+
Copyright (c) 2005,2006 Ruby-GNOME2 Project Team
|
6
|
+
This program is licenced under the same licence as Ruby-GNOME2.
|
7
|
+
|
8
|
+
$Id: aboutdialog.rb,v 1.2 2006/06/17 13:18:12 mutoh Exp $
|
9
|
+
=end
|
10
|
+
require 'gtk3'
|
11
|
+
|
12
|
+
if str = Gtk.check_version(2, 6, 0)
|
13
|
+
puts "This sample requires GTK+ 2.6.0 or later"
|
14
|
+
puts str
|
15
|
+
exit
|
16
|
+
end
|
17
|
+
|
18
|
+
Gtk::AboutDialog.set_email_hook {|about, link|
|
19
|
+
p "email_hook"
|
20
|
+
p link
|
21
|
+
}
|
22
|
+
Gtk::AboutDialog.set_url_hook {|about, link|
|
23
|
+
p "url_hook"
|
24
|
+
p link
|
25
|
+
}
|
26
|
+
|
27
|
+
a = Gtk::AboutDialog.new
|
28
|
+
a.artists = ["Artist 1 <no1@foo.bar.com>", "Artist 2 <no2@foo.bar.com>"]
|
29
|
+
a.authors = ["Author 1 <no1@foo.bar.com>", "Author 2 <no2@foo.bar.com>"]
|
30
|
+
a.comments = "This is a sample script for Gtk::AboutDialog"
|
31
|
+
a.copyright = "Copyright (C) 2005 Ruby-GNOME2 Project"
|
32
|
+
a.documenters = ["Documenter 1 <no1@foo.bar.com>", "Documenter 2 <no2@foo.bar.com>"]
|
33
|
+
a.license = "This program is licenced under the same licence as Ruby-GNOME2."
|
34
|
+
a.logo = Gdk::Pixbuf.new("gnome-logo-icon.png")
|
35
|
+
a.program_name = "Gtk::AboutDialog sample"
|
36
|
+
a.translator_credits = "Translator 1\nTranslator 2\n"
|
37
|
+
a.version = "1.0.0"
|
38
|
+
a.website = "http://ruby-gnome2.sourceforge.jp"
|
39
|
+
a.website_label = "Ruby-GNOME2 Project Website"
|
40
|
+
|
41
|
+
p a.run
|
42
|
+
|
@@ -0,0 +1,42 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
=begin
|
3
|
+
aboutdialog2.rb - Ruby/GTK sample script.
|
4
|
+
|
5
|
+
Copyright (c) 2005,2006 Ruby-GNOME2 Project Team
|
6
|
+
This program is licenced under the same licence as Ruby-GNOME2.
|
7
|
+
|
8
|
+
$Id: aboutdialog2.rb,v 1.2 2006/06/17 13:18:12 mutoh Exp $
|
9
|
+
=end
|
10
|
+
require 'gtk3'
|
11
|
+
|
12
|
+
if str = Gtk.check_version(2, 6, 0)
|
13
|
+
puts "This sample requires GTK+ 2.6.0 or later"
|
14
|
+
puts str
|
15
|
+
exit
|
16
|
+
end
|
17
|
+
|
18
|
+
Gtk::AboutDialog.set_email_hook {|about, link|
|
19
|
+
p "email_hook"
|
20
|
+
p link
|
21
|
+
}
|
22
|
+
Gtk::AboutDialog.set_url_hook {|about, link|
|
23
|
+
p "url_hook"
|
24
|
+
p link
|
25
|
+
}
|
26
|
+
|
27
|
+
Gtk::AboutDialog.show(nil,
|
28
|
+
"artists" => ["Artist 1 <no1@foo.bar.com>", "Artist 2 <no2@foo.bar.com>"],
|
29
|
+
"authors" => ["Author 1 <no1@foo.bar.com>", "Author 2 <no2@foo.bar.com>"],
|
30
|
+
"comments" => "This is a sample script for Gtk::AboutDialog",
|
31
|
+
"copyright" => "Copyright (C) 2005 Ruby-GNOME2 Project",
|
32
|
+
"documenters" => ["Documenter 1 <no1@foo.bar.com>", "Documenter 2 <no2@foo.bar.com>"],
|
33
|
+
"license" => "This program is licenced under the same licence as Ruby-GNOME2.",
|
34
|
+
"logo_icon_name" => "gtk-home",
|
35
|
+
"program_name" => "Gtk::AboutDialog sample",
|
36
|
+
"translator_credits" => "Translator 1 <no1@foo.bar.com>\nTranslator 2 <no2@foo.bar.com>\n",
|
37
|
+
"version" => "1.0.0",
|
38
|
+
"website" => "http://ruby-gnome2.sourceforge.jp",
|
39
|
+
"website_label" => "Ruby-GNOME2 Project Website"
|
40
|
+
)
|
41
|
+
|
42
|
+
Gtk.main
|
@@ -0,0 +1,70 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
=begin
|
3
|
+
alpha-demo.rb - alpha blended window sample script. (need xcompmgr)
|
4
|
+
|
5
|
+
Original: alphademo.py by Mike Hearn (*1) and David Trowbridge (*2)
|
6
|
+
* (1) http://plan99.net/~mike/blog/2006/06/05/alpha-blended-windows-in-python/
|
7
|
+
* (2) http://david.navi.cx/blog/?p=91
|
8
|
+
|
9
|
+
Translated to Ruby by Juergen Mangler <juergen.mangler@univie.ac.at>
|
10
|
+
|
11
|
+
Copyright (c) 2006 Ruby-GNOME2 Project Team
|
12
|
+
This program is licenced under the same licence as Ruby-GNOME2.
|
13
|
+
|
14
|
+
$Id: alpha-demo.rb,v 1.1 2007/01/06 03:55:44 ktou Exp $
|
15
|
+
=end
|
16
|
+
|
17
|
+
require 'gtk3'
|
18
|
+
require 'cairo'
|
19
|
+
|
20
|
+
class AlphaDemo < Gtk::Window
|
21
|
+
|
22
|
+
def initialize()
|
23
|
+
super()
|
24
|
+
|
25
|
+
set_app_paintable(true)
|
26
|
+
set_title("AlphaDemo")
|
27
|
+
set_decorated(false)
|
28
|
+
set_default_size(200, 220)
|
29
|
+
signal_connect("delete_event") do
|
30
|
+
Gtk.main_quit
|
31
|
+
end
|
32
|
+
set_double_buffered(false)
|
33
|
+
|
34
|
+
signal_connect('draw') do |widget, event|
|
35
|
+
cr = widget.window.create_cairo_context
|
36
|
+
|
37
|
+
rgba = [1.0, 1.0, 1.0]
|
38
|
+
rgba << 0.0 if @supports_alpha
|
39
|
+
cr.set_source_rgba(rgba)
|
40
|
+
cr.set_operator(Cairo::OPERATOR_SOURCE)
|
41
|
+
cr.paint
|
42
|
+
|
43
|
+
twidth, theight = widget.size
|
44
|
+
|
45
|
+
cr.set_source_rgba(1.0, 0.2, 0.2, 0.6)
|
46
|
+
radius = [twidth, theight].min.to_f / 2 - 0.8
|
47
|
+
|
48
|
+
cr.arc(twidth.to_f / 2, theight.to_f / 2, radius, 0, 2.0 * Math::PI)
|
49
|
+
cr.fill_preserve
|
50
|
+
cr.stroke
|
51
|
+
end
|
52
|
+
signal_connect('screen-changed') do |widget, old_screen|
|
53
|
+
screen_changed(widget, old_screen)
|
54
|
+
end
|
55
|
+
|
56
|
+
screen_changed(self)
|
57
|
+
end
|
58
|
+
|
59
|
+
def screen_changed(widget,old_screen=nil)
|
60
|
+
tcolormap = widget.screen.rgba_colormap
|
61
|
+
@supports_alpha = !tcolormap.nil?
|
62
|
+
tcolormap ||= widget.screen.rgb_colormap
|
63
|
+
widget.set_colormap(tcolormap)
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
alpha = AlphaDemo.new
|
68
|
+
alpha.show
|
69
|
+
|
70
|
+
Gtk.main()
|