# Copyright 2004, @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 cameraPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" camera = page.camera if (camera) UI.messagebox camera else UI.messagebox "Failure" end end def delayTimePageTest model = Sketchup.active_model pages = model.pages page = page.add "My Page" time = page.delay_time if (time) UI.messagebox time else UI.messagebox "Failure" end end def delayTimeEqualsPageTest model = Sketchup.active_model pages = model.pages page = page.add "My Page" time = page.delay_time=10 if (time) UI.messagebox time else UI.messagebox "Failure" end end def descriptionPageTest model = Sketchup.active_model pages = model.pages page = page.add "My Page" description = page.description if (description) UI.messagebox description else UI.messagebox "Failure" end end def descriptionEqualsPageTest model = Sketchup.active_model pages = model.pages page = page.add "My Page" description = page.description="This is my first page" if (description) UI.messagebox description else UI.messagebox "Failure" end end def hiddenEntitiesPageTest model = Sketchup.active_model pages = model.pages page = page.add "My Page" entities = page.hidden_entities if (entities) UI.messagebox entities else UI.messagebox "Failure" end end def labelPageTest model = Sketchup.active_model pages = model.pages page = page.add "My Page" lable = page.label if (lable) UI.messagebox lable else UI.messagebox "Failure" end end def layersPageTest model = Sketchup.active_model pages = model.pages page = page.add "My Page" layers = page.layers if (layers) UI.messagebox layers else UI.messagebox "Failure" end end def namePageTest model = Sketchup.active_model pages = model.pages page = page.add "My Page" name= page.name if (name) UI.messagebox layers else UI.messagebox "Failure" end end def nameEqualsPageTest model = Sketchup.active_model pages = model.pages page = page.add "My Page" # We change the page name below name = page.name="Your Page" if (name) UI.messagebox layers else UI.messagebox "Failure" end end def renderingOptionsPageTest model = Sketchup.active_model pages = model.pages page = page.add "My Page" renderingoptions = page.rendering_options if (renderingoptions) UI.messagebox renderingoptions else UI.messagebox "Failure" end end def setVisibilityPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" page = page.set_visibility if (page) UI.messagebox page else UI.messagebox "Failure" end end def shadowInfoPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" shadowinfo = page.shadow_info if (shadowinfo) UI.messagebox shadowinfo else UI.messagebox "Failure" end end def transitionTimePageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" time = page.transition_time if (time) UI.messagebox time else UI.messagebox "Failure" end end def transitionTimeEqualsPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" time = page.transition_time=20 if (time) UI.messagebox time else UI.messagebox "Failure" end end def updatePageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.update if (status) UI.messagebox status else UI.messagebox "Failure" end end def useAxesEqualsPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" # Set use_axes to false status = page.use_axes=false if (status) UI.messagebox status else UI.messagebox "Failure" end end def useAxesPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_axes? if (status) UI.messagebox status else UI.messagebox "Failure" end end def useCameraEqualsPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_camera=false if (status) UI.messagebox status else UI.messagebox "Failure" end end def useCameraPageTEst model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_camera if (status) UI.messagebox status else UI.messagebox "Failure" end end def useHiddenEqualsPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_hidden=false if (status) UI.messagebox status else UI.messagebox "Failure" end end def useHiddenPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_hidden if (status) UI.messagebox status else UI.messagebox "Failure" end end def useHiddenLayersEqualsPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_hidden_layers=false if (status) UI.messagebox status else UI.messagebox "Failure" end end def useHiddenLayersPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_hidden_layers if (status) UI.messagebox status else UI.messagebox "Failure" end end def useRenderingOptionsEqualsPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_rendering_options=false if (status) UI.messagebox status else UI.messagebox "Failure" end end def useRenderingOptionsPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_rendering_options if (status) UI.messagebox status else UI.messagebox "Failure" end end def useSectionPlanesEqualsPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_section_planes=false if (status) UI.messagebox status else UI.messagebox "Failure" end end def useSectionPlanesPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_section_planes if (status) UI.messagebox status else UI.messagebox "Failure" end end def useShadowInfoEqualsPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_shadow_info=false if (status) UI.messagebox status else UI.messagebox "Failure" end end def useShadowInfoPageTest model = Sketchup.active_model pages = model.pages page = pages.add "My Page" status = page.use_shadow_info if (status) UI.messagebox status else UI.messagebox "Failure" end end if( not file_loaded?("pagetests.rb") ) # This will add a separator to the menu, but only once add_separator_to_menu("Plugins") plugins_menu = UI.menu("Plugins") Page_menu = plugins_menu.add_submenu("Page Tests") Page_menu.add_item("Page.camera") { cameraPageTest } Page_menu.add_item("Page.delay_time") { delayTimePageTest } Page_menu.add_item("Page.delay_time=") { delayTimeEqualsPageTest } Page_menu.add_item("Page.description") { descriptionPageTest } Page_menu.add_item("Page.description=") { descriptionEqualsPageTest } Page_menu.add_item("Page.hidden_entities") { hiddenEntitiesPageTest } Page_menu.add_item("Page.label") { labelPageTest } Page_menu.add_item("Page.layers") { layersPageTest } Page_menu.add_item("Page.name") { namePageTest } Page_menu.add_item("Page.name=") { nameEqualsPageTest } Page_menu.add_item("Page.rendering_options") { renderingOptionsPageTest } Page_menu.add_item("Page.set_visibility") { setVisibilityPageTest } Page_menu.add_item("Page.shadow_info") { shadowInfoPageTest } Page_menu.add_item("Page.transition_time") { transitionTimePageTest } Page_menu.add_item("Page.transition_time=") { transitionTimeEqualsPageTest } Page_menu.add_item("Page.update") { updatePageTest } Page_menu.add_item("Page.use_axes=") { useAxesEqualsPageTest } Page_menu.add_item("Page.use_axes") { useAxesPageTest } Page_menu.add_item("Page.use_camera=") { useCameraEqualsPageTest } Page_menu.add_item("Page.use_camera?") { useCameraPageTest } Page_menu.add_item("Page.use_hidden=") { useHiddenEqualsPageTest } Page_menu.add_item("Page.use_hidden?") { useHiddenPageTest } Page_menu.add_item("Page.use_hidden_layers=") { useHiddenLayersEqualsPageTest } Page_menu.add_item("Page.use_hidden_layers?") { useHiddenLayersPageTest } Page_menu.add_item("Page.use_rendering_options=") { useRenderingOptionsEqualsPageTest } Page_menu.add_item("Page.use_rendering_options?") { useRenderingOptionsPageTest } Page_menu.add_item("Page.use_section_planes=") { useSectionPlanesEqualsPageTest } Page_menu.add_item("Page.use_section_planes?") { useSectionPlanesPageTest } Page_menu.add_item("Page.use_shadow_info=") { useShadowInfoEqualsPageTest } Page_menu.add_item("Page.use_shadow_info?") { useShadowInfoPageTest } end #----------------------------------------------------------------------------- file_loaded("pagetests.rb")