[#8985] file editing using Regular Expression — Ryo HAYASAKA <hayasaka@...>

早坂@会津大学です。

24 messages 1998/08/05
[#8987] Re: file editing using Regular Expression — WATANABE Hirofumi <watanabe@...> 1998/08/05

わたなべです.

[#8989] Re: file editing using Regular Expression — Ryo HAYASAKA <hayasaka@...> 1998/08/05

早坂@会津大学です。

[#8990] Re: file editing using Regular Expression — WATANABE Hirofumi <watanabe@...> 1998/08/05

わたなべです.

[#8992] Re: file editing using Regular Expression — Inaba Hiroto <inaba@...> 1998/08/05

From: WATANABE Hirofumi <watanabe@ase.ptg.sony.co.jp>

[#8993] Re: file editing using Regular Expression — matz@... (Yukihiro Matsumoto) 1998/08/06

まつもと ゆきひろです

[#8994] Re: file editing using Regular Expression — Inaba Hiroto <inaba@...> 1998/08/06

From: matz@netlab.co.jp (Yukihiro Matsumoto)

[#8995] Re: file editing using Regular Expression — matz@... (Yukihiro Matsumoto) 1998/08/07

まつもと ゆきひろです

[#8996] Re: file editing using Regular Expression — Takahiro Maebashi <maebashi@...> 1998/08/07

前橋です。

[#8997] Perl Conference (Re: Re: file editing using Regular Expression) — matz@... (Yukihiro Matsumoto) 1998/08/07

まつもと ゆきひろです

[#9008] FAQ — gotoken@... (GOTO Kentaro)

ごとけんです

19 messages 1998/08/10
[#9009] Re: FAQ — matz@... (Yukihiro Matsumoto) 1998/08/10

まつもと ゆきひろです

[#9010] Re: FAQ — gotoken@... (GOTO Kentaro) 1998/08/10

ごとけんです

[#9016] あなたのウロコみせてください (Re: FAQ) — matz@... (Yukihiro Matsumoto) 1998/08/10

まつもと ゆきひろです

[#9048] Re: python vs ruby (Re: あなたのウロコみせてください) — 助田 雅紀 <masaki.suketa@...>

助田です。

13 messages 1998/08/11
[#9058] Re: python vs ruby (Re: あなたのウロコみせてください ) — Kikutani Makoto <kikutani@...> 1998/08/11

まあ、self以外はべつにPythonもきらいではないのですが、

[#9072] irb -m — gotoken@... (GOTO Kentaro)

ごとけんです

45 messages 1998/08/12
[#9081] Re: irb -m — keiju@... (石塚圭樹 ) 1998/08/12

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

[#9088] Re: irb -m — matz@... (Yukihiro Matsumoto) 1998/08/13

まつもと ゆきひろです

[#9102] Re: irb -m — keiju@... (石塚圭樹 ) 1998/08/14

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

[#9103] Re: irb -m — matz@... (Yukihiro Matsumoto) 1998/08/14

まつもと ゆきひろです

[#9104] Re: irb -m — keiju@... (石塚圭樹 ) 1998/08/14

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

[#9105] Re: irb -m — matz@... (Yukihiro Matsumoto) 1998/08/14

まつもと ゆきひろです

[#9106] Re: irb -m — keiju@... (石塚圭樹 ) 1998/08/14

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

[#9107] Re: irb -m — matz@... (Yukihiro Matsumoto) 1998/08/14

まつもと ゆきひろです

[#9108] Re: irb -m — gotoken@... (GOTO Kentaro) 1998/08/14

ごとけんです

[#9109] Re: irb -m — matz@... (Yukihiro Matsumoto) 1998/08/14

まつもと ゆきひろです

[#9110] Re: irb -m — gotoken@... (GOTO Kentaro) 1998/08/14

ごとけんです

[#9123] Re: irb -m — keiju@... (石塚圭樹 ) 1998/08/16

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

[#9124] Re: irb -m — gotoken@... (GOTO Kentaro) 1998/08/17

ごとけんです

[#9144] Matrix#to_i [Re: irb -m] — keiju@... (石塚圭樹 ) 1998/08/17

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

[#9091] NT 用 ruby-1.1c — Sinichiro Dezawa <dezawa@...>

出沢です

23 messages 1998/08/13
[#9093] Re: NT 用 ruby-1.1c — WATANABE Hirofumi <watanabe@...> 1998/08/13

わたなべです.

[#9180] induced_from — gotoken@... (GOTO Kentaro)

ごとけんです

16 messages 1998/08/18

[#9256] Re: 式はどこで終るか — 助田 雅紀 <masaki.suketa@...>

助田です。

17 messages 1998/08/24
[#9257] Re: 式はどこで終るか — Sinichiro Dezawa <dezawa@...> 1998/08/24

出沢です

[#9261] Re: 式はどこで終るか — Wakou Aoyama <wakou@...> 1998/08/24

青山です。

[#9262] telnet.rb [Re: 式はどこで終るか ] — Sinichiro Dezawa <dezawa@...> 1998/08/25

出沢です

[#9269] Re: telnet.rb [Re: 式はどこで終るか ] — Wakou Aoyama <wakou@...> 1998/08/26

青山です。

[#9267] 正規表現 — "民斗 " <tommy@...>

民斗です。

17 messages 1998/08/25
[#9268] Re: 正規表現 — matz@... (Yukihiro Matsumoto) 1998/08/25

まつもと ゆきひろです

[#9278] Re: 正規表現 — "民斗 " <tommy@...> 1998/08/26

民斗です。

[#9351] shttpsrv-1.0 & grepsvr-1.1 — Shin-ichro Hara <sinara@...>

原です。

14 messages 1998/08/30

[ruby-list:9004] Gtk::Statusbar

From: Kazumi Okamoto <kazusan@...>
Date: 1998-08-09 11:20:48 UTC
List: ruby-list #9004
岡本@姑獲鳥の夏はおもしろかったです。

ちょっと、まとまった時間ができたので Gtk module に
Gtk::Statusbar を追加しました。
ついでに、 Gtk::label::get も追加しています。

使い方は、こんな感じです。
statusbar の生成
statusbar = Gtk::Statusbar::new()

statusbar の id 確保
id = statusbar.get_context_id("test")

data の push 
mid = statusbar.push(id, text)

data の pop
statusbar.pop(id)

data の削除
statusbar.remove(id, mid)

です。詳しいことは gtk のドキュメントを参照してください。


差分は ruby-gtk-0.09 からのものになっています。
Gtk::label::set も含んでいます。
ちょっと長いですが、メールの最後につけてあります。

例のごとく、かなり適当に書いている(^^;;;
ので、一応チェックしてもらえますか? > まつもとさん

ところで、新しいウィジェットを追加するときに
書く場所ってどこがいいんでしょう?
今回は hbox のサブクラスにしたので、hbox のしたに書きましたが
何かルールはありますか?

でわでわ。

--
岡本和己 
E-mail: kazusan@pluto.dti.ne.jp


--- gtk.org	Wed Jul 22 14:47:49 1998
+++ gtk.c	Sun Aug  9 19:54:54 1998
@@ -87,6 +87,7 @@
 static VALUE gPreview;
 static VALUE gProgressBar;
 static VALUE gScrolledWin;
+static VALUE gStatusBar;
 static VALUE gTable;
 static VALUE gText;
 static VALUE gToolbar;
@@ -2819,6 +2820,23 @@
 }
 
 static VALUE
+label_get(self)
+     VALUE self;
+{
+  gchar** str;
+  gtk_label_get(GTK_LABEL(get_widget(self)), str);
+  return str_new2(*str);
+}
+
+static VALUE
+label_set(self, str)
+     VALUE self, str;
+{
+     gtk_label_set(GTK_LABEL(get_widget(self)), STR2CSTR(str));
+     return Qnil;
+}
+
+static VALUE
 list_initialize(self)
     VALUE self;
 {
@@ -4931,6 +4949,58 @@
 }
 
 static VALUE
+statusbar_initialize(self)
+     VALUE self;
+{
+  set_widget(self, gtk_statusbar_new());
+  return Qnil;
+}
+
+static VALUE
+statusbar_push(self, id, text)
+     VALUE self;
+     VALUE id;
+     VALUE text;
+{
+  gint message_id;
+  message_id = gtk_statusbar_push(GTK_STATUSBAR(get_widget(self)), 
+				  NUM2INT(id), STR2CSTR(text));
+  return INT2FIX(message_id);
+}
+
+static VALUE
+statusbar_pop(self, id)
+     VALUE self;
+     VALUE id;
+{
+  gtk_statusbar_pop(GTK_STATUSBAR(get_widget(self)), NUM2INT(id));
+  return Qnil;
+
+}
+
+static VALUE
+statusbar_get_context_id(self, text)
+     VALUE self;
+     VALUE text;
+{
+  gint context_id;
+  context_id = gtk_statusbar_get_context_id(GTK_STATUSBAR(get_widget(self)),
+					    STR2CSTR(text));
+  return INT2FIX(context_id);
+}
+
+static VALUE
+statusbar_remove(self, cid, mid)
+     VALUE self;
+     VALUE cid;
+     VALUE mid;
+{
+  gtk_statusbar_remove(GTK_STATUSBAR(get_widget(self)),
+		       NUM2INT(cid), NUM2INT(mid)); 
+  return Qnil;
+}
+
+static VALUE
 combo_initialize(self)
     VALUE self;
 {
@@ -6224,6 +6294,7 @@
     gHBBox = rb_define_class_under(mGtk, "HButtonBox", gBBox);
     gVBBox = rb_define_class_under(mGtk, "VButtonBox", gBBox);
     gHBox = rb_define_class_under(mGtk, "HBox", gBox);
+    gStatusBar = rb_define_class_under(mGtk, "Statusbar", gHBox);
     gCombo = rb_define_class_under(mGtk, "Combo", gHBox);
     gPaned = rb_define_class_under(mGtk, "Paned", gContainer);
     gHPaned = rb_define_class_under(mGtk, "HPaned", gPaned);
@@ -6644,6 +6715,13 @@
     /* HBox */
     rb_define_method(gHBox, "initialize", hbox_initialize, -1);
 
+    /* Statusbar */
+    rb_define_method(gStatusBar, "initialize", statusbar_initialize, 0);
+    rb_define_method(gStatusBar, "push", statusbar_push, 2);
+    rb_define_method(gStatusBar, "pop", statusbar_pop, 1);
+    rb_define_method(gStatusBar, "get_context_id", statusbar_get_context_id, 1);
+    rb_define_method(gStatusBar, "remove", statusbar_remove, 2);
+
     /* Combo */
     rb_define_method(gCombo, "initialize", combo_initialize, 0);
     rb_define_method(gCombo, "set_value_in_list", combo_val_in_list, 2);
@@ -6738,6 +6816,8 @@
 
     /* Label */
     rb_define_method(gLabel, "initialize", label_initialize, 1);
+    rb_define_method(gLabel, "get", label_get, 0);
+    rb_define_method(gLabel, "set", label_set, 1);
 
     /* List */
     rb_define_method(gList, "initialize", list_initialize, 0);

In This Thread

Prev Next