Plugin window doesnt show in hosts-FL, EnergyXT, Chainer...
-
- KVRAF
- 7506 posts since 14 Nov, 2006 from Ankara, Turkey
Hi there,
I have a plugin (SynthMaster 2.0), whose GUI is written using VSTGUI.
The AEffEditor::open(void *ptr) function is called by the host apps, without problem.
On hosts like Fruity Loops, Cantabile, Chainer, EnergyXT the user interface is not drawn.
On hosts like Reaper, Ableton Live, the user interface is drawn.
Just couldnt figure out what the difference between those hosts is???
Thanks for any help, pointers, etc...
Bulent
I have a plugin (SynthMaster 2.0), whose GUI is written using VSTGUI.
The AEffEditor::open(void *ptr) function is called by the host apps, without problem.
On hosts like Fruity Loops, Cantabile, Chainer, EnergyXT the user interface is not drawn.
On hosts like Reaper, Ableton Live, the user interface is drawn.
Just couldnt figure out what the difference between those hosts is???
Thanks for any help, pointers, etc...
Bulent
Works at KV331 Audio
SynthMaster voted #1 in MusicRadar's "Best Synth of 2019" poll
SynthMaster One voted #4 in MusicRadar's "Best Synth of 2019" poll
SynthMaster voted #1 in MusicRadar's "Best Synth of 2019" poll
SynthMaster One voted #4 in MusicRadar's "Best Synth of 2019" poll
-
- KVRAF
- Topic Starter
- 7506 posts since 14 Nov, 2006 from Ankara, Turkey
It's really weird. When I use the Spy++ tool that comes with Visual Studio 2005, I see the plugin windows, with the correct size. But its parent window's size is 0x0
Why is that?
Bulent
Bulent
Works at KV331 Audio
SynthMaster voted #1 in MusicRadar's "Best Synth of 2019" poll
SynthMaster One voted #4 in MusicRadar's "Best Synth of 2019" poll
SynthMaster voted #1 in MusicRadar's "Best Synth of 2019" poll
SynthMaster One voted #4 in MusicRadar's "Best Synth of 2019" poll
-
- KVRAF
- 1981 posts since 29 Feb, 2004
Some hosts call AEffGUIEditor::getRect() before AEffGUIEditor::open(), have you initialized the rect.width and rect.height in the construction method of the CPluginEditor() ??
Last edited by asseca on Wed Jul 15, 2009 3:43 pm, edited 1 time in total.
-
- KVRAF
- Topic Starter
- 7506 posts since 14 Nov, 2006 from Ankara, Turkey
Thanks so much! I'll check that out immediately!
Works at KV331 Audio
SynthMaster voted #1 in MusicRadar's "Best Synth of 2019" poll
SynthMaster One voted #4 in MusicRadar's "Best Synth of 2019" poll
SynthMaster voted #1 in MusicRadar's "Best Synth of 2019" poll
SynthMaster One voted #4 in MusicRadar's "Best Synth of 2019" poll
-
- KVRAF
- Topic Starter
- 7506 posts since 14 Nov, 2006 from Ankara, Turkey
Thanks so much. That was the issue! Problem solved!
Works at KV331 Audio
SynthMaster voted #1 in MusicRadar's "Best Synth of 2019" poll
SynthMaster One voted #4 in MusicRadar's "Best Synth of 2019" poll
SynthMaster voted #1 in MusicRadar's "Best Synth of 2019" poll
SynthMaster One voted #4 in MusicRadar's "Best Synth of 2019" poll
-
- KVRer
- 3 posts since 15 Apr, 2011
AUTO-ADMIN: Non-MP3, WAV, OGG, SoundCloud, YouTube, Vimeo, Twitter and Facebook links in this post have been protected automatically. Once the member reaches 5 posts the links will function as normal.
Hi guys,I think I'm having the same problem as here but I'm not sure, I didn't want to start another thread since it seems very similar. I'm pretty new to c++ but I've got the hang of the processing and now I'm struggling with vstgui (using sdk2.4).
I've tried to do the SurroundDelay editor example but when I do it compiles just fine and but when I open it in a host the parent window it opens is of zero size. It does the same for my own plugins when I modify the editor files.
This happens in any host I've tried. In fact, it doesn't work in Reaper, though it did for kv331 so it may be a different problem...
I initially thought it was the same problem as here but I can't get it working no matter what I do. I think it's a problem of inexperience so if anyone can help then I'd be greatly appreciative!
I've included the code from my .cpp for one of my plugins I've been working on that I assume the problem lies in:
Code: Select all (#)
//-----------------------------------------------------------------------------
// UHJeditor class implementation
//-----------------------------------------------------------------------------
UHJeditor::UHJeditor (AudioEffect *effect)
: AEffGUIEditor (effect)
{
angleFader = 0;
volumeFader = 0;
angleDisplay = 0;
volumeDisplay = 0;
// load the background bitmap
// we don't need to load all bitmaps, this could be done when open is called
hBackground = new CBitmap (kBackgroundId);
// init the size of the plugin
rect.left = 0;
rect.top = 0;
rect.right = (short)hBackground->getWidth ();
rect.bottom = (short)hBackground->getHeight ();
}
...
//-----------------------------------------------------------------------------
bool UHJeditor::open (void *ptr)
{
// !!! always call this !!!
AEffGUIEditor::open (ptr);
//--load some bitmaps
CBitmap* hFaderBody = new CBitmap (kFaderBodyId);
CBitmap* hFaderHandle = new CBitmap (kFaderHandleId);
//--init background frame-----------------------------------------------
// We use a local CFrame object so that calls to setParameter won't call into objects which may not exist yet.
// If all GUI objects are created we assign our class member to this one. See bottom of this method.
CRect size (0, 0, hBackground->getWidth (), hBackground->getHeight ());
CFrame* lFrame = new CFrame (size, ptr, this);
lFrame->setBackground (hBackground);
...
}
