Closed gammasoft71 closed 1 month ago
@hros I'm still working on it...
Fix with commit ba08a8a
Can verify if it work for you.
[!Warning] Delete the file
C:\Users\username\AppData\Roaming\Gammasoft\xtdc-gui.ini
as it is corrupted.
Didn't work for me
I deleted the .ini
file, but it still didn't start at the end of the install
I tried launching xtdc-gui
from my user (since I run install
as admin, based on the instructions), but it still didn't work
Hello, I'm sorry this isn't working for you. I don't understand. Can you try again with this procedure in the terminal with administrator privileges :
rmdir /S /Q xtd
git clone https://github.com/gammasoft71/xtd.git
cd xtd
install
If this doesn't work, please send me the console output log.
thanks for the advice (and the hard work maintaining the package) the current version doesn't build - there are linker errors:
The problem seems to stem from the installation of wxWidgets. xtd uses (for now) wxWidgets as a backend. When linking, the linker can't find the release version of the wxWidgets libraries.
Did you install wxWidgets yourself, or was xtd install used to install wxWidgets?
Solution The best way to solve the problem is to delete the wxWidgets installation files (typically
C:\Program Files (x86)\wxWidgets
) and reinstall them manually or let xtd install do the work.
Tell me if this fixes your problem ?
After removing the wxWidgets
directory, it was reinstalled by the install
script, and now the xtdc-gui
window opens up
Note that there are still linker errors in the install process:
One more question: I'm intrigued by your comment that xtd
uses wxWidgets
for now. Do you plan to switch to another (lower-level) rendering engine?
I'm glad it works for you.
There are some errors when linking in debug mode with wxWdigets
because CMake
doesn't export .pdb
files.
But this has no impact on the developer using xtd
, as he never has access to the backend.
To answer your question, yes, xtd
could use another renderer with a lower level as long as we write the necessary layer between xtd
's abstract interface and the renderer.
This is already the case for wxWidgets
. xtd
doesn't have the same interface or API level as wxWidgets
.
Indeed, xtd
is a framework based on an abstraction of an OS and a graphical toolkit through the APIs :
This makes it possible to replace the backend (graphical toolkit) without impacting the xtd framework API, and even less so applications or libraries based on xtd
.
So xtd
uses wxWidgets
for its first version (not yet released, since xtd is still under development).
But for subsequent versions, xtd
will use graphical toolkits much closer to each OS.
For example :
There's no reason why you shouldn't have a graphical toolkit like Qt
or like Fltk
, SDL2
, ...
As xtd
doesn't use the graphical toolkit API but its own API defined in xtd.forms.native
, the graphical toolkit can be changed at any time once an implementation has been written.
For example, the xtd.forms.native.wxwidgets
implementation uses only part of the wxWidgets
API.
events
, controls
and dialogs
are specific to xtd
and not to wxWidgets
. The same applies to the management and hierarchy of events
, windows
and controls
.event
, control
, dialog
or feature doesn't exist, it's simply created.For example, the xtd.drawing.native.wxwidgets
implementation uses only part of the wxWidgets
API:
icones
, images
, fonts
, brushes
and pens
are specific to xtd
and not to wxWidgets
. The same goes for graphics
and everything to do with drawing. Overall, the level of abstraction of the native xtd
API is very close to that of the Win32
API. So it's low enough to be able to use another backend.
Remarks
wxWidgets
and not the OS backend? To simplify and speed up development of the first version of xtd. After studying the various toolkits available, wxWidgets
wasn't the best, but it was and still is the one that required the fewest implementations in the xtd.drawing.native.wxwidgets library and the xtd.forms.native.wxwidgets library. Even if the code is already substantial.For more information:
I hope this answers your question. Have a nice day!
the
#master
branch builds successfully nowhowever,
xtdc-gui
does not launch a rectangle is opened and the task manager shows thextdc-gui
process running but it does not startOriginally posted by @hros in https://github.com/gammasoft71/xtd/issues/263#issuecomment-2351136398