# Copyright 2005, @Last Software, Inc. # This software is provided as an example of using the Ruby interface # to SketchUp. # Permission to use, copy, modify, and distribute this software for # any purpose and without fee is hereby granted, provided that the above # copyright notice appear in all copies. # 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. #----------------------------------------------------------------------------- require 'sketchup.rb' #----------------------------------------------------------------------------- def blendClassColorTest color1 = Sketchup::Color.new "OldLace" color2 = Sketchup::Color.new "AliceBlue" begin color = Sketchup::Color.blend color1, color2, 1 rescue UI.messagebox $!.message end if (color) UI.messagebox color else UI.messagebox "Failure" end end def nameClassColorTest array = Sketchup::Color.names if (array) UI.messagebox array[0] else UI.messagebox "Failure" end end def newClassColorTest color = Sketchup::Color.new "OldLace" if (color) UI.messagebox color else UI.messagebox "Failure" end end def alphaColorTest color = Sketchup::Color.new "OldLace" alpha = color.alpha if (alpha) UI.messagebox alpha else UI.messagebox "Failure" end end def alphaEqualsColorTest color = Sketchup::Color.new "AliceBlue" alpha = color.alpha=200 if (alpha) UI.messagebox alpha else UI.messagebox "Failure" end end def blendColorTest color1 = Sketchup::Color.new "OldLace" color2 = Sketchup::Color.new "AliceBlue" color3 = color1.blend color2, 10 UI.messagebox $!.message if (color3) UI.messagebox color3 else UI.messagebox "Failure" end end def blueColorTest color = Sketchup::Color.new "AliceBlue" setting = color.blue if (setting) UI.messagebox setting else UI.messagebox "Failure" end end def blueEqualsColorTest color = Sketchup::Color.new "AliceBlue" begin setting = color.blue=300 rescue UI.messagebox $!.message end if (setting) UI.messagebox setting else UI.messagebox "Failure" end end def greenColorTest color = Sketchup::Color.new "AliceBlue" setting = color.green if (setting) UI.messagebox setting else UI.messagebox "Failure" end end def greenEqualsColorTest color = Sketchup::Color.new "AliceBlue" setting = color.green=200 if (setting) UI.messagebox setting else UI.messagebox "Failure" end end def redColorTest color = Sketchup::Color.new "AliceBlue" setting = color.red if (setting) UI.messagebox setting else UI.messagebox "Failure" end end def redEqualsColorTest color = Sketchup::Color.new "AliceBlue" setting = color.red=200 if (setting) UI.messagebox setting else UI.messagebox "Failure" end end def toAColorTest color = Sketchup::Color.new "AliceBlue" ascii = color.to_a if (ascii) UI.messagebox ascii else UI.messagebox "Failure" end end def toIColorTest color = Sketchup::Color.new "AliceBlue" integer = color.to_i if (integer) UI.messagebox integer else UI.messagebox "Failure" end end def toSColorTest color = Sketchup::Color.new "AliceBlue" str = color.to_s if (str) UI.messagebox str else UI.messagebox "Failure" end end if( not file_loaded?("colortests.rb") ) # This will add a separator to the menu, but only once add_separator_to_menu("Plugins") plugins_menu = UI.menu("Plugins") Color_menu = plugins_menu.add_submenu("Color Tests") Color_menu.add_item("Sketchup::Color.blend") { blendClassColorTest } Color_menu.add_item("Sketchup::Color.name") { nameClassColorTest } Color_menu.add_item("Sketchup::Color.new") { newClassColorTest } Color_menu.add_item("Color.alpha") { alphaColorTest } Color_menu.add_item("Color.alpha=") { alphaEqualsColorTest } Color_menu.add_item("Color.blend") { blendColorTest } Color_menu.add_item("Color.blue") { blueColorTest } Color_menu.add_item("Color.blue=") { blueEqualsColorTest } Color_menu.add_item("Color.green") { greenColorTest } Color_menu.add_item("Color.green=") { greenEqualsColorTest } Color_menu.add_item("Color.red") { redColorTest } Color_menu.add_item("Color.red=") { redEqualsColorTest } Color_menu.add_item("Color.to_a") { toAColorTest } Color_menu.add_item("Color.to_i") { toIColorTest } Color_menu.add_item("Color.to_s") { toSColorTest } end #----------------------------------------------------------------------------- file_loaded("colortests.rb")