Add docs for segmented control touch bar item
authorSamuel Attard <samuel.r.attard@gmail.com>
Fri, 10 Mar 2017 06:50:23 +0000 (17:50 +1100)
committerSamuel Attard <samuel.r.attard@gmail.com>
Fri, 10 Mar 2017 06:50:23 +0000 (17:50 +1100)
docs/api/structures/segmented-control-segment.md [new file with mode: 0644]
docs/api/touch-bar-segmented-control.md [new file with mode: 0644]

diff --git a/docs/api/structures/segmented-control-segment.md b/docs/api/structures/segmented-control-segment.md
new file mode 100644 (file)
index 0000000..ae01a07
--- /dev/null
@@ -0,0 +1,5 @@
+# SegmentedControlSegment Object
+
+* `label` String - (Optional) The text to appear in this segment
+* `icon` NativeImage - (Optional) The image to appear in this segment
+* `enabled` Boolean - (Optional) Whether this segment is selectable. Default: true
diff --git a/docs/api/touch-bar-segmented-control.md b/docs/api/touch-bar-segmented-control.md
new file mode 100644 (file)
index 0000000..8f30f77
--- /dev/null
@@ -0,0 +1,41 @@
+## Class: TouchBarSegmentedControl
+
+> Create a segmented control (a button group) where one button has a selected state
+
+Process: [Main](../tutorial/quick-start.md#main-process)
+
+### `new TouchBarSegmentedControl(options)`
+
+* `options` Object
+  * `segmentStyle` String - (Optional) Style of the segments:
+    * `automatic` - Default
+    * `rounded`
+    * `textured-rounded`
+    * `round-rect`
+    * `textured-square`
+    * `capsule`
+    * `small-square`
+    * `separated`
+  * `segments` [SegmentedControlSegment[]](structures/segmented-control-segment.md) - An array of segments to place in this control
+  * `selectedIndex` Integer (Optional) - The index of the currently selected segment, will update automatically with user interaction
+  * `change` Function - Called when the user selects a new segment
+    * `selectedIndex` - The index of the segment the user selected
+
+### Instance Properties
+
+The following properties are available on instances of `TouchBarSegmentedControl`:
+
+#### `touchBarSegmentedControl.segmentStyle`
+
+A `String` representing the controls current segment style.  Updating this value immediately updates the control
+in the touch bar.
+
+#### `touchBarSegmentedControl.segments`
+
+A `SegmentedControlSegment[]` array representing the segments in this control.  Updating this value immediately
+updates the control in the touch bar.  Updating deep properties inside this array **does not update the touch bar**.
+
+#### `touchBarSegmentedControl.selectedIndex`
+
+An `Integer` representing the currently selected segment.  Changing this value immediately updates the control
+in the touch bar.  User interaction with the touch bar will update this value automatically.