|  Andrew Belt | 50747839d4 | Use randomly-generated 53-bit IDs for Module and Cable. | 5 years ago | 
				
					
						|  Andrew Belt | 8d908a0a55 | Add system::join(). Add asset::module(). | 5 years ago | 
				
					
						|  Andrew Belt | 6d1795ee35 | Test new system:: functions. Make system:: filesystem functions throw Exception on error. Add system::getCanonical(). | 5 years ago | 
				
					
						|  Andrew Belt | 3fbd0f77a9 | Move string::absolute, directory, filename, filenameBase, and filenameExtension to system::getAbsolute, getDirectory, getFilename, getStem, and getExtension. Reimplement most system:: functions using std::experimental::filesystem. Add system::doesExist, getFileSize, and getTempDir. | 5 years ago | 
				
					
						|  Andrew Belt | df544700b9 | Remove libzip, zlib. Remove string::compress() and uncompress(). Remove system::unzipToFolder(). | 5 years ago | 
				
					
						|  Andrew Belt | 8a50d39b7f | Make system::archiveFolder and unarchiveToFolder work on Windows with Unicode. Rename UTF8toUTF16 to U8toU16 and switch back to std::wstring
instead of std::u16string. | 5 years ago | 
				
					
						|  Andrew Belt | 0ded01c228 | Add system::unarchiveToFolder() and archiveFolder(). Begin using `std::experimental::filesystem`. | 5 years ago | 
				
					
						|  Andrew Belt | 3265e33802 | Add rough code for synchronizing module whitelist from VCV Library. | 5 years ago | 
				
					
						|  Andrew Belt | d85856eccc | Add `FramebufferWidget::dirtyOnSubpixelChange` setting. Disable it for the FramebufferWidget that contains the RackRail. | 5 years ago | 
				
					
						|  Andrew Belt | c2e7ee4f28 | Change `settings::moduleWhitelist` from a map of vectors to a map of sets. | 5 years ago | 
				
					
						|  Andrew Belt | 76ece72ade | Add `rack::Exception` catching to midi. Add exception throwing to RtMidi driver. Add `rack::getWithDefault()` to common.hpp. | 5 years ago | 
				
					
						|  Andrew Belt | 3e0c375a89 | Change `audio::Device::getSampleRates()` and `getBlockSizes()` to return a set instead of a vector. | 5 years ago | 
				
					
						|  Andrew Belt | c140186885 | Add exception handling to audio::Port and RtAudioDevice. Add more Port methods that wrap Device/Driver methods. | 5 years ago | 
				
					
						|  Andrew Belt | c9df984896 | Add operator overloads for math::Vec. | 5 years ago | 
				
					
						|  Andrew Belt | c9bd5e9a3c | Refactor Window methods for getting frame times. | 5 years ago | 
				
					
						|  Andrew Belt | 16a7f778de | Add event::Event::unconsume(). | 5 years ago | 
				
					
						|  Andrew Belt | 0d4fc39854 | Add documentation to some math functions. | 5 years ago | 
				
					
						|  Andrew Belt | 2d253fe2fb | Make scrollbar mouse interaction similar to modern OS behavior | 5 years ago | 
				
					
						|  Andrew Belt | b6382f6697 | Add `Widget::getRelativeZoom()` and `getAbsoluteZoom()`. | 5 years ago | 
				
					
						|  Andrew Belt | 6285f3f222 | Add documentation to `engine::Module::ProcessArgs` | 5 years ago | 
				
					
						|  Andrew Belt | d84110e4ee | Make module info context menu similar to VCV Library page. | 5 years ago | 
				
					
						|  Andrew Belt | 624dcec8fd | Do not force Port alignment to 32 bytes. | 5 years ago | 
				
					
						|  Andrew Belt | 7908dd8b9f | Add get and set methods to Vec1. Add helper methods to Widget. Refactor ScrollWidget and ScrollBar. | 5 years ago | 
				
					
						|  Andrew Belt | 80d08ec15c | Omit duplicate tags in Model. | 5 years ago | 
				
					
						|  Andrew Belt | c9a08c7b24 | Add CableWidget::releaseCable() and ModuleWidget::releaseModule(). | 5 years ago | 
				
					
						|  Andrew Belt | 8528dcc1d6 | Make string::UTF16toUTF8 and UTF16toUTF8 Windows-only, and use WideCharToMultiByte/MultiByteToWideChar instead of C++11. | 5 years ago | 
				
					
						|  Andrew Belt | dd0e670050 | Fix wchar_t/char16_t distinction on Windows. | 5 years ago | 
				
					
						|  Andrew Belt | c8e2b5fc4a | Move most FramebufferWidget member fields to an opaque pointer. | 5 years ago | 
				
					
						|  Andrew Belt | 0cefd1138b | Replace event::Zoom with event::Dirty. | 5 years ago | 
				
					
						|  Andrew Belt | 28666a57fc | Remove ability to set native parent of Window in this branch. | 5 years ago | 
				
					
						|  Andrew Belt | 7577d49c39 | Add native parent handle argument to Window constructor. | 5 years ago | 
				
					
						|  Andrew Belt | 2bd9d590dc | Add Mouse device to Computer keyboard/mouse MIDI driver. | 5 years ago | 
				
					
						|  Andrew Belt | b4d66ae15f | Allow midi::Output::channel to be set to -1, which disables automatically setting outbound MIDI messages. | 5 years ago | 
				
					
						|  Andrew Belt | fe8cc2874e | Use generic type for literals in ODE algorithms. | 5 years ago | 
				
					
						|  Andrew Belt | e457294889 | Change string::fromWstring to UTF16toUTF8. Change string::toWstring to UTF8toUTF16. Replace std::wstring to std::u16string and wchar_t to char16_t. | 5 years ago | 
				
					
						|  Andrew Belt | 804135c678 | Add dsp::MidiGenerator::setTimestamp(). | 5 years ago | 
				
					
						|  Andrew Belt | abde7d983f | Add Engine::getFrameTime() and getStepDuration(). | 5 years ago | 
				
					
						|  Andrew Belt | b3a3b1cdbd | Add system::get/setWorkingDirectory() which fixes the Windows build. | 5 years ago | 
				
					
						|  Andrew Belt | 972cd587f7 | Don't display "1_", "42_", "001_", etc at the beginning of preset filenames. | 5 years ago | 
				
					
						|  Andrew Belt | 64cc9dddb0 | Add Module::configButton() for configuring momentary switches (which I'll now call buttons). | 5 years ago | 
				
					
						|  Andrew Belt | 6f7f0cc7b3 | Cache modules and cables in engine by ID. Add lock to Engine::reset/randomize/bypassModule(). Remove lock from Engine::get/setParam and get/setSmoothParam. | 5 years ago | 
				
					
						|  Andrew Belt | 83b7c68cae | Improve thread safety of ring buffers. | 5 years ago | 
				
					
						|  Andrew Belt | feece06fbb | Add event::KeyBase::keyName, which fixes key commands on AZERTY and Dvorak. Add lots of documentation to event::KeyBase. | 5 years ago | 
				
					
						|  Andrew Belt | b8d47b5378 | Add Engine::getNumModules() and getModuleIds() methods. | 5 years ago | 
				
					
						|  Andrew Belt | a808849a26 | Add function name to logger. | 5 years ago | 
				
					
						|  Andrew Belt | 05427d938b | Overhaul threading model for Engine using a shared mutex based design. | 5 years ago | 
				
					
						|  Andrew Belt | 537b64d011 | Remove engine pausing as it no longer makes sense with the new "external stepping" engine architecture. | 5 years ago | 
				
					
						|  Andrew Belt | 9ea49664bb | Copy cable color when cloning cables with Ctrl+click. | 5 years ago | 
				
					
						|  Andrew Belt | e98bd151d3 | Move some vector.hpp functions to functions.hpp. | 5 years ago | 
				
					
						|  Andrew Belt | a04018a330 | Change `movemask(int32_4)` to operate on elements rather than bytes. Tweak Vector documentation and clean up syntax. | 5 years ago |