# File lib/tapkit/control/keyvaluecoding.rb, line 33
                def take_value( key, value )
                        writer = "#{key}="
                        if respond_to? writer then
                                __send__(writer, value)
                        elsif respond_to? :take_stored_value then
                                take_stored_value(key, value)
                        elsif directly? then
                                instance_eval "@#{key} = value"
                        else
                                begin
                                        handle_take_value(key, value)
                                rescue UnknownKeyError
                                        _raise_error(self, key)
                                end
                        end
                end