Skip to content

Commit 96e4682

Browse files
committed
Add Label style with trailing icon
1 parent 6f432ee commit 96e4682

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed

Xcodes.xcodeproj/project.pbxproj

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
B0C6AD042AD6E65700E64698 /* ReleaseDateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0C6AD032AD6E65700E64698 /* ReleaseDateView.swift */; };
2626
B0C6AD0B2AD9178E00E64698 /* IdenticalBuildView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0C6AD0A2AD9178E00E64698 /* IdenticalBuildView.swift */; };
2727
B0C6AD0D2AD91D7900E64698 /* IconView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0C6AD0C2AD91D7900E64698 /* IconView.swift */; };
28+
BDBAB7452B9FF55800694B0B /* TrailingIconLabelStyle.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDBAB7442B9FF55800694B0B /* TrailingIconLabelStyle.swift */; };
2829
CA11E7BA2598476C00D2EE1C /* XcodeCommands.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA11E7B92598476C00D2EE1C /* XcodeCommands.swift */; };
2930
CA2518EC25A7FF2B00F08414 /* AppStateUpdateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA2518EB25A7FF2B00F08414 /* AppStateUpdateTests.swift */; };
3031
CA25192A25A9644800F08414 /* XcodeInstallState.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA25192925A9644800F08414 /* XcodeInstallState.swift */; };
@@ -209,6 +210,7 @@
209210
B0C6AD032AD6E65700E64698 /* ReleaseDateView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReleaseDateView.swift; sourceTree = "<group>"; };
210211
B0C6AD0A2AD9178E00E64698 /* IdenticalBuildView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IdenticalBuildView.swift; sourceTree = "<group>"; };
211212
B0C6AD0C2AD91D7900E64698 /* IconView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IconView.swift; sourceTree = "<group>"; };
213+
BDBAB7442B9FF55800694B0B /* TrailingIconLabelStyle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TrailingIconLabelStyle.swift; sourceTree = "<group>"; };
212214
CA11E7B92598476C00D2EE1C /* XcodeCommands.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodeCommands.swift; sourceTree = "<group>"; };
213215
CA2518EB25A7FF2B00F08414 /* AppStateUpdateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppStateUpdateTests.swift; sourceTree = "<group>"; };
214216
CA25192925A9644800F08414 /* XcodeInstallState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodeInstallState.swift; sourceTree = "<group>"; };
@@ -380,6 +382,7 @@
380382
536CFDD3263C9A8000026CE0 /* XcodesSheet.swift */,
381383
53CBAB2B263DCC9100410495 /* XcodesAlert.swift */,
382384
E84B7D0C2B296A8900DBDA2B /* NavigationSplitViewWrapper.swift */,
385+
BDBAB7442B9FF55800694B0B /* TrailingIconLabelStyle.swift */,
383386
);
384387
path = Common;
385388
sourceTree = "<group>";
@@ -919,6 +922,7 @@
919922
CA9FF84E2595079F00E47BAF /* ScrollingTextView.swift in Sources */,
920923
E832EAF82B0FBCF4001B570D /* RuntimeInstallationStepDetailView.swift in Sources */,
921924
CABFA9C12592EEEA00380FEE /* Version+.swift in Sources */,
925+
BDBAB7452B9FF55800694B0B /* TrailingIconLabelStyle.swift in Sources */,
922926
E8D655C0288DD04700A139C2 /* SelectedActionType.swift in Sources */,
923927
36741BFD291E4FDB00A85AAE /* DownloadPreferencePane.swift in Sources */,
924928
E84E4F542B333864003F3959 /* PlatformsListView.swift in Sources */,
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
//
2+
// TrailingIconLabelStyle.swift
3+
// Xcodes
4+
//
5+
// Created by Daniel Chick on 3/11/24.
6+
// Copyright © 2024 Robots and Pencils. All rights reserved.
7+
//
8+
9+
import SwiftUI
10+
11+
struct TrailingIconLabelStyle: LabelStyle {
12+
func makeBody(configuration: Configuration) -> some View {
13+
HStack {
14+
configuration.title
15+
configuration.icon
16+
}
17+
}
18+
}
19+
20+
extension LabelStyle where Self == TrailingIconLabelStyle {
21+
static var trailingIcon: Self { Self() }
22+
}

0 commit comments

Comments
 (0)