Commit Graph

2070 Commits

Author SHA1 Message Date
Tobias Doerffel
3003163e9b ZynAddSubFX: fixed compilation failure of FLTK
Fixed compilation failure of FLTK on broken systems where strchr()
takes a non-const char pointer.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-06-01 00:44:06 +02:00
Tobias Doerffel
8c50e0ef9a MinGW cross compiling script: fixed invocation of cmake
Fixed invocation of cmake in the MinGW cross compiling script so it
works properly when doing an out-of-tree build (which should be the
default way of building LMMS).

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-31 18:51:59 +02:00
Tobias Doerffel
134c6188c4 Explicitely prefix Qt includes with their respective Qt module
LMMS didn't compile successfully if individual paths to headers of
each Qt module were not added to the list of include directories to be
searched by the pre-processor. However it has to work this way,
therefore I changed lines like

  #include <QGraphicsScene>

to

  #include <QtGui/QGraphicsScene>

Please care in the future!

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-31 18:50:15 +02:00
Tobias Doerffel
5b1900c4d0 ZynAddSubFX: processed UI files with Fluid from FLTK 1.3 branch
Processed all Fluid UI files with Fluid from FLTK 1.3 branch so the
generated code is up to date.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-31 18:38:40 +02:00
Tobias Doerffel
8affa66c61 ZynAddSubFX: integrated FLTK 1.3.0 branch from SVN
Integrated FLTK 1.3.0 branch from SVN which brings UTF8 support and
fully integrated Xft support (SVN rev. 6791).

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-31 18:38:24 +02:00
Tobias Doerffel
7873afcf54 ConfigManager: do not save configuration upon destruction
Do not save configuration file in destructor of ConfigManager as
at this place the whole LMMS engine already has been shutdown and
thus saving e.g. configuration of MidiControlListener causes a
segfault. Instead explicitely save configuration file at the
beginning of Engine::destroy().

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-31 12:31:01 +02:00
Achim Settelmeier
bc2815118b Added MIDI device selection menu for MidiControlListener to setup dialog.
The MIDI device(s) where the MidiControlListener can receive events from
can now be configured in the setup dialog.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-31 12:11:08 +02:00
Achim Settelmeier
de26ba5f00 New methods to unsubscribe all readable/writeable ports of a midiPort object.
Moved the code to unsubscribe all readable and/or writeable ports to own
methods and thus made them publically available to avoid duplicate code.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-31 12:11:08 +02:00
Achim Settelmeier
227de591bd Use midiPort's loadSettings()/saveSettings() API.
Changed MidiControlListener to use the built-in API to save and restore
the midiPort configuration instead and removed the old iterator.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-31 12:11:07 +02:00
Achim Settelmeier
555d589354 Select key for MidiControlListener in setup dialog via pianoView widget.
Introduces a new class, DummyMidiEventProcessor, that does nothing but
update the baseNoteModel upon keypress.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-31 12:11:07 +02:00
Achim Settelmeier
fb935ecfac Code refactoring to use iterator instead of Qt's elementsByTagName().
Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-31 12:11:06 +02:00
Janne Matti Sinisalo
1a6652b5b1 Removed Skiessi's lame song.
Removed a crappy outdated unfinished project by Skiessi, which he
is about to replace with something better,  maybe.

How can I change the favourite editor of git?
2009-05-30 23:47:29 +03:00
Achim Settelmeier
9adc592fb5 Use iterator to traverse XML tree
elementsByTagName() may return an empty list thought there should be
elements. As the reason and circumstances of the method for doing so
are unclear, an iterator approach is used instead

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-29 01:52:28 +02:00
Achim Settelmeier
cc317032e3 Refactoring to follow current code style guide
Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-29 01:52:27 +02:00
Achim Settelmeier
720e332891 Added PianoView to new dialog
Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-29 01:52:27 +02:00
Achim Settelmeier
8d5b2c4813 MIDI Control Listener setup dialog
Adds GUI elements to the global setup dialog to configure remote
controlling of LMMS via MIDI. The GUI is not yet fully functional,
though.

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-29 01:52:27 +02:00
Achim Settelmeier
57d4024c2a Save and load MIDI control listener settings
Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
2009-05-29 01:52:27 +02:00
Tobias Doerffel
8395c9428c Moved baseNoteModel from InstrumentTrack to MidiEventProcessor; cleanups
Moved baseNoteModel from InstrumentTrack class to MidiEventProcessor
class in order to make Piano class independent from InstrumentTrack
class (so it can be used by other classes as well).

Furthermore did various cleanups and coding style improvements.
2009-05-29 01:35:52 +02:00
Tobias Doerffel
7fd599a2f9 CMakeLists.txt: fixed build failure when using distcc
When invoking C compiler to build our assembler files evaluate first
compiler argument and fix it if neccessary). This allows building
master branch with distcc.
2009-05-29 01:19:45 +02:00
Janne Matti Sinisalo
08b4273f85 Merge branch 'master' of ssh://skiessi@lmms.git.sourceforge.net/gitroot/lmms 2009-05-27 22:11:45 +03:00
Tobias Doerffel
cdcc158c03 TrackView: do not set Qt::WA_OpaquePaintEvent attribute
Due to optimizations in Qt 4.5 setting Qt::WA_OpaquePaintEvent attribute
for TrackView widgets caused a line of distorted pixels at the bottom of
the left part so do not set this attribute anymore (closes #2795861).
2009-05-25 13:47:30 +02:00
Tobias Doerffel
aaf45467b2 Track UI: coding style fixes
Fixed indentation issues and the like.
2009-05-25 13:27:26 +02:00
Tobias Doerffel
031e87b307 LV2: moved conditional include into lv2_manager.h
Moved conditional #include <slv2/scalepoints.h> from lv2_manager.cpp
into lv2_manager.h so we only have to have this compat code in one
place.
2009-05-24 01:28:16 +02:00
Tobias Doerffel
41c939f5aa AutomationRecorder: delete after Song object
Delete the AutomationRecorder after Song object. Otherwise LMMS crashes
at exit (closes #2793356).
2009-05-20 18:18:30 +02:00
Tobias Doerffel
6d77f83ae9 ControllerConnection: fixed segfault when finalizing invalid controller
In ControllerConnection::finalizeConnections() we did not check whether
the current controller ID really exists in Song's controller array.
Fixes segfault when loading projects with screwed controller settings.
2009-05-19 18:32:24 +02:00
Tobias Doerffel
34e607f5bb lmms.rc.in: advanced copyright notice
Advanced copyright notice in lmms.rc.in which is used as resource file
when building win32 executable.
2009-05-18 14:33:54 +02:00
Tobias Doerffel
002021aac5 ResourcesDB: save type and basedir property as string rather than number
So far the type and basedir properties were saved as numbers (as they
are defined in internal enumeration). This is bad style so these
properties are now translated into a human-readable string when saving
and back to internal enumeration type when loading.
2009-05-18 14:27:02 +02:00
Janne Matti Sinisalo
cfb7d98aa7 Merge branch 'master' of ssh://skiessi@lmms.git.sourceforge.net/gitroot/lmms 2009-05-17 01:53:49 +03:00
Tobias Doerffel
55548d58c0 AutomationRecorder: instantiate even in console-only mode
Always create an instance of AutomationRecorder in Engine class as
it is not related to GUI at all. Fixes crash when rendering a project
in console-only mode.
2009-05-17 00:00:16 +02:00
Tobias Doerffel
c86f7b5104 TripleOscillator: dynamically change range of fine detuning knobs
Similiar to the pitch knob of a instrument track, the range of the fine
detuning knobs in TripleOscillator is now changed dynamically as well.
This allows new kind of sounds by hardsyncing with a detuning of up
to +/- 2400 cents.
2009-05-16 17:29:55 +02:00
Tobias Doerffel
f514dfdbb3 InstrumentTrack: made pitch range model publicly accessible
Added InstrumentTrack::pitchRangeModel() in order to allow other classes
to access pitch range model.
2009-05-16 17:17:54 +02:00
Tobias Doerffel
41907a7ebf InstrumentTrack: added support for changing pitch range
Added a new LCD spinbox which allows to control the range of the pitch
knob. This way it's possible to extend the range of the pitch knob up
to 24 semitones in each direction.
2009-05-16 16:58:44 +02:00
Tobias Doerffel
24353ca248 PianoRoll: removed unused variable
Removed unused variable volumeHandles in
PianoRoll::computeSelectedNotes(bool) which as a side-effect also fixes

/usr/include/qt4/QtCore/qvector.h: In member function ‘void PianoRoll::computeSelectedNotes(bool)’:
/usr/include/qt4/QtCore/qvector.h:421: warning: dereferencing pointer ‘<anonymous>’ does break strict-aliasing rules
/usr/include/qt4/QtCore/qvector.h:114: note: initialized from here
2009-05-16 15:16:54 +02:00
Tobias Doerffel
9dcb62c630 NotePlayHandle: use public method for accessing pitch model
Do not use private m_pitchModel member variable of InstrumentTrack even
if NotePlayHandle is a friend class. Instead use the already existing
InstrumentTrack::pitchModel() method.
2009-05-16 15:08:40 +02:00
Janne Matti Sinisalo
7e4cd302c1 Merge branch 'master' of ssh://skiessi@lmms.git.sourceforge.net/gitroot/lmms 2009-05-16 12:38:36 +03:00
Tobias Doerffel
40b9b1cb4c LV2: fixed compilation without LV2 support or older versions of LV2
LV2 core was not compiled conditionally into LMMS binary so compilation
failed when building without LV2 support. Furthermore added
compatibility code for SLV2 <= 0.6.2.
2009-05-15 18:23:09 +02:00
Tobias Doerffel
582393cdba Fixed linker flags when building for OS X
Linker flag "-E" is not supported on OS X so drop it if LMMS_BUILD_APPLE
is defined.
2009-05-15 18:00:11 +02:00
Janne Matti Sinisalo
6a8003b177 Merge branch 'master' of ssh://skiessi@lmms.git.sourceforge.net/gitroot/lmms 2009-05-12 16:47:19 +03:00
Janne Matti Sinisalo
c70d33a621 Fixed compatibility with libslv2 0.6.4.
Fixed includes to work with libslv2 0.6.4 and newer. :) Broke
compatibility with 0.6.2 and older. :( Maybe there could be some test
for this?
2009-05-12 16:36:11 +03:00
Janne Matti Sinisalo
f7edd7089a Fixed compatibility with libslv2 0.6.4.
Fixed includes to work with libslv2 0.6.4 and newer. :) Broke compatibility with 0.6.2 and older. :( Maybe there could be some test for this?
2009-05-12 16:25:06 +03:00
Janne Matti Sinisalo
367d8360fc Added cheese_enthusiast's new piano keys
Added cheese_enthusiast's <bdreed@woh.rr.com> new, better-looking piano keys. Also includes pressed piano-roll keys.
2009-05-08 23:44:11 +03:00
Andrew Kelley
c53df545ae don't coerce the installer to use /usr when cmaking. 2009-05-06 20:12:21 -07:00
Achim Settelmeier
f4e929022e Added MidiControlListener for controlling LMMS via MIDI
MidiControlListener is MidiEventProcessor that listens for specific
MIDI events in order to control LMMS' transportation (currently only
start/stop). Can be advanced later to control other things in LMMS.
2009-05-05 23:43:47 +02:00
Achim Settelmeier
515f0243b9 MainWindow: fixed problems with maximized window-state when using FVWM2
Added a workaround for FVWM2 as showMaximized() does not work with it
unless the window is already visible.
2009-05-05 23:35:40 +02:00
Frederik
af284e980f Allow compilation with -Werror=format-security
This commit fixes some calls to functions that are taking a format
string and an optional set of parameters as arguments. At some places
no format string was specified if only a simple C string was to be
sprintf()ed.  However for security reasons this is bad and was replaced
by code like

	sprintf( dest, "%s", str );
2009-05-05 23:23:52 +02:00
Andrew Kelley
134a20efe0 fixed dependency on libfluidsynth without checking for LMMS_HAVE_FLUIDSYNTH 2009-05-05 05:20:27 -07:00
Tobias Doerffel
6929caa777 Pass main window as parent for progress dialog when loading project
Make progress dialog when loading project a proper sub-window of LMMS
by passing main window as parent to constructor of QProgressDialog.
Fixes default window icon and additional taskbar item.
2009-05-04 23:23:06 +02:00
Tobias Doerffel
c2757d6991 ZynAddSubFX: added preset collection by Will Godfrey
Added first external ZynAddSubFX preset collection by Will Godfrey.
Downloaded from http://www.musically.me.uk/Collection.zip on May 4th 2009.
License is GPLv2 or later (as of http://www.musically.me.uk/stuff.html).
2009-05-04 14:25:24 +02:00
Tobias Doerffel
07035d09ca README: added more recommended libraries
Added FFTW3 as recommended library and raised requirement to
libsamplerate.
2009-05-04 12:30:19 +02:00
Tobias Doerffel
ccb65f4b40 Added universal codebase for dragging plugin-specific presets
Added new stringPairDrag type "pluginpresetfile", allowing to drag
and drop any kind of plugin-specific preset files everywhere in the
program. Adopted changes in ZynAddSubFX plugin.
2009-05-03 16:10:06 +02:00