Merge lp:~stellarium/stellarium/gz_constellations-allow-nativeName into lp:stellarium

Proposed by gzotti
Status: Superseded
Proposed branch: lp:~stellarium/stellarium/gz_constellations-allow-nativeName
Merge into: lp:stellarium
Diff against target: 2588 lines (+1373/-271)
45 files modified
plugins/Supernovae/src/Supernova.cpp (+4/-7)
po/stellarium-skycultures/CMakeLists.txt (+2/-0)
po/stellarium-skycultures/POTFILES.in (+9/-0)
skycultures/CMakeLists.txt (+1/-0)
skycultures/boorong/CMakeLists.txt (+4/-3)
skycultures/boorong/planet_names.fab (+9/-0)
skycultures/boorong/planet_names.native.fab (+8/-0)
skycultures/inuit/constellation_names.eng.fab (+11/-11)
skycultures/mongolian/CMakeLists.txt (+4/-3)
skycultures/mongolian/planet_names.fab (+22/-0)
skycultures/polynesian/constellation_names.eng.fab (+1/-0)
skycultures/tongan/CMakeLists.txt (+4/-3)
skycultures/tongan/planet_names.fab (+8/-0)
skycultures/western_rey/CMakeLists.txt (+12/-0)
skycultures/western_rey/constellation_names.eng.fab (+193/-0)
skycultures/western_rey/constellationship.fab (+206/-0)
skycultures/western_rey/description.de.utf8 (+97/-0)
skycultures/western_rey/description.en.utf8 (+83/-0)
skycultures/western_rey/info.ini (+3/-0)
skycultures/western_rey/star_names.fab (+58/-0)
src/CMakeLists.txt (+1/-0)
src/core/StelSkyCultureMgr.hpp (+3/-2)
src/core/modules/Comet.cpp (+6/-1)
src/core/modules/Comet.hpp (+5/-0)
src/core/modules/Constellation.cpp (+25/-3)
src/core/modules/Constellation.hpp (+23/-11)
src/core/modules/ConstellationMgr.cpp (+67/-15)
src/core/modules/ConstellationMgr.hpp (+38/-9)
src/core/modules/MinorPlanet.cpp (+1/-1)
src/core/modules/MinorPlanet.hpp (+2/-0)
src/core/modules/Planet.cpp (+17/-3)
src/core/modules/Planet.hpp (+6/-4)
src/core/modules/SolarSystem.cpp (+79/-4)
src/core/modules/SolarSystem.hpp (+6/-1)
src/core/modules/StarMgr.cpp (+7/-0)
src/core/modules/StarMgr.hpp (+4/-4)
src/gui/ConfigurationDialog.cpp (+39/-1)
src/gui/ConfigurationDialog.hpp (+2/-0)
src/gui/LocationDialog.cpp (+2/-1)
src/gui/ViewDialog.cpp (+22/-11)
src/gui/ViewDialog.hpp (+1/-0)
src/gui/configurationDialog.ui (+79/-34)
src/gui/viewDialog.ui (+22/-2)
src/translations.h (+6/-137)
src/translations_skycultures.h (+171/-0)
To merge this branch: bzr merge lp:~stellarium/stellarium/gz_constellations-allow-nativeName
Reviewer Review Type Date Requested Status
Alexander Wolf Needs Fixing
Review via email: mp+242592@code.launchpad.net

This proposal has been superseded by a proposal from 2014-11-26.

Commit message

allow native name and abbreviations for constellations. Add western_rey skyculture.

Description of the change

Enabled switching sky culture language in the GUI.
Allowed alternatively display of constellation abbreviations or nativeName.
Corrected adherence to sky culture language for stars and planets.
Added solid rework of lightweight (correctly art-free) H.A.Rey sky culture.

To post a comment you must log in.
Revision history for this message
Alexander Wolf (alexwolf) wrote :

SolarSystem should has both translators - one for standard GUI strings, and one for names. Plus you should split src/translations.h file to 2 separate files.

review: Needs Fixing
Revision history for this message
Alexander Wolf (alexwolf) wrote :

Oops... This is more correct phrase:

SolarSystem should contains the both translators - one for standard GUI strings, and one for names. Plus you should split src/translations.h file to 2 separate files.

Revision history for this message
Alexander Wolf (alexwolf) wrote :

src/gui/viewDialog.ui has conflicts

review: Needs Fixing
Revision history for this message
gzotti (georg-zotti) wrote :

Sorry, please explain further.

1) Where are planet/solarsystem names used in the GUI?

2) How and why should I split translations.h?

G.

On So, 23.11.2014, 15:52, Alexander Wolf wrote:
> Review: Needs Fixing
>
> SolarSystem should has both translators - one for standard GUI strings,
> and one for names. Plus you should split src/translations.h file to 2
> separate files.

Revision history for this message
Alexander Wolf (alexwolf) wrote :

OK.

The proper names of the objects of Solar system is stored in src/translations.h file - if you want use this names in SkyCultureTranslator you should enable this file in po/stellarium-skycultures/POTFILES.in file. But src/translations.h file contains geographical locations, scripts names, landscapes, etc. also - it should be split to 2 separate files - one file with celestial objects from Solar system, and one file for other strings. Next point can be got from one simple question - how Stellarium will translate info in left top corner? And a final point - some starlore may contain a native names for planets.

Revision history for this message
Alexander Wolf (alexwolf) wrote :

Oh! Don't forget - the planet names also used in the Locations dialog - it should use the both translators too.

7150. By gzotti

avoid merge conflict in viewDialog.ui

Revision history for this message
gzotti (georg-zotti) wrote :

Looks like I needed more understanding of the translation system... I was not aware these are also separated in the collection of words. :-0 Thanks for pointing that out, it explains english planet names on screen...

Is it OK to have planet names in translation.h and translation_planet.h? Or extract the planet names into a separate translation_planet.h and include translation.h and translation_planet.h in po/stellarium/POTFILES.in, and include only translation_planet.h in po/stellarium-skycultures/POTFILES.in ?

For the case where a skyculture brings its own planet names, do you think a file <skyculturename>/planet_names.fab and some QMap(englishName, nativeName) in SkyCultureMgr can help?
I think this just adheres to planets and the Moon, sorry for comets and minor bodies.
Of course, then there is a handful of deepsky objects which may have proper names (Pleiades, eta Car, coalsack?), but these names can be linked to HIP stars.

For the object label indeed there may be need for some special case. For now, I think just App language is OK, as usually orig. name is visible on screen as well.

7151. By gzotti

split translations.h to achieve mixed App/starlore languages.

Revision history for this message
Alexander Wolf (alexwolf) wrote :

>Is it OK to have planet names in translation.h and translation_planet.h? Or extract the planet names into a separate translation_planet.h and include translation.h and translation_planet.h in po/stellarium/POTFILES.in, and include only translation_planet.h in po/stellarium-skycultures/POTFILES.in ?

No, po/stellarium/POTFILES.in should contains translation.h only, po/stellarium-skycultures/POTFILES.in should contains translations_skycultures.h only.

SolarSystem, Planet, MinorPlanet, Comet, Supernova and LocationDialog should use SkyTranslator for names of celestial bodies, and AppStelTranslator for other strings.

P.S. N_("Tycho's Supernova"); should be contains in both *.h file - in translation.h as script name and in translations_skycultures.h as celestial object name

> For the case where a skyculture brings its own planet names, do you think a file <skyculturename>/planet_names.fab and some QMap(englishName, nativeName) in SkyCultureMgr can help?

I think it will be more complicated, because planet names should be translated within SolarSystem and Planet classes. Yes, if some <skyculturename> has planet_names.fab file then info from this file should be use for names. Format of file... englishName nativeName _("nativeName") X, where X can be 0, -1 or 1 - 0 for outer planets, -1 for evening visibility of inner planets, 1 for morning visibility of inner planets?

Revision history for this message
gzotti (georg-zotti) wrote :

OK, I changed ownership on this to stellarium team and switched state back to "Development". If you find time, can you maybe help me on this to get the split right? I may not be able to do much until next weekend. I hope it's clear what I want to achieve (see also branch description): properly working language split for GUI (including upper-left text for selected object) and labels shown in the sky display, with those labels even optionally showing untranslated names or abbreviations. It seems in parts to be a reawakening/completion job of a clever feature started some time ago by somebody else (split language).

The planet_names.fab extra on 0/-1/1 is also a good idea!

7152. By Alexander Wolf

Let's make the proper names of the celestial bodies as true part of the sky culture.

7153. By Alexander Wolf

let's allow use the native name of planets for specific culture, if names given

7154. By Alexander Wolf

re-merge improvements Rey descriptions

Revision history for this message
Alexander Wolf (alexwolf) wrote :

Hm. How I can a fast determine type of visibility of inner planets?

7155. By Alexander Wolf

oops... revert Zero landscape :)

7156. By Alexander Wolf

avoid conflicts

Revision history for this message
gzotti (georg-zotti) wrote :

do you mean evening/morning appearance? simply planet_longitude-solar_longitude ?
(maybe test sign(sin(planet_longitude-solar_longitude)) )

7157. By Alexander Wolf

add proper names of planets for some cultures

7158. By Alexander Wolf

Updated POTFILES.in file for skycultures

7159. By Alexander Wolf

a final changes for supporting the native names of the planets in cultures

Revision history for this message
Alexander Wolf (alexwolf) wrote :

I think this feature is ready for testing.

planet_names.fab format:
englishName<--space/tab-->"nativeName"<--space/tab-->_("nativeName")

Boorong, Tongan and Mongolian cultures supported it already =)

7160. By Alexander Wolf

typo fix

7161. By Alexander Wolf

typo fix

7162. By gzotti

typofixes and new translation in skycultures

7163. By gzotti

fixed comment

7164. By gzotti

added comment

Unmerged revisions

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'plugins/Supernovae/src/Supernova.cpp'
2--- plugins/Supernovae/src/Supernova.cpp 2014-11-08 20:24:59 +0000
3+++ plugins/Supernovae/src/Supernova.cpp 2014-11-26 13:20:53 +0000
4@@ -86,8 +86,9 @@
5 QString Supernova::getNameI18n(void) const
6 {
7 QString name = designation;
8+ const StelTranslator& trans = StelApp::getInstance().getLocaleMgr().getSkyTranslator();
9 if (note.size()!=0)
10- name = QString("%1 (%2)").arg(name).arg(q_(note));
11+ name = QString("%1 (%2)").arg(name).arg(trans.qtranslate(note));
12
13 return name;
14 }
15@@ -96,7 +97,7 @@
16 {
17 QString name = designation;
18 if (note.size()!=0)
19- name = QString("%1 (%2)").arg(name).arg(note);
20+ name = QString("%1 (%2)").arg(name).arg(note);
21
22 return name;
23 }
24@@ -119,11 +120,7 @@
25
26 if (flags&Name)
27 {
28- oss << "<h2>" << designation;
29- if (note.size()!=0)
30- oss << " (" << q_(note) << ")";
31-
32- oss << "</h2>";
33+ oss << "<h2>" << getNameI18n() << "</h2>";
34 }
35
36 if (flags&ObjectType)
37
38=== modified file 'po/stellarium-skycultures/CMakeLists.txt'
39--- po/stellarium-skycultures/CMakeLists.txt 2014-05-04 12:54:32 +0000
40+++ po/stellarium-skycultures/CMakeLists.txt 2014-11-26 13:20:53 +0000
41@@ -9,7 +9,9 @@
42 ${GETTEXT_XGETTEXT_EXECUTABLE}
43 -o stellarium-skycultures.pot
44 --keyword=_
45+ --keyword=N_
46 -C
47+ --add-comments=TRANSLATORS:
48 --directory=${PROJECT_SOURCE_DIR}
49 --files-from=POTFILES.in
50 --copyright-holder=Stellarium's\ team
51
52=== modified file 'po/stellarium-skycultures/POTFILES.in'
53--- po/stellarium-skycultures/POTFILES.in 2014-09-08 14:18:01 +0000
54+++ po/stellarium-skycultures/POTFILES.in 2014-11-26 13:20:53 +0000
55@@ -1,10 +1,15 @@
56+# Proper names of celestial bodies
57+src/translations_skycultures.h
58+# Proper names of deep-sky objects
59 nebulae/default/ngc2000names.dat
60+# Sky cultures (include proper names of the stars)
61 skycultures/arabic/constellation_names.eng.fab
62 skycultures/arabic/star_names.fab
63 skycultures/aztec/constellation_names.eng.fab
64 skycultures/aztec/star_names.fab
65 skycultures/boorong/constellation_names.eng.fab
66 skycultures/boorong/star_names.fab
67+skycultures/boorong/planet_names.fab
68 skycultures/chinese/constellation_names.eng.fab
69 skycultures/chinese/star_names.fab
70 skycultures/egyptian/constellation_names.eng.fab
71@@ -21,6 +26,7 @@
72 skycultures/maori/star_names.fab
73 skycultures/mongolian/constellation_names.eng.fab
74 skycultures/mongolian/star_names.fab
75+skycultures/mongolian/planet_names.fab
76 skycultures/navajo/constellation_names.eng.fab
77 skycultures/navajo/star_names.fab
78 skycultures/norse/constellation_names.eng.fab
79@@ -33,7 +39,10 @@
80 skycultures/sami/star_names.fab
81 skycultures/tongan/constellation_names.eng.fab
82 skycultures/tongan/star_names.fab
83+skycultures/tongan/planet_names.fab
84 skycultures/tupi/constellation_names.eng.fab
85 skycultures/tupi/star_names.fab
86 skycultures/western/constellation_names.eng.fab
87 skycultures/western/star_names.fab
88+skycultures/western_rey/constellation_names.eng.fab
89+skycultures/western_rey/star_names.fab
90
91=== modified file 'skycultures/CMakeLists.txt'
92--- skycultures/CMakeLists.txt 2014-09-08 14:18:01 +0000
93+++ skycultures/CMakeLists.txt 2014-11-26 13:20:53 +0000
94@@ -17,3 +17,4 @@
95 ADD_SUBDIRECTORY( tongan )
96 ADD_SUBDIRECTORY( tupi )
97 ADD_SUBDIRECTORY( western )
98+ADD_SUBDIRECTORY( western_rey )
99
100=== modified file 'skycultures/boorong/CMakeLists.txt'
101--- skycultures/boorong/CMakeLists.txt 2014-09-08 14:18:01 +0000
102+++ skycultures/boorong/CMakeLists.txt 2014-11-26 13:20:53 +0000
103@@ -1,12 +1,13 @@
104
105 ########### install files ###############
106
107-# install info.ini and star_names.fab
108-INSTALL(FILES info.ini star_names.fab DESTINATION share/${PACKAGE}/skycultures/boorong )
109+# install info.ini
110+INSTALL(FILES info.ini DESTINATION share/${PACKAGE}/skycultures/boorong )
111
112-# install constellations data, artwork and descriptions
113+# install constellations data, proper names data, artwork and descriptions
114 INSTALL(DIRECTORY ./ DESTINATION share/${PACKAGE}/skycultures/boorong
115 FILES_MATCHING PATTERN "constellation*"
116+ PATTERN "*_names.fab"
117 PATTERN "*.png"
118 PATTERN "description.*.utf8"
119 PATTERN "CMakeFiles" EXCLUDE )
120
121=== added file 'skycultures/boorong/planet_names.fab'
122--- skycultures/boorong/planet_names.fab 1970-01-01 00:00:00 +0000
123+++ skycultures/boorong/planet_names.fab 2014-11-26 13:20:53 +0000
124@@ -0,0 +1,9 @@
125+# TRANSLATORS: Native name of the Sun in Boorong culture (in English words)
126+Sun "Day" _("Day")
127+# TRANSLATORS: Native name of the Moon in Boorong culture (in English words)
128+Moon "Quoll" _("Quoll")
129+# TRANSLATORS: Native name of the Venus in Boorong culture (in English words)
130+Venus "Elder sister" _("Elder sister")
131+# TRANSLATORS: Native name of the Jupiter in Boorong culture (in English words)
132+Jupiter "Sulphur-crested white cockatoo" _("Sulphur-crested white cockatoo")
133+
134
135=== added file 'skycultures/boorong/planet_names.native.fab'
136--- skycultures/boorong/planet_names.native.fab 1970-01-01 00:00:00 +0000
137+++ skycultures/boorong/planet_names.native.fab 2014-11-26 13:20:53 +0000
138@@ -0,0 +1,8 @@
139+# TRANSLATORS: Native name of the Sun in Boorong culture
140+Sun "Gnowee" _("Gnowee")
141+# TRANSLATORS: Native name of the Moon in Boorong culture
142+Moon "Mityan" _("Mityan")
143+# TRANSLATORS: Native name of the Venus in Boorong culture
144+Venus "Chargee Gnowee" _("Chargee Gnowee")
145+# TRANSLATORS: Native name of the Jupiter in Boorong culture
146+Jupiter "Ginabongbearp" _("Ginabongbearp")
147
148=== modified file 'skycultures/inuit/constellation_names.eng.fab'
149--- skycultures/inuit/constellation_names.eng.fab 2010-04-21 16:57:58 +0000
150+++ skycultures/inuit/constellation_names.eng.fab 2014-11-26 13:20:53 +0000
151@@ -1,11 +1,11 @@
152-001 "" _("Two Sunbeams")
153-002 "" _("Two Placed Far Apart")
154-003 "" _("Dogs")
155-004 "" _("Collarbones")
156-005 "" _("Lamp Stand")
157-006 "" _("Caribou")
158-007 "" _("Two in Front")
159-008 "" _("Breastbone")
160-009 "" _("Runners")
161-010 "" _("Blubber Container")
162-011 "" _("The One Behind")
163+001 "Aagjuuk" _("Two Sunbeams")
164+002 "Akkuttujuuk" _("Two Placed Far Apart")
165+003 "Qimmiitt" _("Dogs")
166+004 "Quturjuuk" _("Collarbones")
167+005 "Pituaq" _("Lamp Stand")
168+006 "Tukturjuit" _("Caribou")
169+007 "Sivulliik" _("Two in Front")
170+008 "Sakiattiak" _("Breastbone")
171+009 "Ullaktut" _("Runners")
172+010 "Uqsuutaattiaq" _("Blubber Container")
173+011 "Kingulliq" _("The One Behind")
174
175=== modified file 'skycultures/mongolian/CMakeLists.txt'
176--- skycultures/mongolian/CMakeLists.txt 2014-10-21 10:13:05 +0000
177+++ skycultures/mongolian/CMakeLists.txt 2014-11-26 13:20:53 +0000
178@@ -1,12 +1,13 @@
179
180 ########### install files ###############
181
182-# install info.ini and star_names.fab
183-INSTALL(FILES info.ini star_names.fab DESTINATION share/${PACKAGE}/skycultures/mongolian )
184+# install info.ini
185+INSTALL(FILES info.ini DESTINATION share/${PACKAGE}/skycultures/mongolian )
186
187-# install constellations data, artwork and descriptions
188+# install constellations data, proper names data, artwork and descriptions
189 INSTALL(DIRECTORY ./ DESTINATION share/${PACKAGE}/skycultures/mongolian
190 FILES_MATCHING PATTERN "constellation*"
191+ PATTERN "*_names.fab"
192 PATTERN "*.png"
193 PATTERN "description.*.utf8"
194 PATTERN "CMakeFiles" EXCLUDE )
195
196=== added file 'skycultures/mongolian/planet_names.fab'
197--- skycultures/mongolian/planet_names.fab 1970-01-01 00:00:00 +0000
198+++ skycultures/mongolian/planet_names.fab 2014-11-26 13:20:53 +0000
199@@ -0,0 +1,22 @@
200+# TRANSLATORS: Native name of the Sun in Mongolian culture
201+Sun "Nar" _("Nar")
202+# TRANSLATORS: Native name of the Moon in Mongolian culture
203+Moon "Sar" _("Sar")
204+# TRANSLATORS: Native name of the Mercury in Mongolian culture
205+Mercury "Bud" _("Bud")
206+# TRANSLATORS: Native name of the Venus in Mongolian culture
207+Venus "Sugar" _("Sugar")
208+# TRANSLATORS: Native name of the Earth in Mongolian culture
209+Earth "Delkhii" _("Delkhii")
210+# TRANSLATORS: Native name of the Mars in Mongolian culture
211+Mars "Angarag" _("Angarag")
212+# TRANSLATORS: Native name of the Jupiter in Mongolian culture
213+Jupiter "Barhasbadi" _("Barhasbadi")
214+# TRANSLATORS: Native name of the Saturn in Mongolian culture
215+Saturn "Sanchir" _("Sanchir")
216+# TRANSLATORS: Native name of the Uranus in Mongolian culture
217+Uranus "Tengeriin-van" _("Tengeriin-van")
218+# TRANSLATORS: Native name of the Neptune in Mongolian culture
219+Neptune "Dalai-van" _("Dalai-van")
220+# TRANSLATORS: Native name of the Pluto in Mongolian culture
221+Pluto "Dalkhii-van" _("Dalkhii-van")
222
223=== modified file 'skycultures/polynesian/constellation_names.eng.fab'
224--- skycultures/polynesian/constellation_names.eng.fab 2008-04-28 23:18:57 +0000
225+++ skycultures/polynesian/constellation_names.eng.fab 2014-11-26 13:20:53 +0000
226@@ -1,3 +1,4 @@
227+# The native names are missing. Please fill the second column with an english transcript.
228 001 "" _("Bailer")
229 002 "" _("Cat's Cradle")
230 004 "" _("Voice of Joy")
231
232=== modified file 'skycultures/tongan/CMakeLists.txt'
233--- skycultures/tongan/CMakeLists.txt 2013-04-24 06:43:39 +0000
234+++ skycultures/tongan/CMakeLists.txt 2014-11-26 13:20:53 +0000
235@@ -1,12 +1,13 @@
236
237 ########### install files ###############
238
239-# install info.ini and star_names.fab
240-INSTALL(FILES info.ini star_names.fab DESTINATION share/${PACKAGE}/skycultures/tongan )
241+# install info.ini
242+INSTALL(FILES info.ini DESTINATION share/${PACKAGE}/skycultures/tongan )
243
244-# install constellations data, artwork and descriptions
245+# install constellations data, proper names data, artwork and descriptions
246 INSTALL(DIRECTORY ./ DESTINATION share/${PACKAGE}/skycultures/tongan
247 FILES_MATCHING PATTERN "constellation*"
248+ PATTERN "*_names.fab"
249 PATTERN "*.png"
250 PATTERN "description.*.utf8"
251 PATTERN "CMakeFiles" EXCLUDE )
252
253=== added file 'skycultures/tongan/planet_names.fab'
254--- skycultures/tongan/planet_names.fab 1970-01-01 00:00:00 +0000
255+++ skycultures/tongan/planet_names.fab 2014-11-26 13:20:53 +0000
256@@ -0,0 +1,8 @@
257+# TRANSLATORS: Native name of the Sun in Tongan culture
258+Sun "La'a" _("La'a")
259+# TRANSLATORS: Native name of the Moon in Tongan culture
260+Moon "Mahina" _("Mahina")
261+# TRANSLATORS: Native name of the Venus in Tongan culture
262+Venus "Tapukitea" _("Tapukitea")
263+# TRANSLATORS: Native name of the Mars in Tongan culture
264+Mars "Matamemea" _("Matamemea")
265
266=== added directory 'skycultures/western_rey'
267=== added file 'skycultures/western_rey/CMakeLists.txt'
268--- skycultures/western_rey/CMakeLists.txt 1970-01-01 00:00:00 +0000
269+++ skycultures/western_rey/CMakeLists.txt 2014-11-26 13:20:53 +0000
270@@ -0,0 +1,12 @@
271+
272+########### install files ###############
273+
274+# install info.ini and star_names.fab
275+INSTALL(FILES info.ini star_names.fab DESTINATION share/${PACKAGE}/skycultures/western_rey )
276+
277+# install constellations data, artwork and descriptions
278+INSTALL(DIRECTORY ./ DESTINATION share/${PACKAGE}/skycultures/western_rey
279+ FILES_MATCHING PATTERN "constellation*"
280+ PATTERN "*.png"
281+ PATTERN "description.*.utf8"
282+ PATTERN "CMakeFiles" EXCLUDE )
283
284=== added file 'skycultures/western_rey/Rey_cover.png'
285Binary files skycultures/western_rey/Rey_cover.png 1970-01-01 00:00:00 +0000 and skycultures/western_rey/Rey_cover.png 2014-11-26 13:20:53 +0000 differ
286=== added file 'skycultures/western_rey/constellation_names.eng.fab'
287--- skycultures/western_rey/constellation_names.eng.fab 1970-01-01 00:00:00 +0000
288+++ skycultures/western_rey/constellation_names.eng.fab 2014-11-26 13:20:53 +0000
289@@ -0,0 +1,193 @@
290+# H.A. Rey: Names for Stellarium. 2014-11 G. Zotti
291+# Rey gives capitalized constellation names in English and additional small-letter descriptions.
292+# In the text, the internationally fixed Latin names are also given.
293+# These are the basis for translation.
294+# chart 1
295+BgD "BIG DIPPER" _("Big Dipper")
296+.UMaP "Pointers" _("Pointers")
297+UMi "LITTLE DIPPER" _("Little Dipper")
298+.UMiG "Guardians" _("Guardians")
299+Dra "DRAGON" _("Draco")
300+.DraF "feet" _("feet")
301+.DraH "head" _("head")
302+.DraT "tail" _("tail")
303+# chart 2
304+Cas "CASSIOPEIA" _("Cassiopeia")
305+Cep "CEPHEUS" _("Cepheus")
306+Cam "GIRAFFE" _("Camelopardalis")
307+# chart 3
308+UMa "GREAT BEAR" _("Ursa Maior")
309+.UMah "head" _("head")
310+.UMap1 "paws" _("paws")
311+.UMap2 "paws" _("paws")
312+Leo "LION" _("Leo")
313+.Leoh "head" _("head")
314+.Leot "tail" _("tail")
315+Cvn "HUNTING DOGS" _("Canes Venatici")
316+LMi "LITTLE LION" _("Leo Minor")
317+# chart 4
318+Boo "HERDSMAN" _("Bootes")
319+.Boob "body" _("body")
320+.Booh "head" _("head")
321+.Boop "pipe" _("pipe")
322+CrB "NORTHERN CROWN" _("Corona Borealis")
323+Com "BERENICE'S HAIR" _("Coma Berenices")
324+# chart 5
325+Cyg "SWAN" _("Cygnus")
326+.Cygw1 "wing" _("wing")
327+.Cygw2 "wing" _("wing")
328+.Cygf "feet" _("feet")
329+.Cygn "outstretched neck" _("outstretched neck")
330+Lyr "LYRE" _("Lyra")
331+Vul "L.FOX" _("Vulpecula")
332+Her "HERCULES" _("Hercules")
333+.Herc "club" _("club")
334+.Herk "Keystone" _("Keystone")
335+# chart 6
336+Lac "LIZARD" _("Lacerta")
337+Tri "TRIANGLE" _("Triangulum")
338+And "ANDROMEDA" _("Andromeda")
339+.Andc "the chain" _("the chain")
340+GSq "GREAT SQUARE" _("Great Square")
341+Peg "PEGASUS" _("Pegasus")
342+.Pegh "head" _("head")
343+.Pegt "tail" _("tail")
344+.Pegw "wing" _("wing")
345+# chart 7
346+Per "PERSEUS" _("Perseus")
347+Ari "RAM" _("Aries")
348+.Arih "head" _("head")
349+.Arit "tail" _("tail")
350+Tau "BULL" _("Taurus")
351+.Tauh "head" _("head")
352+.Tauc1 "horn" _("horn")
353+.Tauc2 "horn" _("horn")
354+.Taut "tail" _("tail")
355+# chart 8
356+Aur "CHARIOTEER" _("Auriga")
357+Lyn "LYNX" _("Lynx")
358+Gem "TWINS" _("Gemini")
359+CMi "LITTLE DOG" _("Canis Minor")
360+Cnc "CRAB" _("Cancer")
361+# chart 9
362+Mon "UNICORN" _("Monoceros")
363+Ori "ORION" _("Orion")
364+.Orib "belt" _("belt")
365+.Oric "club" _("club")
366+.Oris "shield" _("shield")
367+Lep "HARE" _("Lepus")
368+CMa "BIG DOG" _("Canis Maior")
369+Eri "RIVER ERIDANUS" _("Eridanus")
370+# chart 10
371+Hya "HYDRA" _("Hydra")
372+.Hyah "Hydra's head" _("Hydra's head")
373+Crt "CUP" _("Crater")
374+Ant "PUMP" _("Antlia")
375+# chart 11
376+.Hyat "HYDRA's tail" _("Hydra's tail")
377+Vir "VIRGIN" _("Virgo")
378+.Virh "head" _("head")
379+.Virf "feet" _("feet")
380+Lib "SCALES" _("Libra")
381+Crv "CROW" _("Corvus")
382+.Crvb "bill" _("bill")
383+.Crvf "foot" _("foot")
384+.Crvt "tail" _("tail")
385+# chart 12
386+SerCd "SERPENT'S TAIL" _("Serpens Cauda")
387+SerCp "SERPENT'S HEAD" _("Serpens Caput")
388+.SerHh "head" _("head")
389+Oph "SERPENT HOLDER" _("Ophiuchus")
390+.Ophb "body" _("body")
391+.Ophh "head" _("head")
392+.Opha1 "arm" _("arm")
393+.Opha2 "arm" _("arm")
394+.Ophf1 "foot" _("foot")
395+.Ophf2 "foot" _("foot")
396+Sco "SCORPION" _("Scorpius")
397+.Scoc "claws" _("claws")
398+.Scot "tail" _("tail")
399+.Scoe "cat's eyes" _("cat's eyes")
400+# chart 13
401+Sge "ARROW" _("Sagitta")
402+Del "DOLPHIN" _("Delphinus")
403+Aql "EAGLE" _("Aquila")
404+.Aqlh "head" _("head")
405+.Aqlw1 "wing" _("wing")
406+.Aqlw2 "wing" _("wing")
407+.Aqlt "tail" _("tail")
408+Sct "SHIELD" _("Scutum")
409+Sgr "ARCHER" _("Sagittarius")
410+.Sgrh "head" _("head")
411+.Sgrb "body" _("body")
412+.Sgrs "skirt" _("skirt")
413+.Sgrt "the bow" _("the bow")
414+CrA "SOUTHERN CROWN" _("Corona Australis")
415+# chart 14
416+Equ "LITTLE HORSE" _("Equuleus")
417+Aqr "WATER CARRIER" _("Aquarius")
418+.Aqrh "head" _("head")
419+.Aqra "arm" _("arm")
420+.Aqrv "vessel" _("vessel")
421+Cap "GOAT" _("Capricornus")
422+PsA "SOUTHERN FISH" _("Piscis Austrinus")
423+Gru "CRANE" _("Grus")
424+Phe "PHOENIX" _("Phoenix")
425+# chart 15
426+Psc "FISHES" _("Pisces")
427+.PscN "N.FISH" _("Northern Fish")
428+.PscW "Circlet or W. FISH" _("Circlet")
429+Cet "WHALE" _("Cetus")
430+.Cett "tail" _("tail")
431+Scl "SCULPTOR" _("Sculptor")
432+# chart 16
433+Vel "SHIP's SAIL" _("Vela")
434+Pyx "SHIP'S COMPASS" _("Pyxis")
435+.CruF "False Cross" _("False Cross")
436+Car "SHIP'S KEEL" _("Carina")
437+.Carh "figurehead" _("figurehead")
438+Pup "SHIP'S STERN" _("Puppis")
439+.Pupt "transom" _("transom")
440+Vol "FLYING FISH" _("Volans")
441+.Volw1 "wing" _("wing")
442+.Volw2 "wing" _("wing")
443+Dor "SWORDFISH" _("Dorado")
444+Col "DOVE" _("Columba")
445+.Colh "head" _("head")
446+.Colt "tail" _("tail")
447+.Colw "wing" _("wing")
448+Hyi "HYDRUS" _("Hydrus")
449+Pic "EASEL" _("Pictor")
450+Ret "NET" _("Reticulum")
451+Hor "CLOCK" _("Horologium")
452+For "FURNACE" _("Fornax")
453+# chart 17
454+Lup "WOLF" _("Lupus")
455+.Lupt "tail" _("tail")
456+.Lupe "ears" _("ears")
457+Cen "CENTAUR" _("Centaurus")
458+.Cenh "head" _("head")
459+.Cena1 "arm" _("arm")
460+.Cena2 "arm" _("arm")
461+.Cenb "body" _("body")
462+.Cenf "front legs" _("front legs")
463+.Cenl "hind legs" _("hind legs")
464+Cru "SOUTHERN CROSS" _("Crux")
465+Nor "SQUARE" _("Norma")
466+Cir "DIVIDERS" _("Circinus")
467+TrA "SOUTHERN TRIANGLE" _("Triangulum Australe")
468+Ara "ALTAR" _("Ara")
469+Mus "FLY" _("Fly")
470+Aps "BIRD OF PARADISE" _("Apus")
471+Cha "CHAMELEON" _("Chamaeleon")
472+.Chae "eyes" _("eyes")
473+Pav "PEACOCK" _("Pavo")
474+Oct "OCTANT" _("Octans")
475+Tuc "TOUCAN" _("Tucana")
476+Ind "INDIAN" _("Indus")
477+Tel "TELESCOPE" _("Telescopium")
478+# uncharted
479+Mic "MICROSCOPE" _("Microscopium")
480+Cae "CHISEL" _("Caelum")
481+Men "TABLE M." _("Mensa")
482+Sex "SEXTANT" _("Sextans")
483
484=== added file 'skycultures/western_rey/constellationship.fab'
485--- skycultures/western_rey/constellationship.fab 1970-01-01 00:00:00 +0000
486+++ skycultures/western_rey/constellationship.fab 2014-11-26 13:20:53 +0000
487@@ -0,0 +1,206 @@
488+# Western-Rey from H.A.Rey: The Stars - A New Way To See Them (1952, 41th reprint ca 1998).
489+# Original by Mike Richards, verified&extended by Rey's descriptions 2014 Georg Zotti
490+#
491+# TODO: Find a way to mark asterisms different from constellations?
492+# If you want to hide the abbreviation from display in "abbreviated" mode, prepend a dot to the name.
493+# there are 1-star "subfigures" labeled according to Rey, with hidden abbreviations and linked to dim stars.
494+#
495+# chart 1
496+# BIG DIPPER as separate constellation
497+BgD 7 67301 65378 65378 62956 62956 59774 59774 54061 54061 53910 53910 58001 58001 59774
498+.UMaP 1 53910 54061
499+UMi 7 11767 85822 85822 82080 82080 77055 77055 79822 79822 75097 75097 72607 72607 77055
500+# Guardians
501+.UMiG 1 72607 75097
502+Dra 15 87585 87833 87833 85670 85670 85829 85829 87585 87585 94376 94376 97433 94376 89908 89937 89908 89908 83895 83895 80331 80331 78527 78527 75458 75458 68756 68756 61281 61281 56211
503+# Dra feet
504+.DraF 3 89937 89908 89908 94376 94376 97433
505+# Dra head
506+.DraH 4 87585 87833 87833 85670 85670 85829 85829 87585
507+# Dra tail (only rear end)
508+.DraT 1 68756 61281
509+# Chart2:
510+# Cas: the W has an extra star!
511+Cas 5 9598 8886 8886 6686 6686 4427 4427 3179 3179 746
512+Cep 12 110991 112724 112724 106032 106032 105199 105199 102422 102422 101093 105199 107259 107259 109857 109857 109492 109492 110991 109492 107418 112724 116727 116727 106032
513+Cam 8 23040 23522 23522 17884 17884 16228 17884 17959 17959 22783 22783 23522 22783 33694 33694 29997
514+# Chart3:
515+Uma 19 67301 65378 65378 62956 62956 59774 59774 54061 54061 53910 53910 58001 58001 59774 54061 46733 46733 41704 41704 44127 44127 44471 44471 50801 50372 46853 46853 48319 48319 46733 50801 55203 55219 54539 54539 57399 57399 67301
516+.UMah 1 64468 64468
517+.UMap1 1 55203 55219
518+.UMap2 1 50801 44471
519+Leo 18 57632 54872 54872 54879 54879 55642 55642 55434 54879 51624 54879 49583 49583 49669 49583 47508 49583 50583 50583 53954 53954 54872 50583 50335 50335 48455 48455 46146 46146 46750 46750 47908 47908 48455 47908 49583
520+.Leoh 1 48390 48390
521+.Leot 1 56146 56146
522+CVn 1 61317 63125
523+LMi 5 53229 51233 51233 49593 49593 46952 49593 51056 51056 53229
524+# chart 4
525+Boo 18 67275 67459 67459 67927 67927 69673 69673 71795 71795 72105 72105 69673 72105 74666 74666 75411 75411 73555 73555 74666 73555 71075 71075 71053 71053 71284 71284 72105 71075 69732 69732 70497 70497 69483 69483 69732
526+.Boob 1 71571 71571
527+.Booh 1 73634 73634
528+.Boop 1 69483 69483
529+Com 5 64241 64394 64394 60742 64394 60697 64394 60746 64394 60904
530+CrB 5 76127 75695 75695 76267 76267 76952 76952 77512 77512 78159
531+# chart 5
532+Cyg 16 94779 97165 97165 100453 100453 102098 102098 104060 102098 99785 99785 95853 95853 94779 100453 102488 102488 104732 104732 103413 103413 102098 103413 105102 105102 104887 100453 98110 98110 96683 96683 95947
533+.Cygw1 1 98610 98610
534+.Cygw2 1 101756 101756
535+.Cygf 1 104463 104463
536+.Cygn 1 97295 97295
537+Lyr 10 91262 91926 91926 92862 92862 94481 94481 94713 94713 93194 93194 92420 92420 89826 89826 91262 93194 92791 92420 91971
538+Vul 1 95771 98543
539+Her 25 84345 84379 84379 85693 85693 86974 86974 88794 88794 88267 88267 88886 88886 90139 90139 92043 92043 92161 88794 87933 87933 84380 84380 85112 85112 87808 87808 86414 86414 81126 81126 79101 79101 79992 79992 86414 86974 83207 83207 81693 81693 81833 81833 84380 84380 83207 83207 80816 80816 80170
540+.Herc 1 80963 80963
541+.Herk 1 82959 82959
542+# chart 6
543+Lac 10 109937 109754 109754 111104 111104 111944 111944 111022 111022 110351 110351 111104 111022 110609 110609 110538 110538 111169 111169 111022
544+Tri 3 10670 10064 10064 8796 8796 10670
545+And 18 677 3092 3092 2912 2912 5447 5447 3092 3092 3031 3031 3693 3693 4463 5447 7513 7513 9640 5447 4436 4436 3881 3881 5434 5434 7607 2912 1411 1411 116631 116584 116805 116805 116631 116631 113726
546+# Andromeda's chain. Has separate label, but is no asterism.
547+.Andc 1 115808 115808
548+# GSq Great Square of Pegasus
549+GSq 4 113963 113881 113881 677 677 1067 1067 113963
550+Peg 18 113963 113881 113881 1067 1067 113963 113963 112440 112440 112748 112748 112158 112158 109410 114520 113963 113963 114144 113963 112447 112447 112029 112029 109427 112029 107315 112447 109176 109176 107348 112440 109176 109176 107354 107354 105502
551+.Pegh 1 111191 111191
552+.Pegt 1 113958 113958
553+.Pegw 1 115288 115288
554+# chart 7
555+Per 25 17448 18246 18246 18614 18614 18532 18532 14576 14576 14354 14354 13254 18532 17529 17529 16335 16335 15863 15863 16826 16826 17358 17358 19343 19343 19812 19812 20070 20070 19167 14576 14668 14668 14632 14632 13531 13531 13268 13268 14328 14328 13531 14328 15863 15863 14632 14632 12777 12777 8068
556+Ari 12 14838 13914 13914 10306 10306 8832 13914 13209 13209 13061 13061 12719 12719 13209 12719 9884 9884 9153 9153 8903 8903 9884 9884 10306
557+.Arih 1 8718 8718
558+.Arit 1 12808 12808
559+Tau 20 25428 21881 21881 20711 20711 17702 21881 26451 26451 21421 21421 20894 20894 20205 20205 20455 20455 20648 20648 20889 20889 20711 20205 21589 21589 21402 20205 19860 20205 18724 18724 16083 16083 16369 16083 15900 15900 16852 15900 18907
560+.Tauh 1 22947 22947
561+.Tauc1 1 23395 23395
562+.Tauc2 1 19009 19009
563+.Taut 1 16095 16095
564+# chart 8
565+Aur 10 23015 28380 28380 28360 28360 28358 28358 24608 24608 28360 23015 23767 23767 24608 24608 23416 23416 23453 23453 23767
566+Lyn 6 45860 45688 45688 44248 44248 41075 41075 36145 36145 33449 33449 30060
567+Gem 17 31681 34088 34088 35550 35550 35350 35350 32362 35550 36962 36962 37740 36962 37826 36962 36046 36046 34693 34693 36366 36366 36850 34693 33018 34693 32246 32246 30883 32246 30343 30343 29655 29655 28734
568+CMi 1 37279 36188
569+Cnc 6 43103 42806 42806 40167 40167 40526 40526 42911 42911 42806 42911 44066
570+# chart 9
571+Mon 10 41307 39863 29651 30867 30867 34769 34769 32578 32578 30419 34769 39863 39863 37447 32578 31216 30419 31216 31216 31978
572+Ori 23 26727 26311 26311 25930 28716 29426 29426 29038 29038 27913 27913 28716 29239 28614 28614 27989 27989 26727 26727 27366 24436 25281 25281 25930 25930 25336 25336 25813 25813 26207 25813 27989 25336 22449 22449 22549 22549 22797 22797 23123 22449 22509 22509 22845 22845 22957
573+.Orib 1 26464 26464
574+.Oric 1 28447 28447
575+.Oris 1 22245 22245
576+Lep 12 28910 28103 28103 27288 27288 25985 25985 24305 28910 27654 27654 27072 27072 25606 25606 23685 25985 25606 24305 24845 24305 24327 23685 24305
577+CMa 17 33160 34045 34045 33347 33347 32349 32349 33977 33977 34444 34444 35037 35037 35904 33579 33856 33856 34444 33579 33152 33152 31592 31592 31125 31592 30324 31592 32349 33579 32759 30122 33579 33347 33160
578+Eri 27 7588 9007 9007 10602 10602 11407 11407 12486 12486 13847 13847 15510 15510 17874 17874 20042 20042 20535 20535 21393 21393 18673 18673 18216 18216 17717 17717 17651 17651 16611 16611 15474 15474 14146 14146 13701 13701 16537 16537 17378 17378 18543 18543 19849 19849 19587 19587 21444 21444 22109 22109 23875 23875 21594
579+# chart 10
580+Hya 17 42799 42402 42402 42313 42313 43109 43109 43813 43813 42799 43813 45336 45336 47431 47431 46390 46390 49841 49841 51069 51069 52943 52943 53740 53740 54682 54682 56343 56343 57936 57936 64962 64962 68895
581+.Hyah 1 42142 42142
582+Crt 9 53740 54682 54682 55705 55705 55282 55282 53740 55282 55687 55687 56633 56633 58188 58188 57283 57283 55705
583+Ant 1 51172 51172
584+# chart 11
585+.Hyat 1 61720 61720
586+Vir 17 57380 57757 57757 60129 60129 61941 61941 58948 58948 57380 61941 64238 64238 65474 65474 69427 69427 69701 69701 71957 65474 66249 66249 68520 68520 72220 66249 63090 63090 63608 63090 61941 69701 68520
587+.Virh 1 58510 58510
588+.Virf 1 70755 70755
589+Lib 6 73714 72622 72622 74785 74785 76333 76333 72622 76333 76470 76470 76600
590+Crv 7 61174 60965 60965 59803 59803 59316 59316 59199 59316 60189 60189 61359 60189 60965
591+.Crvb 1 61145 61145
592+.Crvf 1 61251 61251
593+.Crvt 1 59087 59087
594+# chart 12
595+# We need a complete Ser entry to keep the IAU border valid.
596+Ser 19 92946 88771 88771 88601 88601 89962 89962 88048 88048 86565 86565 86263 86263 84880 80628 79882 79882 79593 79593 77516 77516 77622 77622 77070 77070 77257 77257 76276 76276 77233 77233 78072 78072 77450 77450 76852 76852 77233
597+SerCd 7 92946 88771 88771 88601 88601 89962 89962 88048 88048 86565 86565 86263 86263 84880
598+SerCp 12 80628 79882 79882 79593 79593 77516 77516 77622 77622 77070 77070 77257 77257 76276 76276 77233 77233 78072 78072 77450 77450 76852 76852 77233
599+.SerHh 1 77995 77995
600+Oph 21 85423 84405 84405 84970 84970 85340 85340 84893 84893 84012 84012 85365 85365 86742 86742 87108 87108 88601 86742 86032 86032 83000 83000 86742 83000 82673 82673 80883 80883 79593 83000 81377 81377 80894 80894 80569 80569 80343 80343 80975 81377 84012
601+.Ophb 1 83262 83262
602+.Ophh 1 85664 85664
603+.Opha1 1 87108 87108
604+.Opha2 1 81007 81007
605+.Ophf1 1 85084 85084
606+.Ophf2 1 80569 80569
607+Sco 19 87261 85927 85927 85696 85696 86170 86170 86670 86670 87073 87073 86228 86228 84143 84143 82671 82671 82514 82514 82396 82396 81266 81266 80763 80763 80112 80112 79404 79404 78104 78104 78265 80112 79374 79374 78820 78820 78401
608+.Scoc 1 79098 79098
609+.Scot 1 85889 85889
610+.Scoe 1 85543 85543
611+# chart 13
612+Sge 3 98337 97365 97365 96837 97365 96757
613+Del 10 101421 101916 101421 101800 101916 101800 101800 101882 101882 102281 102281 102532 102532 101958 101958 101769 101769 101483 101483 101800
614+Aql 10 98036 97649 97649 97278 97278 96229 96229 95501 95501 97804 99473 97804 95501 93747 93747 93244 95501 93805 93805 93429
615+.Aqlh 1 97229 97229
616+.Aqlw1 1 97980 97980
617+.Aqlw2 1 94486 94486
618+.Aqlt 1 93717 93717
619+Sct 4 92175 91726 91726 90595 90595 91117 91117 92175
620+Sgr 22 88635 89931 89931 90185 90185 89642 89642 88635 88635 89341 89341 90496 90496 89931 89931 92041 92041 92855 92855 94141 94141 95168 95168 95176 94141 93085 93085 92855 92855 93864 93864 93506 93506 92041 93864 98412 98412 98032 95241 95347 95347 98412 95347 93506
621+.Sgrh 1 93537 93537
622+.Sgrb 1 93277 93277
623+.Sgrs 1 95774 95774
624+.Sgrt 1 89678 89678
625+CrA 6 92989 93174 93174 93825 93825 94114 94114 94160 94160 94005 94005 93542 93542 92953
626+# chart 14
627+Equ 2 104987 104858 104858 104521
628+Aqr 23 102618 103045 103045 104459 104459 106278 106278 109139 106278 109074 109074 110395 110395 111497 111497 110672 110672 109074 109074 110003 110003 112961 112961 114855 114855 114724 114724 112961 112961 112716 112716 113136 113136 114855 114855 114341 114341 114375 114375 114119 114855 115438 115438 115669 115669 116247
629+.Aqrh 1 110764 110764
630+.Aqra 1 110378 110378
631+.Aqrv 1 113658 113658
632+Cap 14 100064 100345 100345 104139 104139 105515 105515 106985 106985 107556 105515 106039 106039 105881 105881 104139 104139 104019 104019 104234 104019 101027 100345 101027 101027 102485 102485 102978
633+PsA 9 113368 111954 111954 109285 109285 107380 107380 107608 107608 109285 109285 111188 111188 112948 112948 113246 113246 113368
634+Gru 9 114131 110997 110997 109268 109268 112122 112122 114421 114421 114131 112122 113638 112122 112623 109268 109111 109111 108085
635+Phe 12 5348 5165 5165 3245 3245 2072 3245 5348 5165 7083 7083 8837 8837 5165 5165 6867 6867 3245 2072 2081 2081 765 765 2072
636+#chart 15
637+Psc 20 5586 5742 5586 6193 6193 5742 5742 6706 6706 7097 7097 8198 8198 9487 9487 7884 7884 7007 7007 5737 5737 4906 4906 3786 3786 118268 118268 116771 116771 116928 116928 115738 115738 114971 114971 115227 115227 115830 115830 116771
638+.PscN 1 5339 5339
639+.PscW 1 115476 115476
640+Cet 14 12706 11484 11484 12828 12828 13954 13954 14135 14135 12706 12706 12387 12387 10826 10826 8645 8645 6537 6537 1562 1562 3419 3419 8102 3419 9347 9347 12387
641+.Cett 1 12925 12925
642+Scl 1 4577 4577
643+# chart 16
644+Vel 9 39953 42913 42913 45941 45941 48774 48774 52727 52727 51986 51986 50191 50191 46651 46651 44816 44816 39953
645+Pyx 3 39429 42515 42515 42828 42828 43409
646+.CruF 2 45941 41037 45556 42913
647+Car 14 39953 38827 38827 41037 41037 45556 45556 50371 50371 51232 51232 51849 51849 53253 53253 54463 53253 52468 52468 51576 51576 52419 52419 50099 50099 45238 45238 30438
648+.Carh 1 52742 52742
649+Pup 12 30438 31685 31685 35264 35264 36917 36917 37229 37229 37173 37173 38170 38170 38070 38070 37677 37677 36917 38170 39757 39757 39429 39429 39953
650+.Pupt 1 37089 37089
651+Vol 8 37504 34481 34481 39794 39794 37504 39794 35228 39794 41312 41312 44382 44382 39794 40817 39794
652+.Volw1 1 41304 41304
653+.Volw2 1 37032 37032
654+Dor 7 27100 27890 27890 26069 26069 27100 26069 21281 21281 19893 26069 23693 23693 21281
655+Col 8 28328 28199 28199 30277 30277 29807 29807 28199 28199 27628 27628 28328 27628 26634 26634 25859
656+.Colh 1 26035 26035
657+.Colt 1 28992 28992
658+.Colw 1 27955 27955
659+Hyi 5 2021 17678 17678 12394 12394 11001 11001 8928 8928 9236
660+Pic 3 32607 27530 27530 27321 32607 27321
661+Ret 4 19780 19921 19921 18597 18597 17440 17440 19780
662+Hor 1 19747 19747
663+For 1 14879 14879
664+# chart 17
665+Lup 24 78918 77634 77634 76705 76705 75177 75177 78384 75177 75304 75304 75501 75501 76297 76297 76552 76552 76829 75501 75141 75141 74117 74117 74911 74911 75264 74117 73807 73807 74376 74376 74395 73807 71536 71536 71121 71536 71860 71860 69996 71860 70576 71860 72683 72683 73273 73273 75177
666+.Lupt 1 77523 77523
667+.Lupe 1 70320 70320
668+Cen 31 72010 71865 71865 73334 73334 71352 71352 68245 68245 68862 68862 70300 70300 70090 70090 68933 68933 67464 67464 68245 67153 67457 67153 67669 67153 67786 67153 65109 65109 65936 65936 67464 67464 67472 67472 68002 68002 68523 68523 68282 68282 68245 68002 66657 66657 71683 66657 68702 66657 61932 61932 68002 61932 60823 60823 59449 59449 56561 60823 59196 59196 55425
669+.Cenh 1 69995 69995
670+.Cena1 1 71353 71353
671+.Cena2 1 66019 66019
672+.Cenb 1 65810 65810
673+.Cenf 1 69618 69618
674+.Cenl 1 57512 57512
675+Cru 2 61084 60718 62434 59747
676+Nor 4 80000 80582 80582 78914 78914 78639 78639 80000
677+Cir 2 71908 75323 71908 74824
678+TrA 4 82273 74946 74946 76440 76440 77952 77952 82273
679+Ara 6 88714 85792 85792 83153 83153 83081 83081 82363 82363 85727 85727 88714
680+Mus 6 62322 61585 61585 63613 63613 61199 61199 61585 61585 59929 59929 57363
681+Aps 4 80047 81065 81065 81852 81852 80047 80047 72370
682+Cha 5 40702 51839 51839 52595 52595 60000 60000 58484 58484 51839
683+.Chae 1 40888 40888
684+Pav 13 100751 105858 105858 102395 102395 99240 99240 100751 99240 98495 98495 91792 91792 93015 93015 99240 93015 92609 92609 90098 90098 88866 88866 92609 88866 86929
685+Oct 3 107089 112405 112405 70638 70638 107089
686+Tuc 5 110130 114996 114996 118322 118322 1599 1599 2484 2484 114996
687+Ind 5 101772 102333 102333 103227 103227 108870 108870 108431 108431 103227
688+Tel 1 90568 90422
689+# These are not described in Rey's detail maps. Only here to allow drawing the constellation borders.
690+Mic 1 102831 102831
691+Cae 1 21770 21770
692+Men 1 29271 29271
693+Sex 1 49641 49641
694\ No newline at end of file
695
696=== added file 'skycultures/western_rey/description.de.utf8'
697--- skycultures/western_rey/description.de.utf8 1970-01-01 00:00:00 +0000
698+++ skycultures/western_rey/description.de.utf8 2014-11-26 13:20:53 +0000
699@@ -0,0 +1,97 @@
700+<h2>Westlich: H.A. Rey</h2>
701+
702+<h4>Einleitung</h4>
703+
704+<p>Im Laufe des 19. Jahrhunderts kam die Verwendung und weitere
705+Ausgaben von mit mythologischen Figuren überladenen und aufwendig
706+illustrierten Sternatlanten aus der Mode. Die Sterne in Atlanten aus
707+dieser Zeit wurden mit Linienzügen verbunden, die jedoch oft nur
708+andeuten, welche Sterne zu welchem Sternbild gehören, ohne jedoch der
709+Figur zu folgen. Nach mehreren Jahrzehnten solcher Atlastradition
710+waren die Linienzüge bis zur Mitte des 20. Jahrhunderts für angehende
711+Sternfreunde völlig unverständlich geworden.</p>
712+
713+
714+<p><img src="Rey_cover.png" width="150" align="right"/>
715+H. A. Rey (Hans Augusto Reyersbach) (1898-1977), ein aus Hamburg
716+gebürtiger Illustrator und Autor von Kinderbüchern, veröffentlichte
717+1952 seine Neuinterpretation in dem Buch <em>The Stars - A New Way To
718+See Them</em>.</p>
719+
720+
721+<h4>Die Sternbilder</h4>
722+
723+<p>In diesem Buch, das sich insbesondere in den USA sehr großer
724+Beliebtheit erfreut, verband Rey die Sterne jedes Sternbilds "in einer
725+Weise, daß die sich ergebende Figur Sinn macht." Was ihn erstaunte
726+war, "daß niemand das vorher gemacht hatte. Die Grundidee ist doch so
727+einfach."</p>
728+
729+
730+<p>Reys neue Linienzüge erleichtern das Erkennen der Figuren
731+tatsächlich. Rey hat in seiner Arbeit keine zusätzlichen Bilder
732+verwendet, die Figuren aus den Linienzügen sprechen für sich. Daher
733+wäre eine Darstellung in Stellarium, die über die Linienzüge hinaus
734+noch gemalte Figuren zeigte, nicht angebracht. Rey bestand auch auf
735+die Bezeichnung in der Sprache des Volkes (USA: Englisch) statt der
736+Verwendung lateinischer Bezeichnungen. Bei Einstellung der
737+Namensdarstellung auf "Original" wird die Schreibweise von Rey
738+dargestellt: Zu den Sternbildernamen in Blockschrift hat er auch noch
739+Sternbilderteile erklärend beschriftet. Auch die benannten Sterne sind
740+auf die im Buch genannten Namen beschränkt.</p>
741+
742+
743+
744+<h4>Reys Figuren im Vergleich mit den Klassischen Sternbildern</h4>
745+
746+<p>Rey hält sich in Anzahl und Benennung im Wesentlichen an die
747+Tradition der Westlichen Sternsagen und beschreibt die 88 offiziell
748+anerkannten Bilder, mit Ergänzungen um die beiden Wagen und ein
749+"Großes Quadrat" (im Pegasus). Allerdings weicht seine Sichtweise doch
750+in einigen Fällen sehr markant von den Bildern ab, die Ptolemäus in
751+seinem Almagest (Mitte des 2. Jh n.Chr.) durch Bezeichnung der
752+Sternörter wie "der an der Schulter", "Kopf" etc. festgelegt
753+hatte. Einige Beispiele: <ul>
754+
755+<li> Rey drehte die Figur der großen Bärin (<em>Ursa Major</em>) um,
756+sie sieht jetzt aus wie ein Eisbär beim Wittern von Beute. Dadurch
757+entgeht er der ewigen Frage nach dem langen Bärenschwanz, andererseits
758+entfällt der Eindruck der den Pol mit dem täglichen Umschwung des
759+Himmels umwandernden Bärin.</li>
760+
761+<li>Den Stier (<em>Taurus</em>), von dem seit der Antike nur der
762+Vorderteil gezeigt wird, hat Rey um ein Hinterteil erweitert. Dafür
763+präsentiert er ihn nicht mit nach oben, sondern seitwärts büffelartig
764+weit ausladenden Hörnern. Der Hauptstern <em>Aldebaran</em>, sonst
765+rote Auge, liegt nun am Hals.</li>
766+
767+<li>Der Kopf des <em>Herkules</em>, Rasalgethi, liegt
768+traditionellerweise gleich neben dem des Schlangenträgers
769+<em>Ophiuchus</em>, und ein Sternenviereck bildet seinen Körper. Aus
770+diesem bildet Rey nun den Kopf des Helden, und Rasalgethi (obwohl
771+arabisch eindeutig Ras=Kopf) markiert einen Fuß.
772+
773+<li>Auch der Walfisch (<em>Cetus</em>) ist umgedreht, aus dem Maul
774+wurde eine Schwanzflosse.</li>
775+
776+<li>Beim <em>Pegasus</em> vertauschte Rey Kopf und Füße. </li>
777+
778+<li><em>Bootes</em>, der Rinderhirt, wird sitzend und beim
779+Pfeifenrauchen dargestellt. (Und das in einem Buch auch für Kinder!
780+Keine Spur von "Political Correctness" in den 1950ern... :-) </li>
781+</ul> </p>
782+
783+
784+<h3>Weiterführende Links</h3>
785+<ul>
786+<li><a href="http://en.wikipedia.org/wiki/H._A._Rey">H.A.Rey (englischsprachige Wikipedia)</a></li>
787+</ul>
788+
789+<h3>Autoren</h3>
790+
791+<p>Diese Sternbildkultur war in Form einer alternativen
792+Linienzug-Datei von Mike Richards für den Austausch durch Anwender
793+bereits lange Zeit verfügbar mittels eines Links in der "Westlichen"
794+Sternbilderkultur. Die Prüfung anhand der 41. Auflage des Buches,
795+Erweiterung zu einer separaten Sternbilderkultur inklusive
796+Beschreibung erfolgten durch Georg Zotti.</p>
797
798=== added file 'skycultures/western_rey/description.en.utf8'
799--- skycultures/western_rey/description.en.utf8 1970-01-01 00:00:00 +0000
800+++ skycultures/western_rey/description.en.utf8 2014-11-26 13:20:53 +0000
801@@ -0,0 +1,83 @@
802+<h2>Western: H.A. Rey</h2>
803+
804+<h4> Introduction</h4>
805+
806+<p>During the 19th century the use and further editions of richly
807+illustrated atlases with sumptuously engraved mythological figures
808+fell out of fashion. The stars of the constellations in atlases of
809+that time started to be shown connected with line patterns ("stick
810+figures"), which however appear sometimes only to have been used to
811+indicate which stars belong to which constellation. Over several
812+decades the figures had ceased to resemble the figures they were named
813+after and appeared incomprehensible to beginning stargazers in the
814+middle of the 20th century.</p>
815+
816+<p><img src="Rey_cover.png" width="150" align="right"/>
817+H. A. Rey (Hans Augusto Reyersbach) (1898-1977), an artist and author
818+of children's books of German descent but emigrated to the USA,
819+published his answer to this problem in 1952 with the book <em>The
820+Stars - A New Way To See Them</em>.</p>
821+
822+
823+<h4>The Constellations</h4>
824+
825+<p>In this book, which has become very popular especially in the US,
826+Rey connected the stars of every constellation "in such a way that the
827+resulting shape makes sense." What surprised him was "that nobody has
828+done it before. The basic idea is so simple." </p>
829+
830+<p>Rey's new stick figures make it indeed very simple to recognize the
831+depicted constellation figures. Rey's work does not include figurative
832+artwork, therefore this sky culture deliberately only comes with Rey's
833+original stick figures. The constellation names were also always
834+given in English by Rey. If you switch to "Native" name display mode, you
835+may see exactly the spelling used in his book. Also the stars named
836+here are limited to those included in the book.</p>
837+
838+<h4>Rey's Figures and the Classic Constellations</h4>
839+
840+<p>Rey's constellations adhere to the tradition of the Western sky
841+culture and describes the 88 officially acknowledged constellations,
842+with addition of asterisms of the two Dippers and the "Great Square"
843+(of Pegasus). However, at several points Rey's figures deviate from
844+the canonical figures described since Ptolemy's Almagest (2nd century
845+AD), where also positions of the stars in their constellations had
846+been described in their names. For example, <ul>
847+
848+<li> Rey inverted the figure of the Great Bear (<em>Ursa Major</em>)
849+to look like a polar bear scenting prey. This on one hand does not
850+have the usual problem to explain its long tail. On the other hand,
851+the bear is not shown to walk around the pole in this
852+orientation.</li>
853+
854+<li>The Bull (<em>Taurus</em>), only the front of which is shown with
855+long upright horns in usual depictions, is shown with a complete body
856+including its tail, with horns stretched wide like those of a
857+buffalo. Its bright eye <em>Aldebaran</em> now lies in its neck.</li>
858+
859+<li>The head of <em>Hercules</em> is usually next to the head of
860+<em>Ophiuchus</em>, the serpent holder, and the four stars known as
861+"keystone" form his body. Rey makes his head out of the keystone, and
862+the star that usually marks the hero's head is now one of his feet.</li>
863+
864+<li>The Whale (<em>Cetus</em>) has been turned around, its former
865+mouth now forming a tail fin. </li>
866+
867+<li><em>Pegasus</em> exchanged feet and head.</li>
868+
869+<li><em>Bootes</em>, the herdsman, is shown sitting and smoking a pipe
870+(no trace of political correctness in a children's book of the
871+1950s... :-) </li> </ul> </p>
872+
873+
874+<h3>External links</h3>
875+<ul>
876+<li><a href="http://en.wikipedia.org/wiki/H._A._Rey">H.A.Rey (Wikipedia)</a></li>
877+</ul>
878+
879+<h3>Authors</h3>
880+
881+<p>This sky culture used to be for a long time an easy
882+user-installable addon example contributed by Mike Richards. It has
883+been reworked following the 41st reprint and completed with this
884+description by Georg Zotti.</p>
885
886=== added file 'skycultures/western_rey/info.ini'
887--- skycultures/western_rey/info.ini 1970-01-01 00:00:00 +0000
888+++ skycultures/western_rey/info.ini 2014-11-26 13:20:53 +0000
889@@ -0,0 +1,3 @@
890+[info]
891+name = Western (H.A.Rey)
892+author = Mike Richards and Georg Zotti
893
894=== added file 'skycultures/western_rey/star_names.fab'
895--- skycultures/western_rey/star_names.fab 1970-01-01 00:00:00 +0000
896+++ skycultures/western_rey/star_names.fab 2014-11-26 13:20:53 +0000
897@@ -0,0 +1,58 @@
898+# star_names.fab for H.A.Rey sky culture.
899+# Only stars mentioned in the book are included here.
900+# Authentic list - DO NOT ADD STARS WHICH ARE NOT IN THE BOOK!
901+# chart 1
902+ 11767|_("Pole Star")
903+ 72607|_("Kochab")
904+ 65378|_("Mizar")
905+ 65477|_("Alcor")
906+# chart 2
907+ 68756|_("Thuban")
908+# chart 3
909+ 49669|_("Regulus")
910+ 57632|_("Denebola")
911+ 63125|_("Cor Caroli")
912+# chart 4
913+ 69673|_("Arcturus")
914+ 76267|_("Gemma")
915+# chart 5
916+ 95947|_("Albireo")
917+102098|_("Deneb")
918+ 91262|_("Vega")
919+# chart 6: none
920+# chart 7
921+ 14576|_("Algol")
922+#17702|_("Alcyone")
923+ 17702|_("Pleiades")
924+ 21421|_("Aldebaran")
925+# chart 8
926+ 36850|_("Castor")
927+ 37826|_("Pollux")
928+ 24608|_("Capella")
929+ 37279|_("Procyon")
930+# chart 9
931+ 27989|_("Betelgeuse")
932+ 24436|_("Rigel")
933+ 32349|_("Sirius")
934+# chart 10
935+ 46390|_("Alphard")
936+# chart 11
937+ 65474|_("Spica")
938+# chart 12
939+ 80763|_("Antares")
940+# chart 13
941+ 97649|_("Altair")
942+# chart 14
943+113368|_("Fomalhaut")
944+# chart 15
945+ 10826|_("Mira")
946+ 8102|_("Tau Ceti")
947+ 9487|_("Knot")
948+# chart 16
949+ 30438|_("Canopus")
950+ 7588|_("Achernar")
951+# chart 17
952+ 60718|_("Acrux")
953+ 71683|_("Alpha Centauri")
954+ 68702|_("Beta Centauri")
955+
956
957=== modified file 'src/CMakeLists.txt'
958--- src/CMakeLists.txt 2014-11-08 18:55:34 +0000
959+++ src/CMakeLists.txt 2014-11-26 13:20:53 +0000
960@@ -240,6 +240,7 @@
961 CLIProcessor.hpp
962 CLIProcessor.cpp
963 translations.h
964+ translations_skycultures.h
965 )
966
967 # On windows, QZipReader is already included in the lib
968
969=== modified file 'src/core/StelSkyCultureMgr.hpp'
970--- src/core/StelSkyCultureMgr.hpp 2013-04-02 15:45:15 +0000
971+++ src/core/StelSkyCultureMgr.hpp 2014-11-26 13:20:53 +0000
972@@ -39,7 +39,8 @@
973 //! Manage sky cultures for stellarium.
974 //! Different human cultures have used different names for stars, and visualised
975 //! different constellations in the sky (and in different parts of the sky).
976-//! In the installation data directory and user data directory are the "skycultures" sub-directory containing one sub-directory per sky culture.
977+//! In the installation data directory and user data directory are the "skycultures"
978+//! sub-directories containing one sub-directory per sky culture.
979 //! This sub-directory name is that we refer to as sky culture ID here.
980 //! @author Fabien Chereau
981 class StelSkyCultureMgr : public QObject
982@@ -106,7 +107,7 @@
983
984 //! Get the directory associated with a specified translated culture name.
985 //! @param cultureName The culture name in the current language.
986- //! @return The directory assocuated with cultureName.
987+ //! @return The directory associated with cultureName.
988 QString skyCultureI18ToDirectory(const QString& cultureName) const;
989
990 QMap<QString, StelSkyCulture> dirToNameEnglish;
991
992=== modified file 'src/core/modules/Comet.cpp'
993--- src/core/modules/Comet.cpp 2014-11-08 15:56:11 +0000
994+++ src/core/modules/Comet.cpp 2014-11-26 13:20:53 +0000
995@@ -129,6 +129,11 @@
996 slopeParameter = slope;
997 }
998
999+void Comet::translateName(const StelTranslator &translator)
1000+{
1001+ nameI18 = translator.qtranslate(englishName);
1002+}
1003+
1004 QString Comet::getInfoString(const StelCore *core, const InfoStringGroup &flags) const
1005 {
1006 //Mostly copied from Planet::getInfoString():
1007@@ -138,7 +143,7 @@
1008 if (flags&Name)
1009 {
1010 oss << "<h2>";
1011- oss << q_(englishName); // UI translation can differ from sky translation
1012+ oss << getNameI18n(); // UI translation can differ from sky translation
1013 oss.setRealNumberNotation(QTextStream::FixedNotation);
1014 oss.setRealNumberPrecision(1);
1015 if (sphereScale != 1.f)
1016
1017=== modified file 'src/core/modules/Comet.hpp'
1018--- src/core/modules/Comet.hpp 2014-11-08 13:56:47 +0000
1019+++ src/core/modules/Comet.hpp 2014-11-26 13:20:53 +0000
1020@@ -77,6 +77,11 @@
1021 //virtual QString getType() const {return "Comet";}
1022 //! \todo Find better sources for the g,k system
1023 virtual float getVMagnitude(const StelCore* core) const;
1024+ //! sets the nameI18 property with the appropriate translation.
1025+ //! Function overriden to handle the problem with name conflicts.
1026+ virtual void translateName(const StelTranslator& trans);
1027+ virtual QString getEnglishName(void) const {return englishName;}
1028+ virtual QString getNameI18n(void) const {return nameI18;}
1029
1030 //! \brief sets absolute magnitude and slope parameter.
1031 //! These are the parameters in the IAU's two-parameter magnitude system
1032
1033=== modified file 'src/core/modules/Constellation.cpp'
1034--- src/core/modules/Constellation.cpp 2014-10-15 14:00:01 +0000
1035+++ src/core/modules/Constellation.cpp 2014-11-26 13:20:53 +0000
1036@@ -26,6 +26,8 @@
1037 #include "StelPainter.hpp"
1038 #include "StelApp.hpp"
1039 #include "StelCore.hpp"
1040+#include "StelModuleMgr.hpp"
1041+#include "ConstellationMgr.hpp"
1042
1043 #include <algorithm>
1044 #include <QString>
1045@@ -65,7 +67,9 @@
1046 if (istr.status()!=QTextStream::Ok)
1047 return false;
1048
1049- abbreviation = abb.toUpper();
1050+ // It's better to allow mixed-case abbreviations now that they can be displayed on screen. We then need toUpper() in comparisons.
1051+ //abbreviation = abb.toUpper();
1052+ abbreviation=abb;
1053
1054 asterism = new StelObjectP[numberOfSegments*2];
1055 for (unsigned int i=0;i<numberOfSegments*2;++i)
1056@@ -121,15 +125,33 @@
1057 }
1058 }
1059
1060-void Constellation::drawName(StelPainter& sPainter) const
1061+void Constellation::drawName(StelPainter& sPainter, ConstellationMgr::ConstellationDisplayStyle style) const
1062 {
1063 if (!nameFader.getInterstate())
1064 return;
1065
1066 if (checkVisibility())
1067 {
1068+ QString name;
1069+ switch (style)
1070+ {
1071+ case ConstellationMgr::constellationsTranslated:
1072+ name=nameI18;
1073+ break;
1074+ case ConstellationMgr::constellationsNative:
1075+ name=nativeName;
1076+ break;
1077+ case ConstellationMgr::constellationsEnglish:
1078+ name=englishName;
1079+ break;
1080+ case ConstellationMgr::constellationsAbbreviated:
1081+ name=(abbreviation.startsWith('.') ? "" : abbreviation);
1082+ break;
1083+ Q_ASSERT(0);
1084+ }
1085+
1086 sPainter.setColor(labelColor[0], labelColor[1], labelColor[2], nameFader.getInterstate());
1087- sPainter.drawText(XYname[0], XYname[1], nameI18, 0., -sPainter.getFontMetrics().width(nameI18)/2, 0, false);
1088+ sPainter.drawText(XYname[0], XYname[1], name, 0., -sPainter.getFontMetrics().width(name)/2, 0, false);
1089 }
1090 }
1091
1092
1093=== modified file 'src/core/modules/Constellation.hpp'
1094--- src/core/modules/Constellation.hpp 2014-10-15 14:00:01 +0000
1095+++ src/core/modules/Constellation.hpp 2014-11-26 13:20:53 +0000
1096@@ -2,6 +2,7 @@
1097 * Stellarium
1098 * Copyright (C) 2002 Fabien Chereau
1099 * Copyright (C) 2012 Timothy Reaves
1100+ * Copyright (C) 2014 Georg Zotti
1101 *
1102 * This program is free software; you can redistribute it and/or
1103 * modify it under the terms of the GNU General Public License
1104@@ -26,6 +27,7 @@
1105 #include "StelFader.hpp"
1106 #include "StelTextureTypes.hpp"
1107 #include "StelSphereGeometry.hpp"
1108+#include "ConstellationMgr.hpp"
1109
1110 #include <vector>
1111 #include <QString>
1112@@ -37,8 +39,14 @@
1113 //! @class Constellation
1114 //! The Constellation class models a grouping of stars in a Sky Culture.
1115 //! Each Constellation consists of a list of stars identified by their
1116-//! Hipparcos catalogue numbers, a name and optionally an abbreviated name,
1117-//! boundary shape and an artistic pictorial representation.
1118+//! @var abbreviation and Hipparcos catalogue numbers (taken from @file: constellationship.fab),
1119+//! another entry in @file constellation_names.eng.fab with the defining abbreviated name,
1120+//! @var nativeName, and translatable @var englishName (translation goes into @var nameI18),
1121+//! boundary shape from @file constellations_boundaries.dat and an (optional) artistic pictorial representation.
1122+//! GZ NEW: The @var nativeName should be accessible in a GUI option, so that e.g. original names as written in a
1123+//! concrete book where a skyculture has been taken from can be assured even when translation is available.
1124+//! TODO: There should be a distinction between constellations and asterisms, which are "inofficial" figures within a sky culture.
1125+//! For example, Western sky culture has a "Big Dipper", "Coathanger", etc. These would be nice to see, but in different style.
1126 class Constellation : public StelObject
1127 {
1128 friend class ConstellationMgr;
1129@@ -50,9 +58,9 @@
1130 //! Get a string with data about the Constellation.
1131 //! Constellations support the following InfoStringGroup flags:
1132 //! - Name
1133- //! @param core the Stelore object
1134+ //! @param core the StelCore object
1135 //! @param flags a set of InfoStringGroup items to include in the return value.
1136- //! @return a QString a description of the Planet.
1137+ //! @return a QString a description of the constellation.
1138 virtual QString getInfoString(const StelCore*, const InfoStringGroup& flags) const
1139 {
1140 if (flags&Name) return getNameI18n() + "(" + getShortName() + ")";
1141@@ -70,15 +78,15 @@
1142
1143 //! @param record string containing the following whitespace
1144 //! separated fields: abbreviation - a three character abbreviation
1145- //! for the constellation, a number of lines, and a list of Hipparcos
1146- //! catalogue numbers which, when connected form the lines of the
1147+ //! for the constellation, a number of lines (pairs), and a list of Hipparcos
1148+ //! catalogue numbers which, when connected pairwise, form the lines of the
1149 //! constellation.
1150 //! @param starMgr a pointer to the StarManager object.
1151 //! @return false if can't parse record, else true.
1152 bool read(const QString& record, StarMgr *starMgr);
1153
1154 //! Draw the constellation name
1155- void drawName(StelPainter& sPainter) const;
1156+ void drawName(StelPainter& sPainter, ConstellationMgr::ConstellationDisplayStyle style) const;
1157 //! Draw the constellation art
1158 void drawArt(StelPainter& sPainter) const;
1159 //! Draw the constellation boundary
1160@@ -104,10 +112,10 @@
1161 //! Get the short name for the Constellation (returns the abbreviation).
1162 QString getShortName() const {return abbreviation;}
1163 //! Draw the lines for the Constellation.
1164- //! This method uses the coords of the stars (optimized for use thru
1165+ //! This method uses the coords of the stars (optimized for use through
1166 //! the class ConstellationMgr only).
1167 void drawOptim(StelPainter& sPainter, const StelCore* core, const SphericalCap& viewportHalfspace) const;
1168- //! Draw the art texture, optimized function to be called thru a constellation manager only.
1169+ //! Draw the art texture, optimized function to be called through a constellation manager only.
1170 void drawArtOptim(StelPainter& sPainter, const SphericalRegion& region) const;
1171 //! Update fade levels according to time since various events.
1172 void update(int deltaTime);
1173@@ -142,11 +150,15 @@
1174
1175 //! International name (translated using gettext)
1176 QString nameI18;
1177- //! Name in english
1178+ //! Name in english (column 3 in constellation_names.eng.fab)
1179 QString englishName;
1180- //! Name in native language
1181+ //! Name in native language (column 2 in constellation_names.eng.fab).
1182+ //! According to practice as of V0.13.1, this may be an empty string.
1183+ //! If empty, will be filled with englishName.
1184 QString nativeName;
1185 //! Abbreviation (of the latin name for western constellations)
1186+ //! For non-western, a skyculture designer must invent it. (usually 2-5 letters)
1187+ //! This MUST be filled and be unique within a sky culture.
1188 QString abbreviation;
1189 //! Direction vector pointing on constellation name drawing position
1190 Vec3d XYZname;
1191
1192=== modified file 'src/core/modules/ConstellationMgr.cpp'
1193--- src/core/modules/ConstellationMgr.cpp 2014-11-08 22:04:20 +0000
1194+++ src/core/modules/ConstellationMgr.cpp 2014-11-26 13:20:53 +0000
1195@@ -49,6 +49,7 @@
1196 // constructor which loads all data from appropriate files
1197 ConstellationMgr::ConstellationMgr(StarMgr *_hip_stars)
1198 : hipStarMgr(_hip_stars),
1199+ constellationDisplayStyle(ConstellationMgr::constellationsTranslated),
1200 artFadeDuration(1.),
1201 artIntensity(0),
1202 artDisplayed(0),
1203@@ -94,6 +95,30 @@
1204 setFlagIsolateSelected(conf->value("viewing/flag_constellation_isolate_selected",
1205 conf->value("viewing/flag_constellation_pick", false).toBool() ).toBool());
1206
1207+ QString starloreDisplayStyle=conf->value("viewing/constellation_name_style", "translated").toString();
1208+ if (starloreDisplayStyle=="translated")
1209+ {
1210+ setConstellationDisplayStyle(constellationsTranslated);
1211+ }
1212+ else if (starloreDisplayStyle=="native")
1213+ {
1214+ setConstellationDisplayStyle(constellationsNative);
1215+ }
1216+ else if (starloreDisplayStyle=="abbreviated")
1217+ {
1218+ setConstellationDisplayStyle(constellationsAbbreviated);
1219+ }
1220+ else if (starloreDisplayStyle=="english")
1221+ {
1222+ setConstellationDisplayStyle(constellationsEnglish);
1223+ }
1224+ else
1225+ {
1226+ qDebug() << "Warning: viewing/constellation_name_style (" << starloreDisplayStyle << ") invalid. Using translated style.";
1227+ conf->setValue("viewing/constellation_name_style", "translated");
1228+ setConstellationDisplayStyle(constellationsTranslated);
1229+ }
1230+
1231 StelObjectMgr *objectManager = GETSTELMODULE(StelObjectMgr);
1232 objectManager->registerStelObjectMgr(this);
1233 connect(objectManager, SIGNAL(selectedObjectChanged(StelModule::StelModuleSelectAction)),
1234@@ -131,7 +156,7 @@
1235 QString conArtFile = StelFileMgr::findFile("skycultures/"+skyCultureDir+"/constellationsart.fab");
1236 if (conArtFile.isEmpty())
1237 {
1238- qDebug() << "No constellationsart.fab file found for sky culture " << QDir::toNativeSeparators(skyCultureDir);
1239+ qDebug() << "No constellationsart.fab file found for sky culture dir" << QDir::toNativeSeparators(skyCultureDir);
1240 }
1241
1242 // first of all, remove constellations from the list of selected objects in StelObjectMgr, since we are going to delete them
1243@@ -157,12 +182,12 @@
1244 updateI18n();
1245
1246 // load constellation boundaries
1247- // First try load constellation boundaries from sky culture
1248+ // First try loading constellation boundaries from sky culture. You may inhibit borders with an empty file.
1249 fic = StelFileMgr::findFile("skycultures/" + skyCultureDir + "/constellations_boundaries.dat");
1250 bool existBoundaries = false;
1251 if (fic.isEmpty())
1252 {
1253- qWarning() << "ERROR loading constellation boundaries file in sky culture: " << skyCultureDir;
1254+ qWarning() << "No separate constellation boundaries file in sky culture dir" << skyCultureDir << "- Using generic IAU boundaries.";
1255 // OK, Second try load generic constellation boundaries
1256 fic = StelFileMgr::findFile("data/constellations_boundaries.dat");
1257 if (fic.isEmpty())
1258@@ -312,6 +337,23 @@
1259 return asterFont.pixelSize();
1260 }
1261
1262+void ConstellationMgr::setConstellationDisplayStyle(int style)
1263+{
1264+ constellationDisplayStyle=(ConstellationMgr::ConstellationDisplayStyle) style;
1265+
1266+ QSettings* conf = StelApp::getInstance().getSettings();
1267+ Q_ASSERT(conf);
1268+ conf->setValue("viewing/constellation_name_style",
1269+ (constellationDisplayStyle == constellationsAbbreviated ? "abbreviated" : (constellationDisplayStyle == constellationsNative ? "native" : "translated")));
1270+ emit constellationsDisplayStyleChanged(constellationDisplayStyle);
1271+}
1272+
1273+ConstellationMgr::ConstellationDisplayStyle ConstellationMgr::getConstellationDisplayStyle()
1274+{
1275+ return constellationDisplayStyle;
1276+}
1277+
1278+
1279 void ConstellationMgr::loadLinesAndArt(const QString &fileName, const QString &artfileName, const QString& cultureName)
1280 {
1281 QFile in(fileName);
1282@@ -340,7 +382,7 @@
1283 asterisms.clear();
1284 Constellation *cons = NULL;
1285
1286- // read the file, adding a record per non-comment line
1287+ // read the file of line patterns, adding a record per non-comment line
1288 int currentLineNumber = 0; // line in file
1289 int readOk = 0; // count of records processed OK
1290 while (!in.atEnd())
1291@@ -363,7 +405,7 @@
1292 }
1293 else
1294 {
1295- qWarning() << "ERROR reading constellation rec at line " << currentLineNumber << "for culture" << cultureName;
1296+ qWarning() << "ERROR reading constellation lines record at line " << currentLineNumber << "for culture" << cultureName;
1297 delete cons;
1298 }
1299 }
1300@@ -563,7 +605,7 @@
1301 {
1302 // Check if in the field of view
1303 if (sPainter.getProjector()->projectCheck((*iter)->XYZname, (*iter)->XYname))
1304- (*iter)->drawName(sPainter);
1305+ (*iter)->drawName(sPainter, constellationDisplayStyle);
1306 }
1307 }
1308
1309@@ -584,13 +626,19 @@
1310 Constellation* ConstellationMgr::findFromAbbreviation(const QString& abbreviation) const
1311 {
1312 // search in uppercase only
1313- QString tname = abbreviation.toUpper();
1314+ //QString tname = abbreviation.toUpper();
1315
1316 vector < Constellation * >::const_iterator iter;
1317 for (iter = asterisms.begin(); iter != asterisms.end(); ++iter)
1318 {
1319- if ((*iter)->abbreviation == tname)
1320+ //if ((*iter)->abbreviation.toUpper() == tname)
1321+ if ((*iter)->abbreviation.compare(abbreviation, Qt::CaseInsensitive) == 0)
1322+ {
1323+ //if ((*iter)->abbreviation != abbreviation)
1324+ // qDebug() << "ConstellationMgr::findFromAbbreviation: not a perfect match, but sufficient:" << (*iter)->abbreviation << "vs." << abbreviation;
1325 return (*iter);
1326+ }
1327+ //else qDebug() << "Comparison mismatch: " << abbreviation << "vs." << (*iter)->abbreviation;
1328 }
1329 return NULL;
1330 }
1331@@ -627,7 +675,8 @@
1332
1333 // lines which look like records - we use the RE to extract the fields
1334 // which will be available in recRx.capturedTexts()
1335- QRegExp recRx("^\\s*(\\w+)\\s+\"(.*)\"\\s+_[(]\"(.*)\"[)]\\n");
1336+ // abbreviation is allowed to start with a dot to mark as "hidden".
1337+ QRegExp recRx("^\\s*(\\.?\\w+)\\s+\"(.*)\"\\s+_[(]\"(.*)\"[)]\\n");
1338
1339 // Some more variables to use in the parsing
1340 Constellation *aster;
1341@@ -650,7 +699,7 @@
1342
1343 if (!recRx.exactMatch(record))
1344 {
1345- qWarning() << "ERROR - cannot parse record at line" << lineNumber << "in constellation names file" << QDir::toNativeSeparators(namesFile);
1346+ qWarning() << "ERROR - cannot parse record at line" << lineNumber << "in constellation names file" << QDir::toNativeSeparators(namesFile) << ":" << record;
1347 }
1348 else
1349 {
1350@@ -662,6 +711,9 @@
1351 aster->nativeName = recRx.capturedTexts().at(2);
1352 aster->englishName = recRx.capturedTexts().at(3);
1353 readOk++;
1354+ // Some skycultures already have empty nativeNames. Fill those.
1355+ if (aster->nativeName.isEmpty())
1356+ aster->nativeName=aster->englishName;
1357 }
1358 else
1359 {
1360@@ -902,7 +954,7 @@
1361 return artDisplayed;
1362 }
1363
1364-void ConstellationMgr::setFlagLabels(bool displayed)
1365+void ConstellationMgr::setFlagLabels(const bool displayed)
1366 {
1367 if (namesDisplayed != displayed)
1368 {
1369@@ -1037,8 +1089,6 @@
1370
1371 // And remove all selections
1372 selected.clear();
1373-
1374-
1375 }
1376 }
1377
1378@@ -1225,7 +1275,8 @@
1379 find = false;
1380 if (useStartOfWords)
1381 {
1382- if (objPrefix.toUpper()==cn.mid(0, objPrefix.size()).toUpper())
1383+ //if (objPrefix.toUpper()==cn.mid(0, objPrefix.size()).toUpper()) // WHY SO LONG?
1384+ if (cn.startsWith(objPrefix, Qt::CaseInsensitive))
1385 find = true;
1386 }
1387 else
1388@@ -1257,7 +1308,8 @@
1389 find = false;
1390 if (useStartOfWords)
1391 {
1392- if (objPrefix.toUpper()==cn.mid(0, objPrefix.size()).toUpper())
1393+ //if (objPrefix.toUpper()==cn.mid(0, objPrefix.size()).toUpper()) // WHY SO LONG?
1394+ if (cn.startsWith(objPrefix, Qt::CaseInsensitive))
1395 find = true;
1396 }
1397 else
1398
1399=== modified file 'src/core/modules/ConstellationMgr.hpp'
1400--- src/core/modules/ConstellationMgr.hpp 2014-10-15 14:00:01 +0000
1401+++ src/core/modules/ConstellationMgr.hpp 2014-11-26 13:20:53 +0000
1402@@ -87,6 +87,11 @@
1403 READ getFlagLabels
1404 WRITE setFlagLabels
1405 NOTIFY namesDisplayedChanged)
1406+ Q_PROPERTY(ConstellationDisplayStyle constellationDisplayStyle
1407+ READ getConstellationDisplayStyle
1408+ WRITE setConstellationDisplayStyle
1409+ NOTIFY constellationsDisplayStyleChanged)
1410+
1411
1412 public:
1413 //! Constructor
1414@@ -121,24 +126,34 @@
1415 virtual StelObjectP searchByNameI18n(const QString& nameI18n) const;
1416
1417 //! Return the matching constellation if exists or NULL
1418- //! @param name The case in-sensistive standard program name (three letter abbreviation)
1419+ //! @param name The case in-sensitive standard program name (three letter abbreviation)
1420 virtual StelObjectP searchByName(const QString& name) const;
1421
1422+ // GZ: I see dubious descriptions and non-fitting var names: objPrefix should just be "string" or "obj",
1423+ // and useStartOfWord likely should be described as "decide if start of word is searched" (2x)
1424 //! Find and return the list of at most maxNbItem objects auto-completing the passed object I18n name.
1425 //! @param objPrefix the case insensitive first letters of the searched object
1426 //! @param maxNbItem the maximum number of returned object names
1427 //! @param useStartOfWords the autofill mode for returned objects names
1428- //! @return a vector of matching object name by order of relevance, or an empty vector if nothing match
1429+ //! @return a vector of matching object name by order of relevance, or an empty vector if nothing matches
1430 virtual QStringList listMatchingObjectsI18n(const QString& objPrefix, int maxNbItem=5, bool useStartOfWords=false) const;
1431 //! Find and return the list of at most maxNbItem objects auto-completing the passed object English name.
1432 //! @param objPrefix the case insensitive first letters of the searched object
1433 //! @param maxNbItem the maximum number of returned object names
1434 //! @param useStartOfWords the autofill mode for returned objects names
1435- //! @return a vector of matching object name by order of relevance, or an empty vector if nothing match
1436+ //! @return a vector of matching object name by order of relevance, or an empty vector if nothing matches
1437 virtual QStringList listMatchingObjects(const QString& objPrefix, int maxNbItem=5, bool useStartOfWords=false) const;
1438 virtual QStringList listAllObjects(bool inEnglish) const;
1439 virtual QStringList listAllObjectsByType(const QString& objType, bool inEnglish) const { Q_UNUSED(objType) Q_UNUSED(inEnglish) return QStringList(); }
1440 virtual QString getName() const { return "Constellations"; }
1441+ //! Describes how to display constellation labels. The viewDialog GUI has a combobox which corresponds to these values.
1442+ enum ConstellationDisplayStyle
1443+ {
1444+ constellationsAbbreviated = 0,
1445+ constellationsNative = 1,
1446+ constellationsTranslated = 2,
1447+ constellationsEnglish = 3 // Maybe this is not useful?
1448+ };
1449
1450 ///////////////////////////////////////////////////////////////////////////
1451 // Properties setters and getters
1452@@ -188,9 +203,9 @@
1453 //! Get line color
1454 Vec3f getLinesColor() const;
1455
1456- //! Set whether constellation path lines will be displayed
1457+ //! Set whether constellation lines will be displayed
1458 void setFlagLines(const bool displayed);
1459- //! Get whether constellation path lines are displayed
1460+ //! Get whether constellation lines are displayed
1461 bool getFlagLines(void) const;
1462
1463 //! Set label color for names
1464@@ -204,7 +219,7 @@
1465 Vec3f getLabelsColor() const;
1466
1467 //! Set whether constellation names will be displayed
1468- void setFlagLabels(bool displayed);
1469+ void setFlagLabels(const bool displayed);
1470 //! Set whether constellation names are displayed
1471 bool getFlagLabels(void) const;
1472
1473@@ -213,6 +228,13 @@
1474 //! Get the font size used for constellation names display
1475 float getFontSize() const;
1476
1477+ //! set the way how contellation names are displayed: abbbreviated/as-given/translated
1478+ //! @param style acceptable values 0=abbreviated, 1=untranslated, 2=translated.
1479+ //! @note Will be cast to enum'ed value, but usually receives value from a QComboBox in the GUI.
1480+ void setConstellationDisplayStyle(int style);
1481+ //! get the way how contellation names are displayed: abbbreviated/as-given/translated
1482+ ConstellationDisplayStyle getConstellationDisplayStyle();
1483+
1484 signals:
1485 void artDisplayedChanged(const bool displayed) const;
1486 void artFadeDurationChanged(const float duration) const;
1487@@ -225,6 +247,7 @@
1488 void linesDisplayedChanged(const bool displayed) const;
1489 void namesColorChanged(const Vec3f & color) const;
1490 void namesDisplayedChanged(const bool displayed) const;
1491+ void constellationsDisplayStyleChanged(const ConstellationDisplayStyle style) const;
1492
1493 private slots:
1494 //! Limit the number of constellations to draw based on selected stars.
1495@@ -248,13 +271,16 @@
1496
1497 private:
1498 //! Read constellation names from the given file.
1499- //! @param namesFile Name of the file containing the constellation names in english
1500+ //! @param namesFile Name of the file containing the constellation names
1501+ //! in a format consisting of abbreviation, native name and translatable english name.
1502+ //! @note The abbreviation must occur in the lines file loaded first in @name loadLinesAndArt()!
1503 void loadNames(const QString& namesFile);
1504
1505 //! Load constellation line shapes, art textures and boundaries shapes from data files.
1506 //! @param fileName The name of the constellation data file
1507 //! @param artFileName The name of the constellation art data file
1508 //! @param cultureName A string ID of the current skyculture
1509+ //! @note The abbreviation used in @param filename is required for cross-identifying translatable names in @name loadNames():
1510 void loadLinesAndArt(const QString& fileName, const QString& artfileName, const QString& cultureName);
1511
1512 //! Load the constellation boundary file.
1513@@ -263,7 +289,7 @@
1514 //! data file consists of whitespace separated values (space, tab or newline).
1515 //! Each boundary may span multiple lines, and consists of the following ordered
1516 //! data items:
1517- //! - The number of vertexes which make up in the boundary (integer).
1518+ //! - The number of vertices which make up in the boundary (integer).
1519 //! - For each vertex, two floating point numbers describing the ra and dec
1520 //! of the vertex.
1521 //! - The number of constellations which this boundary separates (always 2).
1522@@ -276,7 +302,7 @@
1523 //! @param rulesFile Name of the file containing the seasonal rules
1524 void loadSeasonalRules(const QString& rulesFile);
1525
1526- //! Draw the constellation lines at the epoch given by the StelCore.
1527+ //! Draw the constellation lines at the epoch given by the StelCore.
1528 void drawLines(StelPainter& sPainter, const StelCore* core) const;
1529 //! Draw the constellation art.
1530 void drawArt(StelPainter& sPainter) const;
1531@@ -316,6 +342,9 @@
1532
1533 QString lastLoadedSkyCulture; // Store the last loaded sky culture directory name
1534
1535+ //! this controls how constellations (and also star names) are printed: Abbreviated/as-given/translated
1536+ ConstellationDisplayStyle constellationDisplayStyle;
1537+
1538 // These are THE master settings - individual constellation settings can vary based on selection status
1539 float artFadeDuration;
1540 float artIntensity;
1541
1542=== modified file 'src/core/modules/MinorPlanet.cpp'
1543--- src/core/modules/MinorPlanet.cpp 2014-11-08 13:52:53 +0000
1544+++ src/core/modules/MinorPlanet.cpp 2014-11-26 13:20:53 +0000
1545@@ -190,7 +190,7 @@
1546 if (nameIsProvisionalDesignation)
1547 oss << provisionalDesignationHtml;
1548 else
1549- oss << q_(properName); // UI translation can differ from sky translation
1550+ oss << getNameI18n(); // UI translation can differ from sky translation
1551 oss.setRealNumberNotation(QTextStream::FixedNotation);
1552 oss.setRealNumberPrecision(1);
1553 if (sphereScale != 1.f)
1554
1555=== modified file 'src/core/modules/MinorPlanet.hpp'
1556--- src/core/modules/MinorPlanet.hpp 2014-08-18 17:15:29 +0000
1557+++ src/core/modules/MinorPlanet.hpp 2014-11-26 13:20:53 +0000
1558@@ -76,6 +76,8 @@
1559 //! sets the nameI18 property with the appropriate translation.
1560 //! Function overriden to handle the problem with name conflicts.
1561 virtual void translateName(const StelTranslator& trans);
1562+ virtual QString getEnglishName(void) const {return englishName;}
1563+ virtual QString getNameI18n(void) const {return nameI18;}
1564
1565 //! set the minor planet's number, if any.
1566 //! The number should be specified as an additional parameter, as
1567
1568=== modified file 'src/core/modules/Planet.cpp'
1569--- src/core/modules/Planet.cpp 2014-11-21 18:49:36 +0000
1570+++ src/core/modules/Planet.cpp 2014-11-26 13:20:53 +0000
1571@@ -113,6 +113,7 @@
1572 normalMap = StelApp::getInstance().getTextureManager().createTextureThread(StelFileMgr::getInstallationDir()+"/textures/"+normalMapName, StelTexture::StelTextureParams(true, GL_LINEAR, GL_REPEAT));
1573
1574 nameI18 = englishName;
1575+ nativeName = "";
1576 if (englishName!="Pluto")
1577 {
1578 deltaJD = 0.001*StelCore::JD_SECOND;
1579@@ -156,7 +157,20 @@
1580
1581 void Planet::translateName(const StelTranslator& trans)
1582 {
1583- nameI18 = trans.qtranslate(englishName);
1584+ if (nativeName.isEmpty())
1585+ nameI18 = trans.qtranslate(englishName);
1586+ else
1587+ nameI18 = trans.qtranslate(nativeName);
1588+}
1589+
1590+QString Planet::getEnglishName() const
1591+{
1592+ return englishName;
1593+}
1594+
1595+QString Planet::getNameI18n() const
1596+{
1597+ return nameI18;
1598 }
1599
1600 // Return the information string "ready to print" :)
1601@@ -167,7 +181,7 @@
1602
1603 if (flags&Name)
1604 {
1605- oss << "<h2>" << q_(englishName); // UI translation can differ from sky translation
1606+ oss << "<h2>" << getNameI18n(); // UI translation can differ from sky translation
1607 oss.setRealNumberNotation(QTextStream::FixedNotation);
1608 oss.setRealNumberPrecision(1);
1609 if (sphereScale != 1.f)
1610@@ -280,7 +294,7 @@
1611 QString str;
1612 QTextStream oss(&str);
1613 oss.setRealNumberPrecision(2);
1614- oss << nameI18;
1615+ oss << getNameI18n();
1616
1617 if (sphereScale != 1.f)
1618 {
1619
1620=== modified file 'src/core/modules/Planet.hpp'
1621--- src/core/modules/Planet.hpp 2014-11-08 18:40:32 +0000
1622+++ src/core/modules/Planet.hpp 2014-11-26 13:20:53 +0000
1623@@ -147,8 +147,8 @@
1624 virtual Vec3f getInfoColor(void) const;
1625 virtual QString getType(void) const {return "Planet";}
1626 virtual Vec3d getJ2000EquatorialPos(const StelCore *core) const;
1627- virtual QString getEnglishName(void) const {return englishName;}
1628- virtual QString getNameI18n(void) const {return nameI18;}
1629+ virtual QString getEnglishName(void) const;
1630+ virtual QString getNameI18n(void) const;
1631 virtual double getAngularSize(const StelCore* core) const;
1632 virtual bool hasAtmosphere(void) {return atmosphere;}
1633 virtual bool hasHalo(void) {return halo;}
1634@@ -179,6 +179,8 @@
1635 const QString getPlanetTypeString() const {return pTypeMap.value(pType);}
1636 PlanetType getPlanetType() const {return pType;}
1637
1638+ void setNativeName(QString planet) { nativeName = planet; }
1639+
1640 ApparentMagnitudeAlgorithm getApparentMagnitudeAlgorithm() const { return vMagAlgorithm; }
1641 const QString getApparentMagnitudeAlgorithmString() const { return vMagAlgorithmMap.value(vMagAlgorithm); }
1642 void setApparentMagnitudeAlgorithm(QString algorithm);
1643@@ -329,11 +331,12 @@
1644 bool atmosphere; // Does the planet have an atmosphere?
1645 bool halo; // Does the planet have a halo?
1646 PlanetType pType; // Type of body
1647+ QString nativeName;
1648
1649 ApparentMagnitudeAlgorithm vMagAlgorithm;
1650
1651 static Vec3f labelColor;
1652- static StelTextureSP hintCircleTex;
1653+ static StelTextureSP hintCircleTex;
1654 static QMap<PlanetType, QString> pTypeMap; // Maps fast type to english name.
1655 static QMap<ApparentMagnitudeAlgorithm, QString> vMagAlgorithmMap;
1656
1657@@ -379,7 +382,6 @@
1658
1659 static void initShader();
1660 static void deinitShader();
1661-
1662 };
1663
1664 #endif // _PLANET_HPP_
1665
1666=== modified file 'src/core/modules/SolarSystem.cpp'
1667--- src/core/modules/SolarSystem.cpp 2014-11-01 15:03:47 +0000
1668+++ src/core/modules/SolarSystem.cpp 2014-11-26 13:20:53 +0000
1669@@ -154,6 +154,7 @@
1670
1671 StelApp *app = &StelApp::getInstance();
1672 connect(app, SIGNAL(languageChanged()), this, SLOT(updateI18n()));
1673+ connect(app, SIGNAL(skyCultureChanged(QString)), this, SLOT(updateSkyCulture(QString)));
1674 connect(app, SIGNAL(colorSchemeChanged(const QString&)), this, SLOT(setStelStyle(const QString&)));
1675
1676 QString displayGroup = N_("Display Options");
1677@@ -179,6 +180,81 @@
1678 }
1679 }
1680
1681+
1682+void SolarSystem::updateSkyCulture(const QString& skyCultureDir)
1683+{
1684+ planetNativeNamesMap.clear();
1685+
1686+ QString namesFile = StelFileMgr::findFile("skycultures/" + skyCultureDir + "/planet_names.fab");
1687+
1688+ if (namesFile.isEmpty())
1689+ {
1690+ foreach (const PlanetP& p, systemPlanets)
1691+ {
1692+ if (p->getPlanetType()==Planet::isPlanet || p->getPlanetType()==Planet::isMoon || p->getPlanetType()==Planet::isStar)
1693+ p->setNativeName("");
1694+ }
1695+ updateI18n();
1696+ return;
1697+ }
1698+
1699+ // Open file
1700+ QFile planetNamesFile(namesFile);
1701+ if (!planetNamesFile.open(QIODevice::ReadOnly | QIODevice::Text))
1702+ {
1703+ qDebug() << "Cannot open file" << QDir::toNativeSeparators(namesFile);
1704+ return;
1705+ }
1706+
1707+ // Now parse the file
1708+ // lines to ignore which start with a # or are empty
1709+ QRegExp commentRx("^(\\s*#.*|\\s*)$");
1710+
1711+ // lines which look like records - we use the RE to extract the fields
1712+ // which will be available in recRx.capturedTexts()
1713+ QRegExp recRx("^\\s*(\\w+)\\s+\"(.+)\"\\s+_[(]\"(.+)\"[)]\\n");
1714+
1715+ QString record, planetId, nativeName;
1716+
1717+ // keep track of how many records we processed.
1718+ int totalRecords=0;
1719+ int readOk=0;
1720+ int lineNumber=0;
1721+ while (!planetNamesFile.atEnd())
1722+ {
1723+ record = QString::fromUtf8(planetNamesFile.readLine());
1724+ lineNumber++;
1725+
1726+ // Skip comments
1727+ if (commentRx.exactMatch(record))
1728+ continue;
1729+
1730+ totalRecords++;
1731+
1732+ if (!recRx.exactMatch(record))
1733+ {
1734+ qWarning() << "ERROR - cannot parse record at line" << lineNumber << "in planet names file" << QDir::toNativeSeparators(namesFile);
1735+ }
1736+ else
1737+ {
1738+ planetId = recRx.capturedTexts().at(1).trimmed();
1739+ nativeName = recRx.capturedTexts().at(2).trimmed();
1740+ planetNativeNamesMap[planetId] = nativeName;
1741+ readOk++;
1742+ }
1743+ }
1744+ planetNamesFile.close();
1745+ qDebug() << "Loaded" << readOk << "/" << totalRecords << "native names of planets";
1746+
1747+ foreach (const PlanetP& p, systemPlanets)
1748+ {
1749+ if (p->getPlanetType()==Planet::isPlanet || p->getPlanetType()==Planet::isMoon || p->getPlanetType()==Planet::isStar)
1750+ p->setNativeName(planetNativeNamesMap[p->getEnglishName()]);
1751+ }
1752+
1753+ updateI18n();
1754+}
1755+
1756 void SolarSystem::drawPointer(const StelCore* core)
1757 {
1758 const StelProjectorP prj = core->getProjection(StelCore::FrameJ2000);
1759@@ -1163,10 +1239,10 @@
1760 return result;
1761 }
1762
1763-// Update i18 names from english names according to current translator
1764+// Update i18 names from english names according to current sky culture translator
1765 void SolarSystem::updateI18n()
1766 {
1767- const StelTranslator& trans = StelApp::getInstance().getLocaleMgr().getAppStelTranslator();
1768+ const StelTranslator& trans = StelApp::getInstance().getLocaleMgr().getSkyTranslator();
1769 foreach (PlanetP p, systemPlanets)
1770 p->translateName(trans);
1771 }
1772@@ -1181,8 +1257,7 @@
1773 {
1774 oss << p->getParent()->getEnglishName() << " : ";
1775 }
1776- oss << p->getEnglishName() << endl;
1777- oss << p->getEnglishName() << endl;
1778+ oss << p->getEnglishName() << endl;
1779 }
1780 return str;
1781 }
1782
1783=== modified file 'src/core/modules/SolarSystem.hpp'
1784--- src/core/modules/SolarSystem.hpp 2014-11-01 15:03:47 +0000
1785+++ src/core/modules/SolarSystem.hpp 2014-11-26 13:20:53 +0000
1786@@ -334,6 +334,10 @@
1787 //! Load a color scheme
1788 void setStelStyle(const QString& section);
1789
1790+ //! Called when the sky culture is updated.
1791+ //! Loads native names of planets for a given sky culture.
1792+ //! @param skyCultureDir the name of the directory containing the sky culture to use.
1793+ void updateSkyCulture(const QString& skyCultureDir);
1794
1795 private:
1796 //! Search for SolarSystem objects which are close to the position given
1797@@ -361,7 +365,6 @@
1798
1799 void recreateTrails();
1800
1801-
1802 //! Used to count how many planets actually need shadow information
1803 int shadowPlanetCount;
1804 PlanetP sun;
1805@@ -405,6 +408,8 @@
1806 Vec3f trailColor;
1807 Vec3f pointerColor;
1808
1809+ QHash<QString, QString> planetNativeNamesMap;
1810+
1811 //////////////////////////////////////////////////////////////////////////////////
1812 // DEPRECATED
1813 //////////////////////////////////////////////////////////////////////////////////
1814
1815=== modified file 'src/core/modules/StarMgr.cpp'
1816--- src/core/modules/StarMgr.cpp 2014-10-11 19:50:44 +0000
1817+++ src/core/modules/StarMgr.cpp 2014-11-26 13:20:53 +0000
1818@@ -44,6 +44,8 @@
1819 #include "ZoneArray.hpp"
1820 #include "StelSkyDrawer.hpp"
1821 #include "RefractionExtinction.hpp"
1822+#include "StelModuleMgr.hpp"
1823+#include "ConstellationMgr.hpp"
1824
1825 #include <QTextStream>
1826 #include <QFile>
1827@@ -159,8 +161,13 @@
1828 delete[] hipIndex;
1829 }
1830
1831+// Allow untranslated name here if set in constellationMgr!
1832 QString StarMgr::getCommonName(int hip)
1833 {
1834+ ConstellationMgr* cmgr=GETSTELMODULE(ConstellationMgr);
1835+ if (cmgr->getConstellationDisplayStyle() == ConstellationMgr::constellationsNative)
1836+ return getCommonEnglishName(hip);
1837+
1838 QHash<int,QString>::const_iterator it(commonNamesMapI18n.find(hip));
1839 if (it!=commonNamesMapI18n.end())
1840 return it.value();
1841
1842=== modified file 'src/core/modules/StarMgr.hpp'
1843--- src/core/modules/StarMgr.hpp 2014-08-30 16:58:25 +0000
1844+++ src/core/modules/StarMgr.hpp 2014-11-26 13:20:53 +0000
1845@@ -219,7 +219,7 @@
1846 //! Get the (English) common name for a star with a specified
1847 //! Hipparcos catalogue number.
1848 //! @param hip The Hipparcos number of star
1849- //! @return translated common name of star
1850+ //! @return common name of star (from skyculture @file star_names.fab)
1851 static QString getCommonEnglishName(int hip);
1852
1853 //! Get the type of variability for a variable star with a specified
1854@@ -352,10 +352,10 @@
1855 const Vec3f &c1,
1856 const Vec3f &c2);
1857
1858- HipIndexStruct *hipIndex; // array of hiparcos stars
1859+ HipIndexStruct *hipIndex; // array of Hipparcos stars
1860
1861- static QHash<int, QString> commonNamesMap;
1862- static QHash<int, QString> commonNamesMapI18n;
1863+ static QHash<int, QString> commonNamesMap; // the original names from skyculture (star_names.fab)
1864+ static QHash<int, QString> commonNamesMapI18n; // translated names
1865 static QMap<QString, int> commonNamesIndexI18n;
1866 static QMap<QString, int> commonNamesIndex;
1867
1868
1869=== modified file 'src/gui/ConfigurationDialog.cpp'
1870--- src/gui/ConfigurationDialog.cpp 2014-11-17 14:56:04 +0000
1871+++ src/gui/ConfigurationDialog.cpp 2014-11-26 13:20:53 +0000
1872@@ -157,6 +157,16 @@
1873 updateCurrentLanguage();
1874 connect(cb->lineEdit(), SIGNAL(editingFinished()), this, SLOT(updateCurrentLanguage()));
1875 connect(cb, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(selectLanguage(const QString&)));
1876+ // GZ Do the same for sky language:
1877+ cb = ui->skycultureLanguageComboBox;
1878+ cb->clear();
1879+ cb->addItems(StelTranslator::globalTranslator->getAvailableLanguagesNamesNative(StelFileMgr::getLocaleDir()));
1880+ cb->model()->sort(0);
1881+ updateCurrentSkyLanguage();
1882+ connect(cb->lineEdit(), SIGNAL(editingFinished()), this, SLOT(updateCurrentSkyLanguage()));
1883+ connect(cb, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(selectSkyLanguage(const QString&)));
1884+
1885+
1886
1887 ui->groupBoxUpdates->setChecked(StelApp::getInstance().getSettings()->value("main/check_updates_enabled", true).toBool());
1888 connect(ui->groupBoxUpdates, SIGNAL(toggled(bool)), this, SLOT(setUpdatesFlag(bool)));
1889@@ -331,12 +341,40 @@
1890 cb->setCurrentIndex(lt);
1891 }
1892
1893+void ConfigurationDialog::updateCurrentSkyLanguage()
1894+{
1895+ QComboBox* cb = ui->skycultureLanguageComboBox;
1896+ QString skyLang = StelApp::getInstance().getLocaleMgr().getSkyLanguage();
1897+ QString l2 = StelTranslator::iso639_1CodeToNativeName(skyLang);
1898+
1899+ if (cb->currentText() == l2)
1900+ return;
1901+
1902+ int lt = cb->findText(l2, Qt::MatchExactly);
1903+ if (lt == -1 && skyLang.contains('_'))
1904+ {
1905+ l2 = skyLang.left(skyLang.indexOf('_'));
1906+ l2=StelTranslator::iso639_1CodeToNativeName(l2);
1907+ lt = cb->findText(l2, Qt::MatchExactly);
1908+ }
1909+ if (lt!=-1)
1910+ cb->setCurrentIndex(lt);
1911+}
1912+
1913 void ConfigurationDialog::selectLanguage(const QString& langName)
1914 {
1915 QString code = StelTranslator::nativeNameToIso639_1Code(langName);
1916 StelApp::getInstance().getLocaleMgr().setAppLanguage(code);
1917+// StelApp::getInstance().getLocaleMgr().setSkyLanguage(code);
1918+ StelMainView::getInstance().initTitleI18n();
1919+}
1920+
1921+void ConfigurationDialog::selectSkyLanguage(const QString& langName)
1922+{
1923+ QString code = StelTranslator::nativeNameToIso639_1Code(langName);
1924+// StelApp::getInstance().getLocaleMgr().setAppLanguage(code);
1925 StelApp::getInstance().getLocaleMgr().setSkyLanguage(code);
1926- StelMainView::getInstance().initTitleI18n();
1927+// StelMainView::getInstance().initTitleI18n();
1928 }
1929
1930 void ConfigurationDialog::setStartupTimeMode()
1931
1932=== modified file 'src/gui/ConfigurationDialog.hpp'
1933--- src/gui/ConfigurationDialog.hpp 2014-10-11 19:50:44 +0000
1934+++ src/gui/ConfigurationDialog.hpp 2014-11-26 13:20:53 +0000
1935@@ -84,7 +84,9 @@
1936 void setSelectedInfoFromCheckBoxes();
1937
1938 void updateCurrentLanguage();
1939+ void updateCurrentSkyLanguage();
1940 void selectLanguage(const QString& languageCode);
1941+ void selectSkyLanguage(const QString& languageCode);
1942 void setStartupTimeMode();
1943 //! Show/bring to foreground the shortcut editor window.
1944 void showShortcutsWindow();
1945
1946=== modified file 'src/gui/LocationDialog.cpp'
1947--- src/gui/LocationDialog.cpp 2014-10-26 13:26:29 +0000
1948+++ src/gui/LocationDialog.cpp 2014-11-26 13:20:53 +0000
1949@@ -284,6 +284,7 @@
1950 QComboBox* planets = ui->planetNameComboBox;
1951 SolarSystem* ssystem = GETSTELMODULE(SolarSystem);
1952 QStringList planetNames(ssystem->getAllPlanetEnglishNames());
1953+ const StelTranslator& trans = StelApp::getInstance().getLocaleMgr().getSkyTranslator();
1954
1955 //Save the current selection to be restored later
1956 planets->blockSignals(true);
1957@@ -294,7 +295,7 @@
1958 //data. Unfortunately, there's no other way to do this than with a cycle.
1959 foreach(const QString& name, planetNames)
1960 {
1961- planets->addItem(q_(name), name);
1962+ planets->addItem(trans.qtranslate(name), name);
1963 }
1964 //Restore the selection
1965 index = planets->findData(selectedPlanetId, Qt::UserRole, Qt::MatchCaseSensitive);
1966
1967=== modified file 'src/gui/ViewDialog.cpp'
1968--- src/gui/ViewDialog.cpp 2014-11-23 16:43:10 +0000
1969+++ src/gui/ViewDialog.cpp 2014-11-26 13:20:53 +0000
1970@@ -254,17 +254,8 @@
1971 ui->autoChangeLandscapesCheckBox->setChecked(lmgr->getFlagLandscapeAutoSelection());
1972 connect(ui->autoChangeLandscapesCheckBox, SIGNAL(toggled(bool)), lmgr, SLOT(setFlagLandscapeAutoSelection(bool)));
1973
1974- // GZ: changes for refraction
1975- //ui->pressureDoubleSpinBox->setValue(StelApp::getInstance().getCore()->getSkyDrawer()->getAtmospherePressure());
1976- //connect(ui->pressureDoubleSpinBox, SIGNAL(valueChanged(double)), StelApp::getInstance().getCore()->getSkyDrawer(), SLOT(setAtmospherePressure(double)));
1977- //ui->temperatureDoubleSpinBox->setValue(StelApp::getInstance().getCore()->getSkyDrawer()->getAtmosphereTemperature());
1978- //connect(ui->temperatureDoubleSpinBox, SIGNAL(valueChanged(double)), StelApp::getInstance().getCore()->getSkyDrawer(), SLOT(setAtmosphereTemperature(double)));
1979- //ui->extinctionDoubleSpinBox->setValue(StelApp::getInstance().getCore()->getSkyDrawer()->getExtinctionCoefficient());
1980- //connect(ui->extinctionDoubleSpinBox, SIGNAL(valueChanged(double)), StelApp::getInstance().getCore()->getSkyDrawer(), SLOT(setExtinctionCoefficient(double)));
1981- //// instead
1982+ // atmosphere details
1983 connect(ui->pushButtonAtmosphereDetails, SIGNAL(clicked()), this, SLOT(showAtmosphereDialog()));
1984- // GZ: Done
1985-
1986
1987 ui->useAsDefaultLandscapeCheckBox->setChecked(lmgr->getCurrentLandscapeID()==lmgr->getDefaultLandscapeID());
1988 ui->useAsDefaultLandscapeCheckBox->setEnabled(lmgr->getCurrentLandscapeID()!=lmgr->getDefaultLandscapeID());
1989@@ -300,8 +291,10 @@
1990 const bool b = StelApp::getInstance().getSkyCultureMgr().getCurrentSkyCultureID()==StelApp::getInstance().getSkyCultureMgr().getDefaultSkyCultureID();
1991 ui->useAsDefaultSkyCultureCheckBox->setChecked(b);
1992 ui->useAsDefaultSkyCultureCheckBox->setEnabled(!b);
1993+ // GZ NEW allow to display short names and inhibit translation.
1994+ connect(ui->skyCultureNamesStyleComboBox, SIGNAL(currentIndexChanged(int)), cmgr, SLOT(setConstellationDisplayStyle(int)));
1995
1996- // Sky layers
1997+ // Sky layers. This not yet finished and not visible in releases.
1998 populateSkyLayersList();
1999 connect(this, SIGNAL(visibleChanged(bool)), this, SLOT(populateSkyLayersList()));
2000 connect(ui->skyLayerListWidget, SIGNAL(currentTextChanged(const QString&)), this, SLOT(skyLayersSelectionChanged(const QString&)));
2001@@ -408,6 +401,23 @@
2002 l->blockSignals(false);
2003 updateSkyCultureText();
2004
2005+ // populate language printing combo. (taken from DeltaT combo)
2006+ ConstellationMgr* cmgr=GETSTELMODULE(ConstellationMgr);
2007+ Q_ASSERT(cmgr);
2008+ Q_ASSERT(ui->skyCultureNamesStyleComboBox);
2009+ QComboBox* cultureNamesStyleComboBox = ui->skyCultureNamesStyleComboBox;
2010+ cultureNamesStyleComboBox->blockSignals(true);
2011+ cultureNamesStyleComboBox->clear();
2012+ cultureNamesStyleComboBox->addItem(q_("Abbreviated"), ConstellationMgr::constellationsAbbreviated);
2013+ cultureNamesStyleComboBox->addItem(q_("Native"), ConstellationMgr::constellationsNative); // Please make this always a transcript into European letters!
2014+ cultureNamesStyleComboBox->addItem(q_("Translated"), ConstellationMgr::constellationsTranslated);
2015+ //cultureNamesStyleComboBox->addItem(q_("English"), ConstellationMgr::constellationsEnglish); // This is not useful.
2016+ //Restore the selection
2017+ int index = cultureNamesStyleComboBox->findData(cmgr->getConstellationDisplayStyle(), Qt::UserRole, Qt::MatchCaseSensitive);
2018+ if (index==-1) index=2; // Default: Translated
2019+ cultureNamesStyleComboBox->setCurrentIndex(index);
2020+ cultureNamesStyleComboBox->blockSignals(false);
2021+
2022 const StelCore* core = StelApp::getInstance().getCore();
2023 StelGui* gui = dynamic_cast<StelGui*>(StelApp::getInstance().getGui());
2024 Q_ASSERT(gui);
2025@@ -496,6 +506,7 @@
2026 ui->useAsDefaultSkyCultureCheckBox->setEnabled(!b);
2027 }
2028
2029+// fill the description text window, not the names in the sky.
2030 void ViewDialog::updateSkyCultureText()
2031 {
2032 StelApp& app = StelApp::getInstance();
2033
2034=== modified file 'src/gui/ViewDialog.hpp'
2035--- src/gui/ViewDialog.hpp 2014-11-23 16:43:10 +0000
2036+++ src/gui/ViewDialog.hpp 2014-11-26 13:20:53 +0000
2037@@ -71,6 +71,7 @@
2038 void populateLightPollution();
2039 void populateLandscapeMinimalBrightness();
2040
2041+ // WHAT IS THE SKY LAYER? hidden, under development?
2042 void populateSkyLayersList();
2043 void skyLayersSelectionChanged(const QString&);
2044 void skyLayersEnabledChanged(int);
2045
2046=== modified file 'src/gui/configurationDialog.ui'
2047--- src/gui/configurationDialog.ui 2014-09-26 14:33:13 +0000
2048+++ src/gui/configurationDialog.ui 2014-11-26 13:20:53 +0000
2049@@ -170,7 +170,7 @@
2050 <item>
2051 <widget class="QGroupBox" name="groupBox_2">
2052 <property name="title">
2053- <string>Program language</string>
2054+ <string>Language settings</string>
2055 </property>
2056 <layout class="QHBoxLayout" name="horizontalLayout_2">
2057 <property name="leftMargin">
2058@@ -186,38 +186,84 @@
2059 <number>0</number>
2060 </property>
2061 <item>
2062- <widget class="QComboBox" name="programLanguageComboBox">
2063- <property name="sizePolicy">
2064- <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
2065- <horstretch>0</horstretch>
2066- <verstretch>0</verstretch>
2067- </sizepolicy>
2068- </property>
2069- <property name="minimumSize">
2070- <size>
2071- <width>220</width>
2072- <height>24</height>
2073- </size>
2074- </property>
2075- <property name="maximumSize">
2076- <size>
2077- <width>220</width>
2078- <height>24</height>
2079- </size>
2080- </property>
2081- <property name="editable">
2082- <bool>true</bool>
2083- </property>
2084- <property name="insertPolicy">
2085- <enum>QComboBox::NoInsert</enum>
2086- </property>
2087- <property name="sizeAdjustPolicy">
2088- <enum>QComboBox::AdjustToContentsOnFirstShow</enum>
2089- </property>
2090- <property name="frame">
2091- <bool>true</bool>
2092- </property>
2093- </widget>
2094+ <layout class="QGridLayout" name="languageGridLayout">
2095+ <item row="0" column="0">
2096+ <widget class="QLabel" name="programLanguageLabel">
2097+ <property name="text">
2098+ <string>Program Language</string>
2099+ </property>
2100+ </widget>
2101+ </item>
2102+ <item row="0" column="1">
2103+ <widget class="QComboBox" name="programLanguageComboBox">
2104+ <property name="sizePolicy">
2105+ <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
2106+ <horstretch>0</horstretch>
2107+ <verstretch>0</verstretch>
2108+ </sizepolicy>
2109+ </property>
2110+ <property name="minimumSize">
2111+ <size>
2112+ <width>220</width>
2113+ <height>24</height>
2114+ </size>
2115+ </property>
2116+ <property name="maximumSize">
2117+ <size>
2118+ <width>220</width>
2119+ <height>24</height>
2120+ </size>
2121+ </property>
2122+ <property name="editable">
2123+ <bool>true</bool>
2124+ </property>
2125+ <property name="insertPolicy">
2126+ <enum>QComboBox::NoInsert</enum>
2127+ </property>
2128+ <property name="sizeAdjustPolicy">
2129+ <enum>QComboBox::AdjustToContentsOnFirstShow</enum>
2130+ </property>
2131+ <property name="frame">
2132+ <bool>true</bool>
2133+ </property>
2134+ </widget>
2135+ </item>
2136+ <item row="1" column="0">
2137+ <widget class="QLabel" name="skycultureLanguageLabel">
2138+ <property name="text">
2139+ <string>Sky Culture Language</string>
2140+ </property>
2141+ </widget>
2142+ </item>
2143+ <item row="1" column="1">
2144+ <widget class="QComboBox" name="skycultureLanguageComboBox">
2145+ <property name="sizePolicy">
2146+ <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
2147+ <horstretch>0</horstretch>
2148+ <verstretch>0</verstretch>
2149+ </sizepolicy>
2150+ </property>
2151+ <property name="minimumSize">
2152+ <size>
2153+ <width>220</width>
2154+ <height>24</height>
2155+ </size>
2156+ </property>
2157+ <property name="maximumSize">
2158+ <size>
2159+ <width>220</width>
2160+ <height>24</height>
2161+ </size>
2162+ </property>
2163+ <property name="editable">
2164+ <bool>true</bool>
2165+ </property>
2166+ <property name="insertPolicy">
2167+ <enum>QComboBox::NoInsert</enum>
2168+ </property>
2169+ </widget>
2170+ </item>
2171+ </layout>
2172 </item>
2173 </layout>
2174 </widget>
2175@@ -1644,7 +1690,6 @@
2176 </customwidget>
2177 </customwidgets>
2178 <tabstops>
2179- <tabstop>programLanguageComboBox</tabstop>
2180 <tabstop>setViewingOptionAsDefaultPushButton</tabstop>
2181 <tabstop>restoreDefaultsButton</tabstop>
2182 <tabstop>checkBoxName</tabstop>
2183
2184=== modified file 'src/gui/viewDialog.ui'
2185--- src/gui/viewDialog.ui 2014-11-23 16:09:46 +0000
2186+++ src/gui/viewDialog.ui 2014-11-26 13:20:53 +0000
2187@@ -1917,7 +1917,10 @@
2188 <property name="title">
2189 <string>Options</string>
2190 </property>
2191- <layout class="QVBoxLayout" name="verticalLayout_8">
2192+ <layout class="QFormLayout" name="formLayout_2">
2193+ <property name="fieldGrowthPolicy">
2194+ <enum>QFormLayout::AllNonFixedFieldsGrow</enum>
2195+ </property>
2196 <property name="leftMargin">
2197 <number>0</number>
2198 </property>
2199@@ -1930,13 +1933,30 @@
2200 <property name="bottomMargin">
2201 <number>0</number>
2202 </property>
2203- <item>
2204+ <item row="0" column="0">
2205 <widget class="QCheckBox" name="useAsDefaultSkyCultureCheckBox">
2206 <property name="text">
2207 <string>Use this sky culture as default</string>
2208 </property>
2209 </widget>
2210 </item>
2211+ <item row="1" column="0">
2212+ <widget class="QLabel" name="label">
2213+ <property name="text">
2214+ <string>Show names</string>
2215+ </property>
2216+ </widget>
2217+ </item>
2218+ <item row="1" column="1">
2219+ <widget class="QComboBox" name="skyCultureNamesStyleComboBox">
2220+ <property name="toolTip">
2221+ <string>Select if you want names abbreviated, original or translated</string>
2222+ </property>
2223+ <property name="currentText">
2224+ <string/>
2225+ </property>
2226+ </widget>
2227+ </item>
2228 </layout>
2229 </widget>
2230 </item>
2231
2232=== modified file 'src/translations.h'
2233--- src/translations.h 2014-11-14 19:05:02 +0000
2234+++ src/translations.h 2014-11-26 13:20:53 +0000
2235@@ -19,6 +19,7 @@
2236
2237 // This file contains translations for all translatable strings stored within data files
2238 // It is not meant to be compiled but just parsed by gettext
2239+// names of celestial objects for screen display (Sky language) have been taken to translations_skycultures.h
2240
2241 class Translations
2242 {
2243@@ -28,143 +29,7 @@
2244 {
2245 // Generate Gettext strings for traduction
2246 Q_ASSERT(0);
2247-
2248- // Planets and satellites from ssystem.ini
2249- N_("Sun");
2250- N_("Mercury");
2251- N_("Venus");
2252- N_("Earth");
2253- N_("Moon");
2254- N_("Mars");
2255- N_("Deimos");
2256- N_("Phobos");
2257- N_("Ceres");
2258- N_("Pallas");
2259- N_("Juno");
2260- N_("Vesta");
2261- N_("Jupiter");
2262- N_("Io");
2263- N_("Europa");
2264- N_("Ganymede");
2265- N_("Callisto");
2266- N_("Amalthea");
2267- N_("Himalia");
2268- N_("Elara");
2269- N_("Pasiphae");
2270- N_("Sinope");
2271- N_("Lysithea");
2272- N_("Carme");
2273- N_("Ananke");
2274- N_("Leda");
2275- N_("Thebe");
2276- N_("Adrastea");
2277- N_("Metis");
2278- N_("Saturn");
2279- N_("Mimas");
2280- N_("Enceladus");
2281- N_("Tethys");
2282- N_("Dione");
2283- N_("Rhea");
2284- N_("Titan");
2285- N_("Hyperion");
2286- N_("Iapetus");
2287- N_("Phoebe");
2288- N_("Neptune");
2289- N_("Uranus");
2290- N_("Miranda");
2291- N_("Ariel");
2292- N_("Umbriel");
2293- N_("Titania");
2294- N_("Oberon");
2295- N_("Pluto");
2296- N_("Charon");
2297- // TRANSLATORS: Moon of Pluto (II)
2298- N_("Nix");
2299- // TRANSLATORS: Moon of Pluto (III)
2300- N_("Hydra (moon)");
2301- N_("Eris");
2302- N_("Triton");
2303- N_("Nereid");
2304- N_("Naiad");
2305- N_("Thalassa");
2306- N_("Despina");
2307- N_("Galatea");
2308- N_("Larissa");
2309- N_("Proteus");
2310- N_("Halimede");
2311- N_("Psamathe");
2312- N_("Sao");
2313- N_("Laomedeia");
2314- N_("Neso");
2315- N_("Solar System Observer");
2316- //TNO's that are in the default ssystem.ini
2317- // TRANSLATORS: TNO/Asteroid (90377) Sedna
2318- N_("Sedna");
2319- // TRANSLATORS: TNO/Asteroid (50000) Quaoar
2320- N_("Quaoar");
2321- // TRANSLATORS: TNO/Asteroid (90482) Orcus
2322- N_("Orcus");
2323- // TRANSLATORS: TNO/Asteroid (136108) Haumea
2324- N_("Haumea");
2325- //Asteroids that are not in the default ssystem.ini
2326- // TRANSLATORS: Asteroid (5) Astraea
2327- N_("Astraea");
2328- // TRANSLATORS: Asteroid (6) Hebe
2329- N_("Hebe");
2330- // TRANSLATORS: Asteroid (7) Iris
2331- N_("Iris");
2332- // TRANSLATORS: Asteroid (8) Flora
2333- N_("Flora");
2334- // TRANSLATORS: Asteroid (9) Metis
2335- N_("Metis");
2336- // TRANSLATORS: Asteroid (10) Hygiea
2337- N_("Hygiea");
2338- // TRANSLATORS: Asteroid (41) Daphne
2339- N_("Daphne");
2340- // TRANSLATORS: Asteroid (1221) Amor
2341- N_("Amor");
2342- // TRANSLATORS: Asteroid (99942) Apophis
2343- N_("Apophis");
2344- // TRANSLATORS: Asteroid (2060) Chiron
2345- N_("Chiron");
2346- // TRANSLATORS: Asteroid (433) Eros
2347- N_("Eros");
2348- // TRANSLATORS: Asteroid (624) Hektor
2349- N_("Hektor");
2350- // TRANSLATORS: Asteroid (20000) Varuna
2351- N_("Varuna");
2352- // TRANSLATORS: Asteroid (136472) Makemake
2353- N_("Makemake");
2354- // TRANSLATORS: Asteroid (3200) Phaethon
2355- N_("Phaethon");
2356- // TRANSLATORS: Asteroid (1866) Sisyphus
2357- N_("Sisyphus");
2358- // TRANSLATORS: Asteroid (1864) Daedalus
2359- N_("Daedalus");
2360- // TRANSLATORS: Asteroid (1566) Icarus
2361- N_("Icarus");
2362- // TRANSLATORS: Asteroid (1809) Prometheus
2363- N_("Prometheus");
2364- N_("Prometheus (moon)");
2365- // TRANSLATORS: Asteroid (1810) Epimetheus
2366- N_("Epimetheus");
2367- N_("Epimetheus (moon)");
2368- // TRANSLATORS: Asteroid (951) Gaspra
2369- N_("Gaspra");
2370- // TRANSLATORS: Asteroid (243) Ida
2371- N_("Ida");
2372- // TRANSLATORS: Asteroid (218) Bianca
2373- N_("Bianca");
2374- N_("Bianca (moon)");
2375-
2376- // TRANSLATORS: Proper name of comet C/1680 V1
2377- N_("Great Comet of 1680 (C/1680 V1)");
2378-
2379- // TRANSLATORS: Name of supernova SN 1572A and script name
2380- N_("Tycho's Supernova");
2381- // TRANSLATORS: Name of supernova SN 1604A
2382- N_("Kepler's Supernova");
2383-
2384+
2385 // Cardinals names
2386 N_("N"); // North
2387 N_("S"); // South
2388@@ -240,6 +105,7 @@
2389 N_("Tupi-Guarani");
2390 N_("Tongan");
2391 N_("Western");
2392+ N_("Western (H.A.Rey)");
2393
2394
2395 // =====================================================================
2396@@ -263,6 +129,7 @@
2397 // TRANSLATORS: Name of landscape
2398 N_("Geneva");
2399 // TRANSLATORS: Name of landscape
2400+ // TRANSLATORS: Name of landscape
2401 N_("Grossmugl");
2402 // TRANSLATORS: Name of landscape
2403 N_("Zero Horizon");
2404@@ -320,6 +187,8 @@
2405 N_("Earth and Venus Greatest Elongations and Brilliancies from Mars");
2406 // TRANSLATORS: Name of script
2407 N_("Earth and Mars Greatest Elongations and Transits from Callisto");
2408+ // TRANSLATORS: Name of script
2409+ N_("Tycho's Supernova");
2410
2411 // =====================================================================
2412 // Script descriptions
2413
2414=== added file 'src/translations_skycultures.h'
2415--- src/translations_skycultures.h 1970-01-01 00:00:00 +0000
2416+++ src/translations_skycultures.h 2014-11-26 13:20:53 +0000
2417@@ -0,0 +1,171 @@
2418+/*
2419+ * Stellarium
2420+ * Copyright (C) 2005 Fabien Chereau
2421+ *
2422+ * This program is free software; you can redistribute it and/or
2423+ * modify it under the terms of the GNU General Public License
2424+ * as published by the Free Software Foundation; either version 2
2425+ * of the License, or (at your option) any later version.
2426+ *
2427+ * This program is distributed in the hope that it will be useful,
2428+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
2429+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2430+ * GNU General Public License for more details.
2431+ *
2432+ * You should have received a copy of the GNU General Public License
2433+ * along with this program; if not, write to the Free Software
2434+ * Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA.
2435+ */
2436+
2437+// This file contains translations for all translatable strings stored within data files
2438+// which relate to displayable celestial objects. These need a translation separate from the App translations.
2439+// Currently these are only names of solar system objects.
2440+// It is not meant to be compiled but just parsed by gettext
2441+
2442+class TranslationsSkycultures
2443+{
2444+ void TranslationsSkycultures(){;}
2445+
2446+ static translationList()
2447+ {
2448+ // Generate Gettext strings for traduction
2449+ Q_ASSERT(0);
2450+
2451+ // Planets and satellites from ssystem.ini
2452+ N_("Sun");
2453+ N_("Mercury");
2454+ N_("Venus");
2455+ N_("Earth");
2456+ N_("Moon");
2457+ N_("Mars");
2458+ N_("Deimos");
2459+ N_("Phobos");
2460+ N_("Ceres");
2461+ N_("Pallas");
2462+ N_("Juno");
2463+ N_("Vesta");
2464+ N_("Jupiter");
2465+ N_("Io");
2466+ N_("Europa");
2467+ N_("Ganymede");
2468+ N_("Callisto");
2469+ N_("Amalthea");
2470+ N_("Himalia");
2471+ N_("Elara");
2472+ N_("Pasiphae");
2473+ N_("Sinope");
2474+ N_("Lysithea");
2475+ N_("Carme");
2476+ N_("Ananke");
2477+ N_("Leda");
2478+ N_("Thebe");
2479+ N_("Adrastea");
2480+ N_("Metis");
2481+ N_("Saturn");
2482+ N_("Mimas");
2483+ N_("Enceladus");
2484+ N_("Tethys");
2485+ N_("Dione");
2486+ N_("Rhea");
2487+ N_("Titan");
2488+ N_("Hyperion");
2489+ N_("Iapetus");
2490+ N_("Phoebe");
2491+ N_("Neptune");
2492+ N_("Uranus");
2493+ N_("Miranda");
2494+ N_("Ariel");
2495+ N_("Umbriel");
2496+ N_("Titania");
2497+ N_("Oberon");
2498+ N_("Pluto");
2499+ N_("Charon");
2500+ // TRANSLATORS: Moon of Pluto (II)
2501+ N_("Nix");
2502+ // TRANSLATORS: Moon of Pluto (III)
2503+ N_("Hydra (moon)");
2504+ N_("Eris");
2505+ N_("Triton");
2506+ N_("Nereid");
2507+ N_("Naiad");
2508+ N_("Thalassa");
2509+ N_("Despina");
2510+ N_("Galatea");
2511+ N_("Larissa");
2512+ N_("Proteus");
2513+ N_("Halimede");
2514+ N_("Psamathe");
2515+ N_("Sao");
2516+ N_("Laomedeia");
2517+ N_("Neso");
2518+ N_("Solar System Observer");
2519+ //TNO's that are in the default ssystem.ini
2520+ // TRANSLATORS: TNO/Asteroid (90377) Sedna
2521+ N_("Sedna");
2522+ // TRANSLATORS: TNO/Asteroid (50000) Quaoar
2523+ N_("Quaoar");
2524+ // TRANSLATORS: TNO/Asteroid (90482) Orcus
2525+ N_("Orcus");
2526+ // TRANSLATORS: TNO/Asteroid (136108) Haumea
2527+ N_("Haumea");
2528+ //Asteroids that are not in the default ssystem.ini
2529+ // TRANSLATORS: Asteroid (5) Astraea
2530+ N_("Astraea");
2531+ // TRANSLATORS: Asteroid (6) Hebe
2532+ N_("Hebe");
2533+ // TRANSLATORS: Asteroid (7) Iris
2534+ N_("Iris");
2535+ // TRANSLATORS: Asteroid (8) Flora
2536+ N_("Flora");
2537+ // TRANSLATORS: Asteroid (9) Metis
2538+ N_("Metis");
2539+ // TRANSLATORS: Asteroid (10) Hygiea
2540+ N_("Hygiea");
2541+ // TRANSLATORS: Asteroid (41) Daphne
2542+ N_("Daphne");
2543+ // TRANSLATORS: Asteroid (1221) Amor
2544+ N_("Amor");
2545+ // TRANSLATORS: Asteroid (99942) Apophis
2546+ N_("Apophis");
2547+ // TRANSLATORS: Asteroid (2060) Chiron
2548+ N_("Chiron");
2549+ // TRANSLATORS: Asteroid (433) Eros
2550+ N_("Eros");
2551+ // TRANSLATORS: Asteroid (624) Hektor
2552+ N_("Hektor");
2553+ // TRANSLATORS: Asteroid (20000) Varuna
2554+ N_("Varuna");
2555+ // TRANSLATORS: Asteroid (136472) Makemake
2556+ N_("Makemake");
2557+ // TRANSLATORS: Asteroid (3200) Phaethon
2558+ N_("Phaethon");
2559+ // TRANSLATORS: Asteroid (1866) Sisyphus
2560+ N_("Sisyphus");
2561+ // TRANSLATORS: Asteroid (1864) Daedalus
2562+ N_("Daedalus");
2563+ // TRANSLATORS: Asteroid (1566) Icarus
2564+ N_("Icarus");
2565+ // TRANSLATORS: Asteroid (1809) Prometheus
2566+ N_("Prometheus");
2567+ N_("Prometheus (moon)");
2568+ // TRANSLATORS: Asteroid (1810) Epimetheus
2569+ N_("Epimetheus");
2570+ N_("Epimetheus (moon)");
2571+ // TRANSLATORS: Asteroid (951) Gaspra
2572+ N_("Gaspra");
2573+ // TRANSLATORS: Asteroid (243) Ida
2574+ N_("Ida");
2575+ // TRANSLATORS: Asteroid (218) Bianca
2576+ N_("Bianca");
2577+ N_("Bianca (moon)");
2578+
2579+ // TRANSLATORS: Proper name of comet C/1680 V1
2580+ N_("Great Comet of 1680 (C/1680 V1)");
2581+
2582+ // TRANSLATORS: Name of supernova SN 1572A
2583+ N_("Tycho's Supernova");
2584+ // TRANSLATORS: Name of supernova SN 1604A
2585+ N_("Kepler's Supernova");
2586+
2587+ }
2588+};