Tim Mayberry [Tue, 20 Sep 2016 12:19:55 +0000 (22:19 +1000)]
Use PBD::to_string() from pbd/string_convert.h in JACK utils
Use pbd/string_convert.h API instead of std::ostream for numeric formatting to
remain locale independent and not have to use a LocaleGuard.
Tim Mayberry [Thu, 8 Sep 2016 00:19:12 +0000 (10:19 +1000)]
Use PBD::string_to/to_string when de/serializing in AutomationList class
This avoids requiring a LocaleGuard to get the correct numeric formatting and
saves/restores the automation data to the precision required for roundtrip
equality.
Tim Mayberry [Wed, 7 Sep 2016 13:11:48 +0000 (23:11 +1000)]
Remove unused header include in ARDOUR::Amp source file
Tim Mayberry [Wed, 7 Sep 2016 13:07:36 +0000 (23:07 +1000)]
Use PBD::string_to/to_string in IO::find_possible_bundle
Possible issue with numeric formatting using std::streams in locales with
grouping. Although I don't think it would be an issue in this case use locale
independant alternative for numeric formatting anyway.
Tim Mayberry [Wed, 7 Sep 2016 12:56:50 +0000 (22:56 +1000)]
Use PBD::to_string instead of std::ostream when setting up video server url
To avoid issues with locales that use grouping/thousands separators.
Tim Mayberry [Tue, 6 Sep 2016 11:56:08 +0000 (21:56 +1000)]
Use PBD::to_string to convert period count in EngineControl class
The functionality is the same so might as well use it.
Tim Mayberry [Tue, 6 Sep 2016 11:39:27 +0000 (21:39 +1000)]
Use PBD::to_string to convert bufsize to string in EngineControl class
string_compose uses std::ostream/stringstream which will insert thousands
separators in some locales. This was not a problem when LocaleGuard set the
global C++ locale to "C"
Tim Mayberry [Sun, 4 Sep 2016 23:28:50 +0000 (09:28 +1000)]
Use PBD::string_to functions in VideoUtils::video_query_info
LocaleGuard is in use so float <=> string conversions must be expected in C
locale format
Tim Mayberry [Tue, 6 Sep 2016 04:27:10 +0000 (14:27 +1000)]
Use snprintf instead of std::stringstream when converting color values to strings
std::ostream/stringstream will use the current locale to determine the numeric
formatting. If the locale uses grouping then thousands separators will be
inserted in the output which produces an invalid color string in
UIConfiguration::reset_gtk_theme() and when converting colors to strings in
UIConfiguration::store_color_theme()
This has not been a problem so far because it appears that LocaleGuard does not
reset the LC_NUMERIC value for the global C++ locale. So if a LocaleGuard is
created at any time before these functions are called(even if it goes out of
scope) the numeric formatting used by std::streams will use the "C" locale
formatting facets.
Tim Mayberry [Sat, 15 Apr 2017 02:13:39 +0000 (12:13 +1000)]
Use XMLNode::get/set_property API in Faderport surface
Tim Mayberry [Wed, 31 Aug 2016 05:38:55 +0000 (15:38 +1000)]
Remove now unused PBD::string_is_affirmative function
The equivalent function is now PBD::string_to<bool>
Tim Mayberry [Tue, 30 Aug 2016 12:34:40 +0000 (22:34 +1000)]
Use PBD::string_to<bool> in MidiTimeAxisView class
As the conversion was performed with PBD::to_string
Tim Mayberry [Tue, 30 Aug 2016 12:37:34 +0000 (22:37 +1000)]
Use PBD::string_to<bool> in RouteTimeAxisView class
As they were converted from bool to string using PBD::to_string
Tim Mayberry [Tue, 30 Aug 2016 11:53:50 +0000 (21:53 +1000)]
Remove conditional checks that are always true in RouteTimeAxisView class
Tim Mayberry [Wed, 31 Aug 2016 04:45:16 +0000 (14:45 +1000)]
Use PBD::string_to<bool>() in GenericMidiControlProtocol class
Equivalent to PBD::string_is_affirmative()
Tim Mayberry [Wed, 31 Aug 2016 05:37:03 +0000 (15:37 +1000)]
Use PBD::string_to<bool> in legacy ARDOUR::Route methods
Tim Mayberry [Wed, 31 Aug 2016 05:36:01 +0000 (15:36 +1000)]
Use PBD::string_to<bool> in ARDOUR::Processor class
Tim Mayberry [Wed, 31 Aug 2016 05:35:07 +0000 (15:35 +1000)]
Use PBD::string_to<bool> in AudioPlaylist class
Tim Mayberry [Tue, 30 Aug 2016 12:36:45 +0000 (22:36 +1000)]
Use AxisView::get/set_gui_property API in RouteTimeAxisView class
Tim Mayberry [Tue, 30 Aug 2016 12:33:39 +0000 (22:33 +1000)]
Use AxisView::get/set_gui_property API in MixerStrip class
Tim Mayberry [Tue, 30 Aug 2016 12:32:13 +0000 (22:32 +1000)]
Use AxisView::get_gui_property API in AutomationTimeAxis class
Tim Mayberry [Tue, 30 Aug 2016 12:29:58 +0000 (22:29 +1000)]
Use AxisView::get_gui_property in AudioRegionView class
Tim Mayberry [Thu, 1 Sep 2016 11:29:57 +0000 (21:29 +1000)]
Use AxisView::get_gui_property API in TimeAxisView class
Tim Mayberry [Tue, 30 Aug 2016 12:33:00 +0000 (22:33 +1000)]
Use AxisView::get_gui_property API in AxisView class
Tim Mayberry [Tue, 30 Aug 2016 11:07:24 +0000 (21:07 +1000)]
Add AxisView::get_gui_property method, use PBD::string_to<T> for string conversion
Tim Mayberry [Tue, 30 Aug 2016 10:02:26 +0000 (20:02 +1000)]
Use PBD::to_string to convert non-string types in AxisView::set_gui_property
Tim Mayberry [Tue, 30 Aug 2016 09:59:49 +0000 (19:59 +1000)]
Let AxisView::set_gui_property perform type conversion in TimeAxisView::set_height
Tim Mayberry [Tue, 30 Aug 2016 08:59:05 +0000 (18:59 +1000)]
Remove unused XMLNode::add_property methods
These are now unused and functionality is replaced by XMLNode::set_property
set_property is a better name as a node can only have properties with unique
names and the property will be set or reset(if it already exists). Changing the
name also makes it easier to transition and test the new API.
Tim Mayberry [Mon, 26 Sep 2016 13:05:47 +0000 (23:05 +1000)]
Use XMLNode::set_property API in xml tests
Tim Mayberry [Tue, 30 Aug 2016 04:01:52 +0000 (14:01 +1000)]
Use XMLNode::set_property API in copy-mixer Session utility
Tim Mayberry [Tue, 30 Aug 2016 07:16:34 +0000 (17:16 +1000)]
Use XMLNode::get_property in AudioClock class
Tim Mayberry [Mon, 29 Aug 2016 13:34:13 +0000 (23:34 +1000)]
Use XMLNode::get/set_property API in VideoTimeLine class
Tim Mayberry [Mon, 29 Aug 2016 12:04:57 +0000 (22:04 +1000)]
Use XMLNode::set_property API in VideoMonitor class
Tim Mayberry [Mon, 29 Aug 2016 12:02:11 +0000 (22:02 +1000)]
Use XMLNode::set_property API in UIConfiguration class
Tim Mayberry [Mon, 29 Aug 2016 11:33:17 +0000 (21:33 +1000)]
Use XMLNode::get/set_property API in SelectionMemento class
Tim Mayberry [Wed, 7 Dec 2016 04:41:46 +0000 (14:41 +1000)]
Use XMLNode::get/set_property API in Selection class
There were many possible value truncations occuring and some precision loss
with the double conversions.
Tim Mayberry [Mon, 29 Aug 2016 10:16:08 +0000 (20:16 +1000)]
Use XMLNode::get/set_property API in ProcessorBox and ProcessorWindowProxy classes
Tim Mayberry [Mon, 29 Aug 2016 09:51:55 +0000 (19:51 +1000)]
Use XMLNode::get/set_property API in ProcessorBox class
Tim Mayberry [Mon, 29 Aug 2016 08:50:04 +0000 (18:50 +1000)]
Use XMLNode::get/set_property API in MeterBridge class
Tim Mayberry [Mon, 29 Aug 2016 08:14:47 +0000 (18:14 +1000)]
Use XMLNode::set_property API in LuaInstance class
Didn't seem worth converting from XMLNode::property API to
XMLNode::get_property and there may be some ordering issues.
Tim Mayberry [Mon, 29 Aug 2016 08:11:04 +0000 (18:11 +1000)]
Use XMLNode::get/set_property API in LocationUI class
Tim Mayberry [Mon, 29 Aug 2016 08:06:29 +0000 (18:06 +1000)]
Use XMLNode::get/set_property API in Keyboard class
Tim Mayberry [Tue, 30 Aug 2016 12:31:25 +0000 (22:31 +1000)]
Use XMLNode::get_property API in AutomationTimeAxis class
Tim Mayberry [Mon, 29 Aug 2016 07:54:11 +0000 (17:54 +1000)]
Use XMLNode::set_property API in GUIObject class
Tim Mayberry [Mon, 29 Aug 2016 07:18:45 +0000 (17:18 +1000)]
Use XMLNode::get/set_property in ExportVideoDialog class
Tim Mayberry [Sun, 28 Aug 2016 23:36:10 +0000 (09:36 +1000)]
Use XMLNode::get/set_property API in EditorRulers class
Tim Mayberry [Sun, 28 Aug 2016 23:27:25 +0000 (09:27 +1000)]
Use XMLNode::get/set_property API in EditorRegions class
Tim Mayberry [Sun, 28 Aug 2016 23:12:35 +0000 (09:12 +1000)]
Use XMLNode::set_property API in ARDOUR_UI class
Tim Mayberry [Sun, 28 Aug 2016 22:58:39 +0000 (08:58 +1000)]
Use XMLNode::get/set_property API in ARDOUR_UI class
Tim Mayberry [Sun, 28 Aug 2016 22:57:43 +0000 (08:57 +1000)]
Add AudioClock::on() method as convenience method for serialization
Tim Mayberry [Sat, 27 Aug 2016 04:15:18 +0000 (14:15 +1000)]
Use XMLNode::get/set_property API in Mixer_UI class
Tim Mayberry [Sat, 20 Aug 2016 13:45:44 +0000 (23:45 +1000)]
Remove unused header include in video_timeline.cc
Tim Mayberry [Sat, 27 Aug 2016 03:44:57 +0000 (13:44 +1000)]
Use XMLNode::get/set_property API in Editor class
Tim Mayberry [Sat, 27 Aug 2016 01:14:54 +0000 (11:14 +1000)]
Use XMLNode::get/set_property API in EngineDialog class
Fixes many of the type conversions but I doubt any would have been an issue.
LocaleGuard is no longer necessary
Tim Mayberry [Sat, 27 Aug 2016 03:44:21 +0000 (13:44 +1000)]
Add PBD::to_string/string_to template specialisations for types in editing.h
Tim Mayberry [Sat, 27 Aug 2016 03:43:35 +0000 (13:43 +1000)]
Add PBD::to_string/string_to template specialisations for types in enums.h
Tim Mayberry [Sat, 20 Aug 2016 13:20:57 +0000 (23:20 +1000)]
Use locale independent string conversion functions in SVAModifier class
Tim Mayberry [Sun, 28 Aug 2016 13:49:46 +0000 (23:49 +1000)]
Use XMLNode::get/set_property API in Gtkmm2ext::WindowProxy class
Tim Mayberry [Sun, 28 Aug 2016 13:43:02 +0000 (23:43 +1000)]
Use XMLNode::get/set_property API in Gtkmm2ext::Tearoff class
Tim Mayberry [Sun, 28 Aug 2016 13:33:46 +0000 (23:33 +1000)]
Use XMLNode::get/set_property API in Gtkmm2ext::Tabbable class
Tim Mayberry [Sun, 28 Aug 2016 13:31:10 +0000 (23:31 +1000)]
Use XMLNode::get/set_property API in Gtkmm2ext::Keyboard class
Tim Mayberry [Sun, 28 Aug 2016 13:30:33 +0000 (23:30 +1000)]
Use XMLNode::set_property API in Gtkmm2ext::Bindings class
Tim Mayberry [Wed, 7 Dec 2016 05:48:57 +0000 (15:48 +1000)]
Use XMLProperty::get/set_property API in CC121 Surface module
Tim Mayberry [Tue, 30 Aug 2016 02:11:03 +0000 (12:11 +1000)]
Use XMLNode::set_property API in WiimoteControlProtocol class
Tim Mayberry [Tue, 18 Apr 2017 10:00:12 +0000 (20:00 +1000)]
Use XMLNode::get/set_property in Push2 surface
Fix push2 property names to use hyphen word separator.
Tim Mayberry [Sun, 4 Sep 2016 04:15:16 +0000 (14:15 +1000)]
Use XMLNode::set_property in OSC_GUI class
Tim Mayberry [Tue, 30 Aug 2016 02:08:12 +0000 (12:08 +1000)]
Use XMLNode::get/set_property API in OSC class
Tim Mayberry [Wed, 31 Aug 2016 05:38:04 +0000 (15:38 +1000)]
Use XMLNode::get_property API in Mackie DeviceInfo class
Tim Mayberry [Tue, 30 Aug 2016 01:51:18 +0000 (11:51 +1000)]
Use XMLNode::get/set_property API in mackie Surface class
Tim Mayberry [Tue, 30 Aug 2016 01:41:11 +0000 (11:41 +1000)]
Use XMLNode::get/set_property API in MackieControlProtocol class
Tim Mayberry [Tue, 30 Aug 2016 01:05:37 +0000 (11:05 +1000)]
Use XMLNode::get/set_property API in mackie surface DeviceProfile class
Tim Mayberry [Tue, 30 Aug 2016 00:57:18 +0000 (10:57 +1000)]
Use XMLNode::get/set_property API in MIDIControllable class
Tim Mayberry [Tue, 30 Aug 2016 00:41:51 +0000 (10:41 +1000)]
Use XMLNode::get/set_property API in GenericMidiControlProtocol class
Tim Mayberry [Tue, 30 Aug 2016 00:22:01 +0000 (10:22 +1000)]
Use XMLNode::get/set_property API in FaderPort class
Tim Mayberry [Mon, 29 Aug 2016 13:40:33 +0000 (23:40 +1000)]
Use XMLNode::get/set_property API in ARDOUR::ControlProtocol class
Tim Mayberry [Sun, 28 Aug 2016 13:52:11 +0000 (23:52 +1000)]
Use XMLNode::set_property API in all Panner classes
Tim Mayberry [Wed, 7 Dec 2016 06:37:59 +0000 (16:37 +1000)]
Use XMLProperty::get/set_property API in PortManager class
Tim Mayberry [Sun, 28 Aug 2016 12:07:50 +0000 (22:07 +1000)]
Use XMLNode::get/set_property API in ARDOUR::VCA class
Tim Mayberry [Sun, 28 Aug 2016 12:02:07 +0000 (22:02 +1000)]
Use XMLNode::get/set_property API in ARDOUR::UserBundle class
Tim Mayberry [Sun, 28 Aug 2016 11:54:14 +0000 (21:54 +1000)]
Use XMLNode::get/set_property API in ARDOUR::Track class
Tim Mayberry [Sun, 28 Aug 2016 11:41:22 +0000 (21:41 +1000)]
Use XMLNode::get/set_property API in ARDOUR::Source class
Tim Mayberry [Sun, 28 Aug 2016 11:19:27 +0000 (21:19 +1000)]
Use XMLNode::set_property API in ARDOUR::SMFSource class
Tim Mayberry [Tue, 21 Feb 2017 22:52:56 +0000 (08:52 +1000)]
Use XMLNode::get/set_property API in ARDOUR::SlavableAutomationControl class
Tim Mayberry [Sun, 28 Aug 2016 11:16:41 +0000 (21:16 +1000)]
Use XMLNode::get/set_property API in ARDOUR::Slavable class
Tim Mayberry [Sun, 28 Aug 2016 11:13:19 +0000 (21:13 +1000)]
Use XMLNode::set_property in ARDOUR::SideChain class
Tim Mayberry [Sun, 28 Aug 2016 11:12:16 +0000 (21:12 +1000)]
Use XMLNode::get/set_property API in ARDOUR::Session class
Tim Mayberry [Sun, 28 Aug 2016 11:07:33 +0000 (21:07 +1000)]
Use XMLNode::get/set_property API in ARDOUR::RouteGroup
Tim Mayberry [Sun, 28 Aug 2016 10:47:38 +0000 (20:47 +1000)]
Use XMLNode::get/set_property API in ARDOUR::Return class
Tim Mayberry [Sun, 28 Aug 2016 10:43:17 +0000 (20:43 +1000)]
Use XMLNode::get/set_property API in ARDOUR::PresentationInfo class
Tim Mayberry [Sun, 28 Aug 2016 10:33:20 +0000 (20:33 +1000)]
Use XMLNode::get/set_property API in ARDOUR::PortInsert class
Tim Mayberry [Sun, 28 Aug 2016 10:22:35 +0000 (20:22 +1000)]
Use XMLNode::get/set_property API in ARDOUR::Port class
Tim Mayberry [Sun, 28 Aug 2016 10:17:48 +0000 (20:17 +1000)]
Use XMLNode::get/set_property API in ARDOUR::PlaylistSource class
Tim Mayberry [Sun, 28 Aug 2016 10:02:32 +0000 (20:02 +1000)]
Use XMLNode::get/set_property API in ARDOUR::Playlist class
Tim Mayberry [Sun, 28 Aug 2016 09:02:27 +0000 (19:02 +1000)]
Use XMLNode::get/set_property API in ARDOUR::PhaseControl class
Tim Mayberry [Sun, 28 Aug 2016 08:58:42 +0000 (18:58 +1000)]
Use XMLNode::get/set_property API in ARDOUR::MuteMaster class
Tim Mayberry [Sun, 28 Aug 2016 08:52:31 +0000 (18:52 +1000)]
Use XMLNode::get/set_property API in ARDOUR::MonitorChoice class
Tim Mayberry [Sun, 28 Aug 2016 08:47:18 +0000 (18:47 +1000)]
Use XMLNode::get/set_property API in ARDOUR::MidiTrack class
Tim Mayberry [Sun, 28 Aug 2016 07:56:16 +0000 (17:56 +1000)]
Use XMLNode::get/set_property API in ARDOUR::MidiSource class
Tim Mayberry [Sun, 28 Aug 2016 03:57:05 +0000 (13:57 +1000)]
Use XMLNode::get/set_property in ARDOUR::MIDISceneChange class
Tim Mayberry [Sun, 28 Aug 2016 03:45:49 +0000 (13:45 +1000)]
Use XMLNode::get/set_property API in ARDOUR::MidiModel class