ardour.git
9 years agoFix PBD::copy_file so it works with non-ASCII filenames on windows
Tim Mayberry [Tue, 24 Jun 2014 23:40:26 +0000 (09:40 +1000)]
Fix PBD::copy_file so it works with non-ASCII filenames on windows

9 years agoAdd test utility function to PBD tests to return some utf-8 strings
Tim Mayberry [Wed, 25 Jun 2014 03:40:18 +0000 (13:40 +1000)]
Add test utility function to PBD tests to return some utf-8 strings

This is currently unused

9 years agoAdd a test for PBD::copy_file using test files with utf-8 encoded filenames
Tim Mayberry [Wed, 25 Jun 2014 03:51:58 +0000 (13:51 +1000)]
Add a test for PBD::copy_file using test files with utf-8 encoded filenames

9 years agoFix PBD::copy_files so that it uses O_BINARY on windows and doesn't add line endings...
Tim Mayberry [Tue, 24 Jun 2014 23:05:43 +0000 (09:05 +1000)]
Fix PBD::copy_files so that it uses O_BINARY on windows and doesn't add line endings to copied files

9 years agoUse PLATFORM_WINDOWS define instead of WIN32 in PBD::FileManager
Tim Mayberry [Tue, 24 Jun 2014 23:04:43 +0000 (09:04 +1000)]
Use PLATFORM_WINDOWS define instead of WIN32 in PBD::FileManager

9 years agoCall PBD::init and PBD::cleanup in pbd test executable
Tim Mayberry [Tue, 24 Jun 2014 09:33:10 +0000 (19:33 +1000)]
Call PBD::init and PBD::cleanup in pbd test executable

9 years agoAdd test for PBD::copy_file
Tim Mayberry [Tue, 24 Jun 2014 07:05:45 +0000 (17:05 +1000)]
Add test for PBD::copy_file

From this I can see that PBD::copy_file is not working correctly on windows
as it is adding windows style line endings. Adding O_BINARY to ::open flags
would fix it, but perhaps there is a better way...

9 years agoAdd utility function to test lib to create a test directory
Tim Mayberry [Tue, 24 Jun 2014 07:02:39 +0000 (17:02 +1000)]
Add utility function to test lib to create a test directory

There is an identical function in libardour test support lib so we
should probably find a better place to put this at some point

9 years agoChange PBD::get_files and PBD::get_paths to take a Searchpath instead of directory...
Tim Mayberry [Sun, 22 Jun 2014 09:58:19 +0000 (19:58 +1000)]
Change PBD::get_files and PBD::get_paths to take a Searchpath instead of directory path

Both these functions use the internal function run_functor_for_paths
which takes a Searchpath so this avoids a temporary variable in cases
where a Searchpath is passed directly.

The usage is the same as the compiler will generate a temporary Searchpath
from a string(directory path) if necessary.

9 years agoAdd/Update docs in pbd/file_utils.h
Tim Mayberry [Tue, 24 Jun 2014 01:16:38 +0000 (11:16 +1000)]
Add/Update docs in pbd/file_utils.h

9 years agoUse run_functor_for_paths in PBD::get_paths
Tim Mayberry [Sun, 22 Jun 2014 08:03:01 +0000 (18:03 +1000)]
Use run_functor_for_paths in PBD::get_paths

9 years agoFix finding icon sets by using correct utility function
Tim Mayberry [Sun, 22 Jun 2014 07:44:35 +0000 (17:44 +1000)]
Fix finding icon sets by using correct utility function

9 years agoRename PBD::get_files_in_directory to just PBD::get_files, change parameter order...
Tim Mayberry [Sun, 22 Jun 2014 07:39:06 +0000 (17:39 +1000)]
Rename PBD::get_files_in_directory to just PBD::get_files, change parameter order and fix docs

9 years agoRename PBD::get_directory_contents to PBD::get_paths
Tim Mayberry [Sun, 22 Jun 2014 07:22:37 +0000 (17:22 +1000)]
Rename PBD::get_directory_contents to PBD::get_paths

shorter name and change order of parameters to match other functions

9 years agoUse run_functor_for_paths in PBD::find_files_matching_pattern
Tim Mayberry [Sun, 22 Jun 2014 03:58:39 +0000 (13:58 +1000)]
Use run_functor_for_paths in PBD::find_files_matching_pattern

9 years agoFix finding of bundled LV2 plugins
Tim Mayberry [Sun, 22 Jun 2014 03:20:25 +0000 (13:20 +1000)]
Fix finding of bundled LV2 plugins

9 years agoAdd function PBD::find_paths_matching_filter
Tim Mayberry [Sun, 22 Jun 2014 03:11:27 +0000 (13:11 +1000)]
Add function PBD::find_paths_matching_filter

9 years agoUse run_functor_for_paths in PBD::find_files_matching_filter
Tim Mayberry [Sun, 22 Jun 2014 02:53:35 +0000 (12:53 +1000)]
Use run_functor_for_paths in PBD::find_files_matching_filter

9 years agoAdd function to file_utils intended to be used internally
Tim Mayberry [Sun, 22 Jun 2014 03:18:14 +0000 (13:18 +1000)]
Add function to file_utils intended to be used internally

9 years agoAdd some debug output in file_utils.cc
Tim Mayberry [Sun, 22 Jun 2014 00:40:28 +0000 (10:40 +1000)]
Add some debug output in file_utils.cc

9 years agoRemove reference to strtok_r now that it isn't used
Tim Mayberry [Fri, 20 Jun 2014 03:14:50 +0000 (13:14 +1000)]
Remove reference to strtok_r now that it isn't used

9 years agoChange formatting of DEBUG_TRACE calls to match style guide
Tim Mayberry [Fri, 20 Jun 2014 01:07:29 +0000 (11:07 +1000)]
Change formatting of DEBUG_TRACE calls to match style guide

9 years agoMove functions in pbd/clear_dir.h/cc into pbd/file_utils.h/cc
Tim Mayberry [Thu, 19 Jun 2014 13:00:45 +0000 (23:00 +1000)]
Move functions in pbd/clear_dir.h/cc into pbd/file_utils.h/cc

9 years agoAdd remove_directory_internal function and use it in PBD::clear_directory and PBD...
Tim Mayberry [Thu, 19 Jun 2014 12:31:13 +0000 (22:31 +1000)]
Add remove_directory_internal function and use it in PBD::clear_directory and PBD::remove_directory

9 years agoReimplement PBD::clear_dir using PBD::get_directory_contents
Tim Mayberry [Tue, 24 Jun 2014 01:05:24 +0000 (11:05 +1000)]
Reimplement PBD::clear_dir using PBD::get_directory_contents

9 years agoRename PBD::find_file_in_search_path to just PBD::find_file
Tim Mayberry [Thu, 19 Jun 2014 11:23:12 +0000 (21:23 +1000)]
Rename PBD::find_file_in_search_path to just PBD::find_file

saves a bit of typing and not necessary if you look at how it is used.

9 years agoUse PBD::find_files_matching_pattern instead of other variations
Tim Mayberry [Tue, 24 Jun 2014 00:30:22 +0000 (10:30 +1000)]
Use PBD::find_files_matching_pattern instead of other variations

9 years agoAdd a variation of PBD::find_files_matching_pattern for convenience
Tim Mayberry [Thu, 19 Jun 2014 10:09:10 +0000 (20:09 +1000)]
Add a variation of PBD::find_files_matching_pattern for convenience

9 years agoAdd new function PBD::find_files_matching_pattern
Tim Mayberry [Thu, 19 Jun 2014 09:39:27 +0000 (19:39 +1000)]
Add new function PBD::find_files_matching_pattern

This new function is intended to replace the three existing
PBD::find_matching_files_* functions.

The order of parameters matches find_files_matching_regex and
find_files_matching_filter

9 years agoChange PBD::find_files_matching_regex and PBD::find_files_matching_filter to take...
Tim Mayberry [Thu, 19 Jun 2014 08:26:17 +0000 (18:26 +1000)]
Change PBD::find_files_matching_regex and PBD::find_files_matching_filter to take a Searchpath

9 years agoReimplement PBD::find_files_matching_filter using SearchPath and get_directory_contents
Tim Mayberry [Thu, 19 Jun 2014 04:41:59 +0000 (14:41 +1000)]
Reimplement PBD::find_files_matching_filter using SearchPath and get_directory_contents

9 years agoRemove limit parameter from PBD::find_files_matching_regex
Tim Mayberry [Thu, 19 Jun 2014 03:24:34 +0000 (13:24 +1000)]
Remove limit parameter from PBD::find_files_matching_regex

This limit was not used or documented. The same functionality can be
performed when iterating through the results.

9 years agoRemove parameters from PBD::find_files_matching_regex
Tim Mayberry [Thu, 19 Jun 2014 02:58:49 +0000 (12:58 +1000)]
Remove parameters from PBD::find_files_matching_regex

The only users of this API always used the same options so just remove
them.

9 years agoChange PBD::get_files_in_directory to return full paths in result
Tim Mayberry [Thu, 19 Jun 2014 02:33:14 +0000 (12:33 +1000)]
Change PBD::get_files_in_directory to return full paths in result

get_files_in_directory uses get_directory_contents internally now

9 years agoAdd PBD::get_directory_contents to pbd/file_utils.h
Tim Mayberry [Thu, 19 Jun 2014 02:31:19 +0000 (12:31 +1000)]
Add PBD::get_directory_contents to pbd/file_utils.h

9 years agoGLib functions for listing directory contents don't include "." or ".." entries
Tim Mayberry [Thu, 19 Jun 2014 01:13:57 +0000 (11:13 +1000)]
GLib functions for listing directory contents don't include "." or ".." entries

9 years agofix incorrect cut-n-paste across synergy
Paul Davis [Wed, 25 Jun 2014 16:30:57 +0000 (12:30 -0400)]
fix incorrect cut-n-paste across synergy

9 years agoadd slider control to GUI tab of preferences for lock timeout
Paul Davis [Wed, 25 Jun 2014 16:12:01 +0000 (12:12 -0400)]
add slider control to GUI tab of preferences for lock timeout

9 years agoexpose Gtk::HScale member of OptionEditor::HSliderOption
Paul Davis [Wed, 25 Jun 2014 16:11:43 +0000 (12:11 -0400)]
expose Gtk::HScale member of OptionEditor::HSliderOption

9 years agopart two of: lock dialog MUST be a Gtk::Dialog so that it does not forward key (or...
Paul Davis [Wed, 25 Jun 2014 16:10:56 +0000 (12:10 -0400)]
part two of: lock dialog MUST be a Gtk::Dialog so that it does not forward key (or other) events to the Editor

9 years agolock dialog MUST be a Gtk::Dialog so that it does not forward key (or other) events...
Paul Davis [Wed, 25 Jun 2014 15:47:35 +0000 (11:47 -0400)]
lock dialog MUST be a Gtk::Dialog so that it does not forward key (or other) events to the Editor

9 years agocheck UIConfig variable before restarting lock timeout
Paul Davis [Wed, 25 Jun 2014 15:34:58 +0000 (11:34 -0400)]
check UIConfig variable before restarting lock timeout

9 years agoadd UIConfig variable for lock timer
Paul Davis [Wed, 25 Jun 2014 15:34:37 +0000 (11:34 -0400)]
add UIConfig variable for lock timer

9 years agowscript fix for wavesaudio backend - use correct name for CoreM[iI][dD][iI] framework...
Paul Davis [Wed, 25 Jun 2014 12:29:23 +0000 (08:29 -0400)]
wscript fix for wavesaudio backend - use correct name for CoreM[iI][dD][iI] framework on Lion and other versions

9 years agonew timer-based GUI locking code
Paul Davis [Wed, 25 Jun 2014 12:28:36 +0000 (08:28 -0400)]
new timer-based GUI locking code

9 years agothere's no me in proaudio
Paul Davis [Tue, 24 Jun 2014 16:28:45 +0000 (12:28 -0400)]
there's no me in proaudio

9 years agolast piece of scroll-wheel checkin, oops
Ben Loftis [Tue, 24 Jun 2014 15:46:53 +0000 (10:46 -0500)]
last piece of scroll-wheel checkin, oops

9 years agoadd scroll wheel handler to canvas
Ben Loftis [Tue, 24 Jun 2014 15:32:41 +0000 (10:32 -0500)]
add scroll wheel handler to canvas

9 years agoactual style specs for lock dialog button
Paul Davis [Tue, 24 Jun 2014 15:26:33 +0000 (11:26 -0400)]
actual style specs for lock dialog button

9 years agoa bit more styling for that lock dialog
Paul Davis [Tue, 24 Jun 2014 15:26:21 +0000 (11:26 -0400)]
a bit more styling for that lock dialog

9 years agorename closed padlock icon
Paul Davis [Tue, 24 Jun 2014 15:02:59 +0000 (11:02 -0400)]
rename closed padlock icon

9 years agonew padlock icons (48x48)
Paul Davis [Tue, 24 Jun 2014 15:01:41 +0000 (11:01 -0400)]
new padlock icons (48x48)

9 years agoadd a modal lock dialog for better testing (and someone might find it useful, too)
Paul Davis [Tue, 24 Jun 2014 14:14:07 +0000 (10:14 -0400)]
add a modal lock dialog for better testing (and someone might find it useful, too)

9 years agoadd ability to save current action sensitivities and restore them, and to disable...
Paul Davis [Tue, 24 Jun 2014 13:56:08 +0000 (09:56 -0400)]
add ability to save current action sensitivities and restore them, and to disable all action sensitivity.

This is needed to be able to lock the application fully on OS X, where the global menu bar would still allow interaction
even when a modal dialog is displayed.

9 years agoplaying with oofus' preferences for selected region coloring
Paul Davis [Tue, 24 Jun 2014 13:54:51 +0000 (09:54 -0400)]
playing with oofus' preferences for selected region coloring

9 years agofix f6aaa16 (boost shared pointer)
Robin Gareus [Mon, 23 Jun 2014 23:08:50 +0000 (01:08 +0200)]
fix f6aaa16 (boost shared pointer)

9 years agoreturn of the zero line
Paul Davis [Mon, 23 Jun 2014 19:24:08 +0000 (15:24 -0400)]
return of the zero line

9 years agorevert drawing of rectified waves back to previous approach since it (might be) sligh...
Paul Davis [Mon, 23 Jun 2014 19:12:30 +0000 (15:12 -0400)]
revert drawing of rectified waves back to previous approach since it (might be) slightly more efficient and is simpler to understand; add comments

9 years agocompletely rethink waveform rendering (again)
Paul Davis [Mon, 23 Jun 2014 18:57:55 +0000 (14:57 -0400)]
completely rethink waveform rendering (again)

There are 3 possible components to draw at each x-axis position: the waveform "line", the zero line and an outline/clip indicator.
We have to decide which of the 3 to draw at each position, pixel by pixel. This makes the rendering less efficient but it is
the only way I can see to do this correctly.

9 years agoreset time axis view item name text color when selected status changes
Paul Davis [Mon, 23 Jun 2014 14:29:30 +0000 (10:29 -0400)]
reset time axis view item name text color when selected status changes

9 years agofix logic error that meant one side of the waveform outline is not drawn; draw zero...
Paul Davis [Mon, 23 Jun 2014 14:06:52 +0000 (10:06 -0400)]
fix logic error that meant one side of the waveform outline is not drawn; draw zero line before outline, for better effects with low amplitude waves

9 years agodon't let enumerated device list strings go out of scope.
Robin Gareus [Mon, 23 Jun 2014 10:16:35 +0000 (12:16 +0200)]
don't let enumerated device list strings go out of scope.

9 years agostatically allocate midi-options
Robin Gareus [Mon, 23 Jun 2014 09:56:58 +0000 (11:56 +0200)]
statically allocate midi-options

fixes possible segfault when the data in the vector
goes out of scope due to RVO.

9 years agofor backends w/o control, save a fake state with only the "active" attribute.
Robin Gareus [Mon, 23 Jun 2014 02:26:53 +0000 (04:26 +0200)]
for backends w/o control, save a fake state with only the "active" attribute.

This makes ardour start directly with external jack without asking if jack
was previously used. It also retains jackd settings if jackd was previously
started by ardour.

9 years agowhen exporting regions, use ::legalize_for_path() on the playlist name so that filena...
Paul Davis [Mon, 23 Jun 2014 01:58:07 +0000 (21:58 -0400)]
when exporting regions, use ::legalize_for_path() on the playlist name so that filenames are legal.

Also, use Glib::build_filename() rather than hardcoding / as the separator. How did this escape the search for this error?

9 years agoen/disable internal send+returns with tracks en/disable.
Robin Gareus [Sun, 22 Jun 2014 22:48:47 +0000 (00:48 +0200)]
en/disable internal send+returns with tracks en/disable.

9 years agoDo not allow to de/activate a track while the transport is rolling.
Robin Gareus [Sun, 22 Jun 2014 21:16:32 +0000 (23:16 +0200)]
Do not allow to de/activate a track while the transport is rolling.

roll_delay and latency are only re-calculated when the transport is stopped.
de/activating a track is also not RT-safe.

9 years agobutton click (release, to be precise) within the canvas drop zone cancels all object...
Paul Davis [Sun, 22 Jun 2014 19:24:11 +0000 (15:24 -0400)]
button click (release, to be precise) within the canvas drop zone cancels all object and track selections

9 years agofix latency-measurement dialog back-button.
Robin Gareus [Sun, 22 Jun 2014 16:21:10 +0000 (18:21 +0200)]
fix latency-measurement dialog back-button.

9 years agoALSA-backend: dedicated Midi-Buffer n-periods (only use for HW output)
Robin Gareus [Sun, 22 Jun 2014 16:20:22 +0000 (18:20 +0200)]
ALSA-backend: dedicated Midi-Buffer n-periods (only use for HW output)

9 years agomore canvas refactoring.
Paul Davis [Sun, 22 Jun 2014 15:41:05 +0000 (11:41 -0400)]
more canvas refactoring.

Remove Canvas::Layout, use Canvas::Container for the same purpose, move child-rendering into Item::render_children() so that it
could theoretically be used by any derived type.

9 years agoadd missing new files for canvas redesign
Paul Davis [Sun, 22 Jun 2014 13:53:14 +0000 (09:53 -0400)]
add missing new files for canvas redesign

9 years agoMerge branch 'canvasredesign' into cairocanvas
Paul Davis [Sun, 22 Jun 2014 13:34:39 +0000 (09:34 -0400)]
Merge branch 'canvasredesign' into cairocanvas

9 years agoexplicitly qualify cast to ArdourCanvas::Container so that it works.
Paul Davis [Sun, 22 Jun 2014 13:29:16 +0000 (09:29 -0400)]
explicitly qualify cast to ArdourCanvas::Container so that it works.

I assume that gcc is failing to complain about ambiguity with Gtk::Container even though there should
really be no ambiguity

9 years agoRename all 3 backends for the MSVC sln file
John Emmas [Sun, 22 Jun 2014 12:29:17 +0000 (13:29 +0100)]
Rename all 3 backends for the MSVC sln file

9 years agoRename dummy backend to match Tim's name
John Emmas [Sun, 22 Jun 2014 12:11:59 +0000 (13:11 +0100)]
Rename dummy backend to match Tim's name

9 years agoRename jack backend to match Tim's name
John Emmas [Sun, 22 Jun 2014 11:53:13 +0000 (12:53 +0100)]
Rename jack backend to match Tim's name

9 years agoRename waves backend to match Tim's name
John Emmas [Sun, 22 Jun 2014 11:51:43 +0000 (12:51 +0100)]
Rename waves backend to match Tim's name

9 years agouse newly factored canvas in gtk2_ardour
Paul Davis [Sat, 21 Jun 2014 15:44:22 +0000 (11:44 -0400)]
use newly factored canvas in gtk2_ardour

9 years agorefactor Canvas so that all Items have children; add Container abstract base class...
Paul Davis [Sat, 21 Jun 2014 15:43:42 +0000 (11:43 -0400)]
refactor Canvas so that all Items have children; add Container abstract base class; rename Group as "Layout" and retain only drawing semantics

9 years agovirtual abstraction of Alsa Raw+Seq
Robin Gareus [Sat, 21 Jun 2014 11:51:46 +0000 (13:51 +0200)]
virtual abstraction of Alsa Raw+Seq

9 years agoprepare ALSA sequencer
Robin Gareus [Sat, 21 Jun 2014 09:50:24 +0000 (11:50 +0200)]
prepare ALSA sequencer

9 years agoalsa sequencer device/port listing
Robin Gareus [Sat, 21 Jun 2014 09:49:40 +0000 (11:49 +0200)]
alsa sequencer device/port listing

9 years agofix some confusion when redrawing editor/mixer track/strip displays after track/bus...
Paul Davis [Sat, 21 Jun 2014 01:51:59 +0000 (21:51 -0400)]
fix some confusion when redrawing editor/mixer track/strip displays after track/bus deletion

The code relied on the idea that the order-key resync that occurs after deletion would change the order keys and thus cause
a redisplay. But since both the editor and mixer can initiate an order-key resync, the other window's resync will actually
do nothing (the order keys will already be correct). This led to the incorrect placement of material in the tracks canvas,
because the first resync triggered a redisplay while the route still existed, and then the second resync didn't cause a
redisplay (repositioning) but the canvas elements representing the track went away.

Fixed by forcing a redisplay in both editor and mixer if a route deletion is believed to be triggering a row deletion
in their underlying data models.

9 years agoensure that all waveviews have ALL their colors set accurately before first render
Paul Davis [Thu, 19 Jun 2014 19:06:48 +0000 (15:06 -0400)]
ensure that all waveviews have ALL their colors set accurately before first render

Avoids occasional bright red zero line drawn because the color(s) had not been reset correctly

9 years agoexplanatory comment
Paul Davis [Thu, 19 Jun 2014 17:47:53 +0000 (13:47 -0400)]
explanatory comment

9 years agocorrect conversion of drop y-position into trackview for drag-n-drop of external...
Paul Davis [Thu, 19 Jun 2014 17:45:05 +0000 (13:45 -0400)]
correct conversion of drop y-position into trackview for drag-n-drop of external files

9 years agono more stack smashing, renice debug messages
Robin Gareus [Thu, 19 Jun 2014 17:43:13 +0000 (19:43 +0200)]
no more stack smashing, renice debug messages

9 years agolatency measurement dialog updates:
Robin Gareus [Thu, 19 Jun 2014 17:42:59 +0000 (19:42 +0200)]
latency measurement dialog updates:

* distinguish errors: no ports and no engine.
* fix "No measurement results yet" message at successful end
* stop update callback

9 years agoengine-dialog: properly restore previous active state
Robin Gareus [Thu, 19 Jun 2014 17:42:46 +0000 (19:42 +0200)]
engine-dialog: properly restore previous active state

9 years agorework raw-midi drain strategy (workaround for sync devices)
Robin Gareus [Thu, 19 Jun 2014 17:42:19 +0000 (19:42 +0200)]
rework raw-midi drain strategy (workaround for sync devices)

9 years agofix port-unregister (on failed latency measurement)
Robin Gareus [Wed, 18 Jun 2014 18:53:43 +0000 (20:53 +0200)]
fix port-unregister (on failed latency measurement)

9 years agofix non-working cmd-Q on OS X. For some reason the shenanigans related to removing...
Paul Davis [Thu, 19 Jun 2014 17:18:42 +0000 (13:18 -0400)]
fix non-working cmd-Q on OS X. For some reason the shenanigans related to removing it from various menus as part of OS X standards breaks the accel system

9 years agochange the way font specifications are used in UI config files
Paul Davis [Thu, 19 Jun 2014 15:18:37 +0000 (11:18 -0400)]
change the way font specifications are used in UI config files

If no font family is specified, enforce use of Sans to match GTK behaviour (which we inadvertently relied on, it appears)

9 years agomodifications to region drag implementation
Paul Davis [Thu, 19 Jun 2014 15:16:27 +0000 (11:16 -0400)]
modifications to region drag implementation

(1) if we're dragging over the drop zone, then x-axis motion is irrelevant for threshold-of-move
(2) store original time axis view of a dragged region so that if we create a new track with the region drag, it can be the same height

9 years agovarious fixes for places that used get_font_for_style() ... converted to use UIConfig...
Paul Davis [Thu, 19 Jun 2014 03:49:07 +0000 (23:49 -0400)]
various fixes for places that used get_font_for_style() ... converted to use UIConfiguration::get_canvasvar_*Font()

9 years agoadd bold monospace font specs to canvas_vars/ardour3_ui_default.conf
Paul Davis [Thu, 19 Jun 2014 03:48:13 +0000 (23:48 -0400)]
add bold monospace font specs to canvas_vars/ardour3_ui_default.conf

9 years agouse new canvas cursor API to manage cursors while embedding audio
Paul Davis [Thu, 19 Jun 2014 13:25:49 +0000 (09:25 -0400)]
use new canvas cursor API to manage cursors while embedding audio

9 years agofix potential crash in Editor::set_canvas_cursor() if inadvertently passed a null...
Paul Davis [Thu, 19 Jun 2014 13:25:24 +0000 (09:25 -0400)]
fix potential crash in Editor::set_canvas_cursor() if inadvertently passed a null cursor (semantics are different on OS X vs. X Window)

9 years agoRemove (no longer needed) sources from an MSVC project
John Emmas [Thu, 19 Jun 2014 10:49:51 +0000 (11:49 +0100)]
Remove (no longer needed) sources from an MSVC project