sketchup-api-stubs 0.7.4 → 0.7.8

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 (151) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sketchup-api-stubs/sketchup.rb +148 -145
  3. data/lib/sketchup-api-stubs/stubs/{array.rb → Array.rb} +741 -741
  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 +523 -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 +693 -691
  16. data/lib/sketchup-api-stubs/stubs/{geom.rb → Geom.rb} +351 -348
  17. data/lib/sketchup-api-stubs/stubs/{languagehandler.rb → LanguageHandler.rb} +93 -92
  18. data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +595 -573
  19. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +698 -411
  20. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +183 -174
  21. data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
  22. data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +516 -514
  23. data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
  24. data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -143
  25. data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +353 -353
  26. data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +354 -349
  27. data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
  28. data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
  29. data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
  30. data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -371
  31. data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
  32. data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
  33. data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -220
  34. data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +567 -567
  35. data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
  36. data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
  37. data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +183 -183
  38. data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +387 -387
  39. data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -204
  40. data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +344 -344
  41. data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
  42. data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +692 -694
  43. data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1519 -1519
  44. data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
  45. data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
  46. data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
  47. data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
  48. data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
  49. data/lib/sketchup-api-stubs/stubs/{length.rb → Length.rb} +278 -278
  50. data/lib/sketchup-api-stubs/stubs/{numeric.rb → Numeric.rb} +249 -249
  51. data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +144 -140
  52. data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +169 -157
  53. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +209 -209
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +152 -152
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +286 -281
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
  57. data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +302 -328
  58. data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +478 -577
  59. data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
  60. data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +122 -122
  61. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -281
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +619 -562
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +593 -593
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
  65. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +257 -257
  66. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
  67. data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -194
  68. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +426 -329
  69. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -72
  70. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -102
  71. data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
  72. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -312
  73. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -38
  74. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
  75. data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +396 -390
  76. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +502 -508
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1205 -1119
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +272 -0
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -125
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +545 -544
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -59
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +126 -125
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +937 -750
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +104 -104
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +750 -697
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +292 -285
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +62 -62
  89. data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
  90. data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +468 -409
  91. data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -226
  92. data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -190
  93. data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +407 -393
  94. data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -82
  95. data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +306 -303
  96. data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +326 -285
  97. data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +422 -0
  98. data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +427 -244
  99. data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +249 -136
  100. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
  101. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +48 -48
  102. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
  103. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +112 -112
  104. data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
  105. data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +414 -416
  106. data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +318 -311
  107. data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -141
  108. data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -95
  109. data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1651 -1638
  110. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +357 -356
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +131 -132
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +284 -284
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +797 -770
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +363 -353
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -76
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +477 -456
  118. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  119. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +364 -364
  120. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -44
  121. data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +459 -454
  123. data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
  124. data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +212 -212
  125. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +260 -257
  126. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -57
  127. data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -0
  128. data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
  129. data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +217 -211
  130. data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
  131. data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +217 -225
  132. data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
  133. data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +837 -829
  134. data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
  135. data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -154
  136. data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +75 -61
  137. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
  138. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1317 -1301
  139. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +45 -43
  140. data/lib/sketchup-api-stubs/stubs/{sketchup.rb → Sketchup.rb} +1360 -1310
  141. data/lib/sketchup-api-stubs/stubs/{sketchupextension.rb → SketchupExtension.rb} +353 -353
  142. data/lib/sketchup-api-stubs/stubs/{string.rb → String.rb} +24 -24
  143. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +389 -310
  144. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +496 -356
  145. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +269 -229
  146. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +240 -240
  147. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +635 -633
  148. data/lib/sketchup-api-stubs/stubs/{ui.rb → UI.rb} +683 -667
  149. data/lib/sketchup-api-stubs/stubs/_top_level.rb +311 -311
  150. data/lib/sketchup-api-stubs.rb +1 -1
  151. metadata +15 -12
@@ -1,349 +1,354 @@
1
- # Copyright:: Copyright 2020 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # A formatted text entity.
5
- #
6
- # @version LayOut 2018
7
- class Layout::FormattedText < Layout::Entity
8
-
9
- # Constants
10
-
11
- ANCHOR_TYPE_BOTTOM_CENTER = nil # Stub value.
12
- ANCHOR_TYPE_BOTTOM_LEFT = nil # Stub value.
13
- ANCHOR_TYPE_BOTTOM_RIGHT = nil # Stub value.
14
- ANCHOR_TYPE_CENTER_CENTER = nil # Stub value.
15
- ANCHOR_TYPE_CENTER_LEFT = nil # Stub value.
16
- ANCHOR_TYPE_CENTER_RIGHT = nil # Stub value.
17
- ANCHOR_TYPE_TOP_CENTER = nil # Stub value.
18
- ANCHOR_TYPE_TOP_LEFT = nil # Stub value.
19
- ANCHOR_TYPE_TOP_RIGHT = nil # Stub value.
20
-
21
- GROW_MODE_BOUNDED = nil # Stub value.
22
- GROW_MODE_UNBOUNDED = nil # Stub value.
23
-
24
- # Class Methods
25
-
26
- # The {.new_from_file} method creates a new {Layout::FormattedText} from a text
27
- # file.
28
- #
29
- # The anchor type can be one of the following values:
30
- # [+ANCHOR_TYPE_TOP_LEFT+]
31
- # [+ANCHOR_TYPE_CENTER_LEFT+]
32
- # [+ANCHOR_TYPE_BOTTOM_LEFT+]
33
- # [+ANCHOR_TYPE_TOP_RIGHT+]
34
- # [+ANCHOR_TYPE_CENTER_RIGHT+]
35
- # [+ANCHOR_TYPE_BOTTOM_RIGHT+]
36
- # [+ANCHOR_TYPE_TOP_CENTER+]
37
- # [+ANCHOR_TYPE_CENTER_CENTER+]
38
- # [+ANCHOR_TYPE_BOTTOM_CENTER+]
39
- #
40
- # @example
41
- # anchor = Geom::Point2d.new(1, 1)
42
- # text = Layout::FormattedText.new("C:/Test.txt", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
43
- #
44
- # @overload new_from_file(path, bounds)
45
- #
46
- # @param [String] path
47
- # @param [Geom::Bounds2d] bounds
48
- # @return [Layout::FormattedText]
49
- #
50
- # @overload new_from_file(path, anchor_point, anchor_type)
51
- #
52
- # @param [String] path
53
- # @param [Geom::Point2d] anchor_point The anchor point for the
54
- # {Layout::FormattedText}'s position.
55
- # @param [Integer] anchor_type Defines which point of the
56
- # {Layout::FormattedText} is set by anchor_point.
57
- # @return [Layout::FormattedText]
58
- #
59
- # @raise [ArgumentError] if the passed in string is empty
60
- #
61
- # @raise [ArgumentError] if bounds is zero size
62
- #
63
- # @raise [ArgumentError] if path does not refer to a valid file
64
- #
65
- # @version LayOut 2018
66
- def self.new_from_file(*args)
67
- end
68
-
69
- # Instance Methods
70
-
71
- # The {#append_plain_text} method appends new text with a given style to the
72
- # end of the existing plain text of the {Layout::FormattedText}.
73
- #
74
- # @example
75
- # anchor = Geom::Point2d.new(1, 1)
76
- # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
77
- # style = text.style(0)
78
- # text.append_plain_text("foo", style)
79
- #
80
- # @note This method does not support more than two different style runs in a
81
- # single text string.
82
- #
83
- # @param [String] plain_text
84
- #
85
- # @param [Layout::Style] style
86
- #
87
- # @raise [ArgumentError] if plain_text is empty
88
- #
89
- # @raise [LockedLayerError] if the {Layout::FormattedText} is on a locked
90
- # {Layout::Layer}
91
- #
92
- # @raise [LockedEntityError] if the {Layout::FormattedText} is locked
93
- #
94
- # @version LayOut 2018
95
- def append_plain_text(plain_text, style)
96
- end
97
-
98
- # The {#apply_style} method sets the {Layout::Style} for the text starting at
99
- # the given character index, and running for the given number of characters.
100
- #
101
- # @example
102
- # anchor = Geom::Point2d.new(1, 1)
103
- # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
104
- # style = text.style(0)
105
- # style.text_bold = true
106
- # text.apply_style(style, 2, 4)
107
- #
108
- # @param [Layout::Style] style
109
- #
110
- # @param [Integer] index
111
- #
112
- # @param [Integer] length
113
- #
114
- # @raise [IndexError] if index is out of range
115
- #
116
- # @raise [ArgumentError] if length is not greater than zero
117
- #
118
- # @raise [RangeError] if the range specified by index and length is not
119
- # valid for this {Layout::FormattedText}
120
- #
121
- # @raise [LockedLayerError] if the {Layout::FormattedText} is on a locked
122
- # {Layout::Layer}
123
- #
124
- # @raise [LockedEntityError] if the {Layout::FormattedText} is locked
125
- #
126
- # @version LayOut 2018
127
- def apply_style(style, index = 0, length = length_to_end_of_text)
128
- end
129
-
130
- # The {#display_text} method returns the display text representation of the
131
- # {Layout::FormattedText}.
132
- #
133
- # @example
134
- # anchor = Geom::Point2d.new(1, 1)
135
- # text = Layout::FormattedText.new("<PageNumber>", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
136
- # doc.add_entity(text, doc.layers.first, doc.pages.first)
137
- # text = text.display_text(doc.pages.first)
138
- #
139
- # @note Passing an invalid {Layout::Page} will prevent an auto text tag from
140
- # being substituted with its display representation.
141
- #
142
- # @param [Layout::Page] page
143
- # The {Layout::Page} to use to convert an auto text
144
- # tag to display text
145
- #
146
- # @raise [ArgumentError] if page is not in the same {Layout::Document} as
147
- # the {Layout::FormattedText}
148
- #
149
- # @return [String]
150
- #
151
- # @version LayOut 2018
152
- def display_text(page = nil)
153
- end
154
-
155
- # The {#grow_mode} method returns the mode for how the {Layout::FormattedText}
156
- # sizes itself.
157
- #
158
- # The grow mode can be one of the following values:
159
- # [+Layout::FormattedText::GROW_MODE_BOUNDED+]
160
- # [+Layout::FormattedText::GROW_MODE_UNBOUNDED+]
161
- #
162
- # @example
163
- # anchor = Geom::Point2d.new(1, 1)
164
- # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
165
- # mode = text.grow_mode
166
- #
167
- # @return [Integer] grow_mode
168
- #
169
- # @version LayOut 2018
170
- def grow_mode
171
- end
172
-
173
- # The {#grow_mode=} method sets the mode for how the {Layout::FormattedText}
174
- # sizes itself.
175
- #
176
- # The grow mode can be one of the following values:
177
- # [+Layout::FormattedText::GROW_MODE_BOUNDED+]
178
- # [+Layout::FormattedText::GROW_MODE_UNBOUNDED+]
179
- #
180
- # @example
181
- # anchor = Geom::Point2d.new(1, 1)
182
- # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
183
- # text.grow_mode = GROW_MODE_UNBOUNDED
184
- #
185
- # @raise [LockedLayerError] if the {Layout::FormattedText} is on a locked
186
- # {Layout::Layer}
187
- #
188
- # @raise [LockedEntityError] if the {Layout::FormattedText} is locked
189
- #
190
- # @raise [ArgumentError] if grow_mode is not a valid grow mode
191
- #
192
- # @return [Integer] grow_mode
193
- #
194
- # @version LayOut 2018
195
- def grow_mode=(grow_mode)
196
- end
197
-
198
- # The {#initialize} method creates a new {Layout::FormattedText}.
199
- #
200
- # The anchor type can be one of the following values:
201
- # [+ANCHOR_TYPE_TOP_LEFT+]
202
- # [+ANCHOR_TYPE_CENTER_LEFT+]
203
- # [+ANCHOR_TYPE_BOTTOM_LEFT+]
204
- # [+ANCHOR_TYPE_TOP_RIGHT+]
205
- # [+ANCHOR_TYPE_CENTER_RIGHT+]
206
- # [+ANCHOR_TYPE_BOTTOM_RIGHT+]
207
- # [+ANCHOR_TYPE_TOP_CENTER+]
208
- # [+ANCHOR_TYPE_CENTER_CENTER+]
209
- # [+ANCHOR_TYPE_BOTTOM_CENTER+]
210
- #
211
- # @example
212
- # anchor = Geom::Point2d.new(1, 1)
213
- # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
214
- #
215
- # @overload initialize(text, bounds)
216
- #
217
- # @param [String] text
218
- # @param [Geom::Bounds2d] bounds
219
- # @return [Layout::FormattedText]
220
- #
221
- # @overload initialize(text, anchor_point, anchor_type)
222
- #
223
- # @param [String] text
224
- # @param [Geom::Point2d] anchor_point The anchor point for the
225
- # {Layout::FormattedText}'s position.
226
- # @param [Integer] anchor_type Defines which point of the
227
- # {Layout::FormattedText} is set by anchor_point.
228
- # @return [Layout::FormattedText]
229
- #
230
- # @raise [ArgumentError] if the passed in string is empty
231
- #
232
- # @raise [ArgumentError] if bounds is zero size
233
- #
234
- # @version LayOut 2018
235
- def initialize(*args)
236
- end
237
-
238
- # The {#plain_text} method returns the plain text representation of the
239
- # {Layout::FormattedText}.
240
- #
241
- # @example
242
- # anchor = Geom::Point2d.new(1, 1)
243
- # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
244
- # text = text.plain_text
245
- #
246
- # @return [String]
247
- #
248
- # @version LayOut 2018
249
- def plain_text
250
- end
251
-
252
- # The {#plain_text=} method sets the plain text representation of the
253
- # {Layout::FormattedText}.
254
- #
255
- # @example
256
- # anchor = Geom::Point2d.new(1, 1)
257
- # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
258
- # text.plain_text = "foo"
259
- #
260
- # @param [String] plain_text
261
- #
262
- # @raise [ArgumentError] if plain_text is empty
263
- #
264
- # @raise [LockedLayerError] if the {Layout::FormattedText} is on a locked
265
- # {Layout::Layer}
266
- #
267
- # @raise [LockedEntityError] if the {Layout::FormattedText} is locked
268
- #
269
- # @version LayOut 2018
270
- def plain_text=(plain_text)
271
- end
272
-
273
- # The {#rtf} method returns the raw RTF representation of the
274
- # {Layout::FormattedText}.
275
- #
276
- # @example
277
- # anchor = Geom::Point2d.new(1, 1)
278
- # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
279
- # rtf_text = text.rtf
280
- #
281
- # @note Passing an invalid {Layout::Page} will prevent an auto text tag from
282
- # being substituted with its display representation.
283
- #
284
- # @overload rtf
285
- #
286
- # @return [String] The RTF text string. If the {Layout::FormattedText} is
287
- # auto text, this will be an auto text tag.
288
- #
289
- # @overload rtf(page)
290
- #
291
- # @param [Layout::Page] page The {Layout::Page} to use to convert an auto
292
- # text tag to display text
293
- # @return [String] The RTF text string. If the {Layout::FormattedText} is
294
- # auto text, this will be the display text.
295
- #
296
- # @raise [ArgumentError] if page is not in the same {Layout::Document} as
297
- # the {Layout::FormattedText}
298
- #
299
- # @version LayOut 2018
300
- def rtf(*args)
301
- end
302
-
303
- # The {#rtf=} method sets the raw RTF representation of the
304
- # {Layout::FormattedText}.
305
- #
306
- # @example
307
- # anchor = Geom::Point2d.new(1, 1)
308
- # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
309
- # text.rtf = "{\rtf1\ansi{\fonttbl\f0\fswiss Helvetica;}\f0\pard This is some {\b bold} text.\par}"
310
- #
311
- # @param [String] rtf_text
312
- #
313
- # @raise [ArgumentError] if rtf_text is an empty string
314
- #
315
- # @raise [LockedLayerError] if the {Layout::FormattedText} is on a locked
316
- # {Layout::Layer}
317
- #
318
- # @raise [LockedEntityError] if the {Layout::FormattedText} is locked
319
- #
320
- # @version LayOut 2018
321
- def rtf=(rtf_text)
322
- end
323
-
324
- # The {#style} method returns a {Layout::Style} for the text starting at the
325
- # given character index, and running for the given length.
326
- #
327
- # @example
328
- # anchor = Geom::Point2d.new(1, 1)
329
- # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
330
- # style = text.style(0)
331
- #
332
- # @param [Integer] index
333
- #
334
- # @param [Integer] length
335
- #
336
- # @raise [IndexError] if index is out of range
337
- #
338
- # @raise [ArgumentError] if length is not greater than zero
339
- #
340
- # @raise [RangeError] if the range specified by index and length is not
341
- # valid for this {Layout::FormattedText}
342
- #
343
- # @return [Layout::Style]
344
- #
345
- # @version LayOut 2018
346
- def style(index = 0, length = 1)
347
- end
348
-
349
- end
1
+ # Copyright:: Copyright 2022 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # A formatted text entity.
5
+ #
6
+ # @version LayOut 2018
7
+ class Layout::FormattedText < Layout::Entity
8
+
9
+ # Constants
10
+
11
+ ANCHOR_TYPE_BOTTOM_CENTER = nil # Stub value.
12
+ ANCHOR_TYPE_BOTTOM_LEFT = nil # Stub value.
13
+ ANCHOR_TYPE_BOTTOM_RIGHT = nil # Stub value.
14
+ ANCHOR_TYPE_CENTER_CENTER = nil # Stub value.
15
+ ANCHOR_TYPE_CENTER_LEFT = nil # Stub value.
16
+ ANCHOR_TYPE_CENTER_RIGHT = nil # Stub value.
17
+ ANCHOR_TYPE_TOP_CENTER = nil # Stub value.
18
+ ANCHOR_TYPE_TOP_LEFT = nil # Stub value.
19
+ ANCHOR_TYPE_TOP_RIGHT = nil # Stub value.
20
+
21
+ GROW_MODE_BOUNDED = nil # Stub value.
22
+ GROW_MODE_UNBOUNDED = nil # Stub value.
23
+
24
+ # Class Methods
25
+
26
+ # The {.new_from_file} method creates a new {Layout::FormattedText} from a text
27
+ # file.
28
+ #
29
+ # The anchor type can be one of the following values:
30
+ # [+ANCHOR_TYPE_TOP_LEFT+]
31
+ # [+ANCHOR_TYPE_CENTER_LEFT+]
32
+ # [+ANCHOR_TYPE_BOTTOM_LEFT+]
33
+ # [+ANCHOR_TYPE_TOP_RIGHT+]
34
+ # [+ANCHOR_TYPE_CENTER_RIGHT+]
35
+ # [+ANCHOR_TYPE_BOTTOM_RIGHT+]
36
+ # [+ANCHOR_TYPE_TOP_CENTER+]
37
+ # [+ANCHOR_TYPE_CENTER_CENTER+]
38
+ # [+ANCHOR_TYPE_BOTTOM_CENTER+]
39
+ #
40
+ # Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
41
+ #
42
+ # @example
43
+ # anchor = Geom::Point2d.new(1, 1)
44
+ # text = Layout::FormattedText.new("C:/Test.txt", anchor,
45
+ #
46
+ # @overload new_from_file(path, bounds)
47
+ #
48
+ # @param [String] path
49
+ # @param [Geom::Bounds2d] bounds
50
+ # @return [Layout::FormattedText]
51
+ #
52
+ # @overload new_from_file(path, anchor_point, anchor_type)
53
+ #
54
+ # @param [String] path
55
+ # @param [Geom::Point2d] anchor_point The anchor point for the
56
+ # {Layout::FormattedText}'s position.
57
+ # @param [Integer] anchor_type Defines which point of the
58
+ # {Layout::FormattedText} is set by anchor_point.
59
+ # @return [Layout::FormattedText]
60
+ #
61
+ # @raise [ArgumentError] if the passed in string is empty
62
+ #
63
+ # @raise [ArgumentError] if bounds is zero size
64
+ #
65
+ # @raise [ArgumentError] if path does not refer to a valid file
66
+ #
67
+ # @version LayOut 2018
68
+ def self.new_from_file(*args)
69
+ end
70
+
71
+ # Instance Methods
72
+
73
+ # The {#append_plain_text} method appends new text with a given style to the
74
+ # end of the existing plain text of the {Layout::FormattedText}.
75
+ #
76
+ # @example
77
+ # anchor = Geom::Point2d.new(1, 1)
78
+ # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
79
+ # style = text.style(0)
80
+ # text.append_plain_text("foo", style)
81
+ #
82
+ # @note This method does not support more than two different style runs in a
83
+ # single text string.
84
+ #
85
+ # @param [String] plain_text
86
+ #
87
+ # @param [Layout::Style] style
88
+ #
89
+ # @raise [ArgumentError] if plain_text is empty
90
+ #
91
+ # @raise [LockedLayerError] if the {Layout::FormattedText} is on a locked
92
+ # {Layout::Layer}
93
+ #
94
+ # @raise [LockedEntityError] if the {Layout::FormattedText} is locked
95
+ #
96
+ # @version LayOut 2018
97
+ def append_plain_text(plain_text, style)
98
+ end
99
+
100
+ # The {#apply_style} method sets the {Layout::Style} for the text starting at
101
+ # the given character index, and running for the given number of characters.
102
+ #
103
+ # @example
104
+ # anchor = Geom::Point2d.new(1, 1)
105
+ # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
106
+ # style = text.style(0)
107
+ # style.text_bold = true
108
+ # text.apply_style(style, 2, 4)
109
+ #
110
+ # @param [Layout::Style] style
111
+ #
112
+ # @param [Integer] index
113
+ #
114
+ # @param [Integer] length
115
+ #
116
+ # @raise [IndexError] if index is out of range
117
+ #
118
+ # @raise [ArgumentError] if length is not greater than zero
119
+ #
120
+ # @raise [RangeError] if the range specified by index and length is not
121
+ # valid for this {Layout::FormattedText}
122
+ #
123
+ # @raise [LockedLayerError] if the {Layout::FormattedText} is on a locked
124
+ # {Layout::Layer}
125
+ #
126
+ # @raise [LockedEntityError] if the {Layout::FormattedText} is locked
127
+ #
128
+ # @version LayOut 2018
129
+ def apply_style(style, index = 0, length = length_to_end_of_text)
130
+ end
131
+
132
+ # The {#display_text} method returns the display text representation of the
133
+ # {Layout::FormattedText}.
134
+ #
135
+ # Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT) doc.add_entity(text, doc.layers.first,
136
+ # doc.pages.first) text = text.display_text(doc.pages.first)
137
+ #
138
+ # @example
139
+ # anchor = Geom::Point2d.new(1, 1)
140
+ # text = Layout::FormattedText.new("<PageNumber>", anchor,
141
+ #
142
+ # @note Passing an invalid {Layout::Page} will prevent an auto-text tag from
143
+ # being substituted with its display representation.
144
+ #
145
+ # @param [Layout::Page] page
146
+ # The {Layout::Page} to use to convert an auto-text
147
+ # tag to display text
148
+ #
149
+ # @raise [ArgumentError] if page is not in the same {Layout::Document} as
150
+ # the {Layout::FormattedText}
151
+ #
152
+ # @return [String]
153
+ #
154
+ # @version LayOut 2018
155
+ def display_text(page = nil)
156
+ end
157
+
158
+ # The {#grow_mode} method returns the mode for how the {Layout::FormattedText}
159
+ # sizes itself.
160
+ #
161
+ # The grow mode can be one of the following values:
162
+ # [+Layout::FormattedText::GROW_MODE_BOUNDED+]
163
+ # [+Layout::FormattedText::GROW_MODE_UNBOUNDED+]
164
+ #
165
+ # @example
166
+ # anchor = Geom::Point2d.new(1, 1)
167
+ # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
168
+ # mode = text.grow_mode
169
+ #
170
+ # @return [Integer] grow_mode
171
+ #
172
+ # @version LayOut 2018
173
+ def grow_mode
174
+ end
175
+
176
+ # The {#grow_mode=} method sets the mode for how the {Layout::FormattedText}
177
+ # sizes itself.
178
+ #
179
+ # The grow mode can be one of the following values:
180
+ # [+Layout::FormattedText::GROW_MODE_BOUNDED+]
181
+ # [+Layout::FormattedText::GROW_MODE_UNBOUNDED+]
182
+ #
183
+ # @example
184
+ # anchor = Geom::Point2d.new(1, 1)
185
+ # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
186
+ # text.grow_mode = GROW_MODE_UNBOUNDED
187
+ #
188
+ # @raise [LockedLayerError] if the {Layout::FormattedText} is on a locked
189
+ # {Layout::Layer}
190
+ #
191
+ # @raise [LockedEntityError] if the {Layout::FormattedText} is locked
192
+ #
193
+ # @raise [ArgumentError] if grow_mode is not a valid grow mode
194
+ #
195
+ # @return [Integer] grow_mode
196
+ #
197
+ # @version LayOut 2018
198
+ def grow_mode=(grow_mode)
199
+ end
200
+
201
+ # The {#initialize} method creates a new {Layout::FormattedText}.
202
+ #
203
+ # The anchor type can be one of the following values:
204
+ # [+ANCHOR_TYPE_TOP_LEFT+]
205
+ # [+ANCHOR_TYPE_CENTER_LEFT+]
206
+ # [+ANCHOR_TYPE_BOTTOM_LEFT+]
207
+ # [+ANCHOR_TYPE_TOP_RIGHT+]
208
+ # [+ANCHOR_TYPE_CENTER_RIGHT+]
209
+ # [+ANCHOR_TYPE_BOTTOM_RIGHT+]
210
+ # [+ANCHOR_TYPE_TOP_CENTER+]
211
+ # [+ANCHOR_TYPE_CENTER_CENTER+]
212
+ # [+ANCHOR_TYPE_BOTTOM_CENTER+]
213
+ #
214
+ # @example
215
+ # anchor = Geom::Point2d.new(1, 1)
216
+ # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
217
+ #
218
+ # @overload initialize(text, bounds)
219
+ #
220
+ # @param [String] text
221
+ # @param [Geom::Bounds2d] bounds
222
+ # @return [Layout::FormattedText]
223
+ #
224
+ # @overload initialize(text, anchor_point, anchor_type)
225
+ #
226
+ # @param [String] text
227
+ # @param [Geom::Point2d] anchor_point The anchor point for the
228
+ # {Layout::FormattedText}'s position.
229
+ # @param [Integer] anchor_type Defines which point of the
230
+ # {Layout::FormattedText} is set by anchor_point.
231
+ # @return [Layout::FormattedText]
232
+ #
233
+ # @raise [ArgumentError] if the passed in string is empty
234
+ #
235
+ # @raise [ArgumentError] if bounds is zero size
236
+ #
237
+ # @version LayOut 2018
238
+ def initialize(*args)
239
+ end
240
+
241
+ # The {#plain_text} method returns the plain text representation of the
242
+ # {Layout::FormattedText}.
243
+ #
244
+ # @example
245
+ # anchor = Geom::Point2d.new(1, 1)
246
+ # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
247
+ # text = text.plain_text
248
+ #
249
+ # @return [String]
250
+ #
251
+ # @version LayOut 2018
252
+ def plain_text
253
+ end
254
+
255
+ # The {#plain_text=} method sets the plain text representation of the
256
+ # {Layout::FormattedText}.
257
+ #
258
+ # @example
259
+ # anchor = Geom::Point2d.new(1, 1)
260
+ # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
261
+ # text.plain_text = "foo"
262
+ #
263
+ # @param [String] plain_text
264
+ #
265
+ # @raise [ArgumentError] if plain_text is empty
266
+ #
267
+ # @raise [LockedLayerError] if the {Layout::FormattedText} is on a locked
268
+ # {Layout::Layer}
269
+ #
270
+ # @raise [LockedEntityError] if the {Layout::FormattedText} is locked
271
+ #
272
+ # @version LayOut 2018
273
+ def plain_text=(plain_text)
274
+ end
275
+
276
+ # The {#rtf} method returns the raw RTF representation of the
277
+ # {Layout::FormattedText}.
278
+ #
279
+ # @example
280
+ # anchor = Geom::Point2d.new(1, 1)
281
+ # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
282
+ # rtf_text = text.rtf
283
+ #
284
+ # @note Passing an invalid {Layout::Page} will prevent an auto-text tag from
285
+ # being substituted with its display representation.
286
+ #
287
+ # @overload rtf
288
+ #
289
+ # @return [String] The RTF text string. If the {Layout::FormattedText} is
290
+ # auto-text, this will be an auto-text tag.
291
+ #
292
+ # @overload rtf(page)
293
+ #
294
+ # @param [Layout::Page] page The {Layout::Page} to use to convert an auto
295
+ # text tag to display text
296
+ # @return [String] The RTF text string. If the {Layout::FormattedText} is
297
+ # auto-text, this will be the display text.
298
+ #
299
+ # @raise [ArgumentError] if page is not in the same {Layout::Document} as
300
+ # the {Layout::FormattedText}
301
+ #
302
+ # @version LayOut 2018
303
+ def rtf(*args)
304
+ end
305
+
306
+ # The {#rtf=} method sets the raw RTF representation of the
307
+ # {Layout::FormattedText}.
308
+ #
309
+ # text.\par}"
310
+ #
311
+ # @example
312
+ # anchor = Geom::Point2d.new(1, 1)
313
+ # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
314
+ # text.rtf = "{\rtf1\ansi{\fonttbl\f0\fswiss Helvetica;}\f0\pard This is some {\b bold}
315
+ #
316
+ # @param [String] rtf_text
317
+ #
318
+ # @raise [ArgumentError] if rtf_text is an empty string
319
+ #
320
+ # @raise [LockedLayerError] if the {Layout::FormattedText} is on a locked
321
+ # {Layout::Layer}
322
+ #
323
+ # @raise [LockedEntityError] if the {Layout::FormattedText} is locked
324
+ #
325
+ # @version LayOut 2018
326
+ def rtf=(rtf_text)
327
+ end
328
+
329
+ # The {#style} method returns a {Layout::Style} for the text starting at the
330
+ # given character index, and running for the given length.
331
+ #
332
+ # @example
333
+ # anchor = Geom::Point2d.new(1, 1)
334
+ # text = Layout::FormattedText.new("Test", anchor, Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT)
335
+ # style = text.style(0)
336
+ #
337
+ # @param [Integer] index
338
+ #
339
+ # @param [Integer] length
340
+ #
341
+ # @raise [IndexError] if index is out of range
342
+ #
343
+ # @raise [ArgumentError] if length is not greater than zero
344
+ #
345
+ # @raise [RangeError] if the range specified by index and length is not
346
+ # valid for this {Layout::FormattedText}
347
+ #
348
+ # @return [Layout::Style]
349
+ #
350
+ # @version LayOut 2018
351
+ def style(index = 0, length = 1)
352
+ end
353
+
354
+ end