Slots do not appear after compiling with VS2008


David Machuca - Posted on 06 October 2010

Hello Again
I have compiled SGeMS in debug mode but I couldn't do it successfully in release mode (see my previous post).
The executable generated by the debug compilation runs fine until I try to execute any simulation or estimation algorithm. Then some slots such as the grid selection or variogram selection do not appear.
And in the command DOS window I get the following messages:

"QFormBuilder was unable to create a custom widget of the class 'GridSelector';defaulting to base class 'QTabWidget'."

"QFormBuilder was unable to create a custom widget of the class 'KrigingTypeSelector'; defaulting to base class 'QWidget'."

"QFormBuilder was unable to create a custom widget of the class 'PropertySelector'; defaulting to base class 'QWidget'."

"QFormBuilder was unable to create a custom widget of the class 'EllipsoidInput'; defaulting to base class 'QWidget'."

"QFormBuilder was unable to create a custom widget of the class 'AdvancedNeighborhoodInput'; defaulting to base class 'QWidget'."

"QFormBuilder was unable to create a custom widget of the class 'VariogramInput'; defaulting to base class 'QWidget'."

Does anyone had this problem before? Thank you very much for your help.
David

That problem is simple to solve but slightly annoying. You must be sure that the file GsTLWidgets.dll in the folder Qt/4.X.X/plugins/designer is in the proper debug or release mode. If you run sgems in debug mode, then you must copy the debug version of that dll in that folder. The GsTLWidgets.dll is twice the size in debug mode than in release mode (1.4 versus 0.7Meg). I believe that the visual studio property will automatically copy that widget in the Qt folder in release mode when compiling.

On a related note, if you want to use Qt designer to build the user interface for your plugin, you will need the GsTLWidgets.dll in release mode.

I did as you suggested, but I still have the same problem. What else could cause this?
Thank you very much for all your help
David

Do you have the env. variable GSTLAPPLIHOME defined on your system?

Yes, its value is

D:\SGeMS-dev\GsTLAppli-qt4

The SGEMS_BUILD variable value is D:\SGeMS-dev

I also tried with copying the folder ../GsTLAppli-qt4/plugin to the folders ../GsTLAppli-qt4/lib/win32/debug and .../GsTLAppli-qt4/lib/win32/release

And didn't worked either

Remove GSTLAPPLIHOME env var and copy the plugin directory into win32 debug and release (the plugin should not contain the designer folder). Do you have the env QTDIR?

Can you load the GsTLWidgets plugins when you open Qt designer? (You may have to set the env. var QT_PLUGIN_PATH to C:\Qt\4.x.x\plugins)

Thanks again for all your help. After removing GSTLAPPLIHOME and copying the plugin folder it worked. The slots are active now.
I'll be adding new geostatistical plug-ins soon. I'll keep you informed.

Cheers

David

The set up can seems complex, but you only have to do it once!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.