Hi,
Sorry for bothering you guys again, but I need some helping hand :-)
Today I spent some more time experimenting your libraries (mostly
trying different widgets and going into the depths of nui code).
I didn't expect it, but it was quiteinspiring experience, because
I come up with a lot of ideas about new widgets, and controlling vst
plugins with console :-), but unfortunately I've got some "technical"
problems here :-(
1. It seems that my inability to build static debug versions of
vst-plugins is caused by VisualC++ Toolkit or PlatformSDK.
When I use only VisualStudio .NET I can build whatever I want,
but the free version libs are propably "crippled" or something -
always when I want to build debug version of plugin I get tons of
these when linking:
unresolved external symbol "public:
void __thiscall std::_String_base::_Xran(void)const "
Anyway to avoid this I decided to use STLPort, but I can't build nui/ngl
with it. I used version 4.6.2 and when compiling I get:
nglString.h(237) : error C2039: 'string' : is not a member of '_STL'
nglString.h(237) : error C2146: syntax error : missing ';' before
identifier 'GetStdString'
nglString.h(237) : error C2501: 'nglString::string' : missing
storage-class or type specifiers
I never used STLPort before, and don't know what to do with this :-(
2. What should I do to avoid that font bug in vst-plugin that I
mentioned few days ago (when reopening editor, instead of normal fonts
some black rectangles appear)?
Also don't know if it's related, but I found that two instances of
plugins with nui-editor have bad influence on each other. Simple
example: I made a plugin with only one knob, when I open editor I see
this:
http://www.ckmedia.pl/~fev/stuff/eknob1.png
now when I load one more instance and open it's editor window, it will
look like that:
http://www.ckmedia.pl/~fev/stuff/eknob2.png
Basicly I'm doing the same thing as in example vst-plugin, but I also
declare nuiKnob *myKnob as a private member of editor class, create that
knob in AEffEditor::open
myKnob = new nuiKnob(mpWindow,nuiRange(0, 0, 1, .01f, .1f, 0));
and in AEffEditor::close I call myKnob->Trash() (BTW is it ok to do
this?)
3. And a last thing (propably very silly) I wanted to use my own
nuiMainWindow. For a quick start I just wrote the following class:
class FEVWindow : public nuiMainWindow
{
public:
FEVWindow(const nglContextInfo& rContextInfo,
const nglWindowInfo& rInfo,
const nglContext* pShared = NULL,
const nglPath& mResPath = NULL);
~FEVWindow() {};
};
FEVWindow::FEVWindow(const nglContextInfo& rContextInfo,
const nglWindowInfo& rInfo, const nglContext* pShared,
const nglPath& mResPath) :
nuiMainWindow(rContextInfo, rInfo, NULL, NULL)
{
}
Then instead of creating mpWindow out of nuiMainWindow (I used vst
example as a base) I create new FEVWindow, but as soon as I call:
mpWindow->nglWindow::SetState(nglWindow::eShow);
a runtime exception is thrown, and the plugin is "killed".
Right now I can't build debug version, so I couldn't check
this in debugger :-( But maybe I'm doing something wrong (or
more propably - I'm not doing something at all)?
Thanks in advance for any help, and once again sorry if I'm
being obtrusive.
cheers,
Bart
--
"When the only tool you know is a hammer,
every problem looks like a nail."