summaryrefslogtreecommitdiff
path: root/ext/tk/lib/tk/button.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ext/tk/lib/tk/button.rb')
-rw-r--r--ext/tk/lib/tk/button.rb27
1 files changed, 27 insertions, 0 deletions
diff --git a/ext/tk/lib/tk/button.rb b/ext/tk/lib/tk/button.rb
new file mode 100644
index 0000000000..15e87c300d
--- /dev/null
+++ b/ext/tk/lib/tk/button.rb
@@ -0,0 +1,27 @@
+#
+# tk/button.rb : treat button widget
+#
+require 'tk'
+require 'tk/label'
+
+class TkButton<TkLabel
+ TkCommandNames = ['button'.freeze].freeze
+ WidgetClassName = 'Button'.freeze
+ WidgetClassNames[WidgetClassName] = self
+ def create_self(keys)
+ if keys and keys != None
+ tk_call_without_enc('button', @path, *hash_kv(keys, true))
+ else
+ tk_call_without_enc('button', @path)
+ end
+ end
+ private :create_self
+
+ def invoke
+ _fromUTF8(tk_send_without_enc('invoke'))
+ end
+ def flash
+ tk_send_without_enc('flash')
+ self
+ end
+end