37#include <QDomDocument>
551 void setColorTheme(
const std::shared_ptr<ColorTheme> pNewColorTheme );
572#if defined(H2CORE_HAVE_OSC) || _DOXYGEN_
673 const std::shared_ptr<Theme>
getTheme()
const;
674 void setTheme(
const std::shared_ptr<Theme> pTheme );
733#if defined(H2CORE_HAVE_OSC) || _DOXYGEN_
1001 return m_pTheme->getInterfaceTheme()->m_layout;
1005 m_pTheme->getInterfaceTheme()->m_layout = layout;
1009 return m_pTheme->getInterfaceTheme()->m_scalingPolicy;
1013 m_pTheme->getInterfaceTheme()->m_scalingPolicy = scalingPolicy;
1017 return m_pTheme->getInterfaceTheme()->m_iconColor;
1021 m_pTheme->getInterfaceTheme()->m_iconColor = iconColor;
1159 return m_pTheme->getInterfaceTheme()->m_sQTStyle;
1162 m_pTheme->getInterfaceTheme()->m_sQTStyle = sStyle;
1165 return m_pTheme->getFontTheme()->m_sApplicationFontFamily;
1168 m_pTheme->getFontTheme()->m_sApplicationFontFamily = family;
1172 return m_pTheme->getFontTheme()->m_sLevel2FontFamily;
1175 m_pTheme->getFontTheme()->m_sLevel2FontFamily = family;
1179 return m_pTheme->getFontTheme()->m_sLevel3FontFamily;
1182 m_pTheme->getFontTheme()->m_sLevel3FontFamily = family;
1186 return m_pTheme->getFontTheme()->m_fontSize;
1189 m_pTheme->getFontTheme()->m_fontSize = fontSize;
1193 return m_pTheme->getInterfaceTheme()->m_fMixerFalloffSpeed;
1196 m_pTheme->getInterfaceTheme()->m_fMixerFalloffSpeed = value;
1261 m_pTheme->getInterfaceTheme()->m_patternColors = patternColors;
1264 return m_pTheme->getInterfaceTheme()->m_patternColors;
1267 m_pTheme->getInterfaceTheme()->m_nVisiblePatternColors = nValue;
1270 return m_pTheme->getInterfaceTheme()->m_nVisiblePatternColors;
1273 m_pTheme->getInterfaceTheme()->m_nMaxPatternColors = nValue;
1276 return m_pTheme->getInterfaceTheme()->m_nMaxPatternColors;
1280 m_pTheme->getInterfaceTheme()->m_coloringMethod = coloringMethod;
1284 return m_pTheme->getInterfaceTheme()->m_coloringMethod;
1355 m_pTheme->setColorTheme( pNewColorTheme );
1389#if defined(H2CORE_HAVE_OSC) || _DOXYGEN_
FontSize
Enables custom scaling of the font size in the GUI.
Manager for User Preferences File (singleton)
void setMaxBars(const int bars)
float getMixerFalloffSpeed()
WindowProperties audioEngineInfoProperties
void writeWindowProperties(XMLNode parent, const QString &windowName, const WindowProperties &prop)
Write the xml nodes related to window properties.
void setRestoreLastPlaylistEnabled(bool restore)
bool m_bShowAutomationArea
QString getLastImportDrumkitDirectory() const
QString m_sPortAudioDevice
WindowProperties getAudioEngineInfoProperties()
QString m_sLastExportPatternAsDirectory
bool isPlaylistUsingRelativeFilenames()
void setLastExportMidiDirectory(QString sPath)
void setRecentFiles(const std::vector< QString > recentFiles)
void setOscFeedbackEnabled(bool val)
bool m_bShowExportDrumkitAttributionWarning
void setPatternEditorGridHeight(unsigned value)
bool m_bShowInstrumentPeaks
QString getLastSaveSongAsDirectory() const
unsigned getSongEditorGridHeight()
WindowProperties m_playlistDialogProperties
QString m_sDefaultEditor
Default text editor (used by Playlisteditor)
bool inPunchArea(int pos)
void setPatternColors(std::vector< QColor > patternColors)
void setHearNewNotes(bool value)
bool getShowDevelWarning()
QString getLastPlaylistScriptDirectory() const
bool __useTimelineBpm
Whether to use local speeds specified along the Timeline or a constant tempo for the whole Song in Hy...
int getExportSampleDepthIdx() const
void setLastAddSongToPlaylistDirectory(QString sPath)
void setShowAutomationArea(bool value)
void setMidiExportMode(int nExportMode)
JackTrackOutputMode m_JackTrackOutputMode
Specifies which audio settings will be applied to the sample supplied in the JACK per track output po...
bool m_bUseRelativeFilenamesForPlaylists
void setHideKeyboardCursor(bool b)
static Preferences * get_instance()
Returns a pointer to the current Preferences singleton stored in __instance.
const QString & getLastSongFilename()
QString getLastExportPatternAsDirectory() const
void setLadspaProperties(unsigned nFX, const WindowProperties &prop)
WindowProperties songEditorProperties
bool __playselectedinstrument
void setMixerProperties(const WindowProperties &prop)
void setExportTemplateIdx(int nExportTemplateIdx)
void setPatternEditorProperties(const WindowProperties &prop)
int getExportSampleRateIdx() const
void setShowPlaybackTrack(bool val)
void setLastOpenTab(int n)
bool m_bOscFeedbackEnabled
Whether to send the current state of Hydrogen to the OSC clients.
WindowProperties getMainFormProperties()
void setQTStyle(const QString &sStyle)
const QString & getApplicationFontFamily() const
void setLastPlaylistDirectory(QString sPath)
int getExportModeIdx() const
void setMostRecentFX(QString)
void setLastExportLilypondDirectory(QString sPath)
void setSongEditorProperties(const WindowProperties &prop)
std::vector< QString > m_recentFiles
const QString & getQTStyle()
QString getLastAddSongToPlaylistDirectory() const
QString getLastExportLilypondDirectory() const
void setPatternEditorUsingTriplets(bool value)
void setExportModeIdx(int nExportMode)
int m_bJackMasterMode
Specifies if Hydrogen should run as JACK time master.
WindowProperties mixerProperties
unsigned m_nPatternEditorGridWidth
QString m_sAudioDriver
Audio driver.
const std::shared_ptr< ColorTheme > getColorTheme() const
QStringList getRecentFX()
unsigned m_nSampleRate
Sample rate of the audio.
bool m_bShowNoteOverwriteWarning
Last song used.
bool hideKeyboardCursor()
void setShowDevelWarning(bool value)
void setTheme(const std::shared_ptr< Theme > pTheme)
WindowProperties instrumentRackProperties
QString m_sPortAudioHostAPI
void setLastImportThemeDirectory(QString sPath)
QString getLastOpenSongDirectory() const
void setLastOpenLayerDirectory(QString sPath)
void setMaxLayers(const int layers)
bool savePreferences()
Save the preferences file.
bool m_bPatternEditorUsingTriplets
int getExportTemplateIdx() const
bool m_bEnableMidiFeedback
void setVisiblePatternColors(int nValue)
int getPatternEditorGridResolution()
void setColoringMethod(InterfaceTheme::ColoringMethod coloringMethod)
const QString & getLevel3FontFamily() const
void setIconColor(InterfaceTheme::IconColor iconColor)
QString getH2ProcessName()
void setDefaultEditor(QString editor)
void setFXTabVisible(bool value)
void setInstrumentRackProperties(const WindowProperties &prop)
bool isPatternEditorUsingTriplets()
InterfaceTheme::Layout getDefaultUILayout()
WindowProperties getDirectorProperties()
bool m_bOscServerEnabled
Whether to start the OscServer thread.
void setSongEditorGridWidth(unsigned value)
QString m_sMidiOutputPortName
unsigned m_nSongEditorGridHeight
void setLastPlaylistScriptDirectory(QString sPath)
void setInstrumentPeaks(bool value)
void setApplicationFontFamily(const QString &family)
QString m_sLastImportDrumkitDirectory
void setRubberBandBatchMode(int val)
unsigned getPatternEditorGridHeight()
QString getLastOpenPatternDirectory() const
void setExportSampleDepthIdx(int nExportSampleDepthIdx)
QString m_sLastExportSongDirectory
QString m_sLastOpenPatternDirectory
void setPunchInPos(unsigned pos)
static void create_instance()
If __instance equals 0, a new Preferences singleton will be created and stored in it.
int m_nMaxLayers
Maximum number of layers to be used in the Instrument editor.
unsigned m_nPatternEditorGridHeight
int getMaxPatternColors() const
void setLastExportSongDirectory(QString sPath)
WindowProperties m_directorProperties
void setExportSampleRateIdx(int nExportSampleRateIdx)
void setLevel3FontFamily(const QString &family)
void setDirectorProperties(const WindowProperties &prop)
void setShowNoteOverwriteWarning(bool bValue)
const QString & getDataDirectory()
void setPlaylistDialogProperties(const WindowProperties &prop)
InterfaceTheme::IconColor getIconColor()
void setUseRelativeFilenamesForPlaylists(bool value)
QString m_sMidiDriver
MIDI driver.
WindowProperties getMixerProperties()
void setPreferencesOverwritePath(const QString &newPath)
Setting m_sPreferencesOverwritePath.
QString m_lastSongFilename
QString getNsmSongName(void)
unsigned m_nSongEditorGridWidth
void setLastOpenSongDirectory(QString sPath)
int m_nExportSampleRateIdx
int getMidiExportMode() const
bool getShowNoteOverwriteWarning()
bool m_bShowExportDrumkitCopyleftWarning
bool showInstrumentPeaks()
QString m_lastPlaylistFilename
void setNsmClientId(const QString &nsmClientId)
QString m_sLastExportThemeDirectory
bool getWaitForSessionHandler()
bool isRestoreLastSongEnabled()
bool isRestoreLastPlaylistEnabled()
void setLastOpenPatternDirectory(QString sPath)
bool m_bLoadingSuccessful
void setMainFormProperties(const WindowProperties &prop)
void setAudioEngineInfoProperties(const WindowProperties &prop)
std::list< QString > sServerList
JackTrackOutputMode
Specifies which audio settings will be applied to the sample supplied in the JACK per track output po...
@ postFader
Applies layer, component, and instrument gain, note and instrument pan, note velocity,...
@ preFader
Only layer gain and note velocity will be applied to the samples.
bool getOscServerEnabled()
bool loadPreferences(bool bGlobal)
Load the preferences file.
int m_nPatternEditorGridResolution
bool getUseTimelineBpm()
Whether to use the bpm of the timeline.
std::vector< QString > getRecentFiles() const
const QString & getLastPlaylistFilename()
bool waitingForSessionHandler
QString m_sLastExportDrumkitDirectory
QString m_sLastExportMidiDirectory
void setLastExportDrumkitDirectory(QString sPath)
QString m_sLastImportThemeDirectory
int getRubberBandBatchMode()
void setColorTheme(const std::shared_ptr< ColorTheme > pNewColorTheme)
std::list< QString > m_patternCategories
QString getLastImportThemeDirectory() const
FontTheme::FontSize getFontSize() const
const QString & getPreferredLanguage()
bool m_bJackConnectDefaults
Toggles auto-connecting of the main stereo output ports to the system's default ports when starting t...
const QString & getDefaultEditor()
QString m_sPreferencesOverwritePath
Full path to local preferences file.
bool getLoadingSuccessful() const
unsigned m_nMaxNotes
max notes
void setLastSongFilename(const QString &filename)
bool readPrefFileforotherplaces
QString getLastExportMidiDirectory() const
void setSongEditorGridHeight(unsigned value)
const std::shared_ptr< Theme > getTheme() const
bool m_bUseLash
Show development version warning?
bool getShowAutomationArea()
QString getLastExportSongDirectory() const
Changes
Bitwise or-able options showing which part of the Preferences were altered using the PreferencesDialo...
@ GeneralTab
Any option in the General tab appeared.
@ AppearanceTab
Any option in the Appearance tab excluding colors, font size, or font family.
@ Font
Either the font size or font family have changed.
@ Colors
At least one of the colors has changed.
@ OscTab
Any option in the OSC tab appeared.
@ MidiTab
Any option in the MIDI tab appeared.
@ AudioTab
Any option in the Audio tab appeared.
void setPreferredLanguage(const QString &sLanguage)
void setPunchOutPos(unsigned pos)
QString getLastOpenLayerDirectory() const
void setOscServerPort(int oscPort)
QString m_sAlsaAudioDevice
void setOscServerEnabled(bool val)
void setFontSize(FontTheme::FontSize fontSize)
QString m_sCoreAudioDevice
bool getShowPlaybackTrack() const
bool __playsamplesonclicking
InterfaceTheme::ColoringMethod getColoringMethod() const
bool m_bMidiDiscardNoteAfterAction
void setPatternEditorGridResolution(int value)
bool m_useTheRubberbandBpmChangeEvent
rubberband bpm change queue
bool m_bUseMetronome
If set to true, samples of the metronome will be added to H2Core::AudioEngine::m_songNoteQueue and th...
void setQuantizeEvents(bool value)
QString m_sLastOpenLayerDirectory
WindowProperties mainFormProperties
void setLastSaveSongAsDirectory(QString sPath)
void setUseTimelineBpm(bool val)
Setting __useTimelineBpm.
QString m_sOSSDevice
Device used for output.
InterfaceTheme::ScalingPolicy getUIScalingPolicy()
bool m_bMidiNoteOffIgnore
std::vector< QColor > getPatternColors() const
QString getLastExportThemeDirectory() const
QString m_sLastSaveSongAsDirectory
bool m_brestoreLastPlaylist
void setNsmSongName(const QString &nsmSongName)
QString m_rubberBandCLIexecutable
Rubberband CLI.
QString m_sLastAddSongToPlaylistDirectory
JackBBTSyncMethod m_JackBBTSync
Since Hydrogen uses both fixed pattern lengths and recalculates the tick size each time it encounters...
void setLastImportDrumkitDirectory(QString sPath)
void setRestoreLastSongEnabled(bool restore)
int m_nExportSampleDepthIdx
void setLastExportThemeDirectory(QString sPath)
void setLastOpenPlaybackTrackDirectory(QString sPath)
QString getLastOpenPlaybackTrackDirectory() const
WindowProperties patternEditorProperties
WindowProperties getPatternEditorProperties()
void setMaxPatternColors(int nValue)
WindowProperties getLadspaProperties(unsigned nFX)
bool m_bJackTimebaseEnabled
External applications with a faulty JACK timebase master implementation can mess up the transport wit...
void setDefaultUILayout(InterfaceTheme::Layout layout)
JackBBTSyncMethod
Specifies the variable, which has to remain constant in order to guarantee a working synchronization ...
@ constMeasure
The measure - could be any - does not change during the song.
@ identicalBars
The length of each pattern must match the measure of the corresponding bar in the timebase master.
bool getOscFeedbackEnabled()
const QString & getLevel2FontFamily() const
int m_nMaxBars
Maximum number of bars shown in the Song Editor at once.
WindowProperties getInstrumentRackProperties()
QString m_sLastPlaylistScriptDirectory
QString getNsmClientId(void)
bool m_bShowExportSongLicenseWarning
@ NO_JACK_TRANSPORT
Specifies whether or not to use JACK transport capabilities.
@ USE_JACK_TIME_MASTER
Specifies that Hydrogen is using in the time master mode and will thus control specific aspects of th...
@ NO_JACK_TIME_MASTER
Specifies that Hydrogen is note using in the time master mode.
@ USE_JACK_TRANSPORT
Specifies whether or not to use JACK transport capabilities.
int getVisiblePatternColors() const
float m_fMetronomeVolume
Metronome volume FIXME: remove this volume!!
QString m_sLastExportLilypondDirectory
void setMixerFalloffSpeed(float value)
int m_nOscTemporaryPort
In case m_nOscServerPort is already occupied by another client, the alternative - random - port numbe...
WindowProperties readWindowProperties(XMLNode parent, const QString &windowName, WindowProperties defaultProp)
Read the xml nodes related to window properties.
bool m_bShowExportDrumkitLicenseWarning
static QString getNullMidiPort()
Choice of m_sMidiPortName and m_sMidiOutputPortName in case no port/device was selected.
WindowProperties getSongEditorProperties()
static Preferences * __instance
Object holding the current Preferences singleton.
int m_nOscServerPort
Port number the OscServer will be started at.
bool m_bJackTrackOuts
If set to true, JackAudioDriver::makeTrackOutputs() will create two individual left and right output ...
void setLevel2FontFamily(const QString &family)
unsigned getPatternEditorGridWidth()
void setH2ProcessName(const QString &processName)
int m_bJackTransportMode
Specifies whether or not Hydrogen will use the JACK transport system.
QString m_sPreferredLanguage
QString m_sLastOpenSongDirectory
bool m_bShowPlaybackTrack
QString getLastExportDrumkitDirectory() const
std::shared_ptr< Theme > m_pTheme
void setRecordEvents(bool value)
void setLastPlaylistFilename(const QString &filename)
WindowProperties getPlaylistDialogProperties()
unsigned m_nBufferSize
Buffer size of the audio.
unsigned getSongEditorGridWidth()
QString getLastPlaylistDirectory() const
QString m_sLastPlaylistDirectory
void setUIScalingPolicy(InterfaceTheme::ScalingPolicy policy)
void setWaitForSessionHandler(bool value)
QString getPreferencesOverwritePath()
Returns m_sPreferencesOverwritePath.
bool m_bHideKeyboardCursor
void setLastExportPatternAsDirectory(QString sPath)
QString m_sLastOpenPlaybackTrackDirectory
void setPatternEditorGridWidth(unsigned value)
WindowProperties m_ladspaProperties[MAX_FX]
void set(int _x, int _y, int _width, int _height, bool _visible, QByteArray geometry=QByteArray())
XMLNode is a subclass of QDomNode with read and write values methods.
#define MAX_FX
Maximum number of effects.