Qt Celestia
-
Topic authorchris
- Site Admin
- Posts: 4211
- Joined: 28.01.2002
- With us: 22 years 9 months
- Location: Seattle, Washington, USA
Qt Celestia
A first step toward a unified UI . . .
The rather unimpressive image below shows Celestia running on Windows using the Qt cross-platform UI toolkit. The keyboard and mouse functions work as in the other versions of Celestia, but there's no extra UI at the moment because this is an early experiment. Having Christophe's KDE version of Celestia as a starting point was a time saver.
--Chris
The rather unimpressive image below shows Celestia running on Windows using the Qt cross-platform UI toolkit. The keyboard and mouse functions work as in the other versions of Celestia, but there's no extra UI at the moment because this is an early experiment. Having Christophe's KDE version of Celestia as a starting point was a time saver.
--Chris
-
- Developer
- Posts: 3776
- Joined: 04.02.2005
- With us: 19 years 9 months
-
- Developer
- Posts: 944
- Joined: 18.07.2002
- With us: 22 years 4 months
- Location: Lyon (France)
Good to know you're working on this Chris. I haven't much time to devote to it myself.
Regarding the relative length of text in various languages, that's only a problem when using a somewhat crude toolkit like the MFC (it is showing its age) that does no layouting.
Qt like all "modern" toolkits does the layouting: widget sizes are automaticaly adjusted and dialogs can be freely resized.
Qt goes even as far as providing a --reverse switch that reverses the layout for right to left languages:
And that's with 0 additional line of code.
Regarding the relative length of text in various languages, that's only a problem when using a somewhat crude toolkit like the MFC (it is showing its age) that does no layouting.
Qt like all "modern" toolkits does the layouting: widget sizes are automaticaly adjusted and dialogs can be freely resized.
Qt goes even as far as providing a --reverse switch that reverses the layout for right to left languages:
And that's with 0 additional line of code.
Christophe
-
- Developer
- Posts: 3776
- Joined: 04.02.2005
- With us: 19 years 9 months
Christophe wrote:...
Qt like all "modern" toolkits does the layouting: widget sizes are automaticaly adjusted and dialogs can be freely resized.
Qt goes even as far as providing a --reverse switch that reverses the layout for right to left languages:...
Great!
Now looking at your above screen, something that's pop to my mind are the difference between the several existing UI depending on the platforms; here I fear some tensions related to the habits of the several populations of Celestia users...
How to handle that? Shall we do an extensive comparison to keep only the best of each platform?
-
- Developer
- Posts: 944
- Joined: 18.07.2002
- With us: 22 years 4 months
- Location: Lyon (France)
I think the problem Stellarium is having is that Qt doesn't provide a way to change the video resolution when going fullscreen. That is in effect a regression compared to the previous versions which were using SDL.
Celestia will indeed face the same issue when switching to Qt under Windows. The Linux version doesn't offer the option to specify the resolution, I'm not sure if that's available under OSX either - so it's mainly a Windows issue.
As Matthew Gates very well put it on is blog the advantages of switching far outweigh the drawback of this minor regression.
Celestia will indeed face the same issue when switching to Qt under Windows. The Linux version doesn't offer the option to specify the resolution, I'm not sure if that's available under OSX either - so it's mainly a Windows issue.
As Matthew Gates very well put it on is blog the advantages of switching far outweigh the drawback of this minor regression.
Christophe
-
- Developer
- Posts: 944
- Joined: 18.07.2002
- With us: 22 years 4 months
- Location: Lyon (France)
KDE itself uses Qt, the current version, KDE3, is based on Qt3 which is not available under the GPL for Windows.
The current (released) version of Qt, Qt4, is now available under the GPL on all platforms. Qt4 is not source compatible with Qt3.
KDE4, due to be released in January will be available on all platforms, and theoritically at least, the current KDE version of Celestia could be ported to it and made to work on all platforms. That's the goal I'm pursuing but it's kind of a long shot. KDE4 probably won't be end-user ready until 4.1 sometime in Q3 2008, and the kdelibs won't 'just work' under Windows for even longer.
So starting a brand new front end based solely on Qt4 without waiting for KDE4 is a good option too, especially since we plan to use Qt not only for the front-end but also for core stuff like threading and net access.
The current (released) version of Qt, Qt4, is now available under the GPL on all platforms. Qt4 is not source compatible with Qt3.
KDE4, due to be released in January will be available on all platforms, and theoritically at least, the current KDE version of Celestia could be ported to it and made to work on all platforms. That's the goal I'm pursuing but it's kind of a long shot. KDE4 probably won't be end-user ready until 4.1 sometime in Q3 2008, and the kdelibs won't 'just work' under Windows for even longer.
So starting a brand new front end based solely on Qt4 without waiting for KDE4 is a good option too, especially since we plan to use Qt not only for the front-end but also for core stuff like threading and net access.
Christophe
-
- Developer
- Posts: 3776
- Joined: 04.02.2005
- With us: 19 years 9 months
ElChristou wrote:...Now looking at your above screen, something that's pop to my mind are the difference between the several existing UI depending on the platforms; here I fear some tensions related to the habits of the several populations of Celestia users...
How to handle that? Shall we do an extensive comparison to keep only the best of each platform?
bump
-
Topic authorchris
- Site Admin
- Posts: 4211
- Joined: 28.01.2002
- With us: 22 years 9 months
- Location: Seattle, Washington, USA
ElChristou wrote:Now looking at your above screen, something that's pop to my mind are the difference between the several existing UI depending on the platforms; here I fear some tensions related to the habits of the several populations of Celestia users...
How to handle that? Shall we do an extensive comparison to keep only the best of each platform?
Yes, I think that's exactly what we should do. There's no element of the Windows UI that I'm especially attached to. Christophe, DW, and Pat have generally done a better job with the user interface on non-Windows platforms than I have on Windows, so I'm happy to adopt their ideas. It will also be a good time to have to reevaluate what the UI should look like. The UI has evolved somewhat haphazardly over time. Some features are no longer necessary (like the 'Tour Guide' feature on Windows, made obsolete by scripts), while others need further enhancement.
One very important thing to do is improve the Celestial Browser. This is already an important feature, and it will become more important as it provides a means to interact with invisible objects (reference points, or objects marked as hidden by some sort of show/hide toggle.)
--Chris
-
- Developer
- Posts: 3776
- Joined: 04.02.2005
- With us: 19 years 9 months
chris wrote:...One very important thing to do is improve the Celestial Browser. This is already an important feature, and it will become more important as it provides a means to interact with invisible objects (reference points, or objects marked as hidden by some sort of show/hide toggle.)
Yep, there is something to dig here; for example, what I'd like to see is a feature to mark/unmark whole classes; IMO this kind of feature could be integrated to the browser...
-
Topic authorchris
- Site Admin
- Posts: 4211
- Joined: 28.01.2002
- With us: 22 years 9 months
- Location: Seattle, Washington, USA
ElChristou wrote:chris wrote:...One very important thing to do is improve the Celestial Browser. This is already an important feature, and it will become more important as it provides a means to interact with invisible objects (reference points, or objects marked as hidden by some sort of show/hide toggle.)
Yep, there is something to dig here; for example, what I'd like to see is a feature to mark/unmark whole classes; IMO this kind of feature could be integrated to the browser...
Yes, this would be very useful, and is exactly the sort of feature that has been hampered by Celestia having four different UIs to develop for.
--Chris
-
- Developer
- Posts: 3776
- Joined: 04.02.2005
- With us: 19 years 9 months
-
- Developer
- Posts: 944
- Joined: 18.07.2002
- With us: 22 years 4 months
- Location: Lyon (France)
-
- Developer
- Posts: 3776
- Joined: 04.02.2005
- With us: 19 years 9 months
Christophe wrote:Here is what it looks like on KDE:
...
Mainly an improved version of the Windows one with the solar system browser merged in. Right clicking on an object opens up its popup dialog as shown above.
Adding filtering options and global marking options as you suggest would be a nice addition.
Definitively the KDE UI is the most advanced...
Just 2 quick comments:
- why doubling the info listed in the columns in the contextual menu?
- if a all in one browser is done, then it would be nice to see the type of planets like the type of stars (telluric, gas giant)...
Now, I agree the solar system browser has it is in osX don't make much sense because you find the whole tree under Sol in the Star browser. Now if the Sol entry was eliminated from the Star browser then yes the Solar System browser would gain legitimacy...
-
- Developer
- Posts: 944
- Joined: 18.07.2002
- With us: 22 years 4 months
- Location: Lyon (France)
It's the same popup menu that's used in the main window.ElChristou wrote:- why doubling the info listed in the columns in the contextual menu?
That would be nice yes, but we don't currently have that information. For now the type displayed here can be planet, asteroid, moon, comet or spaceship.ElChristou wrote:- if a all in one browser is done, then it would be nice to see the type of planets like the type of stars (telluric, gas giant)...
Christophe
-
- Developer
- Posts: 3776
- Joined: 04.02.2005
- With us: 19 years 9 months
Christophe wrote:It's the same popup menu that's used in the main window.ElChristou wrote:- why doubling the info listed in the columns in the contextual menu?
Ah ok, then to avoid doubling the info (not necessary) and because the layout for a search query give some blank space in the panel, the actual osX (and Windows?) buttons could be used this way:
The red squares near the mark options are supposed to call a color picker... (possible?)
Christophe wrote:That would be nice yes, but we don't currently have that information. For now the type displayed here can be planet, asteroid, moon, comet or spaceship.ElChristou wrote:- if a all in one browser is done, then it would be nice to see the type of planets like the type of stars (telluric, gas giant)...
Yep, too bad because having a "poor" "planet" is really not up to the detailed type for stars...
-
- Developer
- Posts: 3776
- Joined: 04.02.2005
- With us: 19 years 9 months
-
- Developer
- Posts: 944
- Joined: 18.07.2002
- With us: 22 years 4 months
- Location: Lyon (France)
ElChristou wrote:Just tested a Windows version, there is a slider to filter the number of hits; this feature seems not bad, so I wonder what was the reason to not use it under KDE...
It's just that when I "copied" it the slider wasn't there. Anyway, I'm not sure it's that usefull, 100 or 500 stars, we could just as well display all 500 by default.
chaos syndrome wrote:In all this talk of KDE, are there any on the devteam who use GNOME?
The GTK/Gnome frontend is maintained by Pat. He hasn't submitted anything since about a year but he is still active on the mailing list.
Christophe