sketchup-api-stubs 0.7.9 → 0.7.11

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.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sketchup-api-stubs/sketchup.rb +157 -151
  3. data/lib/sketchup-api-stubs/stubs/Array.rb +741 -741
  4. data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +322 -322
  5. data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +182 -172
  6. data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +111 -126
  7. data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
  8. data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +423 -400
  9. data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +693 -661
  10. data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +535 -509
  11. data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +500 -476
  12. data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +267 -263
  13. data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +133 -141
  14. data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +547 -522
  15. data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +678 -693
  16. data/lib/sketchup-api-stubs/stubs/Geom.rb +351 -351
  17. data/lib/sketchup-api-stubs/stubs/LanguageHandler.rb +93 -93
  18. data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +595 -595
  19. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +751 -747
  20. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +183 -183
  21. data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
  22. data/lib/sketchup-api-stubs/stubs/Layout/Dictionary.rb +234 -0
  23. data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +683 -517
  24. data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
  25. data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -148
  26. data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +464 -353
  27. data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +354 -354
  28. data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
  29. data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
  30. data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
  31. data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -370
  32. data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
  33. data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
  34. data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -225
  35. data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +614 -567
  36. data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
  37. data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
  38. data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +282 -183
  39. data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +458 -387
  40. data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -209
  41. data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +346 -344
  42. data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
  43. data/lib/sketchup-api-stubs/stubs/Layout/ReferenceEntity.rb +82 -82
  44. data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +714 -692
  45. data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1565 -1519
  46. data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
  47. data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
  48. data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
  49. data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
  50. data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
  51. data/lib/sketchup-api-stubs/stubs/Length.rb +286 -278
  52. data/lib/sketchup-api-stubs/stubs/Numeric.rb +249 -249
  53. data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +196 -144
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +169 -169
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +226 -209
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +145 -150
  57. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +294 -281
  58. data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
  59. data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +296 -302
  60. data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +473 -478
  61. data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +121 -121
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -294
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +673 -659
  65. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +600 -593
  66. data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
  67. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +252 -257
  68. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
  69. data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -201
  70. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +443 -449
  71. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -74
  72. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -104
  73. data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +167 -165
  74. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -306
  75. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -42
  76. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +403 -406
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +397 -397
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1282 -1239
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +261 -261
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -127
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +519 -545
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -60
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/Environment.rb +406 -0
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/Environments.rb +185 -0
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/EnvironmentsObserver.rb +113 -0
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +122 -125
  89. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +1006 -937
  90. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +102 -102
  91. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +740 -750
  92. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +289 -282
  93. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +64 -62
  94. data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
  95. data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +405 -468
  96. data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -266
  97. data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -189
  98. data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +432 -406
  99. data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -84
  100. data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +307 -306
  101. data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +332 -326
  102. data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +380 -422
  103. data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +409 -427
  104. data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +241 -249
  105. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
  106. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +55 -48
  107. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
  108. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +114 -114
  109. data/lib/sketchup-api-stubs/stubs/Sketchup/LoadHandler.rb +70 -0
  110. data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +1115 -414
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +330 -317
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -142
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -93
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1714 -1652
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +372 -357
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +133 -130
  118. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +271 -271
  119. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  120. data/lib/sketchup-api-stubs/stubs/Sketchup/Overlay.rb +463 -490
  121. data/lib/sketchup-api-stubs/stubs/Sketchup/OverlaysManager.rb +104 -116
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +939 -797
  123. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +388 -361
  124. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -77
  125. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +501 -478
  126. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  127. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +385 -361
  128. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -45
  129. data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
  130. data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +451 -458
  131. data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
  132. data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +211 -212
  133. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +259 -255
  134. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -59
  135. data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -40
  136. data/lib/sketchup-api-stubs/stubs/Sketchup/Snap.rb +125 -0
  137. data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +88 -69
  138. data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +263 -217
  139. data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +283 -262
  140. data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +199 -217
  141. data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
  142. data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +924 -834
  143. data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
  144. data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -156
  145. data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +75 -75
  146. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +143 -142
  147. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1566 -1311
  148. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +71 -45
  149. data/lib/sketchup-api-stubs/stubs/Sketchup.rb +1429 -1377
  150. data/lib/sketchup-api-stubs/stubs/SketchupExtension.rb +353 -353
  151. data/lib/sketchup-api-stubs/stubs/String.rb +24 -24
  152. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +399 -389
  153. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +580 -494
  154. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +280 -269
  155. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +258 -241
  156. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +636 -635
  157. data/lib/sketchup-api-stubs/stubs/UI.rb +791 -683
  158. data/lib/sketchup-api-stubs/stubs/_top_level.rb +303 -303
  159. data/lib/sketchup-api-stubs.rb +1 -1
  160. metadata +10 -24
@@ -1,271 +1,271 @@
1
- # Copyright:: Copyright 2023 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # An +OptionsProvider+ class provides various kinds of options on a
5
- # {Sketchup::Model}. You get an +OptionsProvider+ from the
6
- # {Sketchup::OptionsManager}. The options are given as name/value pairs.
7
- #
8
- # List of keys added in different SketchUp versions:
9
- #
10
- # [+UnitsOptions+] * +AreaUnit+ (SketchUp 2019.2)
11
- # * +VolumeUnit+ (SketchUp 2019.2)
12
- # * +AreaPrecision+ (SketchUp 2020.0)
13
- # * +VolumePrecision+ (SketchUp 2020.0)
14
- #
15
- # The +AreaUnit+ and +VolumeUnit+ options in +UnitsOptions+ only applies if
16
- # the +UnitFormat+ is +Length::Decimal+.
17
- #
18
- # @version SketchUp 6.0
19
- class Sketchup::OptionsProvider
20
-
21
- # Includes
22
-
23
- include Enumerable
24
-
25
- # Instance Methods
26
-
27
- # The [] method is used to get a value by name or index of the key.
28
- #
29
- # @example
30
- # model = Sketchup.active_model
31
- # manager = model.options
32
- # provider = manager[0]
33
- # # Retrieves the provider at index 1
34
- # option = provider[1]
35
- #
36
- # @overload [](index)
37
- #
38
- # @param index The index for a specific key.
39
- # @return value - the value if successful
40
- #
41
- # @overload [](name)
42
- #
43
- # @param name The name of the specific key.
44
- # @return value - the value if successful
45
- #
46
- # @version SketchUp 6.0
47
- def [](arg)
48
- end
49
-
50
- # The []= method is used to set the value of a specific key.
51
- #
52
- # Creates a new attribute for the given key if needed.
53
- #
54
- # @example
55
- # option = provider[1]=10
56
- #
57
- # @param key
58
- # The valid key.
59
- #
60
- # @param value
61
- # The value to be set.
62
- #
63
- # @return value - the value that was set if successful, or false
64
- # if unsuccessful.
65
- #
66
- # @version SketchUp 6.0
67
- def []=(key, value)
68
- end
69
-
70
- # The add_observer method is used to add an observer to the current object.
71
- #
72
- # @example
73
- # status = object.add_observer observer
74
- #
75
- # @param observer
76
- # An observer.
77
- #
78
- # @return true if successful, false if unsuccessful.
79
- #
80
- # @version SketchUp 6.0
81
- def add_observer(observer)
82
- end
83
-
84
- #
85
- # @example
86
- # optionsprovider = Sketchup.active_model.options['UnitsOptions']
87
- # number = optionsprovider.count
88
- #
89
- # @note Since SketchUp 2014 the count method is inherited from Ruby's
90
- # +Enumerable+ mix-in module. Prior to that the {#count} method is an alias
91
- # for {#length}.
92
- #
93
- # @return [Integer]
94
- #
95
- # @see #length
96
- #
97
- # @version SketchUp 6.0
98
- def count
99
- end
100
-
101
- # The {#each} method is used to iterate through all of the options.
102
- #
103
- # @example
104
- # model = Sketchup.active_model
105
- # provider = model.options['UnitsOptions']
106
- # provider.each { |key, value| puts "#{key} = #{value}" }
107
- #
108
- # @return [nil]
109
- #
110
- # @see #each_key
111
- #
112
- # @version SketchUp 6.0
113
- #
114
- # @yieldparam [String] key
115
- #
116
- # @yieldparam [Object] value
117
- def each
118
- end
119
-
120
- # The {#each_key} method is used to iterate through all of the attribute keys.
121
- #
122
- # @example
123
- # provider.each_key { |key| puts key }
124
- #
125
- # @return [nil]
126
- #
127
- # @version SketchUp 6.0
128
- #
129
- # @yieldparam [String] key
130
- def each_key
131
- end
132
-
133
- # The {#each} method is used to iterate through all of the options.
134
- #
135
- # @example
136
- # model = Sketchup.active_model
137
- # provider = model.options['UnitsOptions']
138
- # provider.each { |key, value| puts "#{key} = #{value}" }
139
- #
140
- # @return [nil]
141
- #
142
- # @see #each_key
143
- #
144
- # @version SketchUp 6.0
145
- #
146
- # @yieldparam [String] key
147
- #
148
- # @yieldparam [Object] value
149
- def each_pair
150
- end
151
-
152
- # The {#each_value} method is used to iterate through all of the attribute
153
- # values.
154
- #
155
- # @example
156
- # provider.each_value { |value| puts value }
157
- #
158
- # @return [nil]
159
- #
160
- # @version SketchUp 6.0
161
- #
162
- # @yieldparam [Object] value
163
- def each_value
164
- end
165
-
166
- # The {#has_key?} method is an alias for {#key?}.
167
- #
168
- # @example
169
- # model = Sketchup.active_model
170
- # provider = model.options['UnitsOptions']
171
- # p provider.has_key?("LengthFormat")
172
- #
173
- # @param [String] name
174
- # The name of the key you are looking for.
175
- #
176
- # @return [Boolean]
177
- #
178
- # @see #key?
179
- #
180
- # @version SketchUp 6.0
181
- def has_key?(name)
182
- end
183
-
184
- # The {#key?} method is used to determine if the options provider has a
185
- # specific key.
186
- #
187
- # @example
188
- # model = Sketchup.active_model
189
- # provider = model.options['UnitsOptions']
190
- # p provider.key?("LengthFormat")
191
- #
192
- # @param [String] name
193
- # The name of the key you are looking for.
194
- #
195
- # @return [Boolean]
196
- #
197
- # @see #has_key?
198
- #
199
- # @version SketchUp 6.0
200
- def key?(name)
201
- end
202
-
203
- # The {#keys} method is used to retrieve an array with all of the attribute keys.
204
- #
205
- # @example
206
- # keys = provider.keys
207
- # key = keys[0]
208
- #
209
- # @return keys - an array of keys within the options provider if
210
- # successful
211
- #
212
- # @version SketchUp 6.0
213
- def keys
214
- end
215
-
216
- # The {#length} method is an alias of {#size}.
217
- #
218
- # @example
219
- # optionsprovider = Sketchup.active_model.options['UnitsOptions']
220
- # number = optionsprovider.length
221
- #
222
- # @return [Integer]
223
- #
224
- # @see #size
225
- #
226
- # @version SketchUp 2014
227
- def length
228
- end
229
-
230
- # The name method is used to retrieve the name of an options provider.
231
- #
232
- # @example
233
- # name = provider.name
234
- #
235
- # @return name - the name of the options provider if successful
236
- #
237
- # @version SketchUp 6.0
238
- def name
239
- end
240
-
241
- # The remove_observer method is used to remove an observer from the current
242
- # object.
243
- #
244
- # @example
245
- # status = object.remove_observer observer
246
- #
247
- # @param observer
248
- # An observer.
249
- #
250
- # @return true if successful, false if unsuccessful.
251
- #
252
- # @version SketchUp 6.0
253
- def remove_observer(observer)
254
- end
255
-
256
- # The {#size} method is used to retrieve the size (number of elements) of an
257
- # options provider.
258
- #
259
- # @example
260
- # optionsprovider = Sketchup.active_model.options['UnitsOptions']
261
- # number = optionsprovider.size
262
- #
263
- # @return [Integer]
264
- #
265
- # @see #length
266
- #
267
- # @version SketchUp 6.0
268
- def size
269
- end
270
-
271
- end
1
+ # Copyright:: Copyright 2026 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # An +OptionsProvider+ class provides various kinds of options on a
5
+ # {Sketchup::Model}. You get an +OptionsProvider+ from the
6
+ # {Sketchup::OptionsManager}. The options are given as name/value pairs.
7
+ #
8
+ # List of keys added in different SketchUp versions:
9
+ #
10
+ # [+UnitsOptions+] * +AreaUnit+ (SketchUp 2019.2)
11
+ # * +VolumeUnit+ (SketchUp 2019.2)
12
+ # * +AreaPrecision+ (SketchUp 2020.0)
13
+ # * +VolumePrecision+ (SketchUp 2020.0)
14
+ #
15
+ # The +AreaUnit+ and +VolumeUnit+ options in +UnitsOptions+ only applies if
16
+ # the +UnitFormat+ is +Length::Decimal+.
17
+ #
18
+ # @version SketchUp 6.0
19
+ class Sketchup::OptionsProvider
20
+
21
+ # Includes
22
+
23
+ include Enumerable
24
+
25
+ # Instance Methods
26
+
27
+ # The [] method is used to get a value by name or index of the key.
28
+ #
29
+ # @example
30
+ # model = Sketchup.active_model
31
+ # manager = model.options
32
+ # provider = manager[0]
33
+ # # Retrieves the provider at index 1
34
+ # option = provider[1]
35
+ #
36
+ # @overload [](index)
37
+ #
38
+ # @param index The index for a specific key.
39
+ # @return value - the value if successful
40
+ #
41
+ # @overload [](name)
42
+ #
43
+ # @param name The name of the specific key.
44
+ # @return value - the value if successful
45
+ #
46
+ # @version SketchUp 6.0
47
+ def [](arg)
48
+ end
49
+
50
+ # The []= method is used to set the value of a specific key.
51
+ #
52
+ # Creates a new attribute for the given key if needed.
53
+ #
54
+ # @example
55
+ # option = provider[1]=10
56
+ #
57
+ # @param key
58
+ # The valid key.
59
+ #
60
+ # @param value
61
+ # The value to be set.
62
+ #
63
+ # @return value - the value that was set if successful, or false
64
+ # if unsuccessful.
65
+ #
66
+ # @version SketchUp 6.0
67
+ def []=(key, value)
68
+ end
69
+
70
+ # The add_observer method is used to add an observer to the current object.
71
+ #
72
+ # @example
73
+ # status = object.add_observer observer
74
+ #
75
+ # @param observer
76
+ # An observer.
77
+ #
78
+ # @return true if successful, false if unsuccessful.
79
+ #
80
+ # @version SketchUp 6.0
81
+ def add_observer(observer)
82
+ end
83
+
84
+ #
85
+ # @example
86
+ # optionsprovider = Sketchup.active_model.options['UnitsOptions']
87
+ # number = optionsprovider.count
88
+ #
89
+ # @note Since SketchUp 2014 the count method is inherited from Ruby's
90
+ # +Enumerable+ mix-in module. Prior to that the {#count} method is an alias
91
+ # for {#length}.
92
+ #
93
+ # @return [Integer]
94
+ #
95
+ # @see #length
96
+ #
97
+ # @version SketchUp 6.0
98
+ def count
99
+ end
100
+
101
+ # The {#each} method is used to iterate through all of the options.
102
+ #
103
+ # @example
104
+ # model = Sketchup.active_model
105
+ # provider = model.options['UnitsOptions']
106
+ # provider.each { |key, value| puts "#{key} = #{value}" }
107
+ #
108
+ # @return [nil]
109
+ #
110
+ # @see #each_key
111
+ #
112
+ # @version SketchUp 6.0
113
+ #
114
+ # @yieldparam [String] key
115
+ #
116
+ # @yieldparam [Object] value
117
+ def each
118
+ end
119
+
120
+ # The {#each_key} method is used to iterate through all of the attribute keys.
121
+ #
122
+ # @example
123
+ # provider.each_key { |key| puts key }
124
+ #
125
+ # @return [nil]
126
+ #
127
+ # @version SketchUp 6.0
128
+ #
129
+ # @yieldparam [String] key
130
+ def each_key
131
+ end
132
+
133
+ # The {#each} method is used to iterate through all of the options.
134
+ #
135
+ # @example
136
+ # model = Sketchup.active_model
137
+ # provider = model.options['UnitsOptions']
138
+ # provider.each { |key, value| puts "#{key} = #{value}" }
139
+ #
140
+ # @return [nil]
141
+ #
142
+ # @see #each_key
143
+ #
144
+ # @version SketchUp 6.0
145
+ #
146
+ # @yieldparam [String] key
147
+ #
148
+ # @yieldparam [Object] value
149
+ def each_pair
150
+ end
151
+
152
+ # The {#each_value} method is used to iterate through all of the attribute
153
+ # values.
154
+ #
155
+ # @example
156
+ # provider.each_value { |value| puts value }
157
+ #
158
+ # @return [nil]
159
+ #
160
+ # @version SketchUp 6.0
161
+ #
162
+ # @yieldparam [Object] value
163
+ def each_value
164
+ end
165
+
166
+ # The {#has_key?} method is an alias for {#key?}.
167
+ #
168
+ # @example
169
+ # model = Sketchup.active_model
170
+ # provider = model.options['UnitsOptions']
171
+ # p provider.has_key?("LengthFormat")
172
+ #
173
+ # @param [String] name
174
+ # The name of the key you are looking for.
175
+ #
176
+ # @return [Boolean]
177
+ #
178
+ # @see #key?
179
+ #
180
+ # @version SketchUp 6.0
181
+ def has_key?(name)
182
+ end
183
+
184
+ # The {#key?} method is used to determine if the options provider has a
185
+ # specific key.
186
+ #
187
+ # @example
188
+ # model = Sketchup.active_model
189
+ # provider = model.options['UnitsOptions']
190
+ # p provider.key?("LengthFormat")
191
+ #
192
+ # @param [String] name
193
+ # The name of the key you are looking for.
194
+ #
195
+ # @return [Boolean]
196
+ #
197
+ # @see #has_key?
198
+ #
199
+ # @version SketchUp 6.0
200
+ def key?(name)
201
+ end
202
+
203
+ # The {#keys} method is used to retrieve an array with all of the attribute keys.
204
+ #
205
+ # @example
206
+ # keys = provider.keys
207
+ # key = keys[0]
208
+ #
209
+ # @return keys - an array of keys within the options provider if
210
+ # successful
211
+ #
212
+ # @version SketchUp 6.0
213
+ def keys
214
+ end
215
+
216
+ # The {#length} method is an alias of {#size}.
217
+ #
218
+ # @example
219
+ # optionsprovider = Sketchup.active_model.options['UnitsOptions']
220
+ # number = optionsprovider.length
221
+ #
222
+ # @return [Integer]
223
+ #
224
+ # @see #size
225
+ #
226
+ # @version SketchUp 2014
227
+ def length
228
+ end
229
+
230
+ # The name method is used to retrieve the name of an options provider.
231
+ #
232
+ # @example
233
+ # name = provider.name
234
+ #
235
+ # @return name - the name of the options provider if successful
236
+ #
237
+ # @version SketchUp 6.0
238
+ def name
239
+ end
240
+
241
+ # The remove_observer method is used to remove an observer from the current
242
+ # object.
243
+ #
244
+ # @example
245
+ # status = object.remove_observer observer
246
+ #
247
+ # @param observer
248
+ # An observer.
249
+ #
250
+ # @return true if successful, false if unsuccessful.
251
+ #
252
+ # @version SketchUp 6.0
253
+ def remove_observer(observer)
254
+ end
255
+
256
+ # The {#size} method is used to retrieve the size (number of elements) of an
257
+ # options provider.
258
+ #
259
+ # @example
260
+ # optionsprovider = Sketchup.active_model.options['UnitsOptions']
261
+ # number = optionsprovider.size
262
+ #
263
+ # @return [Integer]
264
+ #
265
+ # @see #length
266
+ #
267
+ # @version SketchUp 6.0
268
+ def size
269
+ end
270
+
271
+ end
@@ -1,58 +1,58 @@
1
- # Copyright:: Copyright 2023 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # This observer interface is implemented to react to operations provider
5
- # events. What this means is that you can watch as the user changes SketchUp
6
- # options and react to them. The following {Sketchup::OptionsProviders} are
7
- # defined in the API:
8
- #
9
- # - <code>"UnitsOptions"</code>
10
- # - <code>"PrintOptions"</code>
11
- # - <code>"PageOptions"</code>
12
- # - <code>"SlideshowOptions"</code>
13
- # - <code>"NamedOptions"</code>
14
- #
15
- # Each of these has a list of specific options that the user can set. See the
16
- # {Sketchup::OptionsManager} and {Sketchup::OptionsProvider} classes for more
17
- # details.
18
- #
19
- # @abstract To implement this observer, create a Ruby class of this type,
20
- # override the desired methods, and add an instance of the observer to the
21
- # objects of interests.
22
- #
23
- # @example
24
- # class MyOptionsProviderObserver < Sketchup::OptionsProviderObserver
25
- # def onOptionsProviderChanged(provider, name)
26
- # puts "onOptionsProviderChanged: #{name}"
27
- # end
28
- # end
29
- #
30
- # # Detect when the end user changes their units settings.
31
- # options_provider = Sketchup.active_model.options["UnitsOptions"]
32
- # options_provider.add_observer(MyOptionsProviderObserver.new)
33
- #
34
- # @version SketchUp 6.0
35
- class Sketchup::OptionsProviderObserver
36
-
37
- # Instance Methods
38
-
39
- # The {#onOptionsProviderChanged} method is invoked when a property of an
40
- # {Sketchup::OptionsProvider} changes.
41
- #
42
- # @example
43
- # def onOptionsProviderChanged(provider, name)
44
- # puts "onOptionsProviderChanged: #{name}"
45
- # end
46
- #
47
- # @param [Sketchup::OptionsProvider] provider
48
- #
49
- # @param [String] name
50
- # The name of the specific option that was changed.
51
- #
52
- # @return [nil]
53
- #
54
- # @version SketchUp 6.0
55
- def onOptionsProviderChanged(provider, name)
56
- end
57
-
58
- end
1
+ # Copyright:: Copyright 2026 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # This observer interface is implemented to react to operations provider
5
+ # events. What this means is that you can watch as the user changes SketchUp
6
+ # options and react to them. The following {Sketchup::OptionsProviders} are
7
+ # defined in the API:
8
+ #
9
+ # - <code>"UnitsOptions"</code>
10
+ # - <code>"PrintOptions"</code>
11
+ # - <code>"PageOptions"</code>
12
+ # - <code>"SlideshowOptions"</code>
13
+ # - <code>"NamedOptions"</code>
14
+ #
15
+ # Each of these has a list of specific options that the user can set. See the
16
+ # {Sketchup::OptionsManager} and {Sketchup::OptionsProvider} classes for more
17
+ # details.
18
+ #
19
+ # @abstract To implement this observer, create a Ruby class of this type,
20
+ # override the desired methods, and add an instance of the observer to the
21
+ # objects of interests.
22
+ #
23
+ # @example
24
+ # class MyOptionsProviderObserver < Sketchup::OptionsProviderObserver
25
+ # def onOptionsProviderChanged(provider, name)
26
+ # puts "onOptionsProviderChanged: #{name}"
27
+ # end
28
+ # end
29
+ #
30
+ # # Detect when the end user changes their units settings.
31
+ # options_provider = Sketchup.active_model.options["UnitsOptions"]
32
+ # options_provider.add_observer(MyOptionsProviderObserver.new)
33
+ #
34
+ # @version SketchUp 6.0
35
+ class Sketchup::OptionsProviderObserver
36
+
37
+ # Instance Methods
38
+
39
+ # The {#onOptionsProviderChanged} method is invoked when a property of an
40
+ # {Sketchup::OptionsProvider} changes.
41
+ #
42
+ # @example
43
+ # def onOptionsProviderChanged(provider, name)
44
+ # puts "onOptionsProviderChanged: #{name}"
45
+ # end
46
+ #
47
+ # @param [Sketchup::OptionsProvider] provider
48
+ #
49
+ # @param [String] name
50
+ # The name of the specific option that was changed.
51
+ #
52
+ # @return [nil]
53
+ #
54
+ # @version SketchUp 6.0
55
+ def onOptionsProviderChanged(provider, name)
56
+ end
57
+
58
+ end