com.frinika.global
Class FrinikaConfig
java.lang.Object
com.frinika.global.FrinikaConfig
public class FrinikaConfig
- extends java.lang.Object
Global settings to be stored and restored when starting the program.
In order to provide compile-time safe access to options,
a field of type "Meta" with the prefix "_" is declared for each
config option. Example:
public static Font TEXT_LANE_FONT = new Font("Arial",Font.PLAIN, 8);
public static Meta _TEXT_LANE_FONT; // field of type "Meta", value will automatically be set when class FrinikaConfig is loaded
Attach a listener, e.g.:
FrinikaConfig.addConfigListener(new ConfigListener() {
public void configurationChanged(ChangeEvent event) {
if (event.getSource() == FrinikaConfig._TEXT_LANE_FONT) { // test if it's the option we're interested in
// ...etc...
}
}
});
- Author:
- Peter Johan Salomonsen, Jens Gulden
Method Summary |
static void |
addConfigListener(ConfigListener l)
|
protected static javax.swing.JDialog |
createDialog(ProjectFrame frame)
|
static java.lang.String |
fileToString(java.io.File file)
|
static void |
fireConfigurationChangedEvent(FrinikaConfig.Meta meta)
Fire event if a public static field option has been altered. |
static java.lang.String |
fontToString(java.awt.Font font)
|
static int |
getAudioBufferLength()
|
static boolean |
getAutomaticCheckForNewVersion()
|
static java.util.Collection<java.lang.String> |
getAvailableAudioDevices()
|
static java.util.Collection<java.lang.String> |
getAvailableMidiInDevices()
|
static boolean |
getDirectMonitoring()
|
static java.lang.Object |
getFieldValue(java.lang.reflect.Field field)
|
static java.util.Vector<java.lang.String> |
getMidiInDeviceList()
|
static java.util.Properties |
getProperties()
|
static java.lang.String |
getProperty(java.lang.String key)
|
static boolean |
isTrue(java.lang.Object o)
|
static java.lang.String |
lastProjectFile()
|
static void |
load()
|
static void |
load(java.io.InputStream r)
|
static void |
loadFields(java.util.Properties p)
|
static void |
pickDirectory(ProjectFrame frame,
javax.swing.JTextField boundTextField)
|
static void |
pickFile(ProjectFrame frame,
javax.swing.JTextField boundTextField)
|
static void |
pickFile(ProjectFrame frame,
javax.swing.JTextField boundTextField,
boolean directory)
|
static void |
pickFont(ProjectFrame frame,
javax.swing.JTextField boundTextField)
|
static void |
removeConfigListener(ConfigListener l)
|
static void |
save(java.io.OutputStream w)
|
static void |
saveFields(java.util.Properties p)
|
static void |
setAudioBufferLength(int len)
|
static void |
setAutomatickCheckForNewVersion(boolean automaticCheckForNewVersion)
|
static void |
setDirectMonitoring(boolean dm)
|
static void |
setFieldValue(java.lang.reflect.Field field,
java.lang.Object o)
|
static void |
setJackAutoconnect(boolean auto)
|
static void |
setLastProjectFilename(java.lang.String filename)
|
static void |
setMidiInDeviceList(java.util.Vector<java.lang.String> list)
|
static void |
setMultiplexedAudio(boolean multiplex)
|
static void |
setProperty(java.lang.String key,
java.lang.String value)
|
static void |
showDialog(ProjectFrame frame)
|
static boolean |
store()
|
static void |
storeAndQuit()
|
static java.awt.Font |
stringToFont(java.lang.String s)
|
static java.lang.Object |
stringToValue(java.lang.String prop,
java.lang.String name,
java.lang.Class type)
|
static java.lang.String |
valueToString(java.lang.Object o,
java.lang.String name,
java.lang.Class type)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SETUP_DONE
public static boolean SETUP_DONE
_SETUP_DONE
public static FrinikaConfig.Meta _SETUP_DONE
TICKS_PER_QUARTER
public static int TICKS_PER_QUARTER
_TICKS_PER_QUARTER
public static FrinikaConfig.Meta _TICKS_PER_QUARTER
SEQUENCER_PRIORITY
public static int SEQUENCER_PRIORITY
_SEQUENCER_PRIORITY
public static FrinikaConfig.Meta _SEQUENCER_PRIORITY
AUDIO_BUFFER_LENGTH
public static int AUDIO_BUFFER_LENGTH
_AUDIO_BUFFER_LENGTH
public static FrinikaConfig.Meta _AUDIO_BUFFER_LENGTH
MIDIIN_DEVICES_LIST
public static java.lang.String MIDIIN_DEVICES_LIST
_MIDIIN_DEVICES_LIST
public static FrinikaConfig.Meta _MIDIIN_DEVICES_LIST
DIRECT_MONITORING
public static boolean DIRECT_MONITORING
_DIRECT_MONITORING
public static FrinikaConfig.Meta _DIRECT_MONITORING
MULTIPLEXED_AUDIO
public static boolean MULTIPLEXED_AUDIO
_MULTIPLEXED_AUDIO
public static FrinikaConfig.Meta _MULTIPLEXED_AUDIO
BIG_ENDIAN
public static boolean BIG_ENDIAN
_BIG_ENDIAN
public static FrinikaConfig.Meta _BIG_ENDIAN
sampleRate
public static int sampleRate
_sampleRate
public static FrinikaConfig.Meta _sampleRate
JACK_AUTO_CONNECT
public static boolean JACK_AUTO_CONNECT
_JACK_AUTO_CONNECT
public static FrinikaConfig.Meta _JACK_AUTO_CONNECT
AUTOMATIC_CHECK_FOR_NEW_VERSION
public static boolean AUTOMATIC_CHECK_FOR_NEW_VERSION
_AUTOMATIC_CHECK_FOR_NEW_VERSION
public static FrinikaConfig.Meta _AUTOMATIC_CHECK_FOR_NEW_VERSION
MAXIMIZE_WINDOW
public static boolean MAXIMIZE_WINDOW
_MAXIMIZE_WINDOW
public static FrinikaConfig.Meta _MAXIMIZE_WINDOW
MOUSE_NUMBER_DRAG_INTENSITY
public static float MOUSE_NUMBER_DRAG_INTENSITY
_MOUSE_NUMBER_DRAG_INTENSITY
public static FrinikaConfig.Meta _MOUSE_NUMBER_DRAG_INTENSITY
TEXT_LANE_FONT
public static java.awt.Font TEXT_LANE_FONT
_TEXT_LANE_FONT
public static FrinikaConfig.Meta _TEXT_LANE_FONT
GROOVE_PATTERN_DIRECTORY
public static java.io.File GROOVE_PATTERN_DIRECTORY
_GROOVE_PATTERN_DIRECTORY
public static FrinikaConfig.Meta _GROOVE_PATTERN_DIRECTORY
SCRIPTS_DIRECTORY
public static java.io.File SCRIPTS_DIRECTORY
_SCRIPTS_DIRECTORY
public static FrinikaConfig.Meta _SCRIPTS_DIRECTORY
PATCHNAME_DIRECTORY
public static java.io.File PATCHNAME_DIRECTORY
_PATCHNAME_DIRECTORY
public static FrinikaConfig.Meta _PATCHNAME_DIRECTORY
AUDIO_DIRECTORY
public static java.io.File AUDIO_DIRECTORY
_AUDIO_DIRECTORY
public static FrinikaConfig.Meta _AUDIO_DIRECTORY
SOUNDFONT_DIRECTORY
public static java.io.File SOUNDFONT_DIRECTORY
_SOUNDFONT_DIRECTORY
public static FrinikaConfig.Meta _SOUNDFONT_DIRECTORY
DEFAULT_SOUNDFONT
public static java.io.File DEFAULT_SOUNDFONT
_DEFAULT_SOUNDFONT
public static FrinikaConfig.Meta _DEFAULT_SOUNDFONT
LAST_PROJECT_FILENAME
public static java.lang.String LAST_PROJECT_FILENAME
_LAST_PROJECT_FILENAME
public static FrinikaConfig.Meta _LAST_PROJECT_FILENAME
FrinikaConfig
public FrinikaConfig()
showDialog
public static void showDialog(ProjectFrame frame)
createDialog
protected static javax.swing.JDialog createDialog(ProjectFrame frame)
getProperties
public static java.util.Properties getProperties()
getProperty
public static java.lang.String getProperty(java.lang.String key)
setProperty
public static void setProperty(java.lang.String key,
java.lang.String value)
load
public static void load()
throws java.io.IOException
- Throws:
java.io.IOException
store
public static boolean store()
storeAndQuit
public static void storeAndQuit()
load
public static void load(java.io.InputStream r)
throws java.io.IOException
- Throws:
java.io.IOException
save
public static void save(java.io.OutputStream w)
throws java.io.IOException
- Throws:
java.io.IOException
loadFields
public static void loadFields(java.util.Properties p)
saveFields
public static void saveFields(java.util.Properties p)
addConfigListener
public static void addConfigListener(ConfigListener l)
removeConfigListener
public static void removeConfigListener(ConfigListener l)
fireConfigurationChangedEvent
public static void fireConfigurationChangedEvent(FrinikaConfig.Meta meta)
- Fire event if a public static field option has been altered.
No even is fired on changes of dynamic properties-options.
- Parameters:
field
-
getFieldValue
public static java.lang.Object getFieldValue(java.lang.reflect.Field field)
setFieldValue
public static void setFieldValue(java.lang.reflect.Field field,
java.lang.Object o)
stringToValue
public static java.lang.Object stringToValue(java.lang.String prop,
java.lang.String name,
java.lang.Class type)
valueToString
public static java.lang.String valueToString(java.lang.Object o,
java.lang.String name,
java.lang.Class type)
isTrue
public static boolean isTrue(java.lang.Object o)
stringToFont
public static java.awt.Font stringToFont(java.lang.String s)
fontToString
public static java.lang.String fontToString(java.awt.Font font)
fileToString
public static java.lang.String fileToString(java.io.File file)
pickDirectory
public static void pickDirectory(ProjectFrame frame,
javax.swing.JTextField boundTextField)
pickFile
public static void pickFile(ProjectFrame frame,
javax.swing.JTextField boundTextField)
pickFile
public static void pickFile(ProjectFrame frame,
javax.swing.JTextField boundTextField,
boolean directory)
pickFont
public static void pickFont(ProjectFrame frame,
javax.swing.JTextField boundTextField)
getAudioBufferLength
public static int getAudioBufferLength()
setAudioBufferLength
public static void setAudioBufferLength(int len)
getDirectMonitoring
public static boolean getDirectMonitoring()
setDirectMonitoring
public static void setDirectMonitoring(boolean dm)
setMultiplexedAudio
public static void setMultiplexedAudio(boolean multiplex)
setJackAutoconnect
public static void setJackAutoconnect(boolean auto)
lastProjectFile
public static java.lang.String lastProjectFile()
setLastProjectFilename
public static void setLastProjectFilename(java.lang.String filename)
setMidiInDeviceList
public static void setMidiInDeviceList(java.util.Vector<java.lang.String> list)
getMidiInDeviceList
public static java.util.Vector<java.lang.String> getMidiInDeviceList()
getAvailableMidiInDevices
public static java.util.Collection<java.lang.String> getAvailableMidiInDevices()
getAvailableAudioDevices
public static java.util.Collection<java.lang.String> getAvailableAudioDevices()
getAutomaticCheckForNewVersion
public static boolean getAutomaticCheckForNewVersion()
setAutomatickCheckForNewVersion
public static void setAutomatickCheckForNewVersion(boolean automaticCheckForNewVersion)