mirror of
https://github.com/MacPass/MacPass.git
synced 2025-12-13 22:52:26 +00:00
Changed to list display for available plugins. Added version and installed info for plugins
This commit is contained in:
@@ -264,6 +264,7 @@
|
||||
4CE8246F16E2E93400573141 /* MPOverlayWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE8246E16E2E93400573141 /* MPOverlayWindowController.m */; };
|
||||
4CE8247516E2F2B900573141 /* MPOverlayView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE8247416E2F2B900573141 /* MPOverlayView.m */; };
|
||||
4CE88B9717BA651C0042E078 /* contextTriangleTemplate.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 4CE88B9617BA651C0042E078 /* contextTriangleTemplate.pdf */; };
|
||||
4CE97BAA216FA968006BF25D /* MPPluginBrowserTableCellView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE97BA9216FA968006BF25D /* MPPluginBrowserTableCellView.m */; };
|
||||
4CEE46DD181C301D006BF1E5 /* MPAutotypeDaemon.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CEE46DC181C301D006BF1E5 /* MPAutotypeDaemon.m */; };
|
||||
4CEED1C617D7BD0E007180F1 /* NSError+Messages.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CEED1C517D7BD0E007180F1 /* NSError+Messages.m */; };
|
||||
4CF29BF417879D0000851B60 /* 26_FileSaveTemplate.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 4CF29BF317879D0000851B60 /* 26_FileSaveTemplate.pdf */; };
|
||||
@@ -823,6 +824,8 @@
|
||||
4CE88B9617BA651C0042E078 /* contextTriangleTemplate.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; name = contextTriangleTemplate.pdf; path = Icons/contextTriangleTemplate.pdf; sourceTree = "<group>"; };
|
||||
4CE88C2417C163FE00BFD195 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = System/Library/Frameworks/CoreFoundation.framework; sourceTree = SDKROOT; };
|
||||
4CE88C3317C1647400BFD195 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||
4CE97BA8216FA968006BF25D /* MPPluginBrowserTableCellView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPPluginBrowserTableCellView.h; sourceTree = "<group>"; };
|
||||
4CE97BA9216FA968006BF25D /* MPPluginBrowserTableCellView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MPPluginBrowserTableCellView.m; sourceTree = "<group>"; };
|
||||
4CEE46DB181C301D006BF1E5 /* MPAutotypeDaemon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPAutotypeDaemon.h; sourceTree = "<group>"; };
|
||||
4CEE46DC181C301D006BF1E5 /* MPAutotypeDaemon.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPAutotypeDaemon.m; sourceTree = "<group>"; };
|
||||
4CEED1C417D7BD0E007180F1 /* NSError+Messages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSError+Messages.h"; sourceTree = "<group>"; };
|
||||
@@ -1048,6 +1051,8 @@
|
||||
4C0F043F2147A6FA000B8568 /* MPCustomFieldTableView.m */,
|
||||
4C370EFC215B76CB00703AAE /* MPOutlineTableCellView.h */,
|
||||
4C370EFD215B76CB00703AAE /* MPOutlineTableCellView.m */,
|
||||
4CE97BA8216FA968006BF25D /* MPPluginBrowserTableCellView.h */,
|
||||
4CE97BA9216FA968006BF25D /* MPPluginBrowserTableCellView.m */,
|
||||
);
|
||||
name = Views;
|
||||
sourceTree = "<group>";
|
||||
@@ -1948,6 +1953,7 @@
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
4CE97BAA216FA968006BF25D /* MPPluginBrowserTableCellView.m in Sources */,
|
||||
4CD034AC1BFE113B003C002C /* MPPluginHost.m in Sources */,
|
||||
4C77E37315B84A240093A587 /* main.m in Sources */,
|
||||
4C0F04402147A6FA000B8568 /* MPCustomFieldTableView.m in Sources */,
|
||||
|
||||
19
MacPass/MPPluginBrowserTableCellView.h
Normal file
19
MacPass/MPPluginBrowserTableCellView.h
Normal file
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// MPPluginBrowserTableCellView.h
|
||||
// MacPass
|
||||
//
|
||||
// Created by Michael Starke on 11.10.18.
|
||||
// Copyright © 2018 HicknHack Software GmbH. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Cocoa/Cocoa.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface MPPluginBrowserTableCellView : NSTableCellView
|
||||
|
||||
@property (strong) IBOutlet NSTextField *statusTextField;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
27
MacPass/MPPluginBrowserTableCellView.m
Normal file
27
MacPass/MPPluginBrowserTableCellView.m
Normal file
@@ -0,0 +1,27 @@
|
||||
//
|
||||
// MPPluginBrowserTableCellView.m
|
||||
// MacPass
|
||||
//
|
||||
// Created by Michael Starke on 11.10.18.
|
||||
// Copyright © 2018 HicknHack Software GmbH. All rights reserved.
|
||||
//
|
||||
|
||||
#import "MPPluginBrowserTableCellView.h"
|
||||
|
||||
@implementation MPPluginBrowserTableCellView
|
||||
|
||||
- (void)setBackgroundStyle:(NSBackgroundStyle)backgroundStyle {
|
||||
super.backgroundStyle = backgroundStyle;
|
||||
switch(backgroundStyle) {
|
||||
case NSBackgroundStyleNormal:
|
||||
case NSBackgroundStyleLowered:
|
||||
self.statusTextField.textColor = NSColor.controlTextColor;
|
||||
break;
|
||||
case NSBackgroundStyleRaised:
|
||||
case NSBackgroundStyleEmphasized:
|
||||
self.statusTextField.textColor = NSColor.selectedControlTextColor;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@end
|
||||
@@ -50,9 +50,6 @@ FOUNDATION_EXPORT NSString *const MPPluginHostPluginBundleIdentifiyerKey;
|
||||
|
||||
- (void)loadPlugins;
|
||||
|
||||
/*
|
||||
- (NSArray <MPPlugin __kindof*>*)autotypePlugins;
|
||||
- (NSArray <MPPlugin __kindof*>*)entryContextMenuPlugins;
|
||||
*/
|
||||
- (MPPlugin *)pluginWithBundleIdentifier:(NSString *)identifer;
|
||||
- (NSArray *)avilableMenuItemsForEntries:(NSArray <KPKEntry *>*)entries;
|
||||
@end
|
||||
|
||||
@@ -129,6 +129,16 @@ NSString *const MPPluginHostPluginBundleIdentifiyerKey = @"MPPluginHostPluginBun
|
||||
}
|
||||
|
||||
|
||||
- (MPPlugin *)pluginWithBundleIdentifier:(NSString *)identifer {
|
||||
for(MPPlugin *plugin in self.mutablePlugins) {
|
||||
if([plugin.bundle.bundleIdentifier isEqualToString:identifer]) {
|
||||
return plugin;
|
||||
}
|
||||
}
|
||||
return nil;
|
||||
|
||||
}
|
||||
|
||||
#pragma mark - Plugin Loading
|
||||
|
||||
- (void)loadPlugins {
|
||||
@@ -253,13 +263,7 @@ NSString *const MPPluginHostPluginBundleIdentifiyerKey = @"MPPluginHostPluginBun
|
||||
}
|
||||
|
||||
- (BOOL)_validateUniqueBundle:(NSBundle *)bundle {
|
||||
for(MPPlugin *plugin in self.mutablePlugins) {
|
||||
NSBundle *pluginBundle = [NSBundle bundleForClass:plugin.class];
|
||||
if([pluginBundle.bundleIdentifier isEqualToString:bundle.bundleIdentifier]) {
|
||||
return YES;
|
||||
}
|
||||
}
|
||||
return NO;
|
||||
return ![self pluginWithBundleIdentifier:bundle.bundleIdentifier];
|
||||
}
|
||||
|
||||
- (BOOL)_isCompatiblePluginBundle:(NSBundle *)bundle avaiablePlugins:(NSArray<MPPluginRepositoryItem *> *)availablePlugins {
|
||||
|
||||
@@ -7,12 +7,11 @@
|
||||
//
|
||||
|
||||
#import "MPPluginRepositoryBrowserViewController.h"
|
||||
#import "MPPlugin.h"
|
||||
#import "MPPluginHost.h"
|
||||
#import "MPPluginRepository.h"
|
||||
#import "MPPluginRepositoryItem.h"
|
||||
|
||||
NSString *MPPluginBrowserColumnName = @"MPPluginBrowserColumnName";
|
||||
NSString *MPPluginBrowserColumnCurrentVersion = @"MPPluginBrowserColumnCurrentVersion";
|
||||
NSString *MPPluginBrowserColumnInstalledVersion = @"MPPluginBrowserColumnInstalledVersion";
|
||||
#import "MPPluginBrowserTableCellView.h"
|
||||
|
||||
@interface MPPluginRepositoryBrowserViewController () <NSTableViewDelegate, NSTableViewDataSource>
|
||||
|
||||
@@ -28,11 +27,6 @@ NSString *MPPluginBrowserColumnInstalledVersion = @"MPPluginBrowserColumnInstall
|
||||
}
|
||||
|
||||
- (void)viewDidLoad {
|
||||
|
||||
self.itemTable.tableColumns[0].identifier = MPPluginBrowserColumnName;
|
||||
self.itemTable.tableColumns[1].identifier = MPPluginBrowserColumnCurrentVersion;
|
||||
self.itemTable.tableColumns[2].identifier = MPPluginBrowserColumnInstalledVersion;
|
||||
|
||||
[super viewDidLoad];
|
||||
[self _refreshRepository];
|
||||
}
|
||||
@@ -50,20 +44,22 @@ NSString *MPPluginBrowserColumnInstalledVersion = @"MPPluginBrowserColumnInstall
|
||||
}
|
||||
|
||||
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
|
||||
|
||||
MPPluginBrowserTableCellView *view = [tableView makeViewWithIdentifier:tableColumn.identifier owner:self];
|
||||
MPPluginRepositoryItem *item = self.repositoryItems.firstObject;
|
||||
if([tableColumn.identifier isEqualToString:MPPluginBrowserColumnName]) {
|
||||
NSTableCellView *view = [tableView makeViewWithIdentifier:@"NameCellView" owner:self];
|
||||
view.textField.stringValue = item.name;
|
||||
return view;
|
||||
view.textField.stringValue = item.name;
|
||||
|
||||
MPPlugin *plugin = [MPPluginHost.sharedHost pluginWithBundleIdentifier:item.bundleIdentifier];
|
||||
if(plugin) {
|
||||
if([plugin.humanVersionString isEqualToString:item.currentVersion]) {
|
||||
view.statusTextField.stringValue = [NSString stringWithFormat:NSLocalizedString(@"INSTALLED_VERSION_%@_(UP_TO_DATE)", "Info displayed when an installed plugin is up to date"), plugin.humanVersionString];
|
||||
}
|
||||
else {
|
||||
view.statusTextField.stringValue = [NSString stringWithFormat:NSLocalizedString(@"CURRENT_VERSION_%@_(INSTALLED_VERSION_%@)", "Info displayed when a plugin is loaded and "), item.currentVersion, plugin.humanVersionString];
|
||||
}
|
||||
}
|
||||
if([tableColumn.identifier isEqualToString:MPPluginBrowserColumnCurrentVersion]) {
|
||||
NSTableCellView *view = [tableView makeViewWithIdentifier:@"CurrentVersionCellView" owner:self];
|
||||
view.textField.stringValue = item.currentVersion;
|
||||
return view;
|
||||
else {
|
||||
view.statusTextField.stringValue = [NSString stringWithFormat:NSLocalizedString(@"CURRENT_VERSION_%@_(NOT_INSTALLED)", "Info displayed when an plugin is not installed"), plugin.humanVersionString];
|
||||
}
|
||||
NSTableCellView *view = [tableView makeViewWithIdentifier:@"InstalledVersionCellView" owner:self];
|
||||
view.textField.stringValue = item.descriptionText;
|
||||
return view;
|
||||
|
||||
}
|
||||
|
||||
@@ -24,6 +24,6 @@
|
||||
|
||||
@interface MPPluginTabelCellView : NSTableCellView
|
||||
|
||||
@property (weak) IBOutlet NSTextField *addionalTextField;
|
||||
@property (strong) IBOutlet NSTextField *addionalTextField;
|
||||
|
||||
@end
|
||||
|
||||
@@ -24,4 +24,9 @@
|
||||
|
||||
@implementation MPPluginTabelCellView
|
||||
|
||||
- (void)setBackgroundStyle:(NSBackgroundStyle)backgroundStyle {
|
||||
super.backgroundStyle = backgroundStyle;
|
||||
self.addionalTextField.cell.backgroundStyle = backgroundStyle;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@@ -18,20 +18,20 @@
|
||||
<rect key="frame" x="0.0" y="0.0" width="440" height="513"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||
<subviews>
|
||||
<scrollView autohidesScrollers="YES" horizontalLineScroll="19" horizontalPageScroll="10" verticalLineScroll="19" verticalPageScroll="10" usesPredominantAxisScrolling="NO" translatesAutoresizingMaskIntoConstraints="NO" id="V1g-KK-vjw">
|
||||
<scrollView autohidesScrollers="YES" horizontalLineScroll="41" horizontalPageScroll="10" verticalLineScroll="41" verticalPageScroll="10" usesPredominantAxisScrolling="NO" translatesAutoresizingMaskIntoConstraints="NO" id="V1g-KK-vjw">
|
||||
<rect key="frame" x="20" y="61" width="400" height="432"/>
|
||||
<clipView key="contentView" id="Sqy-VI-iH4">
|
||||
<rect key="frame" x="1" y="0.0" width="398" height="431"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<tableView verticalHuggingPriority="750" allowsExpansionToolTips="YES" columnAutoresizingStyle="lastColumnOnly" columnReordering="NO" multipleSelection="NO" autosaveColumns="NO" rowSizeStyle="automatic" headerView="uVe-04-Now" viewBased="YES" id="gDR-Fx-c0h">
|
||||
<tableView verticalHuggingPriority="750" allowsExpansionToolTips="YES" columnAutoresizingStyle="lastColumnOnly" alternatingRowBackgroundColors="YES" columnReordering="NO" columnResizing="NO" multipleSelection="NO" autosaveColumns="NO" rowHeight="39" rowSizeStyle="automatic" headerView="uVe-04-Now" viewBased="YES" id="gDR-Fx-c0h">
|
||||
<rect key="frame" x="0.0" y="0.0" width="398" height="408"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<size key="intercellSpacing" width="3" height="2"/>
|
||||
<color key="backgroundColor" name="controlBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||
<color key="gridColor" name="gridColor" catalog="System" colorSpace="catalog"/>
|
||||
<tableColumns>
|
||||
<tableColumn width="124" minWidth="40" maxWidth="1000" id="qP8-eW-n9j">
|
||||
<tableColumn width="395" minWidth="40" maxWidth="1000" id="qP8-eW-n9j">
|
||||
<tableHeaderCell key="headerCell" lineBreakMode="truncatingTail" borderStyle="border" title="Name">
|
||||
<font key="font" metaFont="smallSystem"/>
|
||||
<color key="textColor" name="headerTextColor" catalog="System" colorSpace="catalog"/>
|
||||
@@ -44,88 +44,39 @@
|
||||
</textFieldCell>
|
||||
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
|
||||
<prototypeCellViews>
|
||||
<tableCellView identifier="NameCellView" id="67K-DS-g25">
|
||||
<rect key="frame" x="1" y="1" width="124" height="17"/>
|
||||
<tableCellView id="67K-DS-g25" customClass="MPPluginBrowserTableCellView">
|
||||
<rect key="frame" x="1" y="1" width="146" height="39"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="LS1-kl-Nlg">
|
||||
<rect key="frame" x="0.0" y="0.0" width="124" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
|
||||
<textFieldCell key="cell" lineBreakMode="truncatingTail" sendsActionOnEndEditing="YES" title="Table View Cell" id="fGy-c8-mXg">
|
||||
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="h6O-OE-fLL">
|
||||
<rect key="frame" x="0.0" y="22" width="146" height="17"/>
|
||||
<textFieldCell key="cell" lineBreakMode="truncatingTail" sendsActionOnEndEditing="YES" title="Name" id="PUE-Ry-tVv">
|
||||
<font key="font" metaFont="system"/>
|
||||
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
|
||||
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
|
||||
</textFieldCell>
|
||||
</textField>
|
||||
</subviews>
|
||||
<connections>
|
||||
<outlet property="textField" destination="LS1-kl-Nlg" id="ffz-9R-nz9"/>
|
||||
</connections>
|
||||
</tableCellView>
|
||||
</prototypeCellViews>
|
||||
</tableColumn>
|
||||
<tableColumn width="112" minWidth="10" maxWidth="3.4028234663852886e+38" id="xwz-Ka-TIh">
|
||||
<tableHeaderCell key="headerCell" lineBreakMode="truncatingTail" borderStyle="border" alignment="left" title="Current Version">
|
||||
<font key="font" metaFont="smallSystem"/>
|
||||
<color key="textColor" name="headerTextColor" catalog="System" colorSpace="catalog"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||
</tableHeaderCell>
|
||||
<textFieldCell key="dataCell" lineBreakMode="truncatingTail" selectable="YES" editable="YES" alignment="left" title="Text Cell" id="Gzp-74-qk9">
|
||||
<font key="font" metaFont="system"/>
|
||||
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
|
||||
<color key="backgroundColor" name="controlBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||
</textFieldCell>
|
||||
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
|
||||
<prototypeCellViews>
|
||||
<tableCellView identifier="CurrentVersionCellView" id="4ru-Vq-zSo">
|
||||
<rect key="frame" x="128" y="1" width="112" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="b4M-Vw-5Xt">
|
||||
<rect key="frame" x="0.0" y="0.0" width="112" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
|
||||
<textFieldCell key="cell" lineBreakMode="truncatingTail" sendsActionOnEndEditing="YES" title="Table View Cell" id="IHy-3y-4f5">
|
||||
<font key="font" metaFont="system"/>
|
||||
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
|
||||
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
|
||||
<textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="gCh-ar-0UC">
|
||||
<rect key="frame" x="0.0" y="0.0" width="146" height="14"/>
|
||||
<textFieldCell key="cell" controlSize="small" lineBreakMode="clipping" title="Status" id="x8t-gZ-784">
|
||||
<font key="font" metaFont="smallSystem"/>
|
||||
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||
</textFieldCell>
|
||||
</textField>
|
||||
</subviews>
|
||||
<constraints>
|
||||
<constraint firstAttribute="bottom" secondItem="gCh-ar-0UC" secondAttribute="bottom" id="55S-5j-iht"/>
|
||||
<constraint firstItem="h6O-OE-fLL" firstAttribute="top" secondItem="67K-DS-g25" secondAttribute="top" id="Agb-MB-rhd"/>
|
||||
<constraint firstItem="gCh-ar-0UC" firstAttribute="top" secondItem="h6O-OE-fLL" secondAttribute="bottom" constant="8" symbolic="YES" id="Ger-4c-w32"/>
|
||||
<constraint firstItem="gCh-ar-0UC" firstAttribute="trailing" secondItem="h6O-OE-fLL" secondAttribute="trailing" id="InW-1F-uHj"/>
|
||||
<constraint firstAttribute="trailing" secondItem="h6O-OE-fLL" secondAttribute="trailing" constant="2" id="V6g-nx-J5c"/>
|
||||
<constraint firstItem="h6O-OE-fLL" firstAttribute="leading" secondItem="67K-DS-g25" secondAttribute="leading" constant="2" id="gGk-kh-DJE"/>
|
||||
<constraint firstItem="gCh-ar-0UC" firstAttribute="leading" secondItem="h6O-OE-fLL" secondAttribute="leading" id="uW4-3v-OJB"/>
|
||||
</constraints>
|
||||
<connections>
|
||||
<outlet property="textField" destination="b4M-Vw-5Xt" id="vbR-aL-vZh"/>
|
||||
</connections>
|
||||
</tableCellView>
|
||||
</prototypeCellViews>
|
||||
</tableColumn>
|
||||
<tableColumn identifier="InstalledVersionCellView" width="109" minWidth="10" maxWidth="3.4028234663852886e+38" id="mb4-uD-bVk">
|
||||
<tableHeaderCell key="headerCell" lineBreakMode="truncatingTail" borderStyle="border" alignment="left" title="Installed Version">
|
||||
<font key="font" metaFont="smallSystem"/>
|
||||
<color key="textColor" name="headerTextColor" catalog="System" colorSpace="catalog"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||
</tableHeaderCell>
|
||||
<textFieldCell key="dataCell" lineBreakMode="truncatingTail" selectable="YES" editable="YES" alignment="left" title="Text Cell" id="Kl6-i5-XNe">
|
||||
<font key="font" metaFont="system"/>
|
||||
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
|
||||
<color key="backgroundColor" name="controlBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||
</textFieldCell>
|
||||
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
|
||||
<prototypeCellViews>
|
||||
<tableCellView id="hzK-ST-sjE">
|
||||
<rect key="frame" x="243" y="1" width="109" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="cLf-rq-sQD">
|
||||
<rect key="frame" x="0.0" y="0.0" width="109" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
|
||||
<textFieldCell key="cell" lineBreakMode="truncatingTail" sendsActionOnEndEditing="YES" title="Table View Cell" id="Exn-N8-cbq">
|
||||
<font key="font" metaFont="system"/>
|
||||
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
|
||||
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
|
||||
</textFieldCell>
|
||||
</textField>
|
||||
</subviews>
|
||||
<connections>
|
||||
<outlet property="textField" destination="cLf-rq-sQD" id="Yjb-eE-Uhc"/>
|
||||
<outlet property="statusTextField" destination="gCh-ar-0UC" id="SsZ-8C-G5H"/>
|
||||
<outlet property="textField" destination="h6O-OE-fLL" id="aWF-6i-YlN"/>
|
||||
</connections>
|
||||
</tableCellView>
|
||||
</prototypeCellViews>
|
||||
@@ -187,7 +138,7 @@
|
||||
<constraint firstItem="Pkh-la-7FU" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="bGv-Zc-Vrk" secondAttribute="trailing" constant="12" symbolic="YES" id="lUQ-jf-KWR"/>
|
||||
<constraint firstItem="bGv-Zc-Vrk" firstAttribute="leading" secondItem="Hz6-mo-xeY" secondAttribute="leading" constant="20" id="tk3-kF-k22"/>
|
||||
</constraints>
|
||||
<point key="canvasLocation" x="-377" y="110"/>
|
||||
<point key="canvasLocation" x="-377" y="109.5"/>
|
||||
</customView>
|
||||
</objects>
|
||||
</document>
|
||||
|
||||
Reference in New Issue
Block a user