Hi Bogdan, it sounds good to me. As you said, to make the hack a bit less hacky I would just add a StelGui::getSkyGui() to return the pointer to the SkyGui instead of using the gui->getButtonBar()->parentWidget() hack. One day we may re-code all of this in QML, but as there is no deadline I guess we'd better go on with your solution. Fabien
On Tue, Aug 23, 2011 at 09:57, Bogdan Marinov <[email protected]> wrote: > Hello. > > After the last changes to the interface of the Oculars plug-in, there > have been some complaints by users that the current menu is too > cumbersome to use. The menu itself was created to avoid the key > bindings problem, which has two parts: > - Stellarium has no way of customizing key bindings > - there are simply not enough possible or useful unique key bindings > for all tasks > > This is a part of a more general problem with plug-ins: their ways of > getting input from the user are somehow limited. Plug-ins can open > dialog windows, assign key bindings and add buttons to the bottom bar. > Dialog windows grab the focus away from the scene, key bindings are > limited in number and the bottom bar soon will be impractically long > to accommodate all plug-in buttons, even if we assume only one button > per plug-in (and this is another problem). > > Fabien mentioned that he may re-write Stellarium's GUI to use QtQuick. > Until that happens, if it happens at all, there are several things > that can be done to make plug-ins, and Oculars in particular, more > user-friendly. > > Here's my experimental branch: > https://code.launchpad.net/~daggerstab/stellarium/plugins-gui-improvement > I want to allow plug-ins to use controls directly in the SkyGui, > similar to the current toolbars and the InfoPanel in the upper left > corner. For example, this will allow Oculars to use an on-screen > interface to switch telescopes and oculars without obscuring the view > with a window. Instead of drawing on the sky the information in the > upper right corner, Oculars will be able to display it in a widget and > use buttons or even drop-down lists on that widget. > > This is the current revision: > http://bazaar.launchpad.net/~daggerstab/stellarium/plugins-gui-improvement/revision/4949 > It demonstrates a hack to get hold of SkyGui's QGraphicsWidget and use > it to display a widget with a QPushButton in the upper right corner, > using a QGraphicsProxyWidget. (Note that the corner widget follows the > corner even when the screen is resized.) > > The hack seems to work, but it would be nice to have a more organized > way of doing it, similar to StelProgressBarMgr. Creating an explicit > interface in StelGui/SkyGui will allow plug-ins widgets to be managed > and will suggest explicitly the possibility of creating such widgets, > instead of waiting plug-in developers to discover the hack. :) I chose > the hack way because I was reluctant to change StelGuiBase and it was > faster. At the very least, there should be an easy way to get a SkyGui > pointer. > > I'm going to make a control/info panel for Oculars, based on ordinary > widgets wrapped in a QGraphicsProxyWidget. The advantages of this > approach is that I don't have to re-invent the wheel (implementing > button classes, etc.), because I can use existing controls like > buttons and comboboxes, and that it already respects the "night > vision" mode, unlike the current Oculars info panel. I'm not sure what > is the proper way to get information about oculars/telescopes/CCDs > from the main class (friend class? additional get methods?), so > Timothy Reaves can help with some suggestions. Or he can leave me do > it and then clean up and/or re-design it. ;) > > Regards, > Bogdan Marinov > > ------------------------------------------------------------------------------ > Get a FREE DOWNLOAD! and learn more about uberSVN rich system, > user administration capabilities and model configuration. Take > the hassle out of deploying and managing Subversion and the > tools developers use with it. http://p.sf.net/sfu/wandisco-d2d-2 > _______________________________________________ > Stellarium-pubdevel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/stellarium-pubdevel > ------------------------------------------------------------------------------ Get a FREE DOWNLOAD! and learn more about uberSVN rich system, user administration capabilities and model configuration. Take the hassle out of deploying and managing Subversion and the tools developers use with it. http://p.sf.net/sfu/wandisco-d2d-2 _______________________________________________ Stellarium-pubdevel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/stellarium-pubdevel
