|  Andrew Belt | 77c68c5602 | Fix correctness error in CaseInsensitiveCompare::operator() by rolling my own implementation. | 5 years ago | 
				
					
						|  Andrew Belt | e80beefba4 | Add AudioButton and MidiButton and Component Library subclasses with graphics. | 5 years ago | 
				
					
						|  Andrew Belt | 5e4124f66a | Rename bypassed to bypass everywhere. | 5 years ago | 
				
					
						|  Andrew Belt | f3c8262183 | Make Module always deserialize "id", "leftModuleId", and "rightModuleId". Due to this, make pasting and cloning modules delete these properties from the JSON before `fromJson()` is called. | 5 years ago | 
				
					
						|  Andrew Belt | 06c6590b51 | Implement Module::ExpanderChangeEvent event trigger. | 5 years ago | 
				
					
						|  Andrew Belt | fe9fbf8e90 | Make `Exception` subclass `std::exception` instead of `std::runtime_error`. | 5 years ago | 
				
					
						|  Andrew Belt | 4edd00d855 | Don't use atomic for WeakPtr reference count. | 5 years ago | 
				
					
						|  Andrew Belt | 94587e87ba | Add WeakPtr. Use WeakPtr in ModuleWidget context menu. Fix crash when displaying preset menu when the preset folder does not exist. | 5 years ago | 
				
					
						|  Andrew Belt | b146f766b9 | Refactor plugin syncing in `library::`. | 5 years ago | 
				
					
						|  Andrew Belt | 7a95b6829c | Add "checkAppUpdates" setting. | 5 years ago | 
				
					
						|  Andrew Belt | a77f47dc52 | Clean up `library::` app updater a bit. | 5 years ago | 
				
					
						|  Andrew Belt | 155ae4ead6 | Rename `updater::` to `library::`. Move VCV Library synchronization code from `plugin::` to `library::`. | 5 years ago | 
				
					
						|  Andrew Belt | 3bdf4bf06c | Take screenshot when patch is saved (Currently disabled). | 5 years ago | 
				
					
						|  Andrew Belt | 9430ed8a65 | Clean up autosave directory of removed modules when saving a patch and closing. Check for magic number of Zstandard format to find out whether a patch is legacy pre-v2. | 5 years ago | 
				
					
						|  Andrew Belt | 232d2c10e5 | Add `compressionLevel` argument to `system::archiveFolder()`. | 5 years ago | 
				
					
						|  Andrew Belt | f887faea79 | Fix module and cable ID variables that were `int` instead of `int64_t`. Add `Engine::getNumCables()` and `Engine::getCableIds()`. | 5 years ago | 
				
					
						|  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 |