diff options
Diffstat (limited to 'ext/tk/lib/tkextlib/tcllib/swaplist.rb')
-rw-r--r-- | ext/tk/lib/tkextlib/tcllib/swaplist.rb | 151 |
1 files changed, 0 insertions, 151 deletions
diff --git a/ext/tk/lib/tkextlib/tcllib/swaplist.rb b/ext/tk/lib/tkextlib/tcllib/swaplist.rb deleted file mode 100644 index 7eaed8dbaa..0000000000 --- a/ext/tk/lib/tkextlib/tcllib/swaplist.rb +++ /dev/null @@ -1,151 +0,0 @@ -# frozen_string_literal: false -# -# tkextlib/tcllib/swaplist.rb -# by Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp) -# -# * Part of tcllib extension -# * A dialog which allows a user to move options between two lists -# - -require 'tk' -require 'tkextlib/tcllib.rb' - -# TkPackage.require('swaplist', '0.1') -TkPackage.require('swaplist') - -module Tk::Tcllib - class Swaplist_Dialog < TkWindow - PACKAGE_NAME = 'swaplist'.freeze - def self.package_name - PACKAGE_NAME - end - - def self.package_version - begin - TkPackage.require('swaplist') - rescue - '' - end - end - end -end - - -class Tk::Tcllib::Swaplist_Dialog - TkCommandNames = ['::swaplist::swaplist'.freeze].freeze - WidgetClassName = 'Swaplist'.freeze - WidgetClassNames[WidgetClassName] ||= self - - def self.show(*args) - dialog = self.new(*args) - dialog.show - [dialog.status, dialog.value] - end - def self.display(*args) - self.show(*args) - end - - def initialize(*args) - # args = (parent=nil, complete_list=[], selected_list=[], keys=nil) - keys = args.pop - if keys.kind_of?(Hash) - @selected_list = args.pop - @complete_list = args.pop - @keys = _symbolkey2str(keys) - args.push(keys) - else - @selected_list = keys - @complete_list = args.pop - @keys = {} - end - - @selected_list = [] unless @selected_list - @complete_list = [] unless @complete_list - - @variable = TkVariable.new - @status = nil - - super(*args) - end - - def create_self(keys) - # dummy - end - private :create_self - - def show - @variable.value = '' - @status = bool(tk_call(self.class::TkCommandNames[0], - @path, @variable, - @complete_list, @selected_list, - *hash_kv(@keys))) - end - alias display show - - def status - @status - end - - def value - @variable.list - end - alias selected value - - def cget_strict(slot) - slot = slot.to_s - if slot == 'complete_list' - @complete_list - elsif slot == 'selected_list' - @selected_list - else - @keys[slot] - end - end - def cget(slot) - cget_strict(slot) - end - - def configure(slot, value=None) - if slot.kind_of?(Hash) - slot.each{|k, v| configure(k, v)} - else - slot = slot.to_s - value = _symbolkey2str(value) if value.kind_of?(Hash) - if value && value != None - if slot == 'complete_list' - @complete_list = value - elsif slot == 'selected_list' - @selected_list = value - else - @keys[slot] = value - end - else - if slot == 'complete_list' - @complete_list = [] - elsif slot == 'selected_list' - @selected_list = [] - else - @keys.delete(slot) - end - end - end - self - end - - def configinfo(slot = nil) - if slot - slot = slot.to_s - if slot == 'complete_list' - [ slot, nil, nil, nil, @complete_list ] - elsif slot == 'selected_list' - [ slot, nil, nil, nil, @selected_list ] - else - [ slot, nil, nil, nil, @keys[slot] ] - end - else - @keys.collect{|k, v| [ k, nil, nil, nil, v ] } \ - << [ 'complete_list', nil, nil, nil, @complete_list ] \ - << [ 'selected_list', nil, nil, nil, @selected_list ] - end - end -end |