By the way, here's the VSTi this whole thing is based off of.
Growl2.dll
<https://docs.google.com/file/d/0ByeSWzzih0ymN2RhOU9YV2pTZWl1UDdUWDBlQXozWlR3a0Jz/edit?usp=drive_web>
On Thu, Sep 4, 2014 at 11:29 AM, Ian Sannar <ian.san...@gmail.com> wrote:
> Vesa, could you take another look at what I've got so far?
> I made some changes to the .cpp also.
>
>
> On Wed, Sep 3, 2014 at 8:59 PM, Ian Sannar <ian.san...@gmail.com> wrote:
>
>> Alright. Made some changes and removed all answered questions.
>>
>> As far as the waveform selector... I'm not sure what I need to remove and
>> add.
>> I apologize for my incompetence. This is a learning experience for me,
>> but after this I will probably be able to help a lot more as far as code
>> goes.
>>
>>
>> On Wed, Sep 3, 2014 at 6:17 PM, Ian Sannar <ian.san...@gmail.com> wrote:
>>
>>> Alright, thanks. I am relearning C++ so I will have some sort of
>>> knowledge, but because LMMS has gone quite far already there's a lot of
>>> LMMS-specific jargon I will have to ask you about.
>>>
>>> AutomatableButtonGroup. Okay.
>>>
>>>
>>> On Wed, Sep 3, 2014 at 12:42 PM, Vesa <dii....@nbl.fi> wrote:
>>>
>>>> On 09/03/2014 08:34 PM, Ian Sannar wrote:
>>>> > Well. Updated the .h as much as I could with my limited C++ knowledge.
>>>> > Vesa (or somebody else who knows what they're doing) could you check
>>>> > this out for me?
>>>> > https://github.com/cubician/Karnex/blob/master/Karnex.h
>>>> > Thanks.
>>>>
>>>> //What does this do?
>>>>
>>>> It's a macro from Qt. It enables the use of signals & slots.
>>>>
>>>> //I'm assuming only the skeleton is defined in the .h?
>>>>
>>>> If your method is empty, like the destructor usually is, you can usually
>>>> also implement it in the header. But there's no harm in only having the
>>>> definition of everything in the header, and leaving the implementation
>>>> for the .cpp.
>>>>
>>>> //Is this just for BitInvader or is it something I would need to include
>>>> for Karnex?
>>>>
>>>> Anything that isn't virtual, is not required. Inherited, overridden
>>>> methods are always virtual in C++.
>>>>
>>>> //Semicolons are required to terminate class definitions in C++?
>>>>
>>>> Yes.
>>>>
>>>> Note also that for each knob (and other GUI element), you'll need a
>>>> corresponding Model in the Instrument class. So eg. for knob *
>>>> m_fmGainKnob you should have FloatModel m_fmGain (or m_fmGainModel if
>>>> you want to be fancy).
>>>>
>>>> In the InstrumentView class, you can remove those GUI elements from
>>>> BitInvader if you don't need them. Also if you want to use buttons for a
>>>> waveform selector, you shouldn't use signals & slots for them - you can
>>>> just use an AutomatableButtonGroup - see other instruments that have
>>>> waveform selectors to see how that is done, eg. TripleOsc.
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Slashdot TV.
>>>> Video for Nerds. Stuff that matters.
>>>> http://tv.slashdot.org/
>>>> _______________________________________________
>>>> LMMS-devel mailing list
>>>> LMMS-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/lmms-devel
>>>>
>>>
>>>
>>
>
------------------------------------------------------------------------------
Slashdot TV.
Video for Nerds. Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
LMMS-devel mailing list
LMMS-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lmms-devel