Hi Dennis.<br>Thanks for all of this.<br>I will test it at work next week (as line by line answer). <br>(it is a bit frustrating to have to wait 'til there.. :) )<br><br>Regards,<br>Sylvain<br><br><div class="gmail_quote">
2010/5/21 Dennis Nienhüser <span dir="ltr"><<a href="mailto:earthwings@gentoo.org">earthwings@gentoo.org</a>></span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class="im"><br>
>> But!<br>
>><br>
>> The marble widget in my app is just a black rectangle where right and<br>
>> left clicks work as usual ( contextual menu etc)<br>
>> Like with the standalone marble application => NO map! instead of<br>
>> being blue it is black...<br>
>> I think it is normal as it does not work in marble itself.<br>
>> So again : ANYONE having a clue??<br>
>><br>
> Did you set a valid map theme on the MarbleWidget in your application?<br>
><br>
</div>Another thing: I think (correct me if I'm wrong) that in Windows plugins<br>
and data directories are searched relative to the application directory.<br>
If you use it in your own application, make sure to copy those two<br>
directories from the marble install over: If you have C:\MyApp\foo.exe,<br>
make sure to copy the data and plugins directories from the Marble<br>
install directory to C:\MyApp\<br>
<div class="im"><br>
>> One other thing :<br>
>> marble's widget do not show in Qt designer while the make install<br>
>> stage did copy<br>
>> libMarbleWidgetPlugin.dll, libMarbleNavigatorPlugin.dll and<br>
>> libLatLonEditPlugin.dll<br>
>> in C:\Qt\2010.02.1\qt\plugins\designer.<br>
>> (I added this path in Qtdesign even if it is a bit dumb but widgets<br>
>> still missing)<br>
>> I don't know why..<br>
>> So for the Qt creator integration it is not stil here.<br>
>><br>
> The libmarblewidget.dll and any other dependent dlls must be<br>
> accessible for QtCreator as well. Otherwise QtCreator/QtDesigner will<br>
> get missing symbols when loading the designer plugin and silently<br>
> ignore it. When you launch marble.exe, its dependent dlls are<br>
> accessible for it because they lie in the same folder. That's not the<br>
> case for QtCreator/QtDesigner.<br>
><br>
<br>
</div>To elaborate on this as well: You need a release build of Marble<br>
(otherwise QtDesigner complains) and you need to copy<br>
libmarblewidget.dll (the release version, not the one ending with a 'd')<br>
to a path that QtDesigner will know. To be on the safe side, copy it<br>
next to designer.exe in the Qt bin folder. Also copy the data and<br>
plugins directories there (see above). Once that is done, QtDesigner<br>
will show the three Marble plugins.<br>
<br>
If it still is not working, check the Help => Plugins dialog in<br>
QtDesigner. For each failing plugin, it will show an error description.<br>
If it complains about mixed debug and release build, correct that<br>
setting in CMakeCache.txt (CMAKE_BUILD_TYPE). If it complains about a<br>
missing module and doesn't tell you which one it misses, use Dependency<br>
Walker [1]: Open the Marble designer plugin in it to see which dependent<br>
dlls are resolved and which not. Ignore wer.dll and ieshims.dll on<br>
Windows XP. Copy the ones not resolved to the Qt bin folder. That was<br>
only libmarblewidget.dll here. Adding the Marble directory to your PATH<br>
variable should work as well.<br>
<br>
Tested this with Windows XP, MinGW 5.1.6, Qt 4.5.1 and a recent Marble<br>
trunk checkout.<br>
<br>
Regards,<br>
Dennis<br>
<br>
[1] <a href="http://www.dependencywalker.com" target="_blank">http://www.dependencywalker.com</a><br>
<div><div></div><div class="h5"><br>
_______________________________________________<br>
Marble-devel mailing list<br>
<a href="mailto:Marble-devel@kde.org">Marble-devel@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/marble-devel" target="_blank">https://mail.kde.org/mailman/listinfo/marble-devel</a><br>
</div></div></blockquote></div><br>