Skip to content

Commit 39519c6

Browse files
committed
Hide API version in Plugin Installer
1 parent d76c49d commit 39519c6

1 file changed

Lines changed: 21 additions & 21 deletions

File tree

Source/UI/PluginInstaller.cpp

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,11 @@ String getLatestCompatibleVersionOrDefault (const var& versions)
9797
return "0.0.0-API" + String (PLUGIN_API_VER);
9898
}
9999

100+
String getDisplayVersion (const String& version)
101+
{
102+
return version.upToFirstOccurrenceOf ("-API", false, false);
103+
}
104+
100105
bool parseGatewayCatalog (PluginCatalog& catalog, String& errorMessage)
101106
{
102107
const auto response = URL (pluginGatewayUrl).readEntireTextStream();
@@ -719,7 +724,6 @@ class PluginNameCell : public Component
719724
linkButton.setURL (hasDocs ? URL (pluginInfo.docURL) : URL());
720725
linkButton.setFont (linkFont, false, Justification::centredLeft);
721726

722-
updateColours();
723727
resized();
724728
repaint();
725729
}
@@ -744,16 +748,7 @@ class PluginNameCell : public Component
744748
linkButton.changeWidthToFitText();
745749
}
746750

747-
void colourChanged() override
748-
{
749-
updateColours();
750-
}
751-
752751
private:
753-
void updateColours()
754-
{
755-
linkButton.setColour (HyperlinkButton::textColourId, findColour (ThemeColours::defaultText));
756-
}
757752

758753
HyperlinkButton linkButton;
759754
String displayName;
@@ -773,20 +768,26 @@ class PluginVersionCell : public Component
773768
versionMenu.setTextWhenNoChoicesAvailable ("- N/A -");
774769
versionMenu.onChange = [this]
775770
{
776-
if (onVersionChanged != nullptr)
777-
onVersionChanged (versionMenu.getText());
771+
if (onVersionChanged == nullptr)
772+
return;
773+
774+
const auto selectedIndex = versionMenu.getSelectedId() - 1;
775+
776+
if (isPositiveAndBelow (selectedIndex, versions.size()))
777+
onVersionChanged (versions[selectedIndex]);
778778
};
779779
}
780780

781781
void update (const SelectedPluginInfo& pluginInfo,
782782
std::function<void (const String&)> callback)
783783
{
784784
onVersionChanged = std::move (callback);
785+
versions = pluginInfo.versions;
785786

786787
versionMenu.clear (dontSendNotification);
787788

788789
for (int index = 0; index < pluginInfo.versions.size(); ++index)
789-
versionMenu.addItem (pluginInfo.versions[index], index + 1);
790+
versionMenu.addItem (getDisplayVersion (pluginInfo.versions[index]), index + 1);
790791

791792
const auto selectedVersion = getSelectedVersionOrFallback (pluginInfo);
792793
const auto selectedIndex = pluginInfo.versions.indexOf (selectedVersion);
@@ -804,6 +805,7 @@ class PluginVersionCell : public Component
804805

805806
private:
806807
ComboBox versionMenu;
808+
StringArray versions;
807809
std::function<void (const String&)> onVersionChanged;
808810
};
809811

@@ -1023,10 +1025,10 @@ PluginListBoxComponent::PluginListBoxComponent()
10231025
header.addColumn ("Type", typeColumn, 90, 90, 90, TableHeaderComponent::visible);
10241026
header.addColumn ("Developers", developersColumn, 150, 100, 280, regularColumnFlags);
10251027
header.addColumn ("Updated", updatedColumn, 90, 90, 90, TableHeaderComponent::visible);
1026-
header.addColumn ("Description", descriptionColumn, 250, 180, -1, regularColumnFlags);
1028+
header.addColumn ("Description", descriptionColumn, 310, 180, -1, regularColumnFlags);
10271029
header.addColumn ("Dependencies", dependenciesColumn, 120, 120, 120, TableHeaderComponent::appearsOnColumnMenu);
1028-
header.addColumn ("Installed", installedVersionColumn, 80, 80, 80, TableHeaderComponent::visible);
1029-
header.addColumn ("Version", versionSelectorColumn, 120, 120, 220, regularColumnFlags);
1030+
header.addColumn ("Installed", installedVersionColumn, 60, 60, 60, TableHeaderComponent::visible);
1031+
header.addColumn ("Version", versionSelectorColumn, 80, 80, 120, regularColumnFlags);
10301032
header.addColumn ("Action", installColumn, 60, 60, 60, TableHeaderComponent::visible);
10311033
header.addColumn ("Remove", uninstallColumn, 60, 60, 60, TableHeaderComponent::visible);
10321034
header.setSortColumnId (displayNameColumn, true);
@@ -1104,7 +1106,7 @@ void PluginListBoxComponent::paintCell (Graphics& g,
11041106
break;
11051107

11061108
case installedVersionColumn:
1107-
text = pluginInfo->installedVersion.isEmpty() ? "No" : pluginInfo->installedVersion;
1109+
text = pluginInfo->installedVersion.isEmpty() ? "No" : getDisplayVersion (pluginInfo->installedVersion);
11081110
break;
11091111

11101112
default:
@@ -1645,11 +1647,9 @@ void PluginInstallActionRunner::run()
16451647
{
16461648
LOGC ("Download Successful!");
16471649

1648-
String pluginVer = pInfo.selectedVersion.substring (0, pInfo.selectedVersion.indexOf ("-API"));
1649-
16501650
showAlertOnMessageThread (AlertWindow::InfoIcon,
16511651
"[Plugin Installer] " + pInfo.displayName,
1652-
pInfo.displayName + " v" + pluginVer + " Installed Successfully!");
1652+
pInfo.displayName + " v" + getDisplayVersion (pInfo.selectedVersion) + " Installed Successfully!");
16531653

16541654
updateUIOnMessageThread();
16551655
}
@@ -1689,7 +1689,7 @@ void PluginInstallActionRunner::run()
16891689

16901690
showAlertOnMessageThread (AlertWindow::WarningIcon,
16911691
"[Plugin Installer] " + pInfo.displayName,
1692-
pInfo.displayName + " v" + pInfo.selectedVersion
1692+
pInfo.displayName + " v" + getDisplayVersion (pInfo.selectedVersion)
16931693
+ " already exists. Please download another version.");
16941694
}
16951695
else if (dlReturnCode == XML_WRITE_ERR)

0 commit comments

Comments
 (0)