[#9052] bang method returns string always — WATANABE Hirofumi <eban@...>

わたなべです.

92 messages 2000/02/01
[#9054] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/01

まつもと ゆきひろです

[#9060] Re: bang method returns string always — WATANABE Hirofumi <eban@...> 2000/02/02

わたなべです.

[#9062] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/02

まつもと ゆきひろです

[#9070] Re: bang method returns string always — Wakou Aoyama <wakou@...> 2000/02/03

青山です。

[#9082] Re: bang method returns string always — "NAKAMURA, Hiroshi" <nakahiro@...> 2000/02/04

なひです.

[#9083] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/04

まつもと ゆきひろです

[#9259] ruby object — Minero Aoki <aamine@...> 2000/02/20

あおきです。

[#9263] Re: ruby object — matz@... (Yukihiro Matsumoto) 2000/02/21

まつもと ゆきひろです

[#9264] Re: ruby object — Minero Aoki <aamine@...> 2000/02/21

あおきです。

[#9266] Re: ruby object — matz@... (Yukihiro Matsumoto) 2000/02/22

まつもと ゆきひろです

[#9084] Re: bang method returns string always — "NAKAMURA, Hiroshi" <nakahiro@...> 2000/02/04

なひです.

[#9096] Re: bang method returns string always — Kazunori NISHI <kazunori@...> 2000/02/04

西@九大です。

[#9100] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/04

まつもと ゆきひろです

[#9154] Re: bang method returns string always — Kazunori NISHI <kazunori@...> 2000/02/08

西@九大です。

[#9158] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/08

まつもと ゆきひろです

[#9170] Re: bang method returns string always — Kazunori NISHI <kazunori@...> 2000/02/09

西@九大です。

[#9171] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/09

まつもと ゆきひろです

[#9173] Re: bang method returns string always — Koji Arai <JCA02266@...> 2000/02/09

新井です。

[#9206] Re: bang method returns string always — nobu.nakada@... 2000/02/13

なかだです。

[#9207] Re: bang method returns string always — "Akinori -Aki- MUSHA" <knu@...> 2000/02/13

 knuです。

[#9208] Re: bang method returns string always — nobu.nakada@... 2000/02/13

なかだです。

[#9211] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/13

まつもと ゆきひろです

[#9212] Re: bang method returns string always — "Akinori -Aki- MUSHA" <knu@...> 2000/02/13

 knuです。

[#9213] Re: bang method returns string always — Kazuhiro Yoshida <moriq.kazuhiro@...> 2000/02/14

もりきゅうです。ゴミまき。

[#9214] Re: bang method returns string always — gotoken@... (GOTO Kentaro) 2000/02/14

ごとけんです

[#9215] Re: bang method returns string always — WATANABE Hirofumi <Hirofumi.Watanabe@...> 2000/02/14

わたなべです.

[#9218] Re: bang method returns string always — Kazuhiro Yoshida <moriq.kazuhiro@...> 2000/02/15

もりきゅうです。

[#9219] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/15

まつもと ゆきひろです

[#9220] Re: bang method returns string always — Kazuhiro Yoshida <moriq.kazuhiro@...> 2000/02/15

もりきゅうです。

[#9222] Re: bang method returns string always — Koji Arai <JCA02266@...> 2000/02/15

新井です。

[#9224] Re: bang method returns string always — matz@... (Yukihiro Matsumoto) 2000/02/15

まつもと ゆきひろです

[#9085] xmalloc() in Windows — "Shigeo Kobayashi" <shigeo@...>

小林です。

38 messages 2000/02/04

[#9134] Re: site_ruby — gotoken@... (GOTO Kentaro)

ごとけんです

24 messages 2000/02/07
[#9135] Re: site_ruby — WATANABE Hirofumi <Hirofumi.Watanabe@...> 2000/02/07

わたなべです.

[#9143] Re: site_ruby — nobu.nakada@... 2000/02/07

なかだです。

[#9161] Re: site_ruby — gotoken@... (GOTO Kentaro) 2000/02/08

In message "[ruby-dev:9143] Re: site_ruby"

[#9290] [fix] String#* with huge string — EGUCHI Osamu <eguchi@...>

えぐち@エスアンドイー です。

17 messages 2000/02/26
[#9293] Re: [fix] String#* with huge string — matz@... (Yukihiro Matsumoto) 2000/02/26

まつもと ゆきひろです

[#9294] Re: [fix] String#* with huge string — EGUCHI Osamu <eguchi@...> 2000/02/27

えぐち@エスアンドイー です。

[#9297] GC Problem ? — "Shigeo Kobayashi" <shigeo@...>

小林です。

23 messages 2000/02/27

[ruby-dev:9251] Re: ColorSet Module for Gdk

From: Jun Adachi <adachi@...>
Date: 2000-02-17 13:21:40 UTC
List: ruby-dev #9251
安達@沖データと申します。

#すんません。これからruby-extの方をsubscribeします。

これは、動いていないっすね。毎度毎度の早とちりで、ごめんなさい。

ところで、これを修正している時に気付いたのですが、Gdk::Colorってnewだ
けあって、アクセスメソッドは何も無いんですね。それだけのために、ラッパー
クラスを作るのも馬鹿らしいので、アクセスメソッドを追加して見ました。

#色の足し算引き算は、きっと難しいだろうからパス。

パッチとそのパッチ適用後に動く奴をつけておきます。

#パッチなしの場合、GdkColorのクラスを有効にして、後のインスタンスを作っ
#ている場所でコメント部分と入れ換えて下さい。

ところで、アクセスメソッドが無い事に深い意味があるんでしょうか?
--
*------*				adachi@okidata.co.jp
|人∧鷲|				沖データ 第一研究所
| <女> |				安達 淳
|牛∨獅|
*------*
-- gdk_colors.rb(patchを期待しています)
#! /usr/local/bin/ruby

require 'gtk'

module GdkColors

=begin
  class GdkColor
    attr_reader :red
    attr_reader :green
    attr_reader :blue
    attr_reader :body

    def initialize (red, green, blue)
      @red = red
      @green = green
      @blue = blue
      @body = Gdk::Color.new (red, green, blue)
    end
  end
=end

  class GdkColorSet < Hash
    def each_color
      each { | name, color |
        yield name, color.red, color.green, color.blue
      }
    end

    def search_by_values (red, green, blue, which=:names)
      red = Range.new (red, red) if (red.is_a?(Numeric))
      green = Range.new (green, green) if (green.is_a?(Numeric))
      blue = Range.new (blue, blue) if (blue.is_a?(Numeric))
      hit = Array.new
      each { | name, color |
        next if (color.red < red.first|| color.red > red.last)
        next if (color.green < green.first|| color.green > green.last)
        next if (color.blue < blue.first|| color.blue > blue.last)
        hit.push ((which == :names)? name: color)
      }
      hit
    end
  end

  class << GdkColorSet
    def set_from_rgb (rgb_file="/usr/X11R6/lib/X11/rgb.txt")
      set = GdkColorSet.new
      color = nil
      open(rgb_file).each_line { | line |
        next if (line =~ /^\!/o)
        line.strip!
        color = line.split(/\s+/o, 4)
        aColor = Gdk::Color.new (color[0].to_i, color[1].to_i, color[2].to_i)
        set[color[3]] = aColor
      }
      set
    end
  end

  GdkStandardColors = GdkColorSet::set_from_rgb
end

if (__FILE__ == $0)
  include GdkColors
  GdkStandardColors.keys.sort.each { | name |
    color = GdkStandardColors[name]
    print "#{name}: #{color.red}, #{color.green}, #{color.blue}\n"
  }

  p GdkStandardColors.search_by_values (192..256, 0..64, 0..64)
end

-- patch:rbgdkcolor.c
*** rbgdkcolor.c.old	Sat Jan  8 20:52:27 2000
--- rbgdkcolor.c	Thu Feb 17 21:46:23 2000
***************
*** 78,83 ****
--- 78,113 ----
      return make_gdkcolor(&c);
  }
  
+ static VALUE
+ gdkcolor_red (self)
+     VALUE self;
+ {
+     GdkColor *p;
+ 
+     Data_Get_Struct(self, GdkColor, p)
+     return INT2FIX(p->red);
+ }
+ 
+ static VALUE
+ gdkcolor_green (self)
+     VALUE self;
+ {
+     GdkColor *p;
+ 
+     Data_Get_Struct(self, GdkColor, p)
+     return INT2FIX(p->green);
+ }
+ 
+ static VALUE
+ gdkcolor_blue (self)
+     VALUE self;
+ {
+     GdkColor *p;
+ 
+     Data_Get_Struct(self, GdkColor, p)
+     return INT2FIX(p->blue);
+ }
+ 
  
  /*
   * Gdk::ColorContext
***************
*** 104,109 ****
--- 134,142 ----
      gdkColor = rb_define_class_under(mGdk, "Color", rb_cData);
  
      rb_define_singleton_method(gdkColor, "new", gdkcolor_s_new, 3);
+     rb_define_method(gdkColor, "red", gdkcolor_red, 0);
+     rb_define_method(gdkColor, "green", gdkcolor_green, 0);
+     rb_define_method(gdkColor, "blue", gdkcolor_blue, 0);
  
      /*
       * Gdk::ColorContext

In This Thread

Prev Next