guitar_prometheus::AppPreferences
guitar_prometheus::AppPreferences
Persistent app-level preferences backed by juce::PropertiesFile. More…
#include <AppPreferences.h>
Public Functions
| Name | |
|---|---|
| AppPreferences() | |
| void | addToRecent(const juce::File & path) Push a project path to the front of the recent list and persist immediately. |
| void | clearRecents() Remove every entry from the recent list and persist immediately. |
| std::vector< juce::File > | recentProjects() const Read the current recent list from in-memory state. |
| juce::String | getThemePair() const Selected theme pair id (e.g. |
| void | setThemePair(const juce::String & pairId) Persist the selected theme pair id. |
| juce::String | getThemeMode() const Theme mode in its serialized string form (“light” / “dark” / “followSystem”). |
| void | setThemeMode(const juce::String & mode) Persist the theme mode in serialized string form. |
| bool | getShowBundledPresets() const |
| void | setShowBundledPresets(bool show) |
| juce::String | getColumnState() const |
| void | setColumnState(const juce::String & state) |
| bool | getShowUnmappedForBundled(const juce::Uuid & profileId) const Per-bundled-profile editor preference. |
| void | setShowUnmappedForBundled(const juce::Uuid & profileId, bool show) |
Public Attributes
| Name | |
|---|---|
| constexpr int | kMaxRecents Maximum number of recent project paths kept on disk. |
Detailed Description
class guitar_prometheus::AppPreferences;Persistent app-level preferences backed by juce::PropertiesFile.
Settings live at ~/Library/Application Support/Guitar Prometheus/preferences.settings (macOS) or the platform equivalent. The file is created on first save; missing-file load is treated as “no recents yet”. Currently exposes only the recently-opened-projects list, but additional simple key/value pairs can ride the same PropertiesFile when needed.
Public Functions Documentation
function AppPreferences
AppPreferences()function addToRecent
void addToRecent( const juce::File & path)Push a project path to the front of the recent list and persist immediately.
Duplicate paths are deduplicated; the list is capped at kMaxRecents.
function clearRecents
void clearRecents()Remove every entry from the recent list and persist immediately.
function recentProjects
std::vector< juce::File > recentProjects() constRead the current recent list from in-memory state.
The returned vector is in most-recent-first order.
function getThemePair
juce::String getThemePair() constSelected theme pair id (e.g.
“default”, “fragmented”, “rapture”). Empty string when no value has been persisted yet — the caller should treat that as “use the first pair”.
function setThemePair
void setThemePair( const juce::String & pairId)Persist the selected theme pair id.
Pass the stable pair id, not the display name.
function getThemeMode
juce::String getThemeMode() constTheme mode in its serialized string form (“light” / “dark” / “followSystem”).
Empty when no value has been persisted yet — Theming::modeFromString handles that as FollowSystem.
function setThemeMode
void setThemeMode( const juce::String & mode)Persist the theme mode in serialized string form.
function getShowBundledPresets
bool getShowBundledPresets() constfunction setShowBundledPresets
void setShowBundledPresets( bool show)function getColumnState
juce::String getColumnState() constfunction setColumnState
void setColumnState( const juce::String & state)function getShowUnmappedForBundled
bool getShowUnmappedForBundled( const juce::Uuid & profileId) constPer-bundled-profile editor preference.
Bundled profiles are read-only on disk, so the “show unmapped techniques” toggle for them lives in app prefs keyed by profile UUID.
Default is true — every bundled profile starts with unmapped techniques visible the first time the user opens it.
function setShowUnmappedForBundled
void setShowUnmappedForBundled( const juce::Uuid & profileId, bool show)Public Attributes Documentation
variable kMaxRecents
static constexpr int kMaxRecents = 10;Maximum number of recent project paths kept on disk.
Older entries are discarded when the list grows past the limit.
Updated on 2026-05-29 at 07:39:52 +0000