Commit Graph

244 Commits

Author SHA1 Message Date
Jonathan Moore Liles 5d35f37d4e Fix window icons. 2013-04-11 21:02:31 -07:00
Jonathan Moore Liles 9501e52d54 Timeline: Don't die if user selects nonsense item from Control Sequence Connect To menu. 2013-04-11 17:44:34 -07:00
Jonathan Moore Liles 9df0e9d665 nonlib: Clean up signals handshaking. 2013-04-08 21:03:29 -07:00
Jonathan Moore Liles 9230ab3d04 Timeline: Fix potential deadlock when stopping recording. 2013-04-05 17:13:51 -07:00
Jonathan Moore Liles a6a15e2a2d Timeline: Fix backwards navigation by bar and beat.
Simplification of a patch submitted by Roy Vegard Ovesen. Closes #43.
2013-03-30 18:48:41 -07:00
Jonathan Moore Liles 7a5425beca Timeline: Fix insertion of control points and copying of all sequence widgets. 2013-03-17 07:05:11 -07:00
Jonathan Moore Liles f29a132dfc Get rid of FL/FL symlink. 2013-03-14 17:32:15 -07:00
Jonathan Moore Liles a99f707bda Timeline: Fix bug causing occasional duplicate 'create' entries in snapshots. 2013-03-13 18:02:49 -07:00
Jonathan Moore Liles 0e66baaf21 Timeline: stabilize track order in snapshot output. 2013-03-13 18:02:35 -07:00
Jonathan Moore Liles 04d8bd6a8d Timeline: Fix sign warnings in grid snapping code. 2013-03-12 17:56:55 -07:00
Jonathan Moore Liles 252b105e67 Timeline: Fix sign error allowing the beginning of mutliple region selection to be dragged to a position earlier than frame 0. 2013-03-12 17:56:55 -07:00
Jonathan Moore Liles a25ea63389 Timeline: Report name as non-daw when invoked as such, as non-timeline otherwise. 2013-03-12 17:56:55 -07:00
Jonathan Moore Liles 525470392a Timeline: Don't attempt to build peaks for dummy sources. 2013-03-12 17:56:50 -07:00
Jonathan Moore Liles 626f79f8c9 Rename Non-DAW to Non-Timeline. Also, update copyright dates. 2013-03-10 17:52:40 -07:00
Jonathan Moore Liles 8d282617e6 Timeline: More locking fixes. Also, build peaks cache levels in threads launched by UI thread, instead of in the record diskthreads. 2013-03-01 17:07:30 -08:00
Jonathan Moore Liles 25f2a55ce0 Timeline: Change style of master record button. 2013-03-01 17:04:36 -08:00
Jonathan Moore Liles ea33310f33 Timeline: Fix button responsiveness on control sequence headers. 2013-02-25 17:53:09 -08:00
Jonathan Moore Liles c7787c8ad6 Timeline: Don't add cursor regions to sequence before setting their start and length. 2013-02-24 19:52:17 -08:00
Jonathan Moore Liles b83c70175d Remove some unnecessary NTK calls. 2013-02-22 17:25:22 -08:00
Jonathan Moore Liles 98c5c196d4 Timeline: Rework locking. 2013-02-22 17:18:52 -08:00
Jonathan Moore Liles a228920ac1 Fl_Flowpack: Fix mixer usage. 2013-02-21 18:19:44 -08:00
Jonathan Moore Liles e4d08afc68 Timeline: Cancel unresponsive disk_threads. 2013-02-18 23:00:48 -08:00
Jonathan Moore Liles 51379e2e51 Timeline: Tweak clock display. 2013-02-18 22:48:00 -08:00
Jonathan Moore Liles f41cf07188 Timeline: Add 'loop' and 'new take' buttons to transport group so that these settings are more obvious to the user. 2013-02-12 16:50:19 -08:00
Jonathan Moore Liles 3756dea1d6 Timeline: Lock ordering fixes. 2013-02-09 18:19:07 -08:00
Jonathan Moore Liles 94d55bd4e1 Timeline: Fix waveform offset drawing. 2012-12-15 18:45:56 -08:00
Jonathan Moore Liles 8a6772b6b9 Timeline: Fix bug in track right click handling. 2012-12-15 18:45:25 -08:00
Jonathan Moore Liles d455621543 Timeline: Suppress measure line drawing at wide zoom levels. 2012-12-11 22:13:18 -08:00
Jonathan Moore Liles a985cb3168 Timeline: Add menu button to track and control sequence headers. 2012-12-11 18:07:28 -08:00
Jonathan Moore Liles be495a6ded Timeline: Fix right-click context menu for control sequences. 2012-12-11 18:07:19 -08:00
Jonathan Moore Liles 102670cb31 Timeline: Fix input bugs caused by track layout changes. 2012-12-10 22:58:18 -08:00
Jonathan Moore Liles e1d706b5ed Timeline: Rework widget hierarchy for track display. Also, adjust timeline locking. 2012-12-10 21:47:44 -08:00
Jonathan Moore Liles bae6e38504 Timeline: Don't swap order of takes when reloading. 2012-12-10 21:37:29 -08:00
Jonathan Moore Liles e0b9c34f45 Timeline: Limit fequency of project loading progress updates.
This drastically improves project load times.
2012-12-10 21:36:58 -08:00
Jonathan Moore Liles 1b4ec17964 Timeline: Draw control points bigger. 2012-12-10 21:36:41 -08:00
Jonathan Moore Liles dd6f448d72 Timeline/Track: fix track header resize behavior. 2012-12-01 16:53:57 -08:00
Jonathan Moore Liles e77dbca085 Timeline/Track: fix track header resize behavior. 2012-12-01 16:47:19 -08:00
Jonathan Moore Liles 753ac2b56a Timeline: Redesign track header and add option to overlay control sequences.
Also, assign random color to individual control sequence (which the user may edit).
2012-12-01 16:14:01 -08:00
Jonathan Moore Liles f089d61ee2 Timeline/Track: Make 'takes' menu a submenu of the Track context menu.
Also, change the appearance  of rec/mute/solo buttons.
2012-11-29 23:40:28 -08:00
Jonathan Moore Liles 73ebd3534b Timeline: Fix double free of Sequence_Widget::_label. 2012-11-20 10:05:18 -08:00
Jonathan Moore Liles 9c1eb8276d Timeline: Fix scope of panzoomer when timeline is shorter than window width. 2012-11-16 01:28:09 -08:00
Jonathan Moore Liles d86b71cb2c Replace custom build system with WAF. 2012-11-14 01:54:03 -08:00
Jonathan Moore Liles afd354a5b8 Clean up some compiler warnings 2012-11-05 23:51:32 -08:00
Jonathan Moore Liles 46d1c9c72a Timeline: Clean up use of Fl_Panzoomer. 2012-11-01 17:41:08 -07:00
Jonathan Moore Liles 7c8eb777e5 Timeline: Add an Fl_Tile so that user can resize the panzoomer. 2012-11-01 17:39:34 -07:00
Jonathan Moore Liles f124316c4b Timeline: s/hscroll/panzoomer 2012-11-01 17:39:21 -07:00
Jonathan Moore Liles 3d3a248fe5 Timeline: display track names in panzoomer. 2012-11-01 17:39:13 -07:00
Jonathan Moore Liles b50766b7da Timeline: Replace the scrollbars with a new Pan/zoom widget. 2012-11-01 03:35:04 -07:00
Jonathan Moore Liles cf0c53b443 Timeline: Improve appearance of progress bars. 2012-10-27 14:12:09 -07:00
Jonathan Moore Liles ada46d215b Timeline: Make coloration of tracks optional. 2012-10-27 14:12:02 -07:00
Jonathan Moore Liles ee063e003b Timeline/ControlSequence: Simplify drawing. 2012-10-25 00:25:23 -07:00
Jonathan Moore Liles 2f06f509d7 Timeline: Implement new cursor system.
This adds new cursor rulers for edit, punch and playback.  P1/P2 are now known as the
Edit Cursor. Multiple Punch Cursors may be defined. The playback cursor affects Home and End
controls. New options are available for looping over the playback cursor (even while recording)
and automatically creating new takes at start of recording (or loop).

The new cursor objects bump the project file version. Older versions of non-daw will be
unable to load new/edited projects.
2012-10-23 22:55:52 -07:00
Jonathan Moore Liles 15a78bbfb5 Timeline: Don't die when a punch recording is started with no range defined. 2012-10-05 14:19:50 -07:00
Jonathan Moore Liles be3c9c6412 Timeline: declick loop boundaries. 2012-06-22 21:13:05 -07:00
Jonathan Moore Liles ee2d86a012 Timeline: Tweak drawing of basic sequence region label. 2012-06-20 01:03:21 -07:00
Jonathan Moore Liles 81217a8722 Timeline: Display selection state of basic sequence points and sequence regions. 2012-06-18 21:31:23 -07:00
Jonathan Moore Liles 44a0279e4c Timeline: Just redraw the whole waveform when recording... 2012-06-18 21:27:59 -07:00
Jonathan Moore Liles a480a93ba4 Tweak Timeline<->Mixer discovery handshake. 2012-06-18 21:25:41 -07:00
Jonathan Moore Liles 8cddccf6a4 Timeline: Require rectangle or CTRL+Click to select sequence widgets. 2012-06-17 02:31:01 -07:00
Jonathan Moore Liles 3cc14df756 Timeline: Allow reordering of tracks. 2012-06-16 22:08:49 -07:00
Jonathan Moore Liles 1f9c2bbb6a Timeline: Fix thread synchronization issues during recording. 2012-06-15 18:53:40 -07:00
Jonathan Moore Liles ab8f23f15d Timeline: Simplify drawing of crossfades by using NTK transparency. 2012-06-13 23:04:42 -07:00
Jonathan Moore Liles 7107cbbf4c Timeline: Add CTRL+L shortcut to force redraw. 2012-06-13 21:04:31 -07:00
Jonathan Moore Liles deb08d4b14 Timeline: Fix disappearing waveforms. 2012-06-13 21:02:25 -07:00
Jonathan Moore Liles a27d0b1718 Timeline: Add basic punch in/out support (may require latency compensation). 2012-06-13 18:28:49 -07:00
Jonathan Moore Liles e968d8190f Timeline: Fix waveform drawing during record and cumulative error in looped region drawing. Also, avoid redrawing already displayed parts of waveforms while recording. 2012-06-12 20:53:21 -07:00
Jonathan Moore Liles f04c36cae9 Timeline: Prevent segfault at shut down due to OSC output thread left running. 2012-06-12 20:39:33 -07:00
Jonathan Moore Liles 989b6f0e4b Timeline: Avoid uninitialized read when drawing waveforms. 2012-06-12 20:39:33 -07:00
Jonathan Moore Liles e219e6766e Timeline: Fix uninitialized value in Control_Sequence. 2012-06-12 20:37:15 -07:00
Jonathan Moore Liles af3698bebc Timeline: Fix sign error in region panning. 2012-06-09 19:46:08 -07:00
Jonathan Moore Liles 1d59665702 Timeline: Eliminate some unnecessary repeated drawing of measure lines. 2012-06-07 00:29:54 -07:00
Jonathan Moore Liles 65f33096c2 Timeline: Avoid more complete redraws. 2012-06-06 23:49:18 -07:00
Jonathan Moore Liles 183764e767 Timeline: Always draw waveforms using theme foreground color. 2012-06-06 23:45:07 -07:00
Jonathan Moore Liles f3505a84de Timeline: Simplify fade application/avoid cast to long type. 2012-06-06 23:43:36 -07:00
Jonathan Moore Liles c6f6c57c05 Timeline: Tweak label drawing of sequence widgets. 2012-06-05 19:00:48 -07:00
Jonathan Moore Liles 275878395f Revert "Indicate loop point by modifying waveform color." 2012-06-05 17:31:23 -07:00
Jonathan Moore Liles a5588f7ad4 Timeline: Prevent status info update from causing complete redraw due to new NTK transparency logic. 2012-06-05 17:31:18 -07:00
Jonathan Moore Liles 8eef38f0cc Timeline: Fix graphics corruption. Also, indicate loop point by modifying waveform color. 2012-06-05 02:23:42 -07:00
Jonathan Moore Liles c0375e614a Timeline: Fix null pointer derefrence when copying sequence points. 2012-06-04 23:00:13 -07:00
Jonathan Moore Liles 2af46a1a0c Timeline: Fix locking behavior of Control Sequences. 2012-06-04 22:59:33 -07:00
Jonathan Moore Liles d249bb9bbd OSC: Properly encode/decode special characters in osc paths. 2012-06-04 22:58:57 -07:00
Jonathan Moore Liles 7217266f6b Timeline: Tweak measure line drawing. 2012-06-04 17:25:54 -07:00
Jonathan Moore Liles 72a0c0eb3e Timeline: Tweak fade drawing. 2012-06-04 17:25:21 -07:00
Jonathan Moore Liles 3cca1e48a5 Timeline: Add feature to adjust region gain/scale with mouse. 2012-06-04 17:24:57 -07:00
Jonathan Moore Liles e5875fa072 Fix runaway processing in peakfile generation. 2012-06-04 17:14:37 -07:00
Jonathan Moore Liles 3e73817155 Fix some clang warnings. 2012-05-30 22:58:35 -07:00
Jonathan Moore Liles a8a5638f6a Timeline: Add missing include of unistd.h. 2012-05-30 21:22:48 -07:00
Jonathan Moore Liles b1cbd4faa6 Timeline: Improve the appearance of measure lines. 2012-05-27 19:53:02 -07:00
Jonathan Moore Liles d7fc792839 Timeline: Improve the appearance of sequence widget labels. 2012-05-26 20:12:23 -07:00
Jonathan Moore Liles 6ae771b297 Timeline: Transition to C NSM API header instead of C++ version. 2012-05-21 22:28:12 -07:00
Jonathan Moore Liles a465c17e2a Timeline/Track: Change button appearance. 2012-05-21 21:23:02 -07:00
Jonathan Moore Liles c370130d2b Timeline: Avoid drawing fade curves when clipped or 0 width. 2012-05-21 21:23:02 -07:00
Jonathan Moore Liles fa5d739ac7 Timeline: Make entire window an Fl_Overlay_Window instead of using a subwindow for timeline. 2012-05-21 21:23:02 -07:00
Jonathan Moore Liles 73d2c2d396 Timeline: Use simpler boxtypes for audio regions. 2012-05-21 21:23:02 -07:00
Jonathan Moore Liles 2c6b6b1a75 FLTK->NTK
FLTK fork gets Cairo and is renamed to NTK.

Themes are moved from FL into NTK core.

Fl_Arc_Dial is moved into NTK core.
2012-05-21 21:23:02 -07:00
Jonathan Moore Liles a588f4ae96 Timeline: Make display of box around audio regions optional. 2012-05-21 21:23:02 -07:00
Jonathan Moore Liles da225ff64a nonlib: Remove sigc++ dependencey from OSC::Endpoint.
This also removes sigc++ as a dependency for mixer and timeline.
2012-04-16 21:29:34 -07:00
Jonathan Moore Liles 57ac27ecac Change the appearance of the "SM" indicator in mixer, daw, sequencer. Tweak GUIs. 2012-04-14 14:11:58 -07:00
Jonathan Moore Liles e662a7623b Add missing includes for unistd.h 2012-04-13 15:23:40 -07:00
Jonathan Moore Liles fdcf74ddbe Replace crappy Fl::scheme() thing with a more useful theme implementation in Fl_Theme and Fl_Color_Sheme classes.
Theme settings are now common between all Non-* programs.

Also adds a new 'Clean' theme.
2012-04-10 23:59:12 -07:00
Jonathan Moore Liles e424182dce Timeline: Fix false-positive incompatibility with old project files. 2012-04-04 18:59:34 -07:00
Jonathan Moore Liles eda11f56fe Timeline: Symlink to drag'n'drop'd files from the sources/ directory rather than including the absolute path in the journal. 2012-04-02 21:30:56 -07:00
Jonathan Moore Liles 9896970ed0 Timeline: Don't do FL_DAMAGE_SCROLL unless the viewport has actually moved... 2012-04-01 18:49:16 -07:00
Jonathan Moore Liles 9667f98995 Timeline: Don't fork to generate peak mipmaps, do it in the capture thread. Also, clean up related concurrency issues. 2012-04-01 18:27:27 -07:00
Jonathan Moore Liles 338e66c759 Cleanup locking for OSC playback. 2012-03-29 22:08:45 -07:00
Jonathan Moore Liles 0a963f5c8a Timeline: Add keybindings for split region at mouse and crop region to range. 2012-03-18 13:21:57 -07:00
Jonathan Moore Liles bc6f94e769 Timeline: Use solid lines for drawing measure lines--they're way faster than dashed. 2012-03-17 21:16:02 -07:00
Jonathan Moore Liles ca3076d2ec Timeline: Avoid triggering excessive redraws. 2012-03-13 18:47:53 -07:00
Jonathan Moore Liles 0f86ee6882 Use the same value for Fl::visual() everywhere. 2012-03-06 16:39:44 -08:00
Jonathan Moore Liles e81270d74e Timeline: Workaround bug in FLTK 1.3 that prevented Control Sequences from displaying. 2012-03-06 00:42:51 -08:00
Jonathan Moore Liles 6a0b2d2069 Timeline: When waiting for peaks, only check again every 500ms. 2012-03-05 21:18:36 -08:00
Jonathan Moore Liles ad3d826493 Timeline: Account for new clipping behavior in FLTK 1.3 when drawing in the overlay plane. 2012-03-05 21:15:38 -08:00
Jonathan Moore Liles 670400cbf9 Handle SIGHUP. 2012-03-04 19:12:32 -08:00
Jonathan Moore Liles 92dfbbc6f6 Timeline: Clean up commandline handling. 2012-03-04 19:01:07 -08:00
Jonathan Moore Liles e4e546b849 Timeline: Add omitted header file change. 2012-03-04 12:55:16 -08:00
Jonathan Moore Liles ae6b78cf89 Timeline: Maybe be more accurate in reporting used disk space. 2012-03-04 03:50:52 -08:00
Jonathan Moore Liles 9f6a2fd022 Timeline: Warn about buggy FLTK version. 2012-03-02 18:06:03 -08:00
Jonathan Moore Liles ccc93d2388 Timeline: Work around bug in FLTK 1.3 when drawing a string containing only symbols. 2012-03-02 00:53:10 -08:00
Jonathan Moore Liles 9bb9a91b22 Add 'gleam' inspired boxtypes to replace the ones in the gtk+ theme. Also, tweak crystal boxtypes. 2012-03-01 20:23:23 -08:00
Jonathan Moore Liles 46eb00f8d6 Use getopt_long for processing command line arguments to Non-DAW and Non-Mixer. 2012-02-28 22:22:03 -08:00
Jonathan Moore Liles 3a5c330e34 Everybody gets new icons! Also, .desktop files. 2012-02-28 21:25:37 -08:00
Jonathan Moore Liles 250b7db644 Cleanup compiler warnings. 2012-02-26 20:19:46 -08:00
Jonathan Moore Liles 2f67b1bee4 OSC: Fix signal creation notification. 2012-02-26 18:47:07 -08:00
Jonathan Moore Liles dafc476222 Big OSC signal cleanups 2012-02-26 01:05:04 -08:00
Jonathan Moore Liles a48a739db2 OSC: Improvements to signal routing. 2012-02-26 01:05:04 -08:00
Jonathan Moore Liles edefd1126f OSC: Signal cleanups. 2012-02-26 01:05:04 -08:00
Jonathan Moore Liles 6151e0620f Timeline: Clock cleanup. 2012-02-26 01:05:04 -08:00
Jonathan Moore Liles 62c8490c17 Timeline: Run OSC output in a dedicated thread. 2012-02-26 01:05:04 -08:00
Jonathan Moore Liles 5a0527c623 OSC: Save and restore OSC signal connections outgoing from Non-DAW. 2012-02-26 01:05:04 -08:00
Jonathan Moore Liles b82774dcf3 Timeline: Add interpolation mode choice of Linear and None to Control Sequences. 2012-02-26 01:05:04 -08:00
Jonathan Moore Liles 5aff30fef6 Timeline/Track: Avoid unnecessary drawing of occluded track box. 2012-02-26 01:05:04 -08:00
Jonathan Moore Liles f769375a7a NSM: Clients must use the same protocol (UDP,TCP) as NSM server. 2012-02-26 01:05:03 -08:00
Jonathan Moore Liles b2affcc5d5 Don't poll NSM as frequently. 2012-02-26 01:05:03 -08:00
Jonathan Moore Liles d93a2de86b Timeline: Don't die when not running under NSM. 2012-02-26 01:05:03 -08:00
Jonathan Moore Liles 7cfa1ec38a OSC: Implement generic signal model with path auto discovery through NSM. 2012-02-26 01:05:03 -08:00
Jonathan Moore Liles dca72cb455 Give Non-DAW the ability to detect Non-Mixer OSC servers via NSM broadcast handshake. 2012-02-26 01:05:03 -08:00
Jonathan Moore Liles 4a22d675e2 Implement the Non-Session-Manager (NSM) 2012-02-26 01:05:02 -08:00
Jonathan Moore Liles 93dd9870ae Don't rely on 'Fl' symlink which only exists on Debian. 2012-02-25 18:02:06 -08:00
Jonathan Moore Liles 36194c955a Fix build being broken by some include defining a preprocessor macro for 'None' 2012-02-04 21:31:01 -08:00
Jonathan Moore Liles dea3ae913b Fix 64-bit bug in peakfile handling.
Use 'packed' attribute on structs used to represent individual peaks and peak headers.
This is a quick, if not ideal, solution.

Broken peakfiles generated on 64-bit platforms must be deleted!
2010-03-11 01:12:53 -06:00
Jonathan Moore Liles 9f87bbd020 Timeline: Fix 64-bit bug in interactive region trimming. 2010-03-11 00:04:18 -06:00
Jonathan Moore Liles 1bd1324a25 FL: Make About_Dialog more dynamic. 2010-02-01 21:54:09 -06:00
Jonathan Moore Liles 29327f8a02 Timeline: Hide seek blinker, which may not be particularly useful. 2010-02-01 02:26:42 -06:00
Jonathan Moore Liles 906872c79b Massively reoganize tree. 2010-02-01 02:26:42 -06:00