SCF Loader

download SCF Loader

If you can't read please download the document

description

txt

Transcript of SCF Loader

=begin(c) SketchUcation [SCF] / TIG 2014###All rights reserved.THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES; INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.###SCF_loader.rbLoads SketchUcation tools from their subfolder.=end###### load all scripts...Dir.entries(SCF::FOLDER).each{|r|if defined?(Encoding)me=File.basename(__FILE__).force_encoding("UTF-8")elseme=File.basename(__FILE__)endnext if r == File.basename(me) # ignore myselfnext if r =~ /^SCF_Dialog.rb/ ### loaded by SCFapi loaderx = File.extname(r).downcaseFile.delete(File.join(SCF::FOLDER, r)) if x == '.rbx' || x == '.rbsx' ### remove uninstalled filesnext unless x == '.rb' || x == '.rbs'Sketchup::load(File.join(SCF::FOLDER, r)) ### load it}###module SCFif defined?(Encoding)me=File.basename(__FILE__).force_encoding("UTF-8")elseme=File.basename(__FILE__)endunless file_loaded?(me)###SUBMENU = UI.menu("Plugins").add_submenu(LNAME)TOOLBAR = UI::Toolbar.new(DESC)### Make store cmdscmd = UI::Command.new(DESC){SCF_Dialog.new()}cmd.tooltip = "#{DESC}"cmd.status_bar_text = "#{SBT}"cmd.small_icon = File.join(IMAGES, 'SCF-16.png')cmd.large_icon = File.join(IMAGES, 'SCF-24.png')###SUBMENU.add_item(cmd)TOOLBAR.add_item(cmd)### Make plugins manager cmdscmd = UI::Command.new(MDESC){SCFmanager.new()}cmd.tooltip = "#{MDESC}"cmd.status_bar_text = "#{MSBT}"cmd.small_icon = File.join(IMAGES, 'SCFm-16.png')cmd.large_icon = File.join(IMAGES, 'SCFm-24.png')###SUBMENU.add_item(cmd)TOOLBAR.add_item(cmd)### Make extensions manager cmdscmd = UI::Command.new(XDESC){SCFmanagerX.new()}cmd.tooltip = "#{XDESC}"cmd.status_bar_text = "#{XSBT}"cmd.small_icon = File.join(IMAGES, 'SCFx-16.png')cmd.large_icon = File.join(IMAGES, 'SCFx-24.png')###SUBMENU.add_item(cmd)TOOLBAR.add_item(cmd)### Make install_archive to custom-pluginscmd = UI::Command.new(CDESC){RBZtool.archiveInstaller()}cmd.tooltip = "#{CDESC}"cmd.status_bar_text = "..."###SUBMENU.add_item(cmd)### Make plugin uninstallercmd = UI::Command.new(UDESC){SCFuninstaller.new()}cmd.tooltip = "#{UDESC}"cmd.status_bar_text = "..."###SUBMENU.add_item(cmd)###SUBMENU.add_item("#{TOOLBARTOGGLE}"){(TOOLBAR.visible?) ? TOOLBAR.hide : TOOLBAR.show}###TOOLBAR.show if TOOLBAR.get_last_state.abs == 1 # TB_VISIBLE/NEVER###end#unlessfile_loaded(me)###@model=Sketchup.active_model@[email protected]### remove rogue files from v1.1.1Dir.entries(PLUGINS).each{|f|File.delete(File.join(PLUGINS, f)) if f =~ /^SketchUcationTools-v1-1-1.rbz/}###end#module###