Browse Source

Changed the VST version number to be parsed as base-10 rather than base-16.

tags/2021-05-28
jules 12 years ago
parent
commit
aa0eb1a75d
4 changed files with 24 additions and 5 deletions
  1. +1
    -1
      extras/Introjucer/Source/Project/jucer_AudioPluginModule.h
  2. +20
    -2
      extras/Introjucer/Source/Project/jucer_Project.cpp
  3. +1
    -0
      extras/Introjucer/Source/Project/jucer_Project.h
  4. +2
    -2
      modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp

+ 1
- 1
extras/Introjucer/Source/Project/jucer_AudioPluginModule.h View File

@@ -123,7 +123,7 @@ namespace
flags.set ("JucePlugin_TailLengthSeconds", String (static_cast <double> (getPluginTailLengthSeconds (project).getValue())));
flags.set ("JucePlugin_EditorRequiresKeyboardFocus", valueToBool (getPluginEditorNeedsKeyFocus (project)));
flags.set ("JucePlugin_Version", project.getVersionString());
flags.set ("JucePlugin_VersionCode", project.getVersionAsHex());
flags.set ("JucePlugin_VersionCode", project.getVersionAsDecimal());
flags.set ("JucePlugin_VersionString", project.getVersionString().quoted());
flags.set ("JucePlugin_VSTUniqueID", "JucePlugin_PluginCode");
flags.set ("JucePlugin_VSTCategory", static_cast <bool> (getPluginIsSynth (project).getValue()) ? "kPlugCategSynth" : "kPlugCategEffect");


+ 20
- 2
extras/Introjucer/Source/Project/jucer_Project.cpp View File

@@ -382,12 +382,18 @@ void Project::createPropertyEditors (PropertyListBuilder& props)
"Extra comments: This field is not used for code or project generation, it's just a space where you can express your thoughts.");
}
String Project::getVersionAsHex() const
static StringArray getConfigs (const Project& p)
{
StringArray configs;
configs.addTokens (getVersionString(), ",.", String::empty);
configs.addTokens (p.getVersionString(), ",.", String::empty);
configs.trim();
configs.removeEmptyStrings();
return configs;
}
String Project::getVersionAsHex() const
{
const StringArray configs (getConfigs (*this));
int value = (configs[0].getIntValue() << 16) + (configs[1].getIntValue() << 8) + configs[2].getIntValue();
@@ -397,6 +403,18 @@ String Project::getVersionAsHex() const
return "0x" + String::toHexString (value);
}
String Project::getVersionAsDecimal() const
{
const StringArray configs (getConfigs (*this));
int value = (configs[0].getIntValue() * 100) + (configs[1].getIntValue() * 10) + configs[2].getIntValue();
if (configs.size() >= 4)
value = (value * 10) + configs[3].getIntValue();
return String (value);
}
StringPairArray Project::getPreprocessorDefs() const
{
return parsePreprocessorDefs (projectRoot [Ids::defines]);


+ 1
- 0
extras/Introjucer/Source/Project/jucer_Project.h View File

@@ -83,6 +83,7 @@ public:
Value getVersionValue() { return getProjectValue (Ids::version); }
String getVersionString() const { return projectRoot [Ids::version]; }
String getVersionAsHex() const;
String getVersionAsDecimal() const;
Value getBundleIdentifier() { return getProjectValue (Ids::bundleIdentifier); }
String getDefaultBundleIdentifier() { return "com.yourcompany." + CodeHelpers::makeValidIdentifier (getTitle(), false, true, false); }


+ 2
- 2
modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp View File

@@ -1862,8 +1862,8 @@ private:
while (v != 0)
{
versionBits [n++] = (v & 0xff);
v >>= 8;
versionBits [n++] = v % 10;
v /= 10;
}
s << 'V';


Loading…
Cancel
Save