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.
Files changed (150) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sketchup-api-stubs.rb +1 -1
  3. data/lib/sketchup-api-stubs/sketchup.rb +147 -145
  4. data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +322 -318
  5. data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +172 -172
  6. data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +126 -126
  7. data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
  8. data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +400 -400
  9. data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +661 -661
  10. data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +498 -492
  11. data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +478 -478
  12. data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +263 -263
  13. data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +141 -141
  14. data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +522 -522
  15. data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +691 -691
  16. data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
  17. data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +573 -573
  18. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +411 -411
  19. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +179 -174
  20. data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
  21. data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +515 -514
  22. data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
  23. data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -143
  24. data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +353 -353
  25. data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +349 -349
  26. data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
  27. data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
  28. data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
  29. data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -371
  30. data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
  31. data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
  32. data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -220
  33. data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +567 -567
  34. data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
  35. data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
  36. data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +183 -183
  37. data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +387 -387
  38. data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -204
  39. data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +344 -344
  40. data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
  41. data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +694 -694
  42. data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1519 -1519
  43. data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
  44. data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
  45. data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
  46. data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
  47. data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +144 -140
  48. data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +157 -157
  49. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +209 -209
  50. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +152 -152
  51. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +286 -281
  52. data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
  53. data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +302 -328
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +478 -577
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +122 -122
  57. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -281
  58. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +577 -562
  59. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +604 -593
  60. data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
  61. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +257 -257
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -194
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +362 -329
  65. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -72
  66. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -102
  67. data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
  68. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -312
  69. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -38
  70. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
  71. data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +396 -390
  72. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +502 -508
  73. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  74. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1126 -1119
  75. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -125
  76. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +545 -544
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -59
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +126 -125
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +751 -750
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +104 -104
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +699 -697
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +285 -285
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +62 -62
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +417 -409
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -226
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -190
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +405 -393
  89. data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -82
  90. data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +306 -303
  91. data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +327 -285
  92. data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +422 -0
  93. data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +427 -244
  94. data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +249 -136
  95. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +48 -48
  96. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
  97. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
  98. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +112 -112
  99. data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
  100. data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +414 -416
  101. data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +318 -311
  102. data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -141
  103. data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -95
  104. data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1651 -1638
  105. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +357 -356
  106. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +131 -132
  107. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +284 -284
  108. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  109. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +797 -770
  110. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +363 -353
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -76
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +478 -456
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +364 -364
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -44
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +459 -454
  118. data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
  119. data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +212 -212
  120. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +257 -257
  121. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -57
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -0
  123. data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
  124. data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +217 -211
  125. data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
  126. data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +217 -225
  127. data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
  128. data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +835 -829
  129. data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
  130. data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -154
  131. data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +71 -61
  132. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
  133. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1307 -1301
  134. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +45 -43
  135. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +317 -310
  136. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +387 -356
  137. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +255 -229
  138. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +240 -240
  139. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +633 -633
  140. data/lib/sketchup-api-stubs/stubs/_top_level.rb +311 -311
  141. data/lib/sketchup-api-stubs/stubs/array.rb +741 -741
  142. data/lib/sketchup-api-stubs/stubs/geom.rb +351 -348
  143. data/lib/sketchup-api-stubs/stubs/languagehandler.rb +92 -92
  144. data/lib/sketchup-api-stubs/stubs/length.rb +278 -278
  145. data/lib/sketchup-api-stubs/stubs/numeric.rb +249 -249
  146. data/lib/sketchup-api-stubs/stubs/sketchup.rb +1342 -1310
  147. data/lib/sketchup-api-stubs/stubs/sketchupextension.rb +353 -353
  148. data/lib/sketchup-api-stubs/stubs/string.rb +24 -24
  149. data/lib/sketchup-api-stubs/stubs/ui.rb +668 -667
  150. metadata +4 -2
@@ -1,229 +1,255 @@
1
- # Copyright:: Copyright 2020 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # UI::Notification objects allows you to show native notifications in the
5
- # desktop, they are positioned in the top right of your screen, they can be
6
- # customized to have a message, icon and accept and/or dismiss buttons with
7
- # callback blocks.
8
- #
9
- # @version SketchUp 2017
10
- class UI::Notification
11
-
12
- # Instance Methods
13
-
14
- # Gets the icon name, this is the path that will be used to get the icon from
15
- # the file system path.
16
- #
17
- # @example
18
- # notification = UI::Notification.new(sketchup_extension, "Hello world", "/path/to/icon", "icon Tooltip")
19
- # puts "Icon Name: #{notification.icon_name}"
20
- # notification.show
21
- #
22
- # @return [String]
23
- #
24
- # @version SketchUp 2017
25
- def icon_name
26
- end
27
-
28
- # Sets the icon path, this icon will be loaded from the path give, the path
29
- # has to be a local filesystem path.
30
- #
31
- # @example
32
- # notification = UI::Notification.new(sketchup_extension, "Hello world")
33
- # notification.icon_name = "/path/to/icon"
34
- # notification.show
35
- #
36
- # @param [String] icon_name
37
- # String providing the icon filesystem path.
38
- #
39
- # @return [Boolean]
40
- #
41
- # @version SketchUp 2017
42
- def icon_name=(icon_name)
43
- end
44
-
45
- # Gets the icon Tooltip, this is the string that appear when the mouse is over
46
- # the icon.
47
- #
48
- # @example
49
- # notification = UI::Notification.new(sketchup_extension, "Hello world", "/path/to/icon", "icon Tooltip")
50
- # puts "Tooltip: #{notification.icon_tooltip}"
51
- # notification.show
52
- #
53
- # @return [String]
54
- #
55
- # @version SketchUp 2017
56
- def icon_tooltip
57
- end
58
-
59
- # Sets the icon Tooltip, this string will appear when the mouse is over the
60
- # icon.
61
- #
62
- # @example
63
- # notification = UI::Notification.new(sketchup_extension, "Hello world")
64
- # notification.icon_tooltip = "icon Tooltip"
65
- # notification.show
66
- #
67
- # @param [String] icon_tooltip
68
- # String providing the new icon Tooltip.
69
- #
70
- # @return [Boolean]
71
- #
72
- # @version SketchUp 2017
73
- def icon_tooltip=(icon_tooltip)
74
- end
75
-
76
- # The new method is used to create a new {UI::Notification}.
77
- #
78
- # In order to insert line breaks into the message you need to use +\\r\\n+.
79
- #
80
- # @example
81
- # notification = UI::Notification.new(sketchup_extension, "Hello world", "/path/to/icon", "icon Tooltip")
82
- # notification.show
83
- #
84
- # @param [SketchupExtension] sketchup_extension
85
- # Required sketchup_extension
86
- # to identify the sender.
87
- #
88
- # @param [String] message
89
- # Optionally assign the message.
90
- #
91
- # @param [String] icon_name
92
- # Optionally set a path to an image.
93
- #
94
- # @param [String] icon_tooltip
95
- # Optionally set an image tooltip.
96
- #
97
- # @return [UI::Notification]
98
- #
99
- # @version SketchUp 2017
100
- def initialize(sketchup_extension, message, icon_name, icon_tooltip)
101
- end
102
-
103
- # Gets the message as string.
104
- #
105
- # @example
106
- # notification = UI::Notification.new(sketchup_extension)
107
- # puts "This is the current message: #{notification.message}"
108
- # notification.show
109
- #
110
- # @return [String]
111
- #
112
- # @version SketchUp 2017
113
- def message
114
- end
115
-
116
- # Sets a new message, notifications are meant for quick & brief messages,
117
- # remember that they are dismissed automatically.
118
- #
119
- # @example
120
- # notification = UI::Notification.new(sketchup_extension)
121
- # notification.message = "Hello world"
122
- # notification.show
123
- #
124
- # @param [String] message
125
- # String providing the new message.
126
- #
127
- # @return [Boolean]
128
- #
129
- # @version SketchUp 2017
130
- def message=(message)
131
- end
132
-
133
- # Shows a button in the notification with the given title and callback block,
134
- # both arguments are required.
135
- #
136
- # @example
137
- # notification = UI::Notification.new(sketchup_extension, "Hello world")
138
- # notification.on_accept("Accept") do |notification, title|
139
- # puts "The user pressed [#{title}] with message #{notification.message}"
140
- # end
141
- # notification.show
142
- #
143
- # @param [String] title
144
- # Sets the title of the button.
145
- #
146
- # @param [Block] block
147
- # Sets the action callback, this will be called when
148
- # the user clicks on the dismiss button.
149
- #
150
- # @raise [RuntimeError] When calling on_accept when the notification has
151
- # already been shown.
152
- #
153
- # @return [Boolean]
154
- #
155
- # @version SketchUp 2017
156
- def on_accept(title, block)
157
- end
158
-
159
- # Returns the accept's button title.
160
- #
161
- # @example
162
- # notification = UI::Notification.new(sketchup_extension, "Hello world")
163
- # notification.on_accept("Accept") do |notification, title|
164
- # puts "The user pressed #{notification.on_accept_title}"
165
- # end
166
- # notification.show
167
- #
168
- # @return [String]
169
- #
170
- # @version SketchUp 2017
171
- def on_accept_title
172
- end
173
-
174
- # Shows a button in the notification with the given title and callback block,
175
- # both arguments are required.
176
- #
177
- # @example
178
- # notification = UI::Notification.new(sketchup_extension, "Hello world")
179
- # notification.on_dismiss("Close") do |notification, title|
180
- # puts "The user pressed [#{title}] with message #{notification.message}"
181
- # end
182
- # notification.show
183
- #
184
- # @param [String] title
185
- # Sets the title of the button.
186
- #
187
- # @param [Block] block
188
- # Sets the action callback, this will be called when
189
- # the user clicks on the dismiss button.
190
- #
191
- # @raise [RuntimeError] When calling on_dismiss when the notification has
192
- # already been shown.
193
- #
194
- # @return [Boolean]
195
- #
196
- # @version SketchUp 2017
197
- def on_dismiss(title, block)
198
- end
199
-
200
- # Returns the dismiss's button title.
201
- #
202
- # @example
203
- # notification = UI::Notification.new(sketchup_extension, "Hello world")
204
- # notification.on_dismiss("Close") do |notification, title|
205
- # puts "The user pressed #{notification.on_dismiss_title}"
206
- # end
207
- # notification.show
208
- #
209
- # @return [String]
210
- #
211
- # @version SketchUp 2017
212
- def on_dismiss_title
213
- end
214
-
215
- # Shows the notification in the top right of the screen, the notifications will
216
- # be ordered from top to bottom if multiple notifications are shown, it will
217
- # automatically be dismissed if no action is taken.
218
- #
219
- # @example
220
- # notification = UI::Notification.new(sketchup_extension, "Hello world")
221
- # notification.show
222
- #
223
- # @return [Boolean]
224
- #
225
- # @version SketchUp 2017
226
- def show
227
- end
228
-
229
- end
1
+ # Copyright:: Copyright 2020 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # UI::Notification objects allows you to show native notifications in the
5
+ # desktop. Notifications can have a message, icon and accept and/or dismiss
6
+ # buttons with callback blocks.
7
+ #
8
+ # @example
9
+ # # For consistency, the accept (yes) and the dismiss (no) buttons
10
+ # # are always displayed in the same order.
11
+ # message = "A new version of pizza is available. Install now?"
12
+ # notification = UI::Notification.new(sketchup_extension, message)
13
+ # notification.on_accept("Pizza!") { puts "Pizza" }
14
+ # notification.on_dismiss("No thanks") { puts "No pizza" }
15
+ # notification.show
16
+ #
17
+ # # The two options are however not treated differently by SketchUp and can
18
+ # # also be used for questions with no strict yes/no answer.
19
+ # message = "Pizza clashes with health. Select which one to keep."
20
+ # notification = UI::Notification.new(sketchup_extension, message)
21
+ # notification.on_accept("Pizza") { puts "Pizza" }
22
+ # notification.on_dismiss("Health") { puts "Salad" }
23
+ # notification.show
24
+ #
25
+ # @version SketchUp 2017
26
+ class UI::Notification
27
+
28
+ # Instance Methods
29
+
30
+ # Gets the icon name, this is the path that will be used to get the icon from
31
+ # the file system path.
32
+ #
33
+ # @example
34
+ # notification = UI::Notification.new(sketchup_extension, "Hello world", "/path/to/icon", "icon Tooltip")
35
+ # puts "Icon Name: #{notification.icon_name}"
36
+ # notification.show
37
+ #
38
+ # @return [String]
39
+ #
40
+ # @version SketchUp 2017
41
+ def icon_name
42
+ end
43
+
44
+ # Sets the icon path, this icon will be loaded from the path give, the path
45
+ # has to be a local filesystem path.
46
+ #
47
+ # @example
48
+ # notification = UI::Notification.new(sketchup_extension, "Hello world")
49
+ # notification.icon_name = "/path/to/icon"
50
+ # notification.show
51
+ #
52
+ # @param [String] icon_name
53
+ # String providing the icon filesystem path.
54
+ #
55
+ # @return [Boolean]
56
+ #
57
+ # @version SketchUp 2017
58
+ def icon_name=(icon_name)
59
+ end
60
+
61
+ # Gets the icon Tooltip, this is the string that appear when the mouse is over
62
+ # the icon.
63
+ #
64
+ # @example
65
+ # notification = UI::Notification.new(sketchup_extension, "Hello world", "/path/to/icon", "icon Tooltip")
66
+ # puts "Tooltip: #{notification.icon_tooltip}"
67
+ # notification.show
68
+ #
69
+ # @return [String]
70
+ #
71
+ # @version SketchUp 2017
72
+ def icon_tooltip
73
+ end
74
+
75
+ # Sets the icon Tooltip, this string will appear when the mouse is over the
76
+ # icon.
77
+ #
78
+ # @example
79
+ # notification = UI::Notification.new(sketchup_extension, "Hello world")
80
+ # notification.icon_tooltip = "icon Tooltip"
81
+ # notification.show
82
+ #
83
+ # @param [String] icon_tooltip
84
+ # String providing the new icon Tooltip.
85
+ #
86
+ # @return [Boolean]
87
+ #
88
+ # @version SketchUp 2017
89
+ def icon_tooltip=(icon_tooltip)
90
+ end
91
+
92
+ # The new method is used to create a new {UI::Notification}.
93
+ #
94
+ # In order to insert line breaks into the message you need to use +\\r\\n+.
95
+ #
96
+ # @bug Prior to SketchUp 2018 messages could only be 3 lines long on Windows
97
+ # and 2 lines on Mac. Now the notification expands to fit its content.
98
+ #
99
+ # @example
100
+ # notification = UI::Notification.new(sketchup_extension, "Hello world", "/path/to/icon", "icon Tooltip")
101
+ # notification.show
102
+ #
103
+ # @param [SketchupExtension] sketchup_extension
104
+ # Required sketchup_extension
105
+ # to identify the sender.
106
+ #
107
+ # @param [String] message
108
+ # Optionally assign the message.
109
+ #
110
+ # @param [String] icon_name
111
+ # Optionally set a path to an image.
112
+ #
113
+ # @param [String] icon_tooltip
114
+ # Optionally set an image tooltip.
115
+ #
116
+ # @return [UI::Notification]
117
+ #
118
+ # @version SketchUp 2017
119
+ def initialize(sketchup_extension, message, icon_name, icon_tooltip)
120
+ end
121
+
122
+ # Gets the message as string.
123
+ #
124
+ # @example
125
+ # notification = UI::Notification.new(sketchup_extension)
126
+ # puts "This is the current message: #{notification.message}"
127
+ # notification.show
128
+ #
129
+ # @return [String]
130
+ #
131
+ # @version SketchUp 2017
132
+ def message
133
+ end
134
+
135
+ # Sets a new message. Notifications are meant for quick & brief messages.
136
+ # Remember that they disappear automatically.
137
+ #
138
+ # @example
139
+ # notification = UI::Notification.new(sketchup_extension)
140
+ # notification.message = "Hello world"
141
+ # notification.show
142
+ #
143
+ # @param [String] message
144
+ # String providing the new message.
145
+ #
146
+ # @return [Boolean]
147
+ #
148
+ # @version SketchUp 2017
149
+ def message=(message)
150
+ end
151
+
152
+ # Shows a button in the notification with the given title and callback block,
153
+ # both arguments are required.
154
+ #
155
+ # @bug Prior to SketchUp 2019 both the accept and dismiss buttons were
156
+ # displayed, even if only one had been implemented.
157
+ #
158
+ # @example
159
+ # notification = UI::Notification.new(sketchup_extension, "Hello world")
160
+ # notification.on_accept("Accept") do |notification, title|
161
+ # puts "The user pressed [#{title}] with message #{notification.message}"
162
+ # end
163
+ # notification.show
164
+ #
165
+ # @param [String] title
166
+ # Sets the title of the button.
167
+ #
168
+ # @param [Block] block
169
+ # Sets the action callback, this will be called when
170
+ # the user clicks on the dismiss button.
171
+ #
172
+ # @raise [RuntimeError] When calling on_accept when the notification has
173
+ # already been shown.
174
+ #
175
+ # @return [Boolean]
176
+ #
177
+ # @version SketchUp 2017
178
+ def on_accept(title, block)
179
+ end
180
+
181
+ # Returns the accept's button title.
182
+ #
183
+ # @example
184
+ # notification = UI::Notification.new(sketchup_extension, "Hello world")
185
+ # notification.on_accept("Accept") do |notification, title|
186
+ # puts "The user pressed #{notification.on_accept_title}"
187
+ # end
188
+ # notification.show
189
+ #
190
+ # @return [String]
191
+ #
192
+ # @version SketchUp 2017
193
+ def on_accept_title
194
+ end
195
+
196
+ # Shows a button in the notification with the given title and callback block.
197
+ # Both arguments are required. This callback is only called if you press the
198
+ # Dismiss button, not when the time runs out and the notification automatically
199
+ # disappears.
200
+ #
201
+ # @bug Prior to SketchUp 2019 both the accept and dismiss buttons were
202
+ # displayed, even if only one had been implemented.
203
+ #
204
+ # @example
205
+ # notification = UI::Notification.new(sketchup_extension, "Hello world")
206
+ # notification.on_dismiss("Close") do |notification, title|
207
+ # puts "The user pressed [#{title}] with message #{notification.message}"
208
+ # end
209
+ # notification.show
210
+ #
211
+ # @param [String] title
212
+ # Sets the title of the button.
213
+ #
214
+ # @param [Block] block
215
+ # Sets the action callback, this will be called when
216
+ # the user clicks on the dismiss button.
217
+ #
218
+ # @raise [RuntimeError] When calling on_dismiss when the notification has
219
+ # already been shown.
220
+ #
221
+ # @return [Boolean]
222
+ #
223
+ # @version SketchUp 2017
224
+ def on_dismiss(title, block)
225
+ end
226
+
227
+ # Returns the dismiss's button title.
228
+ #
229
+ # @example
230
+ # notification = UI::Notification.new(sketchup_extension, "Hello world")
231
+ # notification.on_dismiss("Close") do |notification, title|
232
+ # puts "The user pressed #{notification.on_dismiss_title}"
233
+ # end
234
+ # notification.show
235
+ #
236
+ # @return [String]
237
+ #
238
+ # @version SketchUp 2017
239
+ def on_dismiss_title
240
+ end
241
+
242
+ # Shows the notification. If not interacted with, the notification will
243
+ # disappear without calling any callbacks.
244
+ #
245
+ # @example
246
+ # notification = UI::Notification.new(sketchup_extension, "Hello world")
247
+ # notification.show
248
+ #
249
+ # @return [Boolean]
250
+ #
251
+ # @version SketchUp 2017
252
+ def show
253
+ end
254
+
255
+ end