Marc André Tanner wrote:
Hi,
During the last few weeks i was playing around with the idea to
implement a GUI for qemu and so this is what i came up with.
Cool. You should checkout virt-manager. It has much the same mission
as what you describe.
Since i am still pretty new to C/C++ development (in fact i would call
this my first real world C++ application) and not familiar with qemu
internals i decided to implement the GUI independent of qemu itself. So
from a technically point of view i just call qemu with arguments to
redirect the monitor to stdio and to export the display to vnc (-monitor
stdio -vnc display). I then try to capture and embed the vnc display
within the GUI that's where libvncclient[1] comes in.
I have no experience with libvncclient. I think the general idea of
using VNC to create an external QEMU GUI is a good one. Previously, I
had posted some patches for a shmem GUI that used a custom control
channel. After hacking on that for a little bit based on some feedback,
I've come full circle and am now under the view that extending VNC is a
better long term approach.
So, I've reserved some pseudo-encodings and a client message type and am
now working on some VNC extensions to enable better QEMU integration.
My current client code is available at:
http://hg.codemonkey.ws/vnc-gui/
The VNC extensions are still a work in progress but documentation is here:
http://tocm.wikidot.com/vncextensions
Regards,
Anthony Liguori
It's this last step which doesn't yet work as expected. It is extremely
slow and/or crashes after some time. But since i am not that experienced
in both multi threaded gui and wxWidgets programming i am stuck.
So i hope someone from the list can help me here, the two most important
files for this issue are vncpanel.cpp and vncdisplaythread.cpp.
My current development snapshot can be found at
http://www.brain-dump.org/projects/qemu-gui/doku.php/download
but don't expect it to actually work it's still buggy and in pre alpha
state.
Any comments, ideas, patches and so on are highly appreciated.
At this point i would like to thank Johannes Schindelin for his help
with the integration of libvncclient.
Thanks,
Marc
[1] http://libvncserver.sourceforge.net/
_______________________________________________
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel