[#8606] can't build 1.1b9_28 on digital-unix — Go Nakagawa <nakagawa@...>

中川といいます。みなさんはじめまして。

15 messages 1998/07/01
[#8615] Re: can't build 1.1b9_28 on digital-unix — matz@... (Yukihiro Matsumoto) 1998/07/02

まつもと ゆきひろです

[#8621] Re: can't build 1.1b9_28 on digital-unix — Go Nakagawa <nakagawa@...> 1998/07/02

中川です。

[#8649] [BUG] Segmentation fault — IWAOKA Masahiro <iwaoka@...>

最近はすっかり ruby にお世話になっております。岩岡です。

33 messages 1998/07/08
[#8708] Re: [BUG] Segmentation fault — matz@... (Yukihiro Matsumoto) 1998/07/13

まつもと ゆきひろです

[#8710] Re: [BUG] Segmentation fault — WATANABE Hirofumi <watanabe@...> 1998/07/13

わたなべです.

[#8711] Re: [BUG] Segmentation fault — IWAOKA Masahiro <iwaoka@...> 1998/07/13

岩岡です。

[#8712] Re: [BUG] Segmentation fault — IWAOKA Masahiro <iwaoka@...> 1998/07/13

岩岡です。

[#8713] Re: [BUG] Segmentation fault — IWAOKA Masahiro <iwaoka@...> 1998/07/13

自己フォロウを続けてしまいまして申し訳ございません。

[#8715] Re: [BUG] Segmentation fault — matz@... (Yukihiro Matsumoto) 1998/07/14

まつもと ゆきひろです

[#8718] Re: [BUG] Segmentation fault — WATANABE Hirofumi <watanabe@...> 1998/07/14

わたなべです.

[#8722] Re: [BUG] Segmentation fault — ttate@... 1998/07/14

立石@JAISTです。

[#8723] Re: [BUG] Segmentation fault — matz@... (Yukihiro Matsumoto) 1998/07/14

まつもと ゆきひろです

[#8725] Re: [BUG] Segmentation fault — matz@... (Yukihiro Matsumoto) 1998/07/14

まつもと ゆきひろです

[#8726] Re: [BUG] Segmentation fault — ttate@... 1998/07/14

立石@JAISTです。

[#8727] Re: [BUG] Segmentation fault — matz@... (Yukihiro Matsumoto) 1998/07/14

まつもと ゆきひろです

[#8728] Re: [BUG] Segmentation fault — ttate@... 1998/07/14

立石です。

[#8770] ruby 1.1c0 released — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

38 messages 1998/07/17
[#8800] Re: ruby 1.1c0 released — Sinichiro Dezawa <dezawa@...> 1998/07/21

出沢です

[#8801] Re: ruby 1.1c0 released — matz@... (Yukihiro Matsumoto) 1998/07/21

まつもと ゆきひろです

[#8804] Re: ruby 1.1c0 released — TEI meiki <tei@...> 1998/07/21

こんにちは、鄭です。

[#8845] mapping a tagged file onto a class — Takao KAWAMURA <kawamura@...>

各行にフィルード名と値が含まれ、レコードの区切りは空行という、

18 messages 1998/07/23
[#8847] Re: mapping a tagged file onto a class — matz@... (Yukihiro Matsumoto) 1998/07/24

まつもと ゆきひろです

[#8848] Re: mapping a tagged file onto a class — Takao KAWAMURA <kawamura@...> 1998/07/24

In message "[ruby-list:8847] Re: mapping a tagged file onto a class"

[#8892] nil + 1, or Integer.to_i — Sinichiro Dezawa <dezawa@...>

出沢です

33 messages 1998/07/27
[#8893] Re: nil + 1, or Integer.to_i — matz@... (Yukihiro Matsumoto) 1998/07/27

まつもと ゆきひろです

[#8895] Re: nil + 1, or Integer.to_i — matz@... (Yukihiro Matsumoto) 1998/07/27

まつもと ゆきひろです

[#8903] Re: nil + 1, or Integer.to_i — Sinichiro Dezawa <dezawa@...> 1998/07/27

matz> 良く見るとto_i,to_fともにNumeric.htmlに記述があります.これ

[#8906] Re: nil + 1, or Integer.to_i — keiju@... (石塚圭樹 ) 1998/07/27

けいじゅ@日本ラショナルソフトウェアです.

[#8909] Re: nil + 1, or Integer.to_i — Sinichiro Dezawa <dezawa@...> 1998/07/27

出沢です

[#8920] Re: nil + 1, or Integer.to_i — keiju@... (石塚圭樹 ) 1998/07/28

けいじゅ@日本ラショナルソフトウェアです.

[#8921] Re: nil + 1, or Integer.to_i — matz@... (Yukihiro Matsumoto) 1998/07/28

まつもと ゆきひろです

[ruby-list:8611] patch for ruby-gtk-0.08

From: Hiroshi Igarashi <igarashi@...>
Date: 1998-07-01 21:56:14 UTC
List: ruby-list #8611
はじめまして、五十嵐@早大 です。

Rubyは1年半ほど利用させてもらっています。Rubyにはかなりお世話に
なったので少しずつでも還元していきたいです。
たいしたものはありませんが、今までに作ったスクリプトを
  http://www.ueda.info.waseda.ac.jp/~igarashi/work/ruby/index.html
に置いてあります。まだRubyで書かれたスクリプト自体があまり世に
出回ってなくて貴重なので、いくらかの価値はあるでしょうか?

現在私が主に使っている言語は Ruby:Java:KL1:Prolog = 1:1:1:1
という感じです。その時々で必要に応じ組み合わせて使っています。
Perlにはまっていた時期もありましたが、Rubyを知り捨てました^_^;


本題ですが、gtk拡張モジュールへメソッドを追加するパッチです
(メイル末尾にあります)。取り込んでいただけないでしょうか?
次のようにして非矩形ウィンドウが作れます。

require 'gtk'
window = Gtk::Window::new(Gtk::WINDOW_TOPLEVEL)
gdk_pixmap, gdk_pixmap_mask =
  Gdk::Pixmap::create_from_xpm(window.window, nil,
			       pixmap_filename)
pixmap_x, pixmap_y, pixmap_width, pixmap_height, pixmap_depth =
  gdk_pixmap.get_geometry
fixed = Gtk::Fixed::new()
window.add(fixed)
fixed.set_usize(pixmap_width, pixmap_height)
pixmap = Gtk::Pixmap::new(gdk_pixmap, gdk_pixmap_mask)
fixed.put(pixmap, 0, 0)
window.shape_combine_mask(gdk_pixmap_mask, 0, 0)

----
五十嵐  宏  (Hiroshi Igarashi)
[早稲田大学理工学部 情報学科4年 上田研究室配属]



*** gtk.c.orig	Fri Jun 26 18:04:19 1998
--- gtk.c	Wed Jul  1 04:18:51 1998
***************
*** 511,516 ****
--- 511,528 ----
  #define get_gdkbitmap(w) get_gdkdraw((w),gdkBitmap,"GdkBitmap")
  
  static VALUE
+ gdkdraw_get_geometry(self)
+     VALUE self;
+ {
+     gint x, y, width, height, depth;
+ 
+     gdk_window_get_geometry(get_gdkdrawable(self),
+ 			    &x, &y, &width, &height, &depth);
+     return ary_new3(5, INT2NUM(x), INT2NUM(y),
+ 		    INT2NUM(width), INT2NUM(height), INT2NUM(depth));
+ }
+ 
+ static VALUE
  gdkpmap_s_new(self, win, w, h, depth)
      VALUE self, win, w, h, depth;
  {
***************
*** 2055,2060 ****
--- 2067,2082 ----
  }
  
  static VALUE
+ widget_shape_combine_mask(self, gdk_pixmap_mask, x, y)
+     VALUE self, gdk_pixmap_mask, x, y;
+ {
+     gtk_widget_shape_combine_mask(get_widget(self),
+ 				  get_gdkpixmap(gdk_pixmap_mask),
+ 				  NUM2INT(x), NUM2INT(y));
+     return self;
+ }
+ 
+ static VALUE
  bbox_get_child_size_default(self)
      VALUE self;
  {
***************
*** 6086,6091 ****
--- 6132,6138 ----
      rb_define_method(gWidget, "ancestor?", widget_is_ancestor, 1);
      rb_define_method(gWidget, "child?", widget_is_child, 1);
      rb_define_method(gWidget, "window", widget_window, 0);
+     rb_define_method(gWidget, "shape_combine_mask", widget_shape_combine_mask, 3);
  
      rb_define_singleton_method(gWidget, "push_colomap", widget_push_cmap, 1);
      rb_define_singleton_method(gWidget, "push_visual", widget_push_visual, 1);
***************
*** 6706,6711 ****
--- 6756,6762 ----
      rb_define_method(gdkDrawable, "draw_image", gdkdraw_draw_image, 8);
      rb_define_method(gdkDrawable, "draw_points", gdkdraw_draw_pnts, 2);
      rb_define_method(gdkDrawable, "draw_segments", gdkdraw_draw_segs, 2);
+     rb_define_method(gdkDrawable, "get_geometry", gdkdraw_get_geometry, 0);
  
      /* GdkPixmap */
      rb_define_singleton_method(gdkPixmap, "new", gdkpmap_s_new, 4);


In This Thread

Prev Next