266 Commits (30a31e858b224d2ebcbd487b917670b805fd2122)

Author SHA1 Message Date
  Andrew Belt 30a31e858b Rename RackWidget::getModuleMoveAction() back to getModuleDragAction() for ABI compatibility. 3 years ago
  Andrew Belt 88db0b74e9 Improve RackWidget::setModulePosForce() with a few intuitive special cases. 3 years ago
  Andrew Belt 957350c9ff In RackWidget::setModulePosForce(), if module old position is to the left of the new position, shove other modules to the left instead of the right. 3 years ago
  Andrew Belt 5beab691e6 Constrict dragged module to left/right of other modules. 3 years ago
  Andrew Belt e19347d6da Use setModulePosForce() in RackWidget::addModuleAtMouse(). Push ModuleMove action when calling addModuleAtMouse(). 3 years ago
  Andrew Belt 9c512458cf Refactor RackWidget::addModuleAtMouse(). 3 years ago
  Andrew Belt f4eae161e8 Change RackWidget::setModulePosForce() behavior to insert module between other modules, remove gaps, and shove other modules to the right only. 3 years ago
  Andrew Belt f79c7dc75f Simpilfy RackWidget::onButton(). 3 years ago
  Andrew Belt 74f372ec3f Make force-moving move other modules to their "old" position when moving began. 3 years ago
  Andrew Belt 6a7bd37389 Remove ModuleWidget::oldPos, store old module positions in RackWidget::Internal. 3 years ago
  Andrew Belt 7032be4725 Don't re-adjust module positions based on patch bounding box when serializing RackWidget. 3 years ago
  Andrew Belt 8e7acf9b74 Log all calls to Model::createModule() and createModuleWidget(). 3 years ago
  Andrew Belt ffe340f4b2 Use %lld with long long type instead of PRId64 for printf. 3 years ago
  Andrew Belt 02e9c1dd65 Move Import Selection menu item to File menu bar. 3 years ago
  Andrew Belt 7317ac5afd If input or output PortWidgets do not exist when adding a CableWidget, delete the CableWidget and remove Cable from Engine. 3 years ago
  Andrew Belt 6c81ba466f Add RackWidget::getCompleteCablesOnPort(). Use it in PortWidget and ModuleWidget to prevent crashes when incomplete cables exist. 3 years ago
  Andrew Belt 90c43226cd Clean up doc comments. 3 years ago
  Andrew Belt 0276fde5ab Clean up app:: doc comments. Make some class variables internal. 3 years ago
  Andrew Belt e6f5c62968 Add RackWidget::get/setNextCableColorId(). 3 years ago
  Andrew Belt 3ec47bf575 Make RackWidget::incompleteCable internal with getter. 3 years ago
  Andrew Belt 19f806dbad Implement PortCreateCableItem and PortCableItem. 3 years ago
  Andrew Belt a786493ba1 Swap "Duplicate" and "Duplicate with cables" key commands. Add menu item to module and Edit menus. 3 years ago
  Andrew Belt 79036513c4 Resize mouse spotlight based on RackWidget zoom level. 3 years ago
  Andrew Belt f374dd4c29 Add radial halo around mouse cursor in RackWidget. 3 years ago
  Andrew Belt b28819a99d Make LedDisplay draw on layer 1. Add translucent rectangle over ModuleContainer and draw lights on layer 1 instead of using nvgGlobalTint(). 3 years ago
  Andrew Belt aace0a075b Draw LightWidget light and halo with drawLayer(args, 1) instead of resetting nvgGlobalTint(). 3 years ago
  Andrew Belt 0839a7c041 Draw ModuleWidget shadow with drawLayer() instead of a custom drawShadow() method. 3 years ago
  Andrew Belt cf2ca17156 Add Widget::drawLayer(). 3 years ago
  Andrew Belt 357c0be7a1 Remove "Duplicate with cables" item from module and module selection 3 years ago
  Andrew Belt 35930bf7e9 Add "Duplicate with cables" menu item to module and module selections. 3 years ago
  Andrew Belt 967d99db97 Add return value to eachNearestGridPos() so compilers don't complain. 3 years ago
  Andrew Belt 95ed0bb5c5 Fix module paste key command. Fix crash when deleting module selection. 3 years ago
  Andrew Belt f1635cd96b Add Module::jsonStripIds(). 3 years ago
  Andrew Belt ea09f6df29 Use `RackWidget::selectedModules` set rather than `ModuleWidget::selected` bool. 3 years ago
  Andrew Belt 196e18ba0c Rename ModuleBrowser to Browser. 3 years ago
  Andrew Belt b63c9406eb Duplicate cables attached to inputs in RackWidget::cloneSelectionAction(). 3 years ago
  Andrew Belt 094382778f Set JSON real precision to double (17 digits). 3 years ago
  Andrew Belt f87f6af45b Use nearest free position in RackWidget::fromJson() so resized modules don't overlap. 3 years ago
  Andrew Belt b605c2c258 Don't close menu when Ctrl-clicking items. Add argument to MenuItem helpers to disable this behavior. 3 years ago
  Andrew Belt 74fdd9cb84 Rename "Load selection" menu item to "Import selection". 3 years ago
  Andrew Belt c8f090aa1f Add and implement RackWidget::loadSelection() and saveSelection(). 3 years ago
  Andrew Belt b341c90cc2 Clean up RackWidget selection method names. Add unimplemented RackWidget::loadSelectionDialog() and saveSelectionDialog(). 3 years ago
  Andrew Belt eb1048f6d0 Add names for a couple history actions. 3 years ago
  Andrew Belt 305e6f0a5c Clean up eachNearestGridPos in RackWidget. 3 years ago
  Andrew Belt 69e4bb9deb Reserve vectors in RackWidget methods to avoid reallocations. 3 years ago
  Andrew Belt 0e0b842749 Implement "cables" half of RackWidget::pasteJsonAction(). 3 years ago
  Andrew Belt 19ea6d0e81 Don't remove ModuleWidget while holding Delete, only pressing/repeating. 3 years ago
  Andrew Belt fe4191f9e5 Implement RackWidget::cloneSelectedModulesAction(). 3 years ago
  Andrew Belt 76331f350c Implement the "modules" half of RackWidget::pasteJsonAction(). 3 years ago
  Andrew Belt 4fb2c9ac7c Add RackWidget::fromJsonAction(), ModuleWidget::fromJsonAction(), and replace CableWidget::toJson() with CableWidget::mergeJson(). 3 years ago