Commit Graph

100 Commits

Author SHA1 Message Date
Robbert van der Helm 0e3b5af94e Fully implement IAudioPresentationLatency
Now we support all VST 3.1.0 interfaces.
2021-01-04 22:33:44 +01:00
Robbert van der Helm 9983f81875 Fully implement IComponentHandler2 2021-01-04 21:56:14 +01:00
Robbert van der Helm 8924124abb Fully implement IParameterFinder
With this we're at VST 3.0.2 support.
2021-01-03 23:46:13 +01:00
Robbert van der Helm fb6e5ab33f Fully implement IMidiMapping 2021-01-02 23:54:01 +01:00
Robbert van der Helm a8a0e325fe Fully implement INoteExpressionCOntroller 2021-01-02 18:40:34 +01:00
Robbert van der Helm 34f8d3b1d2 Update the copyright notices for 2021 2021-01-01 18:54:02 +01:00
Robbert van der Helm 3553b080fe Implement IUnitData
With this all VST 3.0.0 interfaces are finally supported.
2020-12-29 22:00:22 +01:00
Robbert van der Helm 38211d0fb3 Implement IProgramListData on the Wine side 2020-12-29 18:50:17 +01:00
Robbert van der Helm 2823a74783 Implement all IUnitInfo functions
With this IUnitInfo has been fully implemented.
2020-12-27 18:07:32 +01:00
Robbert van der Helm 70c5792593 Implement IUnitInfo::getSelectedUnit 2020-12-27 16:48:47 +01:00
Robbert van der Helm d34b399ba0 Implement IUnitInfo::getProgramPitchName 2020-12-26 23:20:13 +01:00
Robbert van der Helm e414c58a7a Implement IUnitInfo::hasProgramPitchNames 2020-12-26 23:04:02 +01:00
Robbert van der Helm f96e6b5a1e Implement IUnitInfo::getProgramInfo 2020-12-26 23:00:15 +01:00
Robbert van der Helm 204765ec0c Implement IUnitInfo::getProgramName 2020-12-26 22:38:15 +01:00
Robbert van der Helm 60f6b30b84 Implement IUnitInfo::getProgramListInfo 2020-12-26 22:17:21 +01:00
Robbert van der Helm 92a7cb755a Implement IUnitInfo::getProgramListCount 2020-12-26 22:10:46 +01:00
Robbert van der Helm 5e832a2689 Implement IUnitInfo::getUnitInfo 2020-12-26 22:03:26 +01:00
Robbert van der Helm f3e706a39a Implement IUnitInfo::getUnitCount 2020-12-26 21:33:19 +01:00
Robbert van der Helm 47177ed889 Implement IUnitHandler::notifyProgramListChange
With this IUnitHandler has been fully implemented.
2020-12-26 14:30:28 +01:00
Robbert van der Helm bf40e10780 Implement IUnitHandler::notifyUnitSelection 2020-12-26 14:26:29 +01:00
Robbert van der Helm 86aaf2fa3a Implement IEditController2::openAboutBox
With this IEditController2 has been fully implemented.
2020-12-26 00:10:39 +01:00
Robbert van der Helm 3c5700163e Implement IEditController2::openHelp 2020-12-26 00:06:32 +01:00
Robbert van der Helm 91a96249fc Implement IEditController2::setKnobMode 2020-12-26 00:03:29 +01:00
Robbert van der Helm fbad4a65ab Add an IConnectionPoint proxy implementation
We still have to pass this proxy to the plugin. That's next.
2020-12-25 13:46:03 +01:00
Robbert van der Helm 65694d261c Implement IConnectionPoint::notify 2020-12-25 13:13:56 +01:00
Robbert van der Helm 9bb90388c1 Implement IPlugView::checkSizeConstraint()
With this the whole of `IPlugView` and thus also `IEditController` is
implemented.
2020-12-22 15:42:41 +01:00
Robbert van der Helm 5ef7e73725 Implement IPlugView::canResize() 2020-12-22 15:37:06 +01:00
Robbert van der Helm 656f6d3f6c Implement IPlugFrame::resizeView()
The base IPlugFrame only contains this single function.
2020-12-22 15:09:33 +01:00
Robbert van der Helm da6ddccf07 Implement IPlugView::setFrame() 2020-12-22 14:16:00 +01:00
Robbert van der Helm 91c4b414b0 Add a Vst3PlugFrameProxy implementation with stubs 2020-12-22 13:37:58 +01:00
Robbert van der Helm d4d9746f69 Implement IPlugView::onFocus() 2020-12-22 00:19:23 +01:00
Robbert van der Helm 463557349d Implement IPlugView::onSize() 2020-12-21 23:46:29 +01:00
Robbert van der Helm 063b480fd0 Implement IPlugView onKey{Up,Down} 2020-12-21 19:13:14 +01:00
Robbert van der Helm 06c55fcdd8 Implement IPlugView::onWheel() 2020-12-21 18:56:22 +01:00
Robbert van der Helm f1009f1941 Implement IPlugView::removed() 2020-12-21 18:30:42 +01:00
Robbert van der Helm 51877796fa Add dedicated IAudioProcessor/IComponent sockets
This way every relevant object instance will get its own thread for
handling these calls. The alternative would be creating a full fat
Vst3MessageHandler pair for all object instances, but that would be a
huge waste.
2020-12-21 17:26:30 +01:00
Robbert van der Helm 960e2d50d1 Implement IPlugView::getSize() 2020-12-19 23:46:45 +01:00
Robbert van der Helm 09f6d93214 Implement IPlugView::attached() 2020-12-19 23:31:41 +01:00
Robbert van der Helm e72e6d5642 Implement IPlugView::isPLatformTypeSupported()
This of course requires us to substitute the relevant Linux platform
type for the Win32 one.
2020-12-19 22:34:56 +01:00
Robbert van der Helm 7306809991 Drop IPlugView pointer when host drops proxy 2020-12-19 22:17:10 +01:00
Robbert van der Helm f0ece64018 Implement the Wine side for createView() 2020-12-19 20:41:06 +01:00
Robbert van der Helm b422f6fd42 Don't cache IComponent::getControllerClassId()
For the same reasons as the last commit. Now we don't have any of these
cached methods anymore.
2020-12-19 18:56:47 +01:00
Robbert van der Helm 63ae5f330c Don't cache IHostApplication::getName()
As it turns out there are only two or three functions where we can do
this. It also breaks logging, and this function will probably only be
called once anyways. More consistency is always better.
2020-12-19 18:28:16 +01:00
Robbert van der Helm 0522f84f4a Create Vst3HostContextProxy from YaHostApplication
This is quite a huge refactor, but note everything is consistent (and
we're going to need one or two more of these `Vst3*Proxy` objects).
Right now nothing extends `IHostApplication`, but this way it will be
trivial to add support for more host context interfaces.
2020-12-19 17:13:17 +01:00
Robbert van der Helm 1b454371a6 Implement IComponentHandler::restartComponent()
The base IComponentHandler is now fully implemented.
2020-12-19 15:51:48 +01:00
Robbert van der Helm 25575e2d3a Implement IComponentHandler::endEdit() 2020-12-19 15:48:06 +01:00
Robbert van der Helm bb99a539d5 Implement IComponentHandler::performEdit() 2020-12-19 15:45:24 +01:00
Robbert van der Helm 3b06bca95e Implement IComponentHandler::beginEdit() 2020-12-19 15:39:03 +01:00
Robbert van der Helm bf3d802f36 Implement IEditController::setComponentHandler() 2020-12-19 15:04:27 +01:00
Robbert van der Helm 132ba0baeb Add stubs for a component handler proxy impl 2020-12-19 14:37:50 +01:00