Skip to content

Commit f9691d8

Browse files
committed
feat: Added an alert if some images could net be downloaded
1 parent b7bddce commit f9691d8

File tree

2 files changed

+40
-1
lines changed

2 files changed

+40
-1
lines changed

SDO/Classes/ImageItem.xib

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,36 @@
2727
</constraints>
2828
<imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyUpOrDown" image="NSApplicationIcon" id="3bw-ov-WlO"/>
2929
<connections>
30-
<binding destination="GOC-vY-kdy" name="toolTip" keyPath="self.image.title" id="Gqz-PX-iRq"/>
30+
<binding destination="GOC-vY-kdy" name="hidden" keyPath="self.image.image" id="qew-oY-goq">
31+
<dictionary key="options">
32+
<string key="NSValueTransformerName">NSIsNil</string>
33+
</dictionary>
34+
</binding>
3135
<binding destination="GOC-vY-kdy" name="value" keyPath="self.image.image" id="m0B-YQ-baQ"/>
36+
<binding destination="GOC-vY-kdy" name="toolTip" keyPath="self.image.title" id="Gqz-PX-iRq"/>
37+
</connections>
38+
</imageView>
39+
<imageView horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="A2d-yK-HfI">
40+
<rect key="frame" x="108" y="104.5" width="64.5" height="71"/>
41+
<constraints>
42+
<constraint firstAttribute="width" constant="64" id="OnF-wF-59C"/>
43+
<constraint firstAttribute="height" constant="64" id="Uv2-SH-tA8"/>
44+
</constraints>
45+
<imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyUpOrDown" image="sun.max.trianglebadge.exclamationmark.fill" catalog="system" id="JKc-F0-tyc"/>
46+
<connections>
47+
<binding destination="GOC-vY-kdy" name="hidden" keyPath="self.image.image" id="frn-Ho-mjc">
48+
<dictionary key="options">
49+
<string key="NSValueTransformerName">NSIsNotNil</string>
50+
</dictionary>
51+
</binding>
3252
</connections>
3353
</imageView>
3454
</subviews>
3555
<constraints>
3656
<constraint firstAttribute="bottom" secondItem="skp-gU-Qze" secondAttribute="bottom" constant="1" id="HPx-MB-dWx"/>
3757
<constraint firstItem="skp-gU-Qze" firstAttribute="leading" secondItem="NTU-3b-Dyc" secondAttribute="leading" constant="1" id="Naf-ye-ojy"/>
58+
<constraint firstItem="A2d-yK-HfI" firstAttribute="centerY" secondItem="skp-gU-Qze" secondAttribute="centerY" id="Rb0-uO-iHF"/>
59+
<constraint firstItem="A2d-yK-HfI" firstAttribute="centerX" secondItem="skp-gU-Qze" secondAttribute="centerX" id="bCd-qA-fr3"/>
3860
<constraint firstAttribute="trailing" secondItem="skp-gU-Qze" secondAttribute="trailing" constant="1" id="koj-cT-HCS"/>
3961
<constraint firstItem="skp-gU-Qze" firstAttribute="top" secondItem="NTU-3b-Dyc" secondAttribute="top" constant="1" id="v5C-Np-YaB"/>
4062
</constraints>
@@ -101,5 +123,6 @@
101123
<image name="NSApplicationIcon" width="32" height="32"/>
102124
<image name="info.circle.fill" catalog="system" width="15" height="15"/>
103125
<image name="square.and.arrow.up" catalog="system" width="15" height="18"/>
126+
<image name="sun.max.trianglebadge.exclamationmark.fill" catalog="system" width="17" height="16"/>
104127
</resources>
105128
</document>

SDO/Classes/MainWindowController.swift

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,22 @@ public class MainWindowController: NSWindowController, NSCollectionViewDataSourc
9999
{
100100
images in DispatchQueue.main.async
101101
{
102+
if let _ = images.first( where: { $0.image == nil } )
103+
{
104+
let alert = NSAlert()
105+
alert.messageText = "Missing Images"
106+
alert.informativeText = "Some images could not be downloaded at this time."
107+
108+
if let window = self.window
109+
{
110+
alert.beginSheetModal( for: window )
111+
}
112+
else
113+
{
114+
alert.runModal()
115+
}
116+
}
117+
102118
self.loading = false
103119
self.refreshing = false
104120
self.images = images

0 commit comments

Comments
 (0)