isd-color-palette 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +63 -0
- data/lib/isd-color-palette.rb +9 -0
- data/lib/isd-color-palette/controller/isd_basic_color_collection_view_controller.rb +123 -0
- data/lib/isd-color-palette/controller/isd_color_palette_container_view_controller.rb +87 -0
- data/lib/isd-color-palette/controller/isd_color_palette_view_controller.rb +136 -0
- data/lib/isd-color-palette/controller/isd_rgba_color_view_controller.rb +118 -0
- data/lib/isd-color-palette/model/string_ids_extention.rb +12 -0
- data/lib/isd-color-palette/model/uicolor_isd_extention.rb +39 -0
- data/lib/isd-color-palette/view/isd_basic_color_collection_reusable_view.rb +38 -0
- data/lib/isd-color-palette/view/isd_color_palette_collection_view_cell.rb +69 -0
- data/lib/isd-color-palette/view/isd_rgba_slider_view.rb +124 -0
- data/lib/resources/ISDColorPalette.storyboard +435 -0
- data/lib/resources/ISDColorPalette.storyboardc/DDB-9Z-aLd-view-cjl-ZX-JRH.nib +0 -0
- data/lib/resources/ISDColorPalette.storyboardc/ISDColorPaletteViewController.nib +0 -0
- data/lib/resources/ISDColorPalette.storyboardc/Info.plist +0 -0
- data/lib/resources/ISDColorPalette.storyboardc/Ojg-L0-U3y-view-RZ8-kV-96R.nib +0 -0
- data/lib/resources/ISDColorPalette.storyboardc/UIViewController-DDB-9Z-aLd.nib +0 -0
- data/lib/resources/ISDColorPalette.storyboardc/UIViewController-Ojg-L0-U3y.nib +0 -0
- data/lib/resources/ISDColorPalette.storyboardc/UIViewController-Yhi-Ks-PNF.nib +0 -0
- data/lib/resources/ISDColorPalette.storyboardc/UIViewController-lfU-qe-W46.nib +0 -0
- data/lib/resources/ISDColorPalette.storyboardc/Yhi-Ks-PNF-view-DbN-fh-FRU.nib +0 -0
- data/lib/resources/ISDColorPalette.storyboardc/ccp-rq-upX-view-Gjb-sR-XRJ.nib +0 -0
- metadata +87 -0
@@ -0,0 +1,39 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
class UIColor
|
3
|
+
|
4
|
+
class << self
|
5
|
+
|
6
|
+
def color_by_serialize s
|
7
|
+
begin
|
8
|
+
a = s.split(",")
|
9
|
+
case a[0]
|
10
|
+
when "RGBA"
|
11
|
+
UIColor.colorWithRed a[1].to_f,
|
12
|
+
green:a[2].to_f,
|
13
|
+
blue:a[3].to_f,
|
14
|
+
alpha:a[4].to_f
|
15
|
+
else
|
16
|
+
nil
|
17
|
+
end
|
18
|
+
rescue
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
23
|
+
|
24
|
+
def to_serialize
|
25
|
+
"RGBA,#{self.red},#{self.green},#{self.blue},#{self.alpha}"
|
26
|
+
end
|
27
|
+
|
28
|
+
def color_name
|
29
|
+
name = system_name || css_name || hex
|
30
|
+
name = name.to_s unless name.is_a? String
|
31
|
+
name.underscore.gsub(/_color/, "").gsub(/_/, " ").capitalize
|
32
|
+
end
|
33
|
+
|
34
|
+
def monochrome
|
35
|
+
y = 0.299 * self.red + 0.587 * self.green + 0.114 * self.blue
|
36
|
+
UIColor.alloc.initWithWhite y, alpha:self.alpha
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
class ISDBasicColorCollectionReusableView < UICollectionReusableView
|
3
|
+
|
4
|
+
attr_accessor :headerLabel # IBOutlet
|
5
|
+
|
6
|
+
=begin
|
7
|
+
def initWithFrame frame
|
8
|
+
super
|
9
|
+
self
|
10
|
+
end
|
11
|
+
=end
|
12
|
+
|
13
|
+
=begin
|
14
|
+
def initWithCorder decode
|
15
|
+
super
|
16
|
+
self
|
17
|
+
end
|
18
|
+
=end
|
19
|
+
|
20
|
+
def awakeFromNib
|
21
|
+
self.backgroundColor = :light_gray.uicolor
|
22
|
+
end
|
23
|
+
|
24
|
+
=begin
|
25
|
+
def drawRect rect
|
26
|
+
context = UIGraphicsGetCurrentContext()
|
27
|
+
# Draw your code here.
|
28
|
+
end
|
29
|
+
=end
|
30
|
+
|
31
|
+
=begin
|
32
|
+
def shouldAutorotateToInterfaceOrientation interfaceOrientation
|
33
|
+
interfaceOrientation == UIInterfaceOrientationPortrait
|
34
|
+
end
|
35
|
+
=end
|
36
|
+
|
37
|
+
end
|
38
|
+
|
@@ -0,0 +1,69 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
class ISDColorPaletteCollectionViewCell < UICollectionViewCell
|
3
|
+
|
4
|
+
attr_accessor :color
|
5
|
+
|
6
|
+
attr_reader :border_color, :selected_border_color
|
7
|
+
attr_reader :color_layer, :solid_layer
|
8
|
+
|
9
|
+
=begin
|
10
|
+
def initWithFrame frame
|
11
|
+
super
|
12
|
+
self
|
13
|
+
end
|
14
|
+
=end
|
15
|
+
|
16
|
+
=begin
|
17
|
+
def initWithCorder decode
|
18
|
+
super
|
19
|
+
self
|
20
|
+
end
|
21
|
+
=end
|
22
|
+
|
23
|
+
def awakeFromNib
|
24
|
+
@border_color = :white.uicolor
|
25
|
+
@selected_border_color = :blue.uicolor
|
26
|
+
|
27
|
+
l = self.contentView.layer
|
28
|
+
l.borderColor = :clear.uicolor.cgcolor
|
29
|
+
l.borderWidth = 3
|
30
|
+
l.cornerRadius = 2
|
31
|
+
l.masksToBounds = true
|
32
|
+
l.frame = CGRectInset self.contentView.bounds, 3, 3
|
33
|
+
@color_layer = l
|
34
|
+
|
35
|
+
@solid_layer = CALayer.new
|
36
|
+
w = @color_layer.frame.size.width
|
37
|
+
h = @color_layer.frame.size.height
|
38
|
+
x = CGRectGetMaxX(@color_layer.bounds) - w / 2
|
39
|
+
y = -h / 2
|
40
|
+
@solid_layer.frame = CGRectMake(x, y, w, h)
|
41
|
+
rad = 45 * Math::PI / 180
|
42
|
+
@solid_layer.transform = CATransform3DMakeRotation(rad, 0, 0, 1)
|
43
|
+
@color_layer.addSublayer @solid_layer
|
44
|
+
|
45
|
+
self.backgroundView = UIView.new
|
46
|
+
l = self.backgroundView.layer
|
47
|
+
l.borderColor = self.border_color.cgcolor
|
48
|
+
l.borderWidth = 2
|
49
|
+
l.cornerRadius = 4
|
50
|
+
l.shadowOpacity = 0.5
|
51
|
+
l.masksToBounds = true
|
52
|
+
|
53
|
+
self.selectedBackgroundView = UIView.new
|
54
|
+
l = self.selectedBackgroundView.layer
|
55
|
+
l.borderColor = self.selected_border_color.cgcolor
|
56
|
+
l.borderWidth = 2
|
57
|
+
l.cornerRadius = 4
|
58
|
+
l.masksToBounds = true
|
59
|
+
end
|
60
|
+
|
61
|
+
def color= color
|
62
|
+
@color = color
|
63
|
+
|
64
|
+
self.color_layer.backgroundColor = color.cgcolor
|
65
|
+
self.solid_layer.backgroundColor = color.uicolor(1.0).cgcolor
|
66
|
+
end
|
67
|
+
|
68
|
+
end
|
69
|
+
|
@@ -0,0 +1,124 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
class ISDRgbaSliderView < UIView
|
3
|
+
|
4
|
+
attr_accessor :viewController # IBOutlet UIViewController
|
5
|
+
attr_accessor :sliderBaseView # IBOutlet UIView
|
6
|
+
attr_accessor :valueTextField # IBOutlet UITextField
|
7
|
+
attr_accessor :idLabel # IBOutlet UILabel
|
8
|
+
|
9
|
+
attr_accessor :color_value
|
10
|
+
attr_accessor :identity
|
11
|
+
|
12
|
+
attr_reader :slider
|
13
|
+
|
14
|
+
=begin
|
15
|
+
def initWithFrame frame
|
16
|
+
super
|
17
|
+
self
|
18
|
+
end
|
19
|
+
=end
|
20
|
+
|
21
|
+
=begin
|
22
|
+
def initWithCorder decode
|
23
|
+
super
|
24
|
+
self
|
25
|
+
end
|
26
|
+
=end
|
27
|
+
|
28
|
+
def awakeFromNib
|
29
|
+
l = self.layer
|
30
|
+
l.borderColor = :white.uicolor.cgcolor
|
31
|
+
l.borderWidth = 3
|
32
|
+
l.cornerRadius = 4
|
33
|
+
|
34
|
+
@slider = UISlider.new
|
35
|
+
rad = -90 * Math::PI / 180
|
36
|
+
@slider.transform = CGAffineTransformMakeRotation(rad)
|
37
|
+
@slider.frame = CGRectInset sliderBaseView.bounds, 0, 8
|
38
|
+
@slider.addTarget self, action:"didChangeValue:", forControlEvents:UIControlEventValueChanged
|
39
|
+
|
40
|
+
sliderBaseView << @slider
|
41
|
+
end
|
42
|
+
|
43
|
+
def color= color
|
44
|
+
@color = color
|
45
|
+
@color_value = 0
|
46
|
+
if color
|
47
|
+
case self.identity
|
48
|
+
when "R"
|
49
|
+
@color_value = color.red
|
50
|
+
when "G"
|
51
|
+
@color_value = color.green
|
52
|
+
when "B"
|
53
|
+
@color_value = color.blue
|
54
|
+
when "A"
|
55
|
+
@color_value = color.alpha
|
56
|
+
end
|
57
|
+
set_color_value_to_controls
|
58
|
+
set_backgournd_color
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
=begin
|
63
|
+
def drawRect rect
|
64
|
+
context = UIGraphicsGetCurrentContext()
|
65
|
+
# Draw your code here.
|
66
|
+
end
|
67
|
+
=end
|
68
|
+
|
69
|
+
=begin
|
70
|
+
def shouldAutorotateToInterfaceOrientation interfaceOrientation
|
71
|
+
interfaceOrientation == UIInterfaceOrientationPortrait
|
72
|
+
end
|
73
|
+
=end
|
74
|
+
|
75
|
+
def didChangeValue sender # IBAction
|
76
|
+
case sender
|
77
|
+
when UISlider
|
78
|
+
@color_value = sender.value
|
79
|
+
when UITextField
|
80
|
+
@color_value = sender.text.to_f / 255.0
|
81
|
+
end
|
82
|
+
set_color_value_to_controls
|
83
|
+
self.viewController.didChangeColor sender
|
84
|
+
end
|
85
|
+
|
86
|
+
def set_color_value_to_controls
|
87
|
+
self.valueTextField.text = [(self.color_value * 255 + 0.5), 255.0].min.to_i.to_s
|
88
|
+
self.slider.value = self.color_value
|
89
|
+
end
|
90
|
+
|
91
|
+
def set_backgournd_color
|
92
|
+
case self.identity
|
93
|
+
when "R"
|
94
|
+
bg_color = :red.uicolor
|
95
|
+
when "G"
|
96
|
+
bg_color = :green.uicolor
|
97
|
+
when "B"
|
98
|
+
bg_color = :blue.uicolor
|
99
|
+
when "A"
|
100
|
+
bg_color = :white.uicolor
|
101
|
+
end
|
102
|
+
self.backgroundColor = :black.uicolor.mix_with bg_color, self.color_value
|
103
|
+
self.idLabel.textColor = UIColor.colorWithWhite(self.color_value, alpha:1.0).invert if self.idLabel
|
104
|
+
end
|
105
|
+
|
106
|
+
# UITextField delegate
|
107
|
+
def textFieldDidEndEditing(textField)
|
108
|
+
if /^\s*\d+\s*$/ =~ textField.text
|
109
|
+
@color_value = [textField.text.to_i, 255].min / 255.0
|
110
|
+
end
|
111
|
+
didChangeValue self
|
112
|
+
end
|
113
|
+
|
114
|
+
def textFieldShouldReturn(textField)
|
115
|
+
hide_keyboard textField
|
116
|
+
true
|
117
|
+
end
|
118
|
+
|
119
|
+
def hide_keyboard textField = self.valueTextField
|
120
|
+
textField.resignFirstResponder if textField
|
121
|
+
end
|
122
|
+
|
123
|
+
end
|
124
|
+
|
@@ -0,0 +1,435 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
2
|
+
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="4514" systemVersion="13B42" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" initialViewController="lfU-qe-W46">
|
3
|
+
<dependencies>
|
4
|
+
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3747"/>
|
5
|
+
</dependencies>
|
6
|
+
<scenes>
|
7
|
+
<!--Color Palette View Controller-->
|
8
|
+
<scene sceneID="pvB-KV-tUB">
|
9
|
+
<objects>
|
10
|
+
<viewController storyboardIdentifier="ISDColorPaletteViewController" id="ccp-rq-upX" customClass="ISDColorPaletteViewController" sceneMemberID="viewController">
|
11
|
+
<layoutGuides>
|
12
|
+
<viewControllerLayoutGuide type="top" id="sDq-9n-LmZ"/>
|
13
|
+
<viewControllerLayoutGuide type="bottom" id="N7L-2h-Uax"/>
|
14
|
+
</layoutGuides>
|
15
|
+
<view key="view" contentMode="scaleToFill" id="Gjb-sR-XRJ">
|
16
|
+
<rect key="frame" x="0.0" y="0.0" width="320" height="568"/>
|
17
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
18
|
+
<subviews>
|
19
|
+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="IJv-WM-KxU">
|
20
|
+
<rect key="frame" x="0.0" y="64" width="320" height="32"/>
|
21
|
+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
22
|
+
<subviews>
|
23
|
+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="gFG-ke-7ot">
|
24
|
+
<rect key="frame" x="10" y="8" width="300" height="24"/>
|
25
|
+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
26
|
+
<subviews>
|
27
|
+
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="1qq-AV-Gia">
|
28
|
+
<rect key="frame" x="12" y="3" width="276" height="21"/>
|
29
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
30
|
+
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
31
|
+
<color key="textColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/>
|
32
|
+
<nil key="highlightedColor"/>
|
33
|
+
</label>
|
34
|
+
</subviews>
|
35
|
+
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
36
|
+
<constraints>
|
37
|
+
<constraint firstAttribute="trailing" secondItem="1qq-AV-Gia" secondAttribute="trailing" constant="12" id="AOx-LM-Gau"/>
|
38
|
+
<constraint firstAttribute="bottom" secondItem="1qq-AV-Gia" secondAttribute="bottom" id="B90-wi-5P8"/>
|
39
|
+
<constraint firstItem="1qq-AV-Gia" firstAttribute="leading" secondItem="gFG-ke-7ot" secondAttribute="leading" constant="12" id="zf2-Xe-AEB"/>
|
40
|
+
</constraints>
|
41
|
+
</view>
|
42
|
+
</subviews>
|
43
|
+
<color key="backgroundColor" red="0.92941182851791382" green="0.92941182851791382" blue="0.92941182851791382" alpha="1" colorSpace="deviceRGB"/>
|
44
|
+
<constraints>
|
45
|
+
<constraint firstItem="gFG-ke-7ot" firstAttribute="leading" secondItem="IJv-WM-KxU" secondAttribute="leading" constant="10" id="C3a-1f-t3g"/>
|
46
|
+
<constraint firstItem="gFG-ke-7ot" firstAttribute="top" secondItem="IJv-WM-KxU" secondAttribute="top" constant="8" id="V9p-79-6Ni"/>
|
47
|
+
<constraint firstAttribute="trailing" secondItem="gFG-ke-7ot" secondAttribute="trailing" constant="10" id="hXq-rz-wSv"/>
|
48
|
+
<constraint firstAttribute="bottom" secondItem="gFG-ke-7ot" secondAttribute="bottom" id="mEI-b6-86q"/>
|
49
|
+
</constraints>
|
50
|
+
</view>
|
51
|
+
<containerView contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="a52-Ds-MNa">
|
52
|
+
<rect key="frame" x="0.0" y="96" width="320" height="472"/>
|
53
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
54
|
+
<color key="backgroundColor" red="0.92941182851791382" green="0.92941182851791382" blue="0.92941182851791382" alpha="1" colorSpace="deviceRGB"/>
|
55
|
+
<connections>
|
56
|
+
<segue destination="DDB-9Z-aLd" kind="embed" id="ViU-QN-w3Y"/>
|
57
|
+
</connections>
|
58
|
+
</containerView>
|
59
|
+
</subviews>
|
60
|
+
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
61
|
+
<constraints>
|
62
|
+
<constraint firstAttribute="bottom" secondItem="a52-Ds-MNa" secondAttribute="bottom" id="4kp-kj-G0e"/>
|
63
|
+
<constraint firstItem="a52-Ds-MNa" firstAttribute="leading" secondItem="Gjb-sR-XRJ" secondAttribute="leading" id="CPK-pT-WZD"/>
|
64
|
+
<constraint firstItem="a52-Ds-MNa" firstAttribute="trailing" secondItem="IJv-WM-KxU" secondAttribute="trailing" id="GEE-yZ-72x"/>
|
65
|
+
<constraint firstItem="a52-Ds-MNa" firstAttribute="top" secondItem="Gjb-sR-XRJ" secondAttribute="top" constant="96" id="Ohf-Xk-teV"/>
|
66
|
+
<constraint firstItem="IJv-WM-KxU" firstAttribute="top" secondItem="sDq-9n-LmZ" secondAttribute="bottom" id="bgy-Fh-LtE"/>
|
67
|
+
<constraint firstItem="a52-Ds-MNa" firstAttribute="top" secondItem="IJv-WM-KxU" secondAttribute="bottom" id="e76-0v-8BX"/>
|
68
|
+
<constraint firstItem="a52-Ds-MNa" firstAttribute="leading" secondItem="IJv-WM-KxU" secondAttribute="leading" id="l0o-yR-Tjk"/>
|
69
|
+
<constraint firstAttribute="trailing" secondItem="IJv-WM-KxU" secondAttribute="trailing" id="xBh-pV-lYl"/>
|
70
|
+
</constraints>
|
71
|
+
</view>
|
72
|
+
<navigationItem key="navigationItem" id="1sv-Rf-XRq"/>
|
73
|
+
<connections>
|
74
|
+
<outlet property="colorNameLabel" destination="1qq-AV-Gia" id="Wxy-Ez-xqE"/>
|
75
|
+
<outlet property="colorWellView" destination="gFG-ke-7ot" id="yXz-tP-nOy"/>
|
76
|
+
</connections>
|
77
|
+
</viewController>
|
78
|
+
<placeholder placeholderIdentifier="IBFirstResponder" id="KeY-Xf-8rk" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
79
|
+
</objects>
|
80
|
+
<point key="canvasLocation" x="1027" y="646"/>
|
81
|
+
</scene>
|
82
|
+
<!--Color Palette Container View Controller-->
|
83
|
+
<scene sceneID="Khh-el-Qx3">
|
84
|
+
<objects>
|
85
|
+
<viewController id="DDB-9Z-aLd" customClass="ISDColorPaletteContainerViewController" sceneMemberID="viewController">
|
86
|
+
<layoutGuides>
|
87
|
+
<viewControllerLayoutGuide type="top" id="O5q-ML-xz8"/>
|
88
|
+
<viewControllerLayoutGuide type="bottom" id="ykW-2I-GgC"/>
|
89
|
+
</layoutGuides>
|
90
|
+
<view key="view" contentMode="scaleToFill" id="cjl-ZX-JRH">
|
91
|
+
<rect key="frame" x="0.0" y="0.0" width="320" height="472"/>
|
92
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
93
|
+
<subviews>
|
94
|
+
<segmentedControl opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" segmentControlStyle="plain" selectedSegmentIndex="0" translatesAutoresizingMaskIntoConstraints="NO" id="e4K-6O-TNV">
|
95
|
+
<rect key="frame" x="20" y="9" width="280" height="29"/>
|
96
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
97
|
+
<segments>
|
98
|
+
<segment title="LIST"/>
|
99
|
+
<segment title="RGBA"/>
|
100
|
+
</segments>
|
101
|
+
<connections>
|
102
|
+
<action selector="didChangeValue:" destination="DDB-9Z-aLd" eventType="valueChanged" id="VvE-7X-s36"/>
|
103
|
+
</connections>
|
104
|
+
</segmentedControl>
|
105
|
+
<containerView contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="pHC-ea-RXf">
|
106
|
+
<rect key="frame" x="0.0" y="45" width="320" height="427"/>
|
107
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
108
|
+
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
109
|
+
<connections>
|
110
|
+
<segue destination="Ojg-L0-U3y" kind="embed" id="6Cd-Sd-nTW"/>
|
111
|
+
</connections>
|
112
|
+
</containerView>
|
113
|
+
<containerView contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="cGn-55-a2a">
|
114
|
+
<rect key="frame" x="0.0" y="45" width="320" height="427"/>
|
115
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
116
|
+
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
117
|
+
<connections>
|
118
|
+
<segue destination="Yhi-Ks-PNF" kind="embed" id="smJ-4z-U1b"/>
|
119
|
+
</connections>
|
120
|
+
</containerView>
|
121
|
+
</subviews>
|
122
|
+
<color key="backgroundColor" red="0.92941182850000004" green="0.92941182850000004" blue="0.92941182850000004" alpha="1" colorSpace="deviceRGB"/>
|
123
|
+
<constraints>
|
124
|
+
<constraint firstItem="cGn-55-a2a" firstAttribute="bottom" secondItem="pHC-ea-RXf" secondAttribute="bottom" id="4lv-qB-cQ5"/>
|
125
|
+
<constraint firstItem="cGn-55-a2a" firstAttribute="trailing" secondItem="pHC-ea-RXf" secondAttribute="trailing" id="9c3-sq-Ywi"/>
|
126
|
+
<constraint firstItem="cGn-55-a2a" firstAttribute="top" secondItem="pHC-ea-RXf" secondAttribute="top" id="GRe-Y6-u8R"/>
|
127
|
+
<constraint firstItem="cGn-55-a2a" firstAttribute="leading" secondItem="cjl-ZX-JRH" secondAttribute="leading" id="Jm3-lE-5Vg"/>
|
128
|
+
<constraint firstItem="e4K-6O-TNV" firstAttribute="centerX" secondItem="cGn-55-a2a" secondAttribute="centerX" id="NhE-fH-l51"/>
|
129
|
+
<constraint firstAttribute="trailing" secondItem="cGn-55-a2a" secondAttribute="trailing" id="UZU-7q-FPA"/>
|
130
|
+
<constraint firstItem="cGn-55-a2a" firstAttribute="leading" secondItem="pHC-ea-RXf" secondAttribute="leading" id="fPo-5n-uqt"/>
|
131
|
+
<constraint firstItem="e4K-6O-TNV" firstAttribute="leading" secondItem="cjl-ZX-JRH" secondAttribute="leading" constant="20" symbolic="YES" id="lkv-gH-vLc"/>
|
132
|
+
<constraint firstAttribute="bottom" secondItem="cGn-55-a2a" secondAttribute="bottom" id="p4C-fq-dJt"/>
|
133
|
+
<constraint firstItem="cGn-55-a2a" firstAttribute="top" secondItem="e4K-6O-TNV" secondAttribute="bottom" constant="8" symbolic="YES" id="qcC-Ty-Fhv"/>
|
134
|
+
<constraint firstItem="cGn-55-a2a" firstAttribute="top" secondItem="cjl-ZX-JRH" secondAttribute="top" constant="45" id="yag-3i-hpM"/>
|
135
|
+
</constraints>
|
136
|
+
</view>
|
137
|
+
<connections>
|
138
|
+
<outlet property="basicColorView" destination="pHC-ea-RXf" id="AJa-np-rpD"/>
|
139
|
+
<outlet property="rgbaColorView" destination="cGn-55-a2a" id="xQZ-hG-oyH"/>
|
140
|
+
</connections>
|
141
|
+
</viewController>
|
142
|
+
<placeholder placeholderIdentifier="IBFirstResponder" id="V9a-WQ-vyG" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
143
|
+
</objects>
|
144
|
+
<point key="canvasLocation" x="1440" y="694"/>
|
145
|
+
</scene>
|
146
|
+
<!--Basic Color Collection View Controller-->
|
147
|
+
<scene sceneID="0SR-qe-1Uh">
|
148
|
+
<objects>
|
149
|
+
<collectionViewController autoresizesArchivedViewToFullSize="NO" id="Ojg-L0-U3y" customClass="ISDBasicColorCollectionViewController" sceneMemberID="viewController">
|
150
|
+
<collectionView key="view" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" minimumZoomScale="0.0" maximumZoomScale="0.0" dataMode="prototypes" id="RZ8-kV-96R">
|
151
|
+
<rect key="frame" x="0.0" y="0.0" width="320" height="427"/>
|
152
|
+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
153
|
+
<color key="backgroundColor" red="0.91372555494308472" green="0.91372555494308472" blue="0.91372555494308472" alpha="1" colorSpace="deviceRGB"/>
|
154
|
+
<collectionViewFlowLayout key="collectionViewLayout" minimumLineSpacing="4" minimumInteritemSpacing="4" id="NGN-NH-DZQ">
|
155
|
+
<size key="itemSize" width="40" height="40"/>
|
156
|
+
<size key="headerReferenceSize" width="20" height="20"/>
|
157
|
+
<size key="footerReferenceSize" width="0.0" height="0.0"/>
|
158
|
+
<inset key="sectionInset" minX="8" minY="8" maxX="8" maxY="8"/>
|
159
|
+
</collectionViewFlowLayout>
|
160
|
+
<cells>
|
161
|
+
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="ColorWell" id="gtt-zR-EYK" customClass="ISDColorPaletteCollectionViewCell">
|
162
|
+
<rect key="frame" x="8" y="28" width="40" height="40"/>
|
163
|
+
<autoresizingMask key="autoresizingMask"/>
|
164
|
+
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
|
165
|
+
<rect key="frame" x="0.0" y="0.0" width="40" height="40"/>
|
166
|
+
<autoresizingMask key="autoresizingMask"/>
|
167
|
+
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
168
|
+
</view>
|
169
|
+
</collectionViewCell>
|
170
|
+
</cells>
|
171
|
+
<collectionReusableView key="sectionHeaderView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="Header" id="p4g-aO-U9P" customClass="ISDBasicColorCollectionReusableView">
|
172
|
+
<rect key="frame" x="0.0" y="0.0" width="320" height="20"/>
|
173
|
+
<autoresizingMask key="autoresizingMask"/>
|
174
|
+
<subviews>
|
175
|
+
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="x5F-Lp-Qhp">
|
176
|
+
<rect key="frame" x="20" y="-1" width="280" height="21"/>
|
177
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
178
|
+
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
179
|
+
<nil key="highlightedColor"/>
|
180
|
+
</label>
|
181
|
+
</subviews>
|
182
|
+
<color key="backgroundColor" red="0.92941182851791382" green="0.92941182851791382" blue="0.92941182851791382" alpha="1" colorSpace="deviceRGB"/>
|
183
|
+
<connections>
|
184
|
+
<outlet property="headerLabel" destination="x5F-Lp-Qhp" id="Os7-XF-w6M"/>
|
185
|
+
</connections>
|
186
|
+
</collectionReusableView>
|
187
|
+
<connections>
|
188
|
+
<outlet property="dataSource" destination="Ojg-L0-U3y" id="yUg-o2-QXO"/>
|
189
|
+
<outlet property="delegate" destination="Ojg-L0-U3y" id="vIu-ft-xXR"/>
|
190
|
+
</connections>
|
191
|
+
</collectionView>
|
192
|
+
</collectionViewController>
|
193
|
+
<placeholder placeholderIdentifier="IBFirstResponder" id="7Af-wU-tgS" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
194
|
+
</objects>
|
195
|
+
<point key="canvasLocation" x="1907" y="304"/>
|
196
|
+
</scene>
|
197
|
+
<!--Navigation Controller-->
|
198
|
+
<scene sceneID="cik-Kr-gIv">
|
199
|
+
<objects>
|
200
|
+
<navigationController automaticallyAdjustsScrollViewInsets="NO" id="lfU-qe-W46" sceneMemberID="viewController">
|
201
|
+
<toolbarItems/>
|
202
|
+
<navigationBar key="navigationBar" contentMode="scaleToFill" id="NiU-Lc-o39">
|
203
|
+
<rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
|
204
|
+
<autoresizingMask key="autoresizingMask"/>
|
205
|
+
</navigationBar>
|
206
|
+
<nil name="viewControllers"/>
|
207
|
+
<connections>
|
208
|
+
<segue destination="ccp-rq-upX" kind="relationship" relationship="rootViewController" id="siE-6P-TgG"/>
|
209
|
+
</connections>
|
210
|
+
</navigationController>
|
211
|
+
<placeholder placeholderIdentifier="IBFirstResponder" id="DRu-JD-u7i" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
212
|
+
</objects>
|
213
|
+
<point key="canvasLocation" x="489" y="646"/>
|
214
|
+
</scene>
|
215
|
+
<!--Rgba Color View Controller-->
|
216
|
+
<scene sceneID="Cru-Dr-tDc">
|
217
|
+
<objects>
|
218
|
+
<viewController automaticallyAdjustsScrollViewInsets="NO" id="Yhi-Ks-PNF" customClass="ISDRgbaColorViewController" sceneMemberID="viewController">
|
219
|
+
<layoutGuides>
|
220
|
+
<viewControllerLayoutGuide type="top" id="yhf-BZ-2WW"/>
|
221
|
+
<viewControllerLayoutGuide type="bottom" id="Pnt-TF-IlT"/>
|
222
|
+
</layoutGuides>
|
223
|
+
<view key="view" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" id="DbN-fh-FRU">
|
224
|
+
<rect key="frame" x="0.0" y="0.0" width="320" height="427"/>
|
225
|
+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
226
|
+
<subviews>
|
227
|
+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="bhT-mh-qOp" customClass="ISDRgbaSliderView">
|
228
|
+
<rect key="frame" x="101" y="20" width="40" height="387"/>
|
229
|
+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
230
|
+
<subviews>
|
231
|
+
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="center" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="gon-EP-ZNQ">
|
232
|
+
<rect key="frame" x="0.0" y="29" width="40" height="30"/>
|
233
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
234
|
+
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
235
|
+
<textInputTraits key="textInputTraits"/>
|
236
|
+
<connections>
|
237
|
+
<outlet property="delegate" destination="bhT-mh-qOp" id="nMc-xE-jqJ"/>
|
238
|
+
</connections>
|
239
|
+
</textField>
|
240
|
+
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="G" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="1X6-Fn-GXc">
|
241
|
+
<rect key="frame" x="14" y="4" width="13" height="21"/>
|
242
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
243
|
+
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
244
|
+
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
245
|
+
<nil key="highlightedColor"/>
|
246
|
+
</label>
|
247
|
+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="GyG-Pq-fWB">
|
248
|
+
<rect key="frame" x="0.0" y="58" width="40" height="329"/>
|
249
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
250
|
+
</view>
|
251
|
+
</subviews>
|
252
|
+
<constraints>
|
253
|
+
<constraint firstItem="GyG-Pq-fWB" firstAttribute="leading" secondItem="bhT-mh-qOp" secondAttribute="leading" id="8hK-sc-YTm"/>
|
254
|
+
<constraint firstAttribute="trailing" secondItem="gon-EP-ZNQ" secondAttribute="trailing" id="Ama-mI-BQ3"/>
|
255
|
+
<constraint firstItem="gon-EP-ZNQ" firstAttribute="top" secondItem="1X6-Fn-GXc" secondAttribute="bottom" constant="4" id="Tat-gE-zFu"/>
|
256
|
+
<constraint firstItem="1X6-Fn-GXc" firstAttribute="centerX" secondItem="gon-EP-ZNQ" secondAttribute="centerX" id="Ub8-iw-ff6"/>
|
257
|
+
<constraint firstAttribute="bottom" secondItem="GyG-Pq-fWB" secondAttribute="bottom" id="ZsE-42-Q3K"/>
|
258
|
+
<constraint firstItem="GyG-Pq-fWB" firstAttribute="top" secondItem="gon-EP-ZNQ" secondAttribute="bottom" constant="-1" id="eKd-Ve-whv"/>
|
259
|
+
<constraint firstItem="GyG-Pq-fWB" firstAttribute="trailing" secondItem="gon-EP-ZNQ" secondAttribute="trailing" id="n9H-qH-74n"/>
|
260
|
+
<constraint firstItem="1X6-Fn-GXc" firstAttribute="top" secondItem="bhT-mh-qOp" secondAttribute="top" constant="4" id="sAQ-84-QgG"/>
|
261
|
+
<constraint firstItem="gon-EP-ZNQ" firstAttribute="leading" secondItem="GyG-Pq-fWB" secondAttribute="leading" id="zdm-qF-05L"/>
|
262
|
+
</constraints>
|
263
|
+
<connections>
|
264
|
+
<outlet property="sliderBaseView" destination="GyG-Pq-fWB" id="pyB-gZ-bqi"/>
|
265
|
+
<outlet property="valueTextField" destination="gon-EP-ZNQ" id="fEV-vA-2aZ"/>
|
266
|
+
<outlet property="viewController" destination="Yhi-Ks-PNF" id="90O-gx-RuZ"/>
|
267
|
+
</connections>
|
268
|
+
</view>
|
269
|
+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="YVg-78-fdF" customClass="ISDRgbaSliderView">
|
270
|
+
<rect key="frame" x="20" y="20" width="40" height="387"/>
|
271
|
+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
272
|
+
<subviews>
|
273
|
+
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="center" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="HXL-Gb-ssS">
|
274
|
+
<rect key="frame" x="0.0" y="29" width="40" height="30"/>
|
275
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
276
|
+
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
277
|
+
<textInputTraits key="textInputTraits"/>
|
278
|
+
<connections>
|
279
|
+
<outlet property="delegate" destination="YVg-78-fdF" id="eBD-XQ-m9U"/>
|
280
|
+
</connections>
|
281
|
+
</textField>
|
282
|
+
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="R" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="DRT-5I-XgG">
|
283
|
+
<rect key="frame" x="14" y="4" width="12" height="21"/>
|
284
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
285
|
+
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
286
|
+
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
287
|
+
<nil key="highlightedColor"/>
|
288
|
+
</label>
|
289
|
+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6y3-Pm-VQ8">
|
290
|
+
<rect key="frame" x="0.0" y="58" width="40" height="329"/>
|
291
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
292
|
+
</view>
|
293
|
+
</subviews>
|
294
|
+
<constraints>
|
295
|
+
<constraint firstItem="DRT-5I-XgG" firstAttribute="top" secondItem="YVg-78-fdF" secondAttribute="top" constant="4" id="1OA-hd-LzU"/>
|
296
|
+
<constraint firstItem="HXL-Gb-ssS" firstAttribute="top" secondItem="DRT-5I-XgG" secondAttribute="bottom" constant="4" id="Bc4-2H-nHA"/>
|
297
|
+
<constraint firstItem="DRT-5I-XgG" firstAttribute="centerX" secondItem="HXL-Gb-ssS" secondAttribute="centerX" id="GW0-uc-995"/>
|
298
|
+
<constraint firstItem="6y3-Pm-VQ8" firstAttribute="leading" secondItem="HXL-Gb-ssS" secondAttribute="leading" id="KHM-CB-gxV"/>
|
299
|
+
<constraint firstItem="6y3-Pm-VQ8" firstAttribute="top" secondItem="HXL-Gb-ssS" secondAttribute="bottom" constant="-1" id="QhC-GB-7tT"/>
|
300
|
+
<constraint firstAttribute="trailing" secondItem="6y3-Pm-VQ8" secondAttribute="trailing" id="agS-Qx-UHA"/>
|
301
|
+
<constraint firstItem="HXL-Gb-ssS" firstAttribute="trailing" secondItem="6y3-Pm-VQ8" secondAttribute="trailing" id="b8A-YZ-obz"/>
|
302
|
+
<constraint firstAttribute="bottom" secondItem="6y3-Pm-VQ8" secondAttribute="bottom" id="bGh-bJ-xNR"/>
|
303
|
+
<constraint firstItem="6y3-Pm-VQ8" firstAttribute="leading" secondItem="YVg-78-fdF" secondAttribute="leading" id="v7F-Sa-Up7"/>
|
304
|
+
</constraints>
|
305
|
+
<connections>
|
306
|
+
<outlet property="sliderBaseView" destination="6y3-Pm-VQ8" id="hjv-3t-lv2"/>
|
307
|
+
<outlet property="valueTextField" destination="HXL-Gb-ssS" id="7lx-Tb-0qm"/>
|
308
|
+
<outlet property="viewController" destination="Yhi-Ks-PNF" id="64N-SO-Nt6"/>
|
309
|
+
</connections>
|
310
|
+
</view>
|
311
|
+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="crf-eG-EzA" customClass="ISDRgbaSliderView">
|
312
|
+
<rect key="frame" x="262" y="20" width="40" height="387"/>
|
313
|
+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
314
|
+
<subviews>
|
315
|
+
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="center" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="OV8-zN-eBC">
|
316
|
+
<rect key="frame" x="0.0" y="29" width="40" height="30"/>
|
317
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
318
|
+
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
319
|
+
<textInputTraits key="textInputTraits"/>
|
320
|
+
<connections>
|
321
|
+
<outlet property="delegate" destination="crf-eG-EzA" id="VHH-ez-hEn"/>
|
322
|
+
</connections>
|
323
|
+
</textField>
|
324
|
+
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="A" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="GVX-lW-HfY">
|
325
|
+
<rect key="frame" x="14" y="4" width="12" height="21"/>
|
326
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
327
|
+
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
328
|
+
<color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
|
329
|
+
<nil key="highlightedColor"/>
|
330
|
+
</label>
|
331
|
+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="GYK-Ya-tqt">
|
332
|
+
<rect key="frame" x="0.0" y="58" width="40" height="329"/>
|
333
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
334
|
+
</view>
|
335
|
+
</subviews>
|
336
|
+
<constraints>
|
337
|
+
<constraint firstAttribute="trailing" secondItem="OV8-zN-eBC" secondAttribute="trailing" id="85n-F9-PQa"/>
|
338
|
+
<constraint firstItem="OV8-zN-eBC" firstAttribute="trailing" secondItem="GYK-Ya-tqt" secondAttribute="trailing" id="8kl-Q4-OK4"/>
|
339
|
+
<constraint firstItem="OV8-zN-eBC" firstAttribute="leading" secondItem="GYK-Ya-tqt" secondAttribute="leading" id="CbC-kC-Zln"/>
|
340
|
+
<constraint firstItem="GVX-lW-HfY" firstAttribute="top" secondItem="crf-eG-EzA" secondAttribute="top" constant="4" id="QUv-VF-fgW"/>
|
341
|
+
<constraint firstItem="OV8-zN-eBC" firstAttribute="top" secondItem="GVX-lW-HfY" secondAttribute="bottom" constant="4" id="WmD-aI-NCh"/>
|
342
|
+
<constraint firstAttribute="bottom" secondItem="GYK-Ya-tqt" secondAttribute="bottom" id="Yzd-mq-ub1"/>
|
343
|
+
<constraint firstItem="GYK-Ya-tqt" firstAttribute="top" secondItem="OV8-zN-eBC" secondAttribute="bottom" constant="-1" id="cU4-Ey-zhh"/>
|
344
|
+
<constraint firstItem="OV8-zN-eBC" firstAttribute="centerX" secondItem="GVX-lW-HfY" secondAttribute="centerX" id="cgh-hQ-pyM"/>
|
345
|
+
<constraint firstItem="OV8-zN-eBC" firstAttribute="leading" secondItem="crf-eG-EzA" secondAttribute="leading" id="ndV-On-9rx"/>
|
346
|
+
</constraints>
|
347
|
+
<connections>
|
348
|
+
<outlet property="idLabel" destination="GVX-lW-HfY" id="2ow-P4-Zzw"/>
|
349
|
+
<outlet property="sliderBaseView" destination="GYK-Ya-tqt" id="tH3-4E-Wt7"/>
|
350
|
+
<outlet property="valueTextField" destination="OV8-zN-eBC" id="wVp-Sr-oiB"/>
|
351
|
+
<outlet property="viewController" destination="Yhi-Ks-PNF" id="5YV-wj-xZG"/>
|
352
|
+
</connections>
|
353
|
+
</view>
|
354
|
+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="XJe-fJ-Lbo" customClass="ISDRgbaSliderView">
|
355
|
+
<rect key="frame" x="185" y="20" width="40" height="387"/>
|
356
|
+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
357
|
+
<subviews>
|
358
|
+
<textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="center" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="alY-XU-nZq">
|
359
|
+
<rect key="frame" x="0.0" y="29" width="40" height="30"/>
|
360
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
361
|
+
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
362
|
+
<textInputTraits key="textInputTraits"/>
|
363
|
+
<connections>
|
364
|
+
<outlet property="delegate" destination="XJe-fJ-Lbo" id="fHC-LT-GUA"/>
|
365
|
+
</connections>
|
366
|
+
</textField>
|
367
|
+
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="B" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gjh-kq-Dj0">
|
368
|
+
<rect key="frame" x="14" y="4" width="12" height="21"/>
|
369
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
370
|
+
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
371
|
+
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
372
|
+
<nil key="highlightedColor"/>
|
373
|
+
</label>
|
374
|
+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="2if-yi-hbe">
|
375
|
+
<rect key="frame" x="0.0" y="58" width="40" height="329"/>
|
376
|
+
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
377
|
+
</view>
|
378
|
+
</subviews>
|
379
|
+
<constraints>
|
380
|
+
<constraint firstItem="2if-yi-hbe" firstAttribute="trailing" secondItem="alY-XU-nZq" secondAttribute="trailing" id="3uA-bB-MEL"/>
|
381
|
+
<constraint firstItem="2if-yi-hbe" firstAttribute="top" secondItem="alY-XU-nZq" secondAttribute="bottom" constant="-1" id="6jc-Ur-Zxm"/>
|
382
|
+
<constraint firstAttribute="trailing" secondItem="2if-yi-hbe" secondAttribute="trailing" id="MBg-IM-GTe"/>
|
383
|
+
<constraint firstItem="alY-XU-nZq" firstAttribute="top" secondItem="gjh-kq-Dj0" secondAttribute="bottom" constant="4" id="VKe-xu-9zS"/>
|
384
|
+
<constraint firstItem="gjh-kq-Dj0" firstAttribute="top" secondItem="XJe-fJ-Lbo" secondAttribute="top" constant="4" id="VLV-Wa-Mrd"/>
|
385
|
+
<constraint firstItem="alY-XU-nZq" firstAttribute="centerX" secondItem="gjh-kq-Dj0" secondAttribute="centerX" id="fYr-fj-I8b"/>
|
386
|
+
<constraint firstAttribute="bottom" secondItem="2if-yi-hbe" secondAttribute="bottom" id="fhn-gL-oik"/>
|
387
|
+
<constraint firstItem="alY-XU-nZq" firstAttribute="leading" secondItem="XJe-fJ-Lbo" secondAttribute="leading" id="oT8-Cl-S8Q"/>
|
388
|
+
<constraint firstItem="2if-yi-hbe" firstAttribute="leading" secondItem="alY-XU-nZq" secondAttribute="leading" id="ske-F5-gO4"/>
|
389
|
+
</constraints>
|
390
|
+
<connections>
|
391
|
+
<outlet property="sliderBaseView" destination="2if-yi-hbe" id="TNI-DO-7z7"/>
|
392
|
+
<outlet property="valueTextField" destination="alY-XU-nZq" id="CmE-pk-FYi"/>
|
393
|
+
<outlet property="viewController" destination="Yhi-Ks-PNF" id="5o6-vD-eJv"/>
|
394
|
+
</connections>
|
395
|
+
</view>
|
396
|
+
</subviews>
|
397
|
+
<color key="backgroundColor" red="0.91372555489999996" green="0.91372555489999996" blue="0.91372555489999996" alpha="1" colorSpace="deviceRGB"/>
|
398
|
+
<constraints>
|
399
|
+
<constraint firstItem="XJe-fJ-Lbo" firstAttribute="height" secondItem="bhT-mh-qOp" secondAttribute="height" id="1IJ-It-SxQ"/>
|
400
|
+
<constraint firstItem="bhT-mh-qOp" firstAttribute="leading" secondItem="YVg-78-fdF" secondAttribute="trailing" constant="41" id="EEA-kg-Era"/>
|
401
|
+
<constraint firstAttribute="trailing" secondItem="crf-eG-EzA" secondAttribute="trailing" constant="18" id="NaZ-TI-9Mj"/>
|
402
|
+
<constraint firstAttribute="bottom" secondItem="YVg-78-fdF" secondAttribute="bottom" constant="20" symbolic="YES" id="Nss-ZT-qCV"/>
|
403
|
+
<constraint firstItem="YVg-78-fdF" firstAttribute="width" secondItem="bhT-mh-qOp" secondAttribute="width" id="TSC-7I-ZI4"/>
|
404
|
+
<constraint firstItem="XJe-fJ-Lbo" firstAttribute="width" secondItem="bhT-mh-qOp" secondAttribute="width" id="YtN-WK-703"/>
|
405
|
+
<constraint firstItem="YVg-78-fdF" firstAttribute="height" secondItem="bhT-mh-qOp" secondAttribute="height" id="Z6T-y7-BV8"/>
|
406
|
+
<constraint firstItem="crf-eG-EzA" firstAttribute="top" secondItem="XJe-fJ-Lbo" secondAttribute="top" id="ZG8-yR-eob"/>
|
407
|
+
<constraint firstItem="YVg-78-fdF" firstAttribute="leading" secondItem="DbN-fh-FRU" secondAttribute="leading" constant="20" id="bt8-6h-bnV"/>
|
408
|
+
<constraint firstItem="crf-eG-EzA" firstAttribute="width" secondItem="XJe-fJ-Lbo" secondAttribute="width" id="ce8-S2-sZq"/>
|
409
|
+
<constraint firstItem="YVg-78-fdF" firstAttribute="top" secondItem="DbN-fh-FRU" secondAttribute="top" constant="20" symbolic="YES" id="dcw-SR-Hlu"/>
|
410
|
+
<constraint firstItem="XJe-fJ-Lbo" firstAttribute="leading" secondItem="bhT-mh-qOp" secondAttribute="trailing" constant="44" id="ehc-Cp-W07"/>
|
411
|
+
<constraint firstItem="bhT-mh-qOp" firstAttribute="top" secondItem="XJe-fJ-Lbo" secondAttribute="top" id="fLu-pX-Nkg"/>
|
412
|
+
<constraint firstItem="crf-eG-EzA" firstAttribute="height" secondItem="XJe-fJ-Lbo" secondAttribute="height" id="gC0-Ab-7y8"/>
|
413
|
+
<constraint firstItem="YVg-78-fdF" firstAttribute="top" secondItem="bhT-mh-qOp" secondAttribute="top" id="sQn-3Q-FWp"/>
|
414
|
+
<constraint firstItem="crf-eG-EzA" firstAttribute="leading" secondItem="XJe-fJ-Lbo" secondAttribute="trailing" constant="37" id="v1t-dB-ujj"/>
|
415
|
+
</constraints>
|
416
|
+
</view>
|
417
|
+
<toolbarItems/>
|
418
|
+
<connections>
|
419
|
+
<outlet property="aView" destination="crf-eG-EzA" id="q5Q-NB-tWY"/>
|
420
|
+
<outlet property="bView" destination="XJe-fJ-Lbo" id="XuK-HZ-6Sp"/>
|
421
|
+
<outlet property="gView" destination="bhT-mh-qOp" id="xzj-uQ-5JP"/>
|
422
|
+
<outlet property="rView" destination="YVg-78-fdF" id="4W7-au-z4L"/>
|
423
|
+
</connections>
|
424
|
+
</viewController>
|
425
|
+
<placeholder placeholderIdentifier="IBFirstResponder" id="c9R-5z-LDE" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
426
|
+
</objects>
|
427
|
+
<point key="canvasLocation" x="1907" y="860"/>
|
428
|
+
</scene>
|
429
|
+
</scenes>
|
430
|
+
<simulatedMetricsContainer key="defaultSimulatedMetrics">
|
431
|
+
<simulatedStatusBarMetrics key="statusBar"/>
|
432
|
+
<simulatedOrientationMetrics key="orientation"/>
|
433
|
+
<simulatedScreenMetrics key="destination" type="retina4"/>
|
434
|
+
</simulatedMetricsContainer>
|
435
|
+
</document>
|