sketchup-api-stubs 0.7.4 → 0.7.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/sketchup-api-stubs.rb +1 -1
- data/lib/sketchup-api-stubs/sketchup.rb +147 -145
- data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +322 -318
- data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +172 -172
- data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +126 -126
- data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
- data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +400 -400
- data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +661 -661
- data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +498 -492
- data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +478 -478
- data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +263 -263
- data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +141 -141
- data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +522 -522
- data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +691 -691
- data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
- data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +573 -573
- data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +411 -411
- data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +179 -174
- data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
- data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +515 -514
- data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
- data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -143
- data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +353 -353
- data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +349 -349
- data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
- data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
- data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
- data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -371
- data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
- data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
- data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -220
- data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +567 -567
- data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
- data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
- data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +183 -183
- data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +387 -387
- data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -204
- data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +344 -344
- data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
- data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +694 -694
- data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1519 -1519
- data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
- data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
- data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
- data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
- data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +144 -140
- data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +157 -157
- data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +209 -209
- data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +152 -152
- data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +286 -281
- data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
- data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +302 -328
- data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +478 -577
- data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
- data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +122 -122
- data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -281
- data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +577 -562
- data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +604 -593
- data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
- data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +257 -257
- data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
- data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -194
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +362 -329
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -72
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -102
- data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -312
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -38
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
- data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +396 -390
- data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +502 -508
- data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
- data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1126 -1119
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -125
- data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +545 -544
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -59
- data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +126 -125
- data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +751 -750
- data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +104 -104
- data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +699 -697
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +285 -285
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +62 -62
- data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +417 -409
- data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -226
- data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -190
- data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +405 -393
- data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -82
- data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +306 -303
- data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +327 -285
- data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +422 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +427 -244
- data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +249 -136
- data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +48 -48
- data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
- data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
- data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +112 -112
- data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
- data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +414 -416
- data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +318 -311
- data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -141
- data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -95
- data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1651 -1638
- data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +357 -356
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +131 -132
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +284 -284
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
- data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +797 -770
- data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +363 -353
- data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -76
- data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +478 -456
- data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
- data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +364 -364
- data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -44
- data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
- data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +459 -454
- data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
- data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +212 -212
- data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +257 -257
- data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -57
- data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
- data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +217 -211
- data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
- data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +217 -225
- data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
- data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +835 -829
- data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
- data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -154
- data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +71 -61
- data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
- data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1307 -1301
- data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +45 -43
- data/lib/sketchup-api-stubs/stubs/UI/Command.rb +317 -310
- data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +387 -356
- data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +255 -229
- data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +240 -240
- data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +633 -633
- data/lib/sketchup-api-stubs/stubs/_top_level.rb +311 -311
- data/lib/sketchup-api-stubs/stubs/array.rb +741 -741
- data/lib/sketchup-api-stubs/stubs/geom.rb +351 -348
- data/lib/sketchup-api-stubs/stubs/languagehandler.rb +92 -92
- data/lib/sketchup-api-stubs/stubs/length.rb +278 -278
- data/lib/sketchup-api-stubs/stubs/numeric.rb +249 -249
- data/lib/sketchup-api-stubs/stubs/sketchup.rb +1342 -1310
- data/lib/sketchup-api-stubs/stubs/sketchupextension.rb +353 -353
- data/lib/sketchup-api-stubs/stubs/string.rb +24 -24
- data/lib/sketchup-api-stubs/stubs/ui.rb +668 -667
- metadata +4 -2
@@ -1,353 +1,353 @@
|
|
1
|
-
# Copyright:: Copyright 2020 Trimble Inc.
|
2
|
-
# License:: The MIT License (MIT)
|
3
|
-
|
4
|
-
# The SketchupExtension class contains methods allowing you to create and
|
5
|
-
# manipulate SketchUp extensions. Extensions are Ruby scripts that can be
|
6
|
-
# loaded and unloaded using the Extension manager (Extensions panel of the
|
7
|
-
# Preferences dialog box). Generally you should register your ruby scripts as
|
8
|
-
# an extension to give SketchUp users the ability to disable it through the
|
9
|
-
# user interface.
|
10
|
-
#
|
11
|
-
# The idea here is to take the ruby script that actually creates your
|
12
|
-
# functionality and place it in a folder somewhere outside of the /Plugins
|
13
|
-
# folder, most commonly a subdirectory like /Plugins/MyExtension. Then
|
14
|
-
# you create a new ruby script inside the /Plugins directory that will
|
15
|
-
# set up the extension entry and load your original script if the user
|
16
|
-
# has your extension turned on.
|
17
|
-
#
|
18
|
-
# Here is an example extension loading script. For this example, the
|
19
|
-
# following code would be saved in /Plugins/StairTools.rb, and the
|
20
|
-
# actual plugin itself would live in /Plugins/StairTools/core.rb.
|
21
|
-
#
|
22
|
-
# You can find two example extensions that ship with SketchUp,
|
23
|
-
# su_dynamiccomponents.rb and su_sandboxtools.rb, under the /Plugins/ folder.
|
24
|
-
#
|
25
|
-
# @example
|
26
|
-
# # Create an entry in the Extension list that loads a script called
|
27
|
-
# # core.rb.
|
28
|
-
# require 'sketchup.rb'
|
29
|
-
# require 'extensions.rb'
|
30
|
-
#
|
31
|
-
# stair_extension = SketchupExtension.new('Stair Tools", "StairTools/core.rb')
|
32
|
-
# stair_extension.version = '1.0'
|
33
|
-
# stair_extension.description = 'Tools to draw stairs automatically.'
|
34
|
-
# Sketchup.register_extension(stair_extension, true)
|
35
|
-
#
|
36
|
-
# @version SketchUp 6.0
|
37
|
-
class SketchupExtension
|
38
|
-
|
39
|
-
# Instance Methods
|
40
|
-
|
41
|
-
# Loads the extension, meaning the underlying ruby script is immediately
|
42
|
-
# interpreted. This is the equivalent of checking the extension's checkbox
|
43
|
-
# in the Preferences > Extensions list.
|
44
|
-
#
|
45
|
-
# @example
|
46
|
-
# # This will register the extension, a necessary step for it to appear
|
47
|
-
# # in SketchUp's Preferences > Extensions list
|
48
|
-
# ext_c = SketchupExtension.new('Stair Tools C', 'StairTools/core.rb')
|
49
|
-
# Sketchup.register_extension(ext_c, false)
|
50
|
-
#
|
51
|
-
# # And this will load the extension.
|
52
|
-
# ext_c.check
|
53
|
-
#
|
54
|
-
# @return [Boolean] whether the load succeeded
|
55
|
-
#
|
56
|
-
# @version SketchUp 8.0 M2
|
57
|
-
def check
|
58
|
-
end
|
59
|
-
|
60
|
-
# The copyright method returns the copyright string which appears beneath
|
61
|
-
# an extension inside the Extensions Manager dialog.
|
62
|
-
#
|
63
|
-
# @example
|
64
|
-
# # Create an entry in the Extension list that loads a script called
|
65
|
-
# # core.rb.
|
66
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
67
|
-
# extension.copyright = '2008'
|
68
|
-
# copyright = extension.copyright
|
69
|
-
#
|
70
|
-
# @return [String] the Extension copyright
|
71
|
-
#
|
72
|
-
# @version SketchUp 6.0
|
73
|
-
def copyright
|
74
|
-
end
|
75
|
-
|
76
|
-
# The copyright= method sets the copyright string which appears beneath
|
77
|
-
# an extension inside the Extensions Manager dialog.
|
78
|
-
#
|
79
|
-
# @example
|
80
|
-
# # Create an entry in the Extension list that loads a script called
|
81
|
-
# # core.rb.
|
82
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
83
|
-
# extension.copyright = '2008'
|
84
|
-
# copyright = extension.copyright
|
85
|
-
#
|
86
|
-
# @param [String] copyright
|
87
|
-
# The copyright to set
|
88
|
-
#
|
89
|
-
# @return [String] the new copyright
|
90
|
-
#
|
91
|
-
# @version SketchUp 6.0
|
92
|
-
def copyright=(copyright)
|
93
|
-
end
|
94
|
-
|
95
|
-
# The creator method returns the creator string which appears beneath
|
96
|
-
# an extension inside the Extensions Manager dialog.
|
97
|
-
#
|
98
|
-
# @example
|
99
|
-
# # Create an entry in the Extension list that loads a script called
|
100
|
-
# # core.rb.
|
101
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
102
|
-
# extension.creator = 'Trimble Navigation, Inc.'
|
103
|
-
# creator = extension.creator
|
104
|
-
#
|
105
|
-
# @return [String] the Extension creator
|
106
|
-
#
|
107
|
-
# @version SketchUp 6.0
|
108
|
-
def creator
|
109
|
-
end
|
110
|
-
|
111
|
-
# The creator= method sets the creator string which appears beneath
|
112
|
-
# an extension inside the Extensions Manager dialog.
|
113
|
-
#
|
114
|
-
# @example
|
115
|
-
# # Create an entry in the Extension list that loads a script called
|
116
|
-
# # core.rb.
|
117
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
118
|
-
# extension.creator = 'Trimble Navigation, Inc.'
|
119
|
-
# creator = extension.creator
|
120
|
-
#
|
121
|
-
# @param [String] creator
|
122
|
-
# The creator to set
|
123
|
-
#
|
124
|
-
# @return [String] the new creator
|
125
|
-
#
|
126
|
-
# @version SketchUp 6.0
|
127
|
-
def creator=(creator)
|
128
|
-
end
|
129
|
-
|
130
|
-
# The description method returns the long description which appears beneath
|
131
|
-
# an extension inside the Extensions Manager dialog.
|
132
|
-
#
|
133
|
-
# @example
|
134
|
-
# # Create an entry in the Extension list that loads a script called
|
135
|
-
# # core.rb.
|
136
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
137
|
-
# extension.description = 'My description.'
|
138
|
-
# description = extension.description
|
139
|
-
#
|
140
|
-
# @return [String] the Extension description
|
141
|
-
#
|
142
|
-
# @version SketchUp 6.0
|
143
|
-
def description
|
144
|
-
end
|
145
|
-
|
146
|
-
# The description= method sets the long description which appears beneath
|
147
|
-
# an extension inside the Extensions Manager dialog.
|
148
|
-
#
|
149
|
-
# @example
|
150
|
-
# # Create an entry in the Extension list that loads a script called
|
151
|
-
# # core.rb.
|
152
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
153
|
-
# extension.description = 'My description.'
|
154
|
-
# description = extension.description
|
155
|
-
#
|
156
|
-
# @param [String] description
|
157
|
-
# The description string to set.
|
158
|
-
#
|
159
|
-
# @return [String] the Extension description
|
160
|
-
#
|
161
|
-
# @version SketchUp 6.0
|
162
|
-
def description=(description)
|
163
|
-
end
|
164
|
-
|
165
|
-
# The extension_path method returns the file system path to the extension's
|
166
|
-
# outer rb file.
|
167
|
-
#
|
168
|
-
# @return [String] the file system path to the extension
|
169
|
-
#
|
170
|
-
# @version SketchUp 2013
|
171
|
-
def extension_path
|
172
|
-
end
|
173
|
-
|
174
|
-
# The id method returns the Extension Warehouse ID string.
|
175
|
-
#
|
176
|
-
# @return [String] the Extension Warehouse ID
|
177
|
-
#
|
178
|
-
# @version SketchUp 2013
|
179
|
-
def id
|
180
|
-
end
|
181
|
-
|
182
|
-
# The new method is used to create a new SketchupExtension object. Note
|
183
|
-
# that once the extension object is created, it will not appear in the
|
184
|
-
# Extension Manager dialog until your register it with the
|
185
|
-
# Sketchup.register_extension method.
|
186
|
-
#
|
187
|
-
# @example
|
188
|
-
# # Create an entry in the Extension list that loads a script called
|
189
|
-
# # core.rb.
|
190
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core')
|
191
|
-
#
|
192
|
-
# # Then be sure to register it. By passing a 2nd param of true, you're
|
193
|
-
# # telling SketchUp to load the extension by default.
|
194
|
-
# Sketchup.register_extension(extension, true)
|
195
|
-
#
|
196
|
-
# @note It is recommended to omit the file extension provided in the +path+
|
197
|
-
# argument. SketchUp will resolve the file extension to +.rbe+, +.rbs+
|
198
|
-
# or +.rb+.
|
199
|
-
#
|
200
|
-
# @param [String] title
|
201
|
-
# The name of the extension
|
202
|
-
#
|
203
|
-
# @param [String] path
|
204
|
-
# The relative path to the script that loads your
|
205
|
-
# plugin.
|
206
|
-
#
|
207
|
-
# @return [Sketchup::Extension] the new Extension object
|
208
|
-
#
|
209
|
-
# @version SketchUp 6.0
|
210
|
-
def initialize(title, path)
|
211
|
-
end
|
212
|
-
|
213
|
-
# Returns whether the extension is set to load when SketchUp starts up.
|
214
|
-
#
|
215
|
-
# @example
|
216
|
-
# ext = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
217
|
-
# UI.messagebox("load_on_start? is false: #{ext.load_on_start?.to_s}")
|
218
|
-
# Sketchup.register_extension(ext, true)
|
219
|
-
# UI.messagebox("load_on_start? is now true: #{ext.load_on_start?.to_s}")
|
220
|
-
#
|
221
|
-
# @return [Boolean]
|
222
|
-
#
|
223
|
-
# @version SketchUp 8.0 M2
|
224
|
-
def load_on_start?
|
225
|
-
end
|
226
|
-
|
227
|
-
# Returns whether the extension is currently loaded, meaning the actual ruby
|
228
|
-
# script that implements the extension has been evaluated.
|
229
|
-
#
|
230
|
-
# @example
|
231
|
-
# ext = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
232
|
-
# UI.messagebox("loaded? is false: #{ext.loaded?.to_s}")
|
233
|
-
# Sketchup.register_extension(ext, true)
|
234
|
-
# UI.messagebox("loaded? is now true: #{ext.loaded?.to_s}")
|
235
|
-
#
|
236
|
-
# @return [Boolean]
|
237
|
-
#
|
238
|
-
# @version SketchUp 8.0 M2
|
239
|
-
def loaded?
|
240
|
-
end
|
241
|
-
|
242
|
-
# The name method returns the name which appears for
|
243
|
-
# an extension inside the Extensions Manager dialog.
|
244
|
-
#
|
245
|
-
# @example
|
246
|
-
# # Create an entry in the Extension list that loads a script called
|
247
|
-
# # core.rb.
|
248
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
249
|
-
# name = extension.name
|
250
|
-
#
|
251
|
-
# @return [String] the Extension name
|
252
|
-
#
|
253
|
-
# @version SketchUp 6.0
|
254
|
-
def name
|
255
|
-
end
|
256
|
-
|
257
|
-
# The name= method sets the name which appears for
|
258
|
-
# an extension inside the Extensions Manager dialog.
|
259
|
-
#
|
260
|
-
# @example
|
261
|
-
# # Create an entry in the Extension list that loads a script called
|
262
|
-
# # core.rb.
|
263
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
264
|
-
# extension.name = 'Renamed Stair Tools'
|
265
|
-
#
|
266
|
-
# @param [String] name
|
267
|
-
# The new name
|
268
|
-
#
|
269
|
-
# @return [String] the Extension name
|
270
|
-
#
|
271
|
-
# @version SketchUp 6.0
|
272
|
-
def name=(name)
|
273
|
-
end
|
274
|
-
|
275
|
-
# Returns whether the extension has been registered via
|
276
|
-
# Sketchup.register_extension.
|
277
|
-
#
|
278
|
-
# @example
|
279
|
-
# ext = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
280
|
-
# UI.messagebox("My registered? is false: #{ext.registered?.to_s}")
|
281
|
-
# Sketchup.register_extension(ext, true)
|
282
|
-
# UI.messagebox("Now registered? is now true: #{ext.registered?.to_s}")
|
283
|
-
#
|
284
|
-
# @return [Boolean]
|
285
|
-
#
|
286
|
-
# @version SketchUp 8.0 M2
|
287
|
-
def registered?
|
288
|
-
end
|
289
|
-
|
290
|
-
# Unloads the extension. This is the equivalent of unchecking the extension's
|
291
|
-
# checkbox in the Preferences > Extensions list.
|
292
|
-
#
|
293
|
-
# Note that technically the extension is not "unloaded" in the sense that it
|
294
|
-
# stops running during the current SketchUp session, but the next time the
|
295
|
-
# user restarts SketchUp, the extension will not be active.
|
296
|
-
#
|
297
|
-
# @example
|
298
|
-
# # This unloads all extensions. The next time SketchUp starts, none of
|
299
|
-
# # the extensions will be active.
|
300
|
-
# Sketchup.extensions.each { |extension|
|
301
|
-
# extension.uncheck
|
302
|
-
# }
|
303
|
-
#
|
304
|
-
# @return [Boolean] whether the unload succeeded
|
305
|
-
#
|
306
|
-
# @version SketchUp 8.0 M2
|
307
|
-
def uncheck
|
308
|
-
end
|
309
|
-
|
310
|
-
# The version method returns the version which appears beneath
|
311
|
-
# an extension inside the Extensions Manager dialog.
|
312
|
-
#
|
313
|
-
# @example
|
314
|
-
# # Create an entry in the Extension list that loads a script called
|
315
|
-
# # core.rb.
|
316
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
317
|
-
# extension.version = '5.0'
|
318
|
-
# version = extension.version
|
319
|
-
#
|
320
|
-
# @return [String] the Extension version
|
321
|
-
#
|
322
|
-
# @version SketchUp 6.0
|
323
|
-
def version
|
324
|
-
end
|
325
|
-
|
326
|
-
# The version method sets the version which appears beneath
|
327
|
-
# an extension inside the Extensions Manager dialog.
|
328
|
-
#
|
329
|
-
# @example
|
330
|
-
# # Create an entry in the Extension list that loads a script called
|
331
|
-
# # core.rb.
|
332
|
-
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
333
|
-
# extension.version = '5.0'
|
334
|
-
# version = extension.version
|
335
|
-
#
|
336
|
-
# @param [String] version
|
337
|
-
# The version string to set.
|
338
|
-
#
|
339
|
-
# @return [String] the Extension version
|
340
|
-
#
|
341
|
-
# @version SketchUp 6.0
|
342
|
-
def version=(version)
|
343
|
-
end
|
344
|
-
|
345
|
-
# The version_id method returns the Extension Warehouse Version ID string.
|
346
|
-
#
|
347
|
-
# @return [String] the Extension Warehouse Version ID string
|
348
|
-
#
|
349
|
-
# @version SketchUp 2013
|
350
|
-
def version_id
|
351
|
-
end
|
352
|
-
|
353
|
-
end
|
1
|
+
# Copyright:: Copyright 2020 Trimble Inc.
|
2
|
+
# License:: The MIT License (MIT)
|
3
|
+
|
4
|
+
# The SketchupExtension class contains methods allowing you to create and
|
5
|
+
# manipulate SketchUp extensions. Extensions are Ruby scripts that can be
|
6
|
+
# loaded and unloaded using the Extension manager (Extensions panel of the
|
7
|
+
# Preferences dialog box). Generally you should register your ruby scripts as
|
8
|
+
# an extension to give SketchUp users the ability to disable it through the
|
9
|
+
# user interface.
|
10
|
+
#
|
11
|
+
# The idea here is to take the ruby script that actually creates your
|
12
|
+
# functionality and place it in a folder somewhere outside of the /Plugins
|
13
|
+
# folder, most commonly a subdirectory like /Plugins/MyExtension. Then
|
14
|
+
# you create a new ruby script inside the /Plugins directory that will
|
15
|
+
# set up the extension entry and load your original script if the user
|
16
|
+
# has your extension turned on.
|
17
|
+
#
|
18
|
+
# Here is an example extension loading script. For this example, the
|
19
|
+
# following code would be saved in /Plugins/StairTools.rb, and the
|
20
|
+
# actual plugin itself would live in /Plugins/StairTools/core.rb.
|
21
|
+
#
|
22
|
+
# You can find two example extensions that ship with SketchUp,
|
23
|
+
# su_dynamiccomponents.rb and su_sandboxtools.rb, under the /Plugins/ folder.
|
24
|
+
#
|
25
|
+
# @example
|
26
|
+
# # Create an entry in the Extension list that loads a script called
|
27
|
+
# # core.rb.
|
28
|
+
# require 'sketchup.rb'
|
29
|
+
# require 'extensions.rb'
|
30
|
+
#
|
31
|
+
# stair_extension = SketchupExtension.new('Stair Tools", "StairTools/core.rb')
|
32
|
+
# stair_extension.version = '1.0'
|
33
|
+
# stair_extension.description = 'Tools to draw stairs automatically.'
|
34
|
+
# Sketchup.register_extension(stair_extension, true)
|
35
|
+
#
|
36
|
+
# @version SketchUp 6.0
|
37
|
+
class SketchupExtension
|
38
|
+
|
39
|
+
# Instance Methods
|
40
|
+
|
41
|
+
# Loads the extension, meaning the underlying ruby script is immediately
|
42
|
+
# interpreted. This is the equivalent of checking the extension's checkbox
|
43
|
+
# in the Preferences > Extensions list.
|
44
|
+
#
|
45
|
+
# @example
|
46
|
+
# # This will register the extension, a necessary step for it to appear
|
47
|
+
# # in SketchUp's Preferences > Extensions list
|
48
|
+
# ext_c = SketchupExtension.new('Stair Tools C', 'StairTools/core.rb')
|
49
|
+
# Sketchup.register_extension(ext_c, false)
|
50
|
+
#
|
51
|
+
# # And this will load the extension.
|
52
|
+
# ext_c.check
|
53
|
+
#
|
54
|
+
# @return [Boolean] whether the load succeeded
|
55
|
+
#
|
56
|
+
# @version SketchUp 8.0 M2
|
57
|
+
def check
|
58
|
+
end
|
59
|
+
|
60
|
+
# The copyright method returns the copyright string which appears beneath
|
61
|
+
# an extension inside the Extensions Manager dialog.
|
62
|
+
#
|
63
|
+
# @example
|
64
|
+
# # Create an entry in the Extension list that loads a script called
|
65
|
+
# # core.rb.
|
66
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
67
|
+
# extension.copyright = '2008'
|
68
|
+
# copyright = extension.copyright
|
69
|
+
#
|
70
|
+
# @return [String] the Extension copyright
|
71
|
+
#
|
72
|
+
# @version SketchUp 6.0
|
73
|
+
def copyright
|
74
|
+
end
|
75
|
+
|
76
|
+
# The copyright= method sets the copyright string which appears beneath
|
77
|
+
# an extension inside the Extensions Manager dialog.
|
78
|
+
#
|
79
|
+
# @example
|
80
|
+
# # Create an entry in the Extension list that loads a script called
|
81
|
+
# # core.rb.
|
82
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
83
|
+
# extension.copyright = '2008'
|
84
|
+
# copyright = extension.copyright
|
85
|
+
#
|
86
|
+
# @param [String] copyright
|
87
|
+
# The copyright to set
|
88
|
+
#
|
89
|
+
# @return [String] the new copyright
|
90
|
+
#
|
91
|
+
# @version SketchUp 6.0
|
92
|
+
def copyright=(copyright)
|
93
|
+
end
|
94
|
+
|
95
|
+
# The creator method returns the creator string which appears beneath
|
96
|
+
# an extension inside the Extensions Manager dialog.
|
97
|
+
#
|
98
|
+
# @example
|
99
|
+
# # Create an entry in the Extension list that loads a script called
|
100
|
+
# # core.rb.
|
101
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
102
|
+
# extension.creator = 'Trimble Navigation, Inc.'
|
103
|
+
# creator = extension.creator
|
104
|
+
#
|
105
|
+
# @return [String] the Extension creator
|
106
|
+
#
|
107
|
+
# @version SketchUp 6.0
|
108
|
+
def creator
|
109
|
+
end
|
110
|
+
|
111
|
+
# The creator= method sets the creator string which appears beneath
|
112
|
+
# an extension inside the Extensions Manager dialog.
|
113
|
+
#
|
114
|
+
# @example
|
115
|
+
# # Create an entry in the Extension list that loads a script called
|
116
|
+
# # core.rb.
|
117
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
118
|
+
# extension.creator = 'Trimble Navigation, Inc.'
|
119
|
+
# creator = extension.creator
|
120
|
+
#
|
121
|
+
# @param [String] creator
|
122
|
+
# The creator to set
|
123
|
+
#
|
124
|
+
# @return [String] the new creator
|
125
|
+
#
|
126
|
+
# @version SketchUp 6.0
|
127
|
+
def creator=(creator)
|
128
|
+
end
|
129
|
+
|
130
|
+
# The description method returns the long description which appears beneath
|
131
|
+
# an extension inside the Extensions Manager dialog.
|
132
|
+
#
|
133
|
+
# @example
|
134
|
+
# # Create an entry in the Extension list that loads a script called
|
135
|
+
# # core.rb.
|
136
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
137
|
+
# extension.description = 'My description.'
|
138
|
+
# description = extension.description
|
139
|
+
#
|
140
|
+
# @return [String] the Extension description
|
141
|
+
#
|
142
|
+
# @version SketchUp 6.0
|
143
|
+
def description
|
144
|
+
end
|
145
|
+
|
146
|
+
# The description= method sets the long description which appears beneath
|
147
|
+
# an extension inside the Extensions Manager dialog.
|
148
|
+
#
|
149
|
+
# @example
|
150
|
+
# # Create an entry in the Extension list that loads a script called
|
151
|
+
# # core.rb.
|
152
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
153
|
+
# extension.description = 'My description.'
|
154
|
+
# description = extension.description
|
155
|
+
#
|
156
|
+
# @param [String] description
|
157
|
+
# The description string to set.
|
158
|
+
#
|
159
|
+
# @return [String] the Extension description
|
160
|
+
#
|
161
|
+
# @version SketchUp 6.0
|
162
|
+
def description=(description)
|
163
|
+
end
|
164
|
+
|
165
|
+
# The extension_path method returns the file system path to the extension's
|
166
|
+
# outer rb file.
|
167
|
+
#
|
168
|
+
# @return [String] the file system path to the extension
|
169
|
+
#
|
170
|
+
# @version SketchUp 2013
|
171
|
+
def extension_path
|
172
|
+
end
|
173
|
+
|
174
|
+
# The id method returns the Extension Warehouse ID string.
|
175
|
+
#
|
176
|
+
# @return [String] the Extension Warehouse ID
|
177
|
+
#
|
178
|
+
# @version SketchUp 2013
|
179
|
+
def id
|
180
|
+
end
|
181
|
+
|
182
|
+
# The new method is used to create a new SketchupExtension object. Note
|
183
|
+
# that once the extension object is created, it will not appear in the
|
184
|
+
# Extension Manager dialog until your register it with the
|
185
|
+
# Sketchup.register_extension method.
|
186
|
+
#
|
187
|
+
# @example
|
188
|
+
# # Create an entry in the Extension list that loads a script called
|
189
|
+
# # core.rb.
|
190
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core')
|
191
|
+
#
|
192
|
+
# # Then be sure to register it. By passing a 2nd param of true, you're
|
193
|
+
# # telling SketchUp to load the extension by default.
|
194
|
+
# Sketchup.register_extension(extension, true)
|
195
|
+
#
|
196
|
+
# @note It is recommended to omit the file extension provided in the +path+
|
197
|
+
# argument. SketchUp will resolve the file extension to +.rbe+, +.rbs+
|
198
|
+
# or +.rb+.
|
199
|
+
#
|
200
|
+
# @param [String] title
|
201
|
+
# The name of the extension
|
202
|
+
#
|
203
|
+
# @param [String] path
|
204
|
+
# The relative path to the script that loads your
|
205
|
+
# plugin.
|
206
|
+
#
|
207
|
+
# @return [Sketchup::Extension] the new Extension object
|
208
|
+
#
|
209
|
+
# @version SketchUp 6.0
|
210
|
+
def initialize(title, path)
|
211
|
+
end
|
212
|
+
|
213
|
+
# Returns whether the extension is set to load when SketchUp starts up.
|
214
|
+
#
|
215
|
+
# @example
|
216
|
+
# ext = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
217
|
+
# UI.messagebox("load_on_start? is false: #{ext.load_on_start?.to_s}")
|
218
|
+
# Sketchup.register_extension(ext, true)
|
219
|
+
# UI.messagebox("load_on_start? is now true: #{ext.load_on_start?.to_s}")
|
220
|
+
#
|
221
|
+
# @return [Boolean]
|
222
|
+
#
|
223
|
+
# @version SketchUp 8.0 M2
|
224
|
+
def load_on_start?
|
225
|
+
end
|
226
|
+
|
227
|
+
# Returns whether the extension is currently loaded, meaning the actual ruby
|
228
|
+
# script that implements the extension has been evaluated.
|
229
|
+
#
|
230
|
+
# @example
|
231
|
+
# ext = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
232
|
+
# UI.messagebox("loaded? is false: #{ext.loaded?.to_s}")
|
233
|
+
# Sketchup.register_extension(ext, true)
|
234
|
+
# UI.messagebox("loaded? is now true: #{ext.loaded?.to_s}")
|
235
|
+
#
|
236
|
+
# @return [Boolean]
|
237
|
+
#
|
238
|
+
# @version SketchUp 8.0 M2
|
239
|
+
def loaded?
|
240
|
+
end
|
241
|
+
|
242
|
+
# The name method returns the name which appears for
|
243
|
+
# an extension inside the Extensions Manager dialog.
|
244
|
+
#
|
245
|
+
# @example
|
246
|
+
# # Create an entry in the Extension list that loads a script called
|
247
|
+
# # core.rb.
|
248
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
249
|
+
# name = extension.name
|
250
|
+
#
|
251
|
+
# @return [String] the Extension name
|
252
|
+
#
|
253
|
+
# @version SketchUp 6.0
|
254
|
+
def name
|
255
|
+
end
|
256
|
+
|
257
|
+
# The name= method sets the name which appears for
|
258
|
+
# an extension inside the Extensions Manager dialog.
|
259
|
+
#
|
260
|
+
# @example
|
261
|
+
# # Create an entry in the Extension list that loads a script called
|
262
|
+
# # core.rb.
|
263
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
264
|
+
# extension.name = 'Renamed Stair Tools'
|
265
|
+
#
|
266
|
+
# @param [String] name
|
267
|
+
# The new name
|
268
|
+
#
|
269
|
+
# @return [String] the Extension name
|
270
|
+
#
|
271
|
+
# @version SketchUp 6.0
|
272
|
+
def name=(name)
|
273
|
+
end
|
274
|
+
|
275
|
+
# Returns whether the extension has been registered via
|
276
|
+
# Sketchup.register_extension.
|
277
|
+
#
|
278
|
+
# @example
|
279
|
+
# ext = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
280
|
+
# UI.messagebox("My registered? is false: #{ext.registered?.to_s}")
|
281
|
+
# Sketchup.register_extension(ext, true)
|
282
|
+
# UI.messagebox("Now registered? is now true: #{ext.registered?.to_s}")
|
283
|
+
#
|
284
|
+
# @return [Boolean]
|
285
|
+
#
|
286
|
+
# @version SketchUp 8.0 M2
|
287
|
+
def registered?
|
288
|
+
end
|
289
|
+
|
290
|
+
# Unloads the extension. This is the equivalent of unchecking the extension's
|
291
|
+
# checkbox in the Preferences > Extensions list.
|
292
|
+
#
|
293
|
+
# Note that technically the extension is not "unloaded" in the sense that it
|
294
|
+
# stops running during the current SketchUp session, but the next time the
|
295
|
+
# user restarts SketchUp, the extension will not be active.
|
296
|
+
#
|
297
|
+
# @example
|
298
|
+
# # This unloads all extensions. The next time SketchUp starts, none of
|
299
|
+
# # the extensions will be active.
|
300
|
+
# Sketchup.extensions.each { |extension|
|
301
|
+
# extension.uncheck
|
302
|
+
# }
|
303
|
+
#
|
304
|
+
# @return [Boolean] whether the unload succeeded
|
305
|
+
#
|
306
|
+
# @version SketchUp 8.0 M2
|
307
|
+
def uncheck
|
308
|
+
end
|
309
|
+
|
310
|
+
# The version method returns the version which appears beneath
|
311
|
+
# an extension inside the Extensions Manager dialog.
|
312
|
+
#
|
313
|
+
# @example
|
314
|
+
# # Create an entry in the Extension list that loads a script called
|
315
|
+
# # core.rb.
|
316
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
317
|
+
# extension.version = '5.0'
|
318
|
+
# version = extension.version
|
319
|
+
#
|
320
|
+
# @return [String] the Extension version
|
321
|
+
#
|
322
|
+
# @version SketchUp 6.0
|
323
|
+
def version
|
324
|
+
end
|
325
|
+
|
326
|
+
# The version method sets the version which appears beneath
|
327
|
+
# an extension inside the Extensions Manager dialog.
|
328
|
+
#
|
329
|
+
# @example
|
330
|
+
# # Create an entry in the Extension list that loads a script called
|
331
|
+
# # core.rb.
|
332
|
+
# extension = SketchupExtension.new('Stair Tools', 'StairTools/core.rb')
|
333
|
+
# extension.version = '5.0'
|
334
|
+
# version = extension.version
|
335
|
+
#
|
336
|
+
# @param [String] version
|
337
|
+
# The version string to set.
|
338
|
+
#
|
339
|
+
# @return [String] the Extension version
|
340
|
+
#
|
341
|
+
# @version SketchUp 6.0
|
342
|
+
def version=(version)
|
343
|
+
end
|
344
|
+
|
345
|
+
# The version_id method returns the Extension Warehouse Version ID string.
|
346
|
+
#
|
347
|
+
# @return [String] the Extension Warehouse Version ID string
|
348
|
+
#
|
349
|
+
# @version SketchUp 2013
|
350
|
+
def version_id
|
351
|
+
end
|
352
|
+
|
353
|
+
end
|