summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog10
-rw-r--r--ext/tk/lib/tk/autoload.rb2
-rw-r--r--ext/tk/lib/tk/entry.rb2
-rw-r--r--ext/tk/lib/tk/scrollable.rb41
4 files changed, 38 insertions, 17 deletions
diff --git a/ChangeLog b/ChangeLog
index 4e61de3d7e..7bac712018 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+Fri Nov 5 18:12:42 2004 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
+
+ * ext/tk/lib/tk/scrollable.rb: divide Scrollable module into
+ X_Scrollable and Y_Scrollable
+
+ * ext/tk/lib/tk/entry.rb: include X_Scrollable instead of Scrollable
+
+ * ext/tk/lib/tk/autoload.rb: define autoload for X_Scrollable and
+ Y_Scrollable
+
Fri Nov 5 16:05:32 2004 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk.rb: TkComm._at() supprts both of "@x,y" and "@x"
diff --git a/ext/tk/lib/tk/autoload.rb b/ext/tk/lib/tk/autoload.rb
index bccd6c4c61..3006b559d6 100644
--- a/ext/tk/lib/tk/autoload.rb
+++ b/ext/tk/lib/tk/autoload.rb
@@ -173,6 +173,8 @@ autoload :TkXIM, 'tk/xim'
module Tk
autoload :Clock, 'tk/clock'
autoload :OptionObj, 'tk/optionobj'
+ autoload :X_Scrollable, 'tk/scrollable'
+ autoload :Y_Scrollable, 'tk/scrollable'
autoload :Scrollable, 'tk/scrollable'
autoload :Wm, 'tk/wm'
diff --git a/ext/tk/lib/tk/entry.rb b/ext/tk/lib/tk/entry.rb
index 2a8a9d413c..a3c0e51cdd 100644
--- a/ext/tk/lib/tk/entry.rb
+++ b/ext/tk/lib/tk/entry.rb
@@ -9,7 +9,7 @@ require 'tk/scrollable'
require 'tk/validation'
class TkEntry<TkLabel
- include Scrollable
+ include X_Scrollable
include TkValidation
TkCommandNames = ['entry'.freeze].freeze
diff --git a/ext/tk/lib/tk/scrollable.rb b/ext/tk/lib/tk/scrollable.rb
index 74816a9228..ec27b76467 100644
--- a/ext/tk/lib/tk/scrollable.rb
+++ b/ext/tk/lib/tk/scrollable.rb
@@ -4,17 +4,12 @@
require 'tk'
module Tk
- module Scrollable
+ module X_Scrollable
def xscrollcommand(cmd=Proc.new)
configure_cmd 'xscrollcommand', cmd
# Tk.update # avoid scrollbar trouble
self
end
- def yscrollcommand(cmd=Proc.new)
- configure_cmd 'yscrollcommand', cmd
- # Tk.update # avoid scrollbar trouble
- self
- end
def xview(*index)
if index.size == 0
@@ -31,6 +26,25 @@ module Tk
xview('scroll', *index)
end
+ def xscrollbar(bar=nil)
+ if bar
+ @xscrollbar = bar
+ @xscrollbar.orient 'horizontal'
+ self.xscrollcommand {|*arg| @xscrollbar.set(*arg)}
+ @xscrollbar.command {|*arg| self.xview(*arg)}
+ Tk.update # avoid scrollbar trouble
+ end
+ @xscrollbar
+ end
+ end
+
+ module Y_Scrollable
+ def yscrollcommand(cmd=Proc.new)
+ configure_cmd 'yscrollcommand', cmd
+ # Tk.update # avoid scrollbar trouble
+ self
+ end
+
def yview(*index)
if index.size == 0
list(tk_send_without_enc('yview'))
@@ -46,16 +60,6 @@ module Tk
yview('scroll', *index)
end
- def xscrollbar(bar=nil)
- if bar
- @xscrollbar = bar
- @xscrollbar.orient 'horizontal'
- self.xscrollcommand {|*arg| @xscrollbar.set(*arg)}
- @xscrollbar.command {|*arg| self.xview(*arg)}
- Tk.update # avoid scrollbar trouble
- end
- @xscrollbar
- end
def yscrollbar(bar=nil)
if bar
@yscrollbar = bar
@@ -67,4 +71,9 @@ module Tk
@yscrollbar
end
end
+
+ module Scrollable
+ include X_Scrollable
+ include Y_Scrollable
+ end
end