summaryrefslogtreecommitdiff
path: root/ext/tk/lib/tk/checkbutton.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ext/tk/lib/tk/checkbutton.rb')
-rw-r--r--ext/tk/lib/tk/checkbutton.rb25
1 files changed, 25 insertions, 0 deletions
diff --git a/ext/tk/lib/tk/checkbutton.rb b/ext/tk/lib/tk/checkbutton.rb
new file mode 100644
index 0000000000..a1ee5e8764
--- /dev/null
+++ b/ext/tk/lib/tk/checkbutton.rb
@@ -0,0 +1,25 @@
+#
+# tk/checkbutton.rb : treat checkbutton widget
+#
+require 'tk'
+require 'tk/radiobutton'
+
+class TkCheckButton<TkRadioButton
+ TkCommandNames = ['checkbutton'.freeze].freeze
+ WidgetClassName = 'Checkbutton'.freeze
+ WidgetClassNames[WidgetClassName] = self
+ def create_self(keys)
+ if keys and keys != None
+ tk_call_without_enc('checkbutton', @path, *hash_kv(keys, true))
+ else
+ tk_call_without_enc('checkbutton', @path)
+ end
+ end
+ private :create_self
+
+ def toggle
+ tk_send_without_enc('toggle')
+ self
+ end
+end
+TkCheckbutton = TkCheckButton