sketchup-api-stubs 0.6.1 → 0.7.4

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 (149) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +2 -0
  3. data/lib/sketchup-api-stubs.rb +1 -1
  4. data/lib/sketchup-api-stubs/sketchup.rb +145 -145
  5. data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +318 -318
  6. data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +172 -172
  7. data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +126 -126
  8. data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
  9. data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +400 -401
  10. data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +661 -661
  11. data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +492 -492
  12. data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +478 -478
  13. data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +263 -263
  14. data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +141 -141
  15. data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +522 -523
  16. data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +691 -691
  17. data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
  18. data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +573 -569
  19. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +411 -411
  20. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +174 -186
  21. data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
  22. data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +514 -455
  23. data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
  24. data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +143 -155
  25. data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +353 -359
  26. data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +349 -349
  27. data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -123
  28. data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
  29. data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -86
  30. data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +371 -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 +220 -232
  34. data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +567 -563
  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 +204 -216
  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 +694 -547
  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/Sketchup/Animation.rb +140 -140
  49. data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +157 -157
  50. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +209 -209
  51. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +152 -152
  52. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +281 -281
  53. data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +328 -328
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +577 -577
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
  57. data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +122 -122
  58. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +281 -281
  59. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +562 -554
  60. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +593 -593
  61. data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +257 -257
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +194 -194
  65. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +329 -329
  66. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +72 -72
  67. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +102 -102
  68. data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
  69. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +312 -312
  70. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +38 -38
  71. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
  72. data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +390 -390
  73. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +508 -508
  74. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  75. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1119 -1097
  76. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +125 -125
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +544 -537
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +59 -59
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +125 -125
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +750 -750
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +104 -104
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +697 -697
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +285 -285
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +62 -62
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +409 -409
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +226 -226
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +190 -190
  89. data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +393 -393
  90. data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +82 -82
  91. data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +303 -303
  92. data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +285 -262
  93. data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +244 -231
  94. data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +136 -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 -123
  99. data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
  100. data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +416 -416
  101. data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +311 -311
  102. data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +141 -141
  103. data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +95 -95
  104. data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1638 -1483
  105. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +356 -356
  106. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +132 -132
  107. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +284 -282
  108. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  109. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +770 -650
  110. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +353 -353
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +76 -76
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +456 -456
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +364 -356
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +44 -44
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +454 -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 +57 -57
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
  123. data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +211 -211
  124. data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
  125. data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +225 -225
  126. data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
  127. data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +829 -829
  128. data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
  129. data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +154 -154
  130. data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +61 -61
  131. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
  132. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1301 -995
  133. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +43 -43
  134. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +310 -310
  135. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +356 -356
  136. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +229 -229
  137. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +240 -240
  138. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +633 -633
  139. data/lib/sketchup-api-stubs/stubs/_top_level.rb +311 -303
  140. data/lib/sketchup-api-stubs/stubs/array.rb +741 -741
  141. data/lib/sketchup-api-stubs/stubs/geom.rb +348 -233
  142. data/lib/sketchup-api-stubs/stubs/languagehandler.rb +92 -92
  143. data/lib/sketchup-api-stubs/stubs/length.rb +278 -262
  144. data/lib/sketchup-api-stubs/stubs/numeric.rb +249 -249
  145. data/lib/sketchup-api-stubs/stubs/sketchup.rb +1310 -1310
  146. data/lib/sketchup-api-stubs/stubs/sketchupextension.rb +353 -353
  147. data/lib/sketchup-api-stubs/stubs/string.rb +24 -24
  148. data/lib/sketchup-api-stubs/stubs/ui.rb +667 -660
  149. metadata +2 -16
@@ -1,86 +1,91 @@
1
- # Copyright:: Copyright 2019 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # A raster image entity.
5
- #
6
- # @example
7
- # image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
8
- # clip_mask = image.clip_mask
9
- # if clip_mask.is_a?(Layout::Rectangle)
10
- # point1 = Geom::Point2d.new(1, 1)
11
- # point2 = Geom::Point2d.new(2, 2)
12
- # bounds = [point1, point2]
13
- # image.clip_mask = Layout::Ellipse.new(bounds)
14
- # end
15
- #
16
- # @version LayOut 2018
17
- class Layout::Image < Layout::Entity
18
-
19
- # Instance Methods
20
-
21
- # The {#clip_mask} method returns the clip mask of the {Layout::Image}, or
22
- # +nil+ if it does not have a clip mask.
23
- #
24
- # @example
25
- # image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
26
- # clip_mask = image.clip_mask
27
- #
28
- # @return [Layout::Entity] The clip mask can be a {Layout::Path},
29
- # {Layout::Rectangle}, or {Layout::Ellipse}.
30
- #
31
- # @version LayOut 2018
32
- def clip_mask
33
- end
34
-
35
- # The {#clip_mask=} method sets the clip mask of the {Layout::Image}.
36
- #
37
- # @example
38
- # image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
39
- # point1 = Geom::Point2d.new(1, 1)
40
- # point2 = Geom::Point2d.new(2, 2)
41
- # bounds = [point1, point2]
42
- # clip_mask = Layout::Rectangle.new(bounds)
43
- # image.clip_mask = clip_mask
44
- #
45
- # @param [Layout::Entity] clip_mask
46
- # The clip mask can be a {Layout::Path},
47
- # {Layout::Rectangle}, {Layout::Ellipse}, or +nil+.
48
- #
49
- # @raise [ArgumentError] if clip mask is already in a document
50
- #
51
- # @raise [ArgumentError] if clip mask is not a {Layout::Path},
52
- # {Layout::Rectangle}, or {Layout::Ellipse}
53
- #
54
- # @raise [LockedLayerError] if the {Layout::Image} is on a locked {Layout::Layer}
55
- #
56
- # @raise [LockedEntityError] if the {Layout::Image} is locked
57
- #
58
- # @version LayOut 2018
59
- def clip_mask=(clip_mask)
60
- end
61
-
62
- # The {#initialize} method creates a new {Layout::Image} from a given image
63
- # file.
64
- #
65
- # @example
66
- # image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
67
- #
68
- # @param [String] path
69
- # The path to the file
70
- #
71
- # @param [Geom::Bounds2d] bounds
72
- #
73
- # @raise [ArgumentError] if bounds are zero size
74
- #
75
- # @raise [ArgumentError] if there was an error reading the image file, such as
76
- # the file name being invalid
77
- #
78
- # @raise [RuntimeError] if there was an error allocating memory for the image
79
- #
80
- # @return [Layout::Image]
81
- #
82
- # @version LayOut 2018
83
- def initialize(path, bounds)
84
- end
85
-
86
- end
1
+ # Copyright:: Copyright 2020 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # A raster image entity.
5
+ #
6
+ # @example
7
+ # image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
8
+ # clip_mask = image.clip_mask
9
+ # if clip_mask.is_a?(Layout::Rectangle)
10
+ # point1 = Geom::Point2d.new(1, 1)
11
+ # point2 = Geom::Point2d.new(2, 2)
12
+ # bounds = [point1, point2]
13
+ # image.clip_mask = Layout::Ellipse.new(bounds)
14
+ # end
15
+ #
16
+ # @version LayOut 2018
17
+ class Layout::Image < Layout::Entity
18
+
19
+ # Instance Methods
20
+
21
+ # The {#clip_mask} method returns the clip mask of the {Layout::Image}, or
22
+ # +nil+ if it does not have a clip mask.
23
+ #
24
+ # @example
25
+ # image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
26
+ # clip_mask = image.clip_mask
27
+ #
28
+ # @return [Layout::Entity] The clip mask can be a {Layout::Path},
29
+ # {Layout::Rectangle}, or {Layout::Ellipse}.
30
+ #
31
+ # @version LayOut 2018
32
+ def clip_mask
33
+ end
34
+
35
+ # The {#clip_mask=} method sets the clip mask of the {Layout::Image}. clip_mask
36
+ # can be a {Layout::Rectangle}, {Layout::Ellipse}, or {Layout::Path}, or +nil+,
37
+ # and it must not currently exist in a {Layout::Document}, or {Layout::Group}.
38
+ #
39
+ # @example
40
+ # image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
41
+ # point1 = Geom::Point2d.new(1, 1)
42
+ # point2 = Geom::Point2d.new(2, 2)
43
+ # bounds = [point1, point2]
44
+ # clip_mask = Layout::Rectangle.new(bounds)
45
+ # image.clip_mask = clip_mask
46
+ #
47
+ # @note +clip_mask+ may be +nil+ as of LayOut 2020.1.
48
+ #
49
+ # @param [Layout::Entity, nil] clip_mask
50
+ # The clip mask can be a {Layout::Path},
51
+ # {Layout::Rectangle}, {Layout::Ellipse}, or +nil+.
52
+ #
53
+ # @raise [ArgumentError] if clip mask is already in a {Layout::Document} or
54
+ # {Layout::Group}
55
+ #
56
+ # @raise [ArgumentError] if clip mask is not a {Layout::Path},
57
+ # {Layout::Rectangle}, or {Layout::Ellipse}
58
+ #
59
+ # @raise [LockedLayerError] if the {Layout::Image} is on a locked {Layout::Layer}
60
+ #
61
+ # @raise [LockedEntityError] if the {Layout::Image} is locked
62
+ #
63
+ # @version LayOut 2018
64
+ def clip_mask=(clip_mask)
65
+ end
66
+
67
+ # The {#initialize} method creates a new {Layout::Image} from a given image
68
+ # file.
69
+ #
70
+ # @example
71
+ # image = Layout::Image.new("my_image.png", [[1, 1], [3, 3]])
72
+ #
73
+ # @param [String] path
74
+ # The path to the file
75
+ #
76
+ # @param [Geom::Bounds2d] bounds
77
+ #
78
+ # @raise [ArgumentError] if bounds are zero size
79
+ #
80
+ # @raise [ArgumentError] if there was an error reading the image file, such as
81
+ # the file name being invalid
82
+ #
83
+ # @raise [RuntimeError] if there was an error allocating memory for the image
84
+ #
85
+ # @return [Layout::Image]
86
+ #
87
+ # @version LayOut 2018
88
+ def initialize(path, bounds)
89
+ end
90
+
91
+ end
@@ -1,371 +1,371 @@
1
- # Copyright:: Copyright 2019 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # This is an interface to a label entity. A {Layout::Label} consists of a
5
- # {Layout::FormattedText} and the label leader {Layout::Path}. A
6
- # {Layout::Label} may be connected to another {Layout::Entity} via a
7
- # {Layout::ConnectionPoint}.
8
- #
9
- # @version LayOut 2018
10
- class Layout::Label < Layout::Entity
11
-
12
- # Constants
13
-
14
- CONNECTION_TYPE_AUTO = nil # Stub value.
15
- CONNECTION_TYPE_BOTTOM_LEFT = nil # Stub value.
16
- CONNECTION_TYPE_BOTTOM_RIGHT = nil # Stub value.
17
- CONNECTION_TYPE_CENTER_LEFT = nil # Stub value.
18
- CONNECTION_TYPE_CENTER_RIGHT = nil # Stub value.
19
- CONNECTION_TYPE_NONE = nil # Stub value.
20
- CONNECTION_TYPE_REVERSE_AUTO = nil # Stub value.
21
- CONNECTION_TYPE_TOP_LEFT = nil # Stub value.
22
- CONNECTION_TYPE_TOP_RIGHT = nil # Stub value.
23
-
24
- LEADER_LINE_TYPE_BEZIER = nil # Stub value.
25
- LEADER_LINE_TYPE_SINGLE_SEGMENT = nil # Stub value.
26
- LEADER_LINE_TYPE_TWO_SEGMENT = nil # Stub value.
27
- LEADER_LINE_TYPE_UNKNOWN = nil # Stub value.
28
-
29
- # Instance Methods
30
-
31
- # The {#connect} method connects the {Layout::Label} to the given
32
- # {Layout::ConnectionPoint}. The leader line will be adjusted to point at the
33
- # {Layout::ConnectionPoint}. The {Layout::Label} must be in the same
34
- # {Layout::Document} as the {Layout::ConnectionPoint}. If both the
35
- # {Layout::Label} and the {Layout::ConnectionPoint}'s {Layout::Entity} are on
36
- # non-shared {Layout::Layer}s, they must be on the same {Layout::Page}.
37
- #
38
- # @example
39
- # text = "A label"
40
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
41
- # target_point = Geom::Point2d.new(1, 1)
42
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
43
- # label = Layout::Label.new(text, leader_type, target_point, bounds)
44
- # rect = Layout::Rectangle.new([4, 4, 4, 4])
45
- #
46
- # doc = Layout::Document.new
47
- # doc.add_entity(label, doc.layers.first, doc.pages.first)
48
- # doc.add_entity(rect, doc.layers.first, doc.pages.first)
49
- #
50
- # point = Geom::Point2d.new(4, 4)
51
- # # Create a Connection Point to a LayOut Entity in the Document
52
- # cp = Layout::ConnectionPoint.new(rect, point)
53
- # label.connect(cp)
54
- #
55
- # @param [Layout::ConnectionPoint] connection_point
56
- #
57
- # @raise [LockedLayerError] if the {Layout::Label} is on a locked
58
- # {Layout::Layer}
59
- #
60
- # @raise [LockedEntityError] if the {Layout::Label} is locked
61
- #
62
- # @raise [ArgumentError] if the {Layout::Label} is not in the same
63
- # {Layout::Document} as the {Layout::ConnectionPoint}
64
- #
65
- # @raise [ArgumentError] if both the {Layout::Label} and the
66
- # {Layout::ConnectionPoint} are on non-shared {Layout::Layers}, but are not
67
- # on the same {Layout::Page}.
68
- #
69
- # @version LayOut 2018
70
- def connect(connection_point)
71
- end
72
-
73
- # The {#connection_type} method returns the type of the text connection for the
74
- # {Layout::Label}.
75
- #
76
- # The leader line type can be one of the following values:
77
- # [+Layout::Label::CONNECTION_TYPE_NONE+]
78
- # [+Layout::Label::CONNECTION_TYPE_AUTO+]
79
- # [+Layout::Label::CONNECTION_TYPE_REVERSE_AUTO+]
80
- # [+Layout::Label::CONNECTION_TYPE_TOP_LEFT+]
81
- # [+Layout::Label::CONNECTION_TYPE_CENTER_LEFT+]
82
- # [+Layout::Label::CONNECTION_TYPE_BOTTOM_LEFT+]
83
- # [+Layout::Label::CONNECTION_TYPE_TOP_RIGHT+]
84
- # [+Layout::Label::CONNECTION_TYPE_CENTER_RIGHT+]
85
- # [+Layout::Label::CONNECTION_TYPE_BOTTOM_RIGHT+]
86
- #
87
- # @example
88
- # text = "A label"
89
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
90
- # target_point = Geom::Point2d.new(1, 1)
91
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
92
- # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
93
- # bounds)
94
- # text_connection_type = label_from_bounds.connection_type
95
- #
96
- # @return [Integer]
97
- #
98
- # @version LayOut 2018
99
- def connection_type
100
- end
101
-
102
- # The {#connection_type=} method sets the type of the text connection for the
103
- # {Layout::Label}.
104
- #
105
- # The leader line type can be one of the following values:
106
- # [+Layout::Label::CONNECTION_TYPE_NONE+]
107
- # [+Layout::Label::CONNECTION_TYPE_AUTO+]
108
- # [+Layout::Label::CONNECTION_TYPE_REVERSE_AUTO+]
109
- # [+Layout::Label::CONNECTION_TYPE_TOP_LEFT+]
110
- # [+Layout::Label::CONNECTION_TYPE_CENTER_LEFT+]
111
- # [+Layout::Label::CONNECTION_TYPE_BOTTOM_LEFT+]
112
- # [+Layout::Label::CONNECTION_TYPE_TOP_RIGHT+]
113
- # [+Layout::Label::CONNECTION_TYPE_CENTER_RIGHT+]
114
- # [+Layout::Label::CONNECTION_TYPE_BOTTOM_RIGHT+]
115
- #
116
- # @example
117
- # text = "A label"
118
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
119
- # target_point = Geom::Point2d.new(1, 1)
120
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
121
- # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
122
- # bounds)
123
- # label_from_bounds.connection_type = Layout::Label::CONNECTION_TYPE_TOP_LEFT
124
- #
125
- # @param [Integer] connection_type
126
- #
127
- # @raise [LockedLayerError] if the {Layout::Label} is on a locked
128
- # {Layout::Layer}
129
- #
130
- # @raise [LockedEntityError] if the {Layout::Label} is locked
131
- #
132
- # @raise [ArgumentError] if the connection_type is not a valid text connection
133
- # type
134
- #
135
- # @version LayOut 2018
136
- def connection_type=(connection_type)
137
- end
138
-
139
- # The {#disconnect} method disconnects the {Layout::Label} from its
140
- # {Layout::ConnectionPoint}. The leader line will not be adjusted by
141
- # disconnecting from a {Layout::ConnectionPoint}.
142
- #
143
- # @example
144
- # doc = Layout::Document.open("C:/path/to/document.layout")
145
- # label = doc.pages.first.entities.first
146
- # label.disconnect
147
- #
148
- # @raise [LockedLayerError] if the {Layout::Label} is on a locked
149
- # {Layout::Layer}
150
- #
151
- # @raise [LockedEntityError] if the {Layout::Label} is locked
152
- #
153
- # @version LayOut 2018
154
- def disconnect
155
- end
156
-
157
- # The {#entities} method returns the {Layout::Entities} that represent the
158
- # {Layout::Label} in its exploded form.
159
- #
160
- # @example
161
- # text = "A label"
162
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
163
- # target_point = Geom::Point2d.new(1, 1)
164
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
165
- # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
166
- # bounds)
167
- # entities = label_from_bounds.entities
168
- #
169
- # @overload entities
170
- #
171
- # @return [Layout::Entities]
172
- #
173
- # @overload entities(page)
174
- #
175
- # @param [Layout::Page] page The {Layout::Page} to use to convert an
176
- # auto text tag to display text
177
- # @return [Layout::Entities]
178
- #
179
- # @raise [ArgumentError] if page does not belong to the same document as the
180
- # [Layout::Label]
181
- #
182
- # @version LayOut 2018
183
- def entities(*args)
184
- end
185
-
186
- # The {#initialize} method creates a new disconnected {Layout::Label}.
187
- #
188
- # @example
189
- # text = "A label"
190
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
191
- # target_point = Geom::Point2d.new(1, 1)
192
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
193
- # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
194
- # bounds)
195
- # anchor_point = Geom::Point2d.new(2, 2)
196
- # anchor_type = Layout::FormattedText::ANCHOR_TYPE_TOP_RIGHT
197
- # label_from_point = Layout::Label.new(text, leader_type, target_point,
198
- # anchor_point, anchor_type)
199
- #
200
- # @overload initialize(text, leader_type, target_point, bounds)
201
- #
202
- # @param [String] text The label text
203
- # @param [Integer] leader_type The leader line type
204
- # @param [Geom::Point2d] target_point Where the label leader should point to
205
- # @param [Geom::Bounds2d] bounds
206
- # @return [Layout::Label]
207
- #
208
- # @overload initialize(text, leader_type, target_point, anchor_point,
209
- #
210
- # anchor_type)
211
- # @param [String] text The label text
212
- # @param [Integer] leader_type The leader line type
213
- # @param [Geom::Point2d] target_point Where the label leader should point to
214
- # @param [Geom::Point2d] anchor_point The anchor point for the label text's
215
- # position.
216
- # @param [Integer] anchor_type Defines which point of the label text is set
217
- # by anchor_point.
218
- # @return [Layout::Label]
219
- #
220
- # @raise [ArgumentError] if anchor_type is not a valid anchor type
221
- #
222
- # @raise [ArgumentError] if leader_type is not a valid leader line type
223
- #
224
- # @raise [ArgumentError] if bounds is zero size
225
- #
226
- # @raise [ArgumentError] if plain_text is an empty string
227
- #
228
- # @version LayOut 2018
229
- def initialize(*args)
230
- end
231
-
232
- # The {#leader_line} method returns a copy of the leader line.
233
- #
234
- # @example
235
- # text = "A label"
236
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
237
- # target_point = Geom::Point2d.new(1, 1)
238
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
239
- # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
240
- # bounds)
241
- # leader = label_from_bounds.leader_line
242
- #
243
- # @return [Layout::Path]
244
- #
245
- # @version LayOut 2018
246
- def leader_line
247
- end
248
-
249
- # The {#leader_line=} method sets the leader line.
250
- #
251
- # @example
252
- # text = "A label"
253
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
254
- # target_point = Geom::Point2d.new(1, 1)
255
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
256
- # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
257
- # bounds)
258
- # path = Layout::Path.new(Geom::Point2d.new(1, 2), Geom::Point2d.new(2, 3))
259
- # label_from_bounds.leader_line = path
260
- #
261
- # @param [Layout::Path] leader_path
262
- #
263
- # @raise [LockedLayerError] if the {Layout::Label} is on a locked
264
- # {Layout::Layer}
265
- #
266
- # @raise [LockedEntityError] if the {Layout::Label} is locked
267
- #
268
- # @version LayOut 2018
269
- def leader_line=(leader_path)
270
- end
271
-
272
- # The {#leader_line_type} method returns the type of the leader line for the
273
- # {Layout::Label}.
274
- #
275
- # The leader line type can be one of the following values:
276
- # [+Layout::Label::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
277
- # [+Layout::Label::LEADER_LINE_TYPE_TWO_SEGMENT+]
278
- # [+Layout::Label::LEADER_LINE_TYPE_BEZIER+]
279
- # [+Layout::Label::LEADER_LINE_TYPE_UNKNOWN+]
280
- #
281
- # @example
282
- # text = "A label"
283
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
284
- # target_point = Geom::Point2d.new(1, 1)
285
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
286
- # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
287
- # bounds)
288
- # leader_type = label_from_bounds.leader_line_type
289
- #
290
- # @return [Integer]
291
- #
292
- # @version LayOut 2018
293
- def leader_line_type
294
- end
295
-
296
- # The {#leader_line_type=} method sets the type of the leader line for the
297
- # {Layout::Label}.
298
- #
299
- # The leader line type can be one of the following values:
300
- # [+Layout::Label::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
301
- # [+Layout::Label::LEADER_LINE_TYPE_TWO_SEGMENT+]
302
- # [+Layout::Label::LEADER_LINE_TYPE_BEZIER+]
303
- # [+Layout::Label::LEADER_LINE_TYPE_UNKNOWN+]
304
- #
305
- # @example
306
- # text = "A label"
307
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
308
- # target_point = Geom::Point2d.new(1, 1)
309
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
310
- # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
311
- # bounds)
312
- # label_from_bounds.leader_line_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
313
- #
314
- # @param [Integer] leader_type
315
- #
316
- # @raise [LockedLayerError] if the {Layout::Label} is on a locked
317
- # {Layout::Layer}
318
- #
319
- # @raise [LockedEntityError] if the {Layout::Label} is locked
320
- #
321
- # @raise [ArgumentError] if leader_type is
322
- # +Layout::Label::LEADER_LINE_TYPE_UNKNOWN+ or not a valid leader line type
323
- #
324
- # @version LayOut 2018
325
- def leader_line_type=(leader_type)
326
- end
327
-
328
- # The {#text} method returns a copy of the {Layout::FormattedText} of the
329
- # {Layout::Label}.
330
- #
331
- # @example
332
- # text = "A label"
333
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
334
- # target_point = Geom::Point2d.new(1, 1)
335
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
336
- # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
337
- # bounds)
338
- # text = label_from_bounds.text
339
- #
340
- # @return [Layout::FormattedText]
341
- #
342
- # @version LayOut 2018
343
- def text
344
- end
345
-
346
- # The {#text=} method sets the {Layout::FormattedText} of the {Layout::Label}.
347
- #
348
- # @example
349
- # text = "A label"
350
- # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
351
- # target_point = Geom::Point2d.new(1, 1)
352
- # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
353
- # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
354
- # bounds)
355
- # anchor = Geom::Point2d.new(1, 1)
356
- # anchor_type = Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT
357
- # text = Layout::FormattedText.new("Test", anchor, anchor_type)
358
- # label_from_bounds.text = text
359
- #
360
- # @param [Layout::FormattedText] new_text
361
- #
362
- # @raise [LockedLayerError] if the {Layout::Label} is on a locked
363
- # {Layout::Layer}
364
- #
365
- # @raise [LockedEntityError] if the {Layout::Label} is locked
366
- #
367
- # @version LayOut 2018
368
- def text=(new_text)
369
- end
370
-
371
- end
1
+ # Copyright:: Copyright 2020 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # This is an interface to a label entity. A {Layout::Label} consists of a
5
+ # {Layout::FormattedText} and the label leader {Layout::Path}. A
6
+ # {Layout::Label} may be connected to another {Layout::Entity} via a
7
+ # {Layout::ConnectionPoint}.
8
+ #
9
+ # @version LayOut 2018
10
+ class Layout::Label < Layout::Entity
11
+
12
+ # Constants
13
+
14
+ CONNECTION_TYPE_AUTO = nil # Stub value.
15
+ CONNECTION_TYPE_BOTTOM_LEFT = nil # Stub value.
16
+ CONNECTION_TYPE_BOTTOM_RIGHT = nil # Stub value.
17
+ CONNECTION_TYPE_CENTER_LEFT = nil # Stub value.
18
+ CONNECTION_TYPE_CENTER_RIGHT = nil # Stub value.
19
+ CONNECTION_TYPE_NONE = nil # Stub value.
20
+ CONNECTION_TYPE_REVERSE_AUTO = nil # Stub value.
21
+ CONNECTION_TYPE_TOP_LEFT = nil # Stub value.
22
+ CONNECTION_TYPE_TOP_RIGHT = nil # Stub value.
23
+
24
+ LEADER_LINE_TYPE_BEZIER = nil # Stub value.
25
+ LEADER_LINE_TYPE_SINGLE_SEGMENT = nil # Stub value.
26
+ LEADER_LINE_TYPE_TWO_SEGMENT = nil # Stub value.
27
+ LEADER_LINE_TYPE_UNKNOWN = nil # Stub value.
28
+
29
+ # Instance Methods
30
+
31
+ # The {#connect} method connects the {Layout::Label} to the given
32
+ # {Layout::ConnectionPoint}. The leader line will be adjusted to point at the
33
+ # {Layout::ConnectionPoint}. The {Layout::Label} must be in the same
34
+ # {Layout::Document} as the {Layout::ConnectionPoint}. If both the
35
+ # {Layout::Label} and the {Layout::ConnectionPoint}'s {Layout::Entity} are on
36
+ # non-shared {Layout::Layer}s, they must be on the same {Layout::Page}.
37
+ #
38
+ # @example
39
+ # text = "A label"
40
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
41
+ # target_point = Geom::Point2d.new(1, 1)
42
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
43
+ # label = Layout::Label.new(text, leader_type, target_point, bounds)
44
+ # rect = Layout::Rectangle.new([4, 4, 4, 4])
45
+ #
46
+ # doc = Layout::Document.new
47
+ # doc.add_entity(label, doc.layers.first, doc.pages.first)
48
+ # doc.add_entity(rect, doc.layers.first, doc.pages.first)
49
+ #
50
+ # point = Geom::Point2d.new(4, 4)
51
+ # # Create a Connection Point to a LayOut Entity in the Document
52
+ # cp = Layout::ConnectionPoint.new(rect, point)
53
+ # label.connect(cp)
54
+ #
55
+ # @param [Layout::ConnectionPoint] connection_point
56
+ #
57
+ # @raise [LockedLayerError] if the {Layout::Label} is on a locked
58
+ # {Layout::Layer}
59
+ #
60
+ # @raise [LockedEntityError] if the {Layout::Label} is locked
61
+ #
62
+ # @raise [ArgumentError] if the {Layout::Label} is not in the same
63
+ # {Layout::Document} as the {Layout::ConnectionPoint}
64
+ #
65
+ # @raise [ArgumentError] if both the {Layout::Label} and the
66
+ # {Layout::ConnectionPoint} are on non-shared {Layout::Layers}, but are not
67
+ # on the same {Layout::Page}.
68
+ #
69
+ # @version LayOut 2018
70
+ def connect(connection_point)
71
+ end
72
+
73
+ # The {#connection_type} method returns the type of the text connection for the
74
+ # {Layout::Label}.
75
+ #
76
+ # The leader line type can be one of the following values:
77
+ # [+Layout::Label::CONNECTION_TYPE_NONE+]
78
+ # [+Layout::Label::CONNECTION_TYPE_AUTO+]
79
+ # [+Layout::Label::CONNECTION_TYPE_REVERSE_AUTO+]
80
+ # [+Layout::Label::CONNECTION_TYPE_TOP_LEFT+]
81
+ # [+Layout::Label::CONNECTION_TYPE_CENTER_LEFT+]
82
+ # [+Layout::Label::CONNECTION_TYPE_BOTTOM_LEFT+]
83
+ # [+Layout::Label::CONNECTION_TYPE_TOP_RIGHT+]
84
+ # [+Layout::Label::CONNECTION_TYPE_CENTER_RIGHT+]
85
+ # [+Layout::Label::CONNECTION_TYPE_BOTTOM_RIGHT+]
86
+ #
87
+ # @example
88
+ # text = "A label"
89
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
90
+ # target_point = Geom::Point2d.new(1, 1)
91
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
92
+ # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
93
+ # bounds)
94
+ # text_connection_type = label_from_bounds.connection_type
95
+ #
96
+ # @return [Integer]
97
+ #
98
+ # @version LayOut 2018
99
+ def connection_type
100
+ end
101
+
102
+ # The {#connection_type=} method sets the type of the text connection for the
103
+ # {Layout::Label}.
104
+ #
105
+ # The leader line type can be one of the following values:
106
+ # [+Layout::Label::CONNECTION_TYPE_NONE+]
107
+ # [+Layout::Label::CONNECTION_TYPE_AUTO+]
108
+ # [+Layout::Label::CONNECTION_TYPE_REVERSE_AUTO+]
109
+ # [+Layout::Label::CONNECTION_TYPE_TOP_LEFT+]
110
+ # [+Layout::Label::CONNECTION_TYPE_CENTER_LEFT+]
111
+ # [+Layout::Label::CONNECTION_TYPE_BOTTOM_LEFT+]
112
+ # [+Layout::Label::CONNECTION_TYPE_TOP_RIGHT+]
113
+ # [+Layout::Label::CONNECTION_TYPE_CENTER_RIGHT+]
114
+ # [+Layout::Label::CONNECTION_TYPE_BOTTOM_RIGHT+]
115
+ #
116
+ # @example
117
+ # text = "A label"
118
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
119
+ # target_point = Geom::Point2d.new(1, 1)
120
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
121
+ # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
122
+ # bounds)
123
+ # label_from_bounds.connection_type = Layout::Label::CONNECTION_TYPE_TOP_LEFT
124
+ #
125
+ # @param [Integer] connection_type
126
+ #
127
+ # @raise [LockedLayerError] if the {Layout::Label} is on a locked
128
+ # {Layout::Layer}
129
+ #
130
+ # @raise [LockedEntityError] if the {Layout::Label} is locked
131
+ #
132
+ # @raise [ArgumentError] if the connection_type is not a valid text connection
133
+ # type
134
+ #
135
+ # @version LayOut 2018
136
+ def connection_type=(connection_type)
137
+ end
138
+
139
+ # The {#disconnect} method disconnects the {Layout::Label} from its
140
+ # {Layout::ConnectionPoint}. The leader line will not be adjusted by
141
+ # disconnecting from a {Layout::ConnectionPoint}.
142
+ #
143
+ # @example
144
+ # doc = Layout::Document.open("C:/path/to/document.layout")
145
+ # label = doc.pages.first.entities.first
146
+ # label.disconnect
147
+ #
148
+ # @raise [LockedLayerError] if the {Layout::Label} is on a locked
149
+ # {Layout::Layer}
150
+ #
151
+ # @raise [LockedEntityError] if the {Layout::Label} is locked
152
+ #
153
+ # @version LayOut 2018
154
+ def disconnect
155
+ end
156
+
157
+ # The {#entities} method returns the {Layout::Entities} that represent the
158
+ # {Layout::Label} in its exploded form.
159
+ #
160
+ # @example
161
+ # text = "A label"
162
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
163
+ # target_point = Geom::Point2d.new(1, 1)
164
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
165
+ # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
166
+ # bounds)
167
+ # entities = label_from_bounds.entities
168
+ #
169
+ # @overload entities
170
+ #
171
+ # @return [Layout::Entities]
172
+ #
173
+ # @overload entities(page)
174
+ #
175
+ # @param [Layout::Page] page The {Layout::Page} to use to convert an
176
+ # auto text tag to display text
177
+ # @return [Layout::Entities]
178
+ #
179
+ # @raise [ArgumentError] if page does not belong to the same document as the
180
+ # [Layout::Label]
181
+ #
182
+ # @version LayOut 2018
183
+ def entities(*args)
184
+ end
185
+
186
+ # The {#initialize} method creates a new disconnected {Layout::Label}.
187
+ #
188
+ # @example
189
+ # text = "A label"
190
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
191
+ # target_point = Geom::Point2d.new(1, 1)
192
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
193
+ # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
194
+ # bounds)
195
+ # anchor_point = Geom::Point2d.new(2, 2)
196
+ # anchor_type = Layout::FormattedText::ANCHOR_TYPE_TOP_RIGHT
197
+ # label_from_point = Layout::Label.new(text, leader_type, target_point,
198
+ # anchor_point, anchor_type)
199
+ #
200
+ # @overload initialize(text, leader_type, target_point, bounds)
201
+ #
202
+ # @param [String] text The label text
203
+ # @param [Integer] leader_type The leader line type
204
+ # @param [Geom::Point2d] target_point Where the label leader should point to
205
+ # @param [Geom::Bounds2d] bounds
206
+ # @return [Layout::Label]
207
+ #
208
+ # @overload initialize(text, leader_type, target_point, anchor_point,
209
+ #
210
+ # anchor_type)
211
+ # @param [String] text The label text
212
+ # @param [Integer] leader_type The leader line type
213
+ # @param [Geom::Point2d] target_point Where the label leader should point to
214
+ # @param [Geom::Point2d] anchor_point The anchor point for the label text's
215
+ # position.
216
+ # @param [Integer] anchor_type Defines which point of the label text is set
217
+ # by anchor_point.
218
+ # @return [Layout::Label]
219
+ #
220
+ # @raise [ArgumentError] if anchor_type is not a valid anchor type
221
+ #
222
+ # @raise [ArgumentError] if leader_type is not a valid leader line type
223
+ #
224
+ # @raise [ArgumentError] if bounds is zero size
225
+ #
226
+ # @raise [ArgumentError] if plain_text is an empty string
227
+ #
228
+ # @version LayOut 2018
229
+ def initialize(*args)
230
+ end
231
+
232
+ # The {#leader_line} method returns a copy of the leader line.
233
+ #
234
+ # @example
235
+ # text = "A label"
236
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
237
+ # target_point = Geom::Point2d.new(1, 1)
238
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
239
+ # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
240
+ # bounds)
241
+ # leader = label_from_bounds.leader_line
242
+ #
243
+ # @return [Layout::Path]
244
+ #
245
+ # @version LayOut 2018
246
+ def leader_line
247
+ end
248
+
249
+ # The {#leader_line=} method sets the leader line.
250
+ #
251
+ # @example
252
+ # text = "A label"
253
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
254
+ # target_point = Geom::Point2d.new(1, 1)
255
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
256
+ # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
257
+ # bounds)
258
+ # path = Layout::Path.new(Geom::Point2d.new(1, 2), Geom::Point2d.new(2, 3))
259
+ # label_from_bounds.leader_line = path
260
+ #
261
+ # @param [Layout::Path] leader_path
262
+ #
263
+ # @raise [LockedLayerError] if the {Layout::Label} is on a locked
264
+ # {Layout::Layer}
265
+ #
266
+ # @raise [LockedEntityError] if the {Layout::Label} is locked
267
+ #
268
+ # @version LayOut 2018
269
+ def leader_line=(leader_path)
270
+ end
271
+
272
+ # The {#leader_line_type} method returns the type of the leader line for the
273
+ # {Layout::Label}.
274
+ #
275
+ # The leader line type can be one of the following values:
276
+ # [+Layout::Label::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
277
+ # [+Layout::Label::LEADER_LINE_TYPE_TWO_SEGMENT+]
278
+ # [+Layout::Label::LEADER_LINE_TYPE_BEZIER+]
279
+ # [+Layout::Label::LEADER_LINE_TYPE_UNKNOWN+]
280
+ #
281
+ # @example
282
+ # text = "A label"
283
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
284
+ # target_point = Geom::Point2d.new(1, 1)
285
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
286
+ # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
287
+ # bounds)
288
+ # leader_type = label_from_bounds.leader_line_type
289
+ #
290
+ # @return [Integer]
291
+ #
292
+ # @version LayOut 2018
293
+ def leader_line_type
294
+ end
295
+
296
+ # The {#leader_line_type=} method sets the type of the leader line for the
297
+ # {Layout::Label}.
298
+ #
299
+ # The leader line type can be one of the following values:
300
+ # [+Layout::Label::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
301
+ # [+Layout::Label::LEADER_LINE_TYPE_TWO_SEGMENT+]
302
+ # [+Layout::Label::LEADER_LINE_TYPE_BEZIER+]
303
+ # [+Layout::Label::LEADER_LINE_TYPE_UNKNOWN+]
304
+ #
305
+ # @example
306
+ # text = "A label"
307
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
308
+ # target_point = Geom::Point2d.new(1, 1)
309
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
310
+ # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
311
+ # bounds)
312
+ # label_from_bounds.leader_line_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
313
+ #
314
+ # @param [Integer] leader_type
315
+ #
316
+ # @raise [LockedLayerError] if the {Layout::Label} is on a locked
317
+ # {Layout::Layer}
318
+ #
319
+ # @raise [LockedEntityError] if the {Layout::Label} is locked
320
+ #
321
+ # @raise [ArgumentError] if leader_type is
322
+ # +Layout::Label::LEADER_LINE_TYPE_UNKNOWN+ or not a valid leader line type
323
+ #
324
+ # @version LayOut 2018
325
+ def leader_line_type=(leader_type)
326
+ end
327
+
328
+ # The {#text} method returns a copy of the {Layout::FormattedText} of the
329
+ # {Layout::Label}.
330
+ #
331
+ # @example
332
+ # text = "A label"
333
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
334
+ # target_point = Geom::Point2d.new(1, 1)
335
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
336
+ # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
337
+ # bounds)
338
+ # text = label_from_bounds.text
339
+ #
340
+ # @return [Layout::FormattedText]
341
+ #
342
+ # @version LayOut 2018
343
+ def text
344
+ end
345
+
346
+ # The {#text=} method sets the {Layout::FormattedText} of the {Layout::Label}.
347
+ #
348
+ # @example
349
+ # text = "A label"
350
+ # leader_type = Layout::Label::LEADER_LINE_TYPE_BEZIER
351
+ # target_point = Geom::Point2d.new(1, 1)
352
+ # bounds = Geom::Bounds2d.new(2, 1, 1, 1)
353
+ # label_from_bounds = Layout::Label.new(text, leader_type, target_point,
354
+ # bounds)
355
+ # anchor = Geom::Point2d.new(1, 1)
356
+ # anchor_type = Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT
357
+ # text = Layout::FormattedText.new("Test", anchor, anchor_type)
358
+ # label_from_bounds.text = text
359
+ #
360
+ # @param [Layout::FormattedText] new_text
361
+ #
362
+ # @raise [LockedLayerError] if the {Layout::Label} is on a locked
363
+ # {Layout::Layer}
364
+ #
365
+ # @raise [LockedEntityError] if the {Layout::Label} is locked
366
+ #
367
+ # @version LayOut 2018
368
+ def text=(new_text)
369
+ end
370
+
371
+ end