Sha256: 061faa69d220a51f5dacc8f2590ba1ce87a16cd10bd9ae45ba149fb60e3bdc1b
Contents?: true
Size: 949 Bytes
Versions: 3
Compression:
Stored size: 949 Bytes
Contents
# Copyright (c) 2023 M.J.N. Corino, The Netherlands # # This software is released under the MIT license. module Wx # Function used to create the correct persistent adapter for the given object. def self.create_persistent_object(obj) obj.create_persistent_object end # A shorter synonym for {Wx::PersistenceManager#register_and_restore}. def self.persistent_register_and_restore(obj, name=nil) obj.name = name if name && !name.empty? PersistenceManager.get.register_and_restore(obj) end class PersistenceManager class << self # Cache the global instance to keep it safe from GC wx_get = instance_method :get define_method :get do @the_manager ||= wx_get.bind(self).call end wx_set = instance_method :set define_method :set do |pman| wx_set.bind(self).call(pman) @the_manager = pman end end end end
Version data entries
3 entries across 3 versions & 1 rubygems