Skip to content

guitar_prometheus

guitar_prometheus

Namespaces

Name
guitar_prometheus::ScorePicker
guitar_prometheus::Theming

Classes

Name
classguitar_prometheus::AppController
Top-level state and orchestration for the running app.
classguitar_prometheus::AppPreferences
Persistent app-level preferences backed by juce::PropertiesFile.
classguitar_prometheus::ContextButton
A juce::TextButton that fires onRightClick instead of onClick when the user right-clicks (or control-clicks on macOS).
classguitar_prometheus::ExportDialog
Modal export dialog.
classguitar_prometheus::GuitarPrometheusApplication
classguitar_prometheus::JuceClipboardPort
Production ClipboardPort backed by juce::SystemClipboard.
classguitar_prometheus::MainWindow
Top-level window.
classguitar_prometheus::PianoKeyPicker
Compact MIDI keyboard widget restricted to a configurable note range.
classguitar_prometheus::ProfileEditorPanel
Modal profile editor.
classguitar_prometheus::ScoreRenderPanel
classguitar_prometheus::TempoMapPanel
Modal tempo-map editor.
classguitar_prometheus::TrackListPanel
Read-only table of the active project’s parts.
classguitar_prometheus::UnknownTechniquesBanner
A horizontal strip showing parser warnings from the most recent file load.
classguitar_prometheus::VelocityCurveEditor
Graph editor for velocityForDynamic curves.

Types

Name
enum classDropAction { OpenProject, NewProject, Reject}
Decision the MainWindow should make for a single dropped path.

Functions

Name
DropActionclassifyDroppedFile(const std::string & path)
Classify a dropped file path by its extension.

Types Documentation

enum DropAction

EnumeratorValueDescription
OpenProject
NewProject
Reject

Decision the MainWindow should make for a single dropped path.

Pure data — no JUCE types so the helper is testable from the core test target without instantiating a Component.

Functions Documentation

function classifyDroppedFile

DropAction classifyDroppedFile(
const std::string & path
)

Classify a dropped file path by its extension.

.gpproj → OpenProject. .musicxml, .xml, .gp, and .gpx → NewProject (the New Project flow takes any supported score source). Anything else, including empty paths and paths with no extension, → Reject. Comparison is case-insensitive on the extension.


Updated on 2026-05-29 at 07:39:52 +0000