[WELCOME]: Diverse improvements:

- Compute once, when loading the list of topics with their associated commands, their special arguments or starting paths. The computed values can then be used each time a topic command is invoked.
- Distinguish between runnable commands (aka. external executables or files to be started), and internal actions like <msg> and <exit>.
- I have recently discovered that Windows' welcome.exe could also use a custom (OEM) "welcome.ini" file, much like what we already supported: see http://i.imgur.com/Se3IoQN.png .
  To make ours backwards-compatible with Windows' one, rename the "Button" keyword into "MenuText", and introduce two new keywords "ConfigCommand" and "ConfigArgs" that specify respectively the command to be started
  and its associated arguments. We continue to support our "Action" keyword for specifying internal actions.
- Improve the loading of the localized resources from the INI files.
- Correctly print the ReactOS version text, at a correct position depending on whether the checked box is display or not.
- Simplify some StringCchCopy + StringCchCat calls into StringCchPrintf.
- Simplify the code that creates the different fonts to be used within the program.
- Use more readable resource ID names.

svn path=/trunk/; revision=75322
This commit is contained in:
Hermès Bélusca-Maïto 2017-07-12 22:16:50 +00:00
parent d9827356db
commit 6f2c13e4df
33 changed files with 755 additions and 619 deletions

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Добре дошли" IDS_APPTITLE "ReactOS - Добре дошли"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Добре дошли в операционна система ReactOS.\n\nИзберете си от темите в ляво." IDS_DEFAULT_TOPIC_DESC "Добре дошли в операционна система ReactOS.\n\nИзберете си от темите в ляво."
IDS_CHECKTEXT "&Показвай отново този прозорец" IDS_CHECKTEXT "&Показвай отново този прозорец"
IDS_CLOSETEXT "&Изход" IDS_CLOSETEXT "&Изход"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "Инсталиране на &ReactOS" IDS_TOPIC_BUTTON0 "Инсталиране на &ReactOS"
IDS_TOPICBUTTON1 "&Разгледай това CD" IDS_TOPIC_BUTTON1 "&Разгледай това CD"
IDS_TOPICBUTTON2 "&Изход" IDS_TOPIC_BUTTON2 "&Изход"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Инсталиране на ReactOSS" IDS_TOPIC_TITLE0 "Инсталиране на ReactOSS"
IDS_TOPICTITLE1 "Разгледай това CD" IDS_TOPIC_TITLE1 "Разгледай това CD"
IDS_TOPICTITLE2 "Изход" IDS_TOPIC_TITLE2 "Изход"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Създаване на нова инсталация ня ReactOS или обновяване на съществуваща такава." IDS_TOPIC_DESC0 "Създаване на нова инсталация ня ReactOS или обновяване на съществуваща такава."
IDS_TOPICDESC1 "Разглеждане на CD-то." IDS_TOPIC_DESC1 "Разглеждане на CD-то."
IDS_TOPICDESC2 "Натиснете за изход от програмата." IDS_TOPIC_DESC2 "Натиснете за изход от програмата."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Vítejte" IDS_APPTITLE "ReactOS - Vítejte"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Vítejte v operačním systému ReactOS.\n\nKlepněte na tlačítko v levém sloupci." IDS_DEFAULT_TOPIC_DESC "Vítejte v operačním systému ReactOS.\n\nKlepněte na tlačítko v levém sloupci."
IDS_CHECKTEXT "&Zobrazit dialog znovu" IDS_CHECKTEXT "&Zobrazit dialog znovu"
IDS_CLOSETEXT "&Konec" IDS_CLOSETEXT "&Konec"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Instalovat ReactOS" IDS_TOPIC_BUTTON0 "&Instalovat ReactOS"
IDS_TOPICBUTTON1 "&Prohlížet toto CD" IDS_TOPIC_BUTTON1 "&Prohlížet toto CD"
IDS_TOPICBUTTON2 "&Konec" IDS_TOPIC_BUTTON2 "&Konec"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Instalovat ReactOS" IDS_TOPIC_TITLE0 "Instalovat ReactOS"
IDS_TOPICTITLE1 "Prohlížet toto CD" IDS_TOPIC_TITLE1 "Prohlížet toto CD"
IDS_TOPICTITLE2 "Konec" IDS_TOPIC_TITLE2 "Konec"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Nainstaluje ReactOS na Váš počítač nebo zaktualizuje existující systém." IDS_TOPIC_DESC0 "Nainstaluje ReactOS na Váš počítač nebo zaktualizuje existující systém."
IDS_TOPICDESC1 "Prohlížet toto CD." IDS_TOPIC_DESC1 "Prohlížet toto CD."
IDS_TOPICDESC2 "Klepněte pro ukončení tohoto programu." IDS_TOPIC_DESC2 "Klepněte pro ukončení tohoto programu."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_DANISH, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Velkommen" IDS_APPTITLE "ReactOS - Velkommen"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Velkommen til ReactOS operativ System.\n\nKlik på et emne til venstre." IDS_DEFAULT_TOPIC_DESC "Velkommen til ReactOS operativ System.\n\nKlik på et emne til venstre."
IDS_CHECKTEXT "&Vis denne dialog igen ved opstart" IDS_CHECKTEXT "&Vis denne dialog igen ved opstart"
IDS_CLOSETEXT "&Afslut" IDS_CLOSETEXT "&Afslut"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Installer ReactOS" IDS_TOPIC_BUTTON0 "&Installer ReactOS"
IDS_TOPICBUTTON1 "&Gennemse Cdrom" IDS_TOPIC_BUTTON1 "&Gennemse Cdrom"
IDS_TOPICBUTTON2 "&Afslut" IDS_TOPIC_BUTTON2 "&Afslut"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Installer ReactOS" IDS_TOPIC_TITLE0 "Installer ReactOS"
IDS_TOPICTITLE1 "Gennemse Cdrom" IDS_TOPIC_TITLE1 "Gennemse Cdrom"
IDS_TOPICTITLE2 "Afslut" IDS_TOPIC_TITLE2 "Afslut"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Opret en ny ReactOS installation på din computer eller opgradere en eksisterende installation." IDS_TOPIC_DESC0 "Opret en ny ReactOS installation på din computer eller opgradere en eksisterende installation."
IDS_TOPICDESC1 "Gennemse ReactOS Installations Cdrom" IDS_TOPIC_DESC1 "Gennemse ReactOS Installations Cdrom"
IDS_TOPICDESC2 "Klik på Afslut for at lukke." IDS_TOPIC_DESC2 "Klik på Afslut for at lukke."
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Willkommen" IDS_APPTITLE "ReactOS - Willkommen"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Willkommen in ReactOS.\n\nKlicken Sie auf ein Thema auf der linken Seite." IDS_DEFAULT_TOPIC_DESC "Willkommen in ReactOS.\n\nKlicken Sie auf ein Thema auf der linken Seite."
IDS_CHECKTEXT "&Dialog beim nächsen Start wieder anzeigen" IDS_CHECKTEXT "&Dialog beim nächsen Start wieder anzeigen"
IDS_CLOSETEXT "&Beenden" IDS_CLOSETEXT "&Beenden"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&ReactOS installieren" IDS_TOPIC_BUTTON0 "&ReactOS installieren"
IDS_TOPICBUTTON1 "&CD durchsuchen" IDS_TOPIC_BUTTON1 "&CD durchsuchen"
IDS_TOPICBUTTON2 "&Beenden" IDS_TOPIC_BUTTON2 "&Beenden"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "ReactOS installieren" IDS_TOPIC_TITLE0 "ReactOS installieren"
IDS_TOPICTITLE1 "CD durchsuchen" IDS_TOPIC_TITLE1 "CD durchsuchen"
IDS_TOPICTITLE2 "Beenden" IDS_TOPIC_TITLE2 "Beenden"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Installiert ReactOS auf ihrem Computer oder aktualisiert eine bestehende Installation." IDS_TOPIC_DESC0 "Installiert ReactOS auf ihrem Computer oder aktualisiert eine bestehende Installation."
IDS_TOPICDESC1 "Die ReactOS-CD durchsuchen." IDS_TOPIC_DESC1 "Die ReactOS-CD durchsuchen."
IDS_TOPICDESC2 "Klicken Sie, um dieses Programm zu beenden." IDS_TOPIC_DESC2 "Klicken Sie, um dieses Programm zu beenden."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_GREEK, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Καλώς Ήλθατε" IDS_APPTITLE "ReactOS - Καλώς Ήλθατε"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Καλώς ήλθατε στο ReactOS Λειτουργικό Σύστημα.\n\nΕπιλέξτε ένα θέμα από το μενού στα αριστερά." IDS_DEFAULT_TOPIC_DESC "Καλώς ήλθατε στο ReactOS Λειτουργικό Σύστημα.\n\nΕπιλέξτε ένα θέμα από το μενού στα αριστερά."
IDS_CHECKTEXT "&Show this dialog again" IDS_CHECKTEXT "&Show this dialog again"
IDS_CLOSETEXT "&Έξοδος" IDS_CLOSETEXT "&Έξοδος"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "Εγκατάσταση του &ReactOS" IDS_TOPIC_BUTTON0 "Εγκατάσταση του &ReactOS"
IDS_TOPICBUTTON1 "Εξερεύνηση αυτού του &CD" IDS_TOPIC_BUTTON1 "Εξερεύνηση αυτού του &CD"
IDS_TOPICBUTTON2 "&Έξοδος" IDS_TOPIC_BUTTON2 "&Έξοδος"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Εγκατάσταση του ReactOS" IDS_TOPIC_TITLE0 "Εγκατάσταση του ReactOS"
IDS_TOPICTITLE1 "Εξερεύνηση αυτού του CD" IDS_TOPIC_TITLE1 "Εξερεύνηση αυτού του CD"
IDS_TOPICTITLE2 "Έξοδος" IDS_TOPIC_TITLE2 "Έξοδος"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Δημιουργία νέας εγκατάστασης του ReactOS στον υπολογιστή ή αναβάθμιση μιας ήδη υπάρχουσας εγκατάστασης." IDS_TOPIC_DESC0 "Δημιουργία νέας εγκατάστασης του ReactOS στον υπολογιστή ή αναβάθμιση μιας ήδη υπάρχουσας εγκατάστασης."
IDS_TOPICDESC1 "Εξερεύνηση αυτού του CD." IDS_TOPIC_DESC1 "Εξερεύνηση αυτού του CD."
IDS_TOPICDESC2 "Πατήστε για να τερματίσετε την εφαρμογή αυτή." IDS_TOPIC_DESC2 "Πατήστε για να τερματίσετε την εφαρμογή αυτή."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Welcome" IDS_APPTITLE "ReactOS - Welcome"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Welcome to ReactOS Operating System.\n\nClick a topic on the left." IDS_DEFAULT_TOPIC_DESC "Welcome to ReactOS Operating System.\n\nClick a topic on the left."
IDS_CHECKTEXT "&Show this dialog again" IDS_CHECKTEXT "&Show this dialog again"
IDS_CLOSETEXT "&Exit" IDS_CLOSETEXT "&Exit"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Install ReactOS" IDS_TOPIC_BUTTON0 "&Install ReactOS"
IDS_TOPICBUTTON1 "&Browse this CD" IDS_TOPIC_BUTTON1 "&Browse this CD"
IDS_TOPICBUTTON2 "&Exit" IDS_TOPIC_BUTTON2 "&Exit"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Install ReactOS" IDS_TOPIC_TITLE0 "Install ReactOS"
IDS_TOPICTITLE1 "Browse this CD" IDS_TOPIC_TITLE1 "Browse this CD"
IDS_TOPICTITLE2 "Exit" IDS_TOPIC_TITLE2 "Exit"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Create a new ReactOS installation on your computer or upgrade an existing installation." IDS_TOPIC_DESC0 "Create a new ReactOS installation on your computer or upgrade an existing installation."
IDS_TOPICDESC1 "Browse the CD." IDS_TOPIC_DESC1 "Browse the CD."
IDS_TOPICDESC2 "Click to exit this application." IDS_TOPIC_DESC2 "Click to exit this application."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Bienvenido" IDS_APPTITLE "ReactOS - Bienvenido"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Bienvenido al Sistema Operativo ReactOS.\n\nHaz Click en una opción a la izquierda." IDS_DEFAULT_TOPIC_DESC "Bienvenido al Sistema Operativo ReactOS.\n\nHaz Click en una opción a la izquierda."
IDS_CHECKTEXT "&Mostrar este dialogo otra vez" IDS_CHECKTEXT "&Mostrar este dialogo otra vez"
IDS_CLOSETEXT "&Salir" IDS_CLOSETEXT "&Salir"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Instalar ReactOS" IDS_TOPIC_BUTTON0 "&Instalar ReactOS"
IDS_TOPICBUTTON1 "&Explorar este CD" IDS_TOPIC_BUTTON1 "&Explorar este CD"
IDS_TOPICBUTTON2 "&Salir" IDS_TOPIC_BUTTON2 "&Salir"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Instalar ReactOS" IDS_TOPIC_TITLE0 "Instalar ReactOS"
IDS_TOPICTITLE1 "Explorar este CD" IDS_TOPIC_TITLE1 "Explorar este CD"
IDS_TOPICTITLE2 "Salir" IDS_TOPIC_TITLE2 "Salir"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Crear una nueva instalación de ReactOS en su PC o actualizar una instalación existente." IDS_TOPIC_DESC0 "Crear una nueva instalación de ReactOS en su PC o actualizar una instalación existente."
IDS_TOPICDESC1 "Explorar este CD." IDS_TOPIC_DESC1 "Explorar este CD."
IDS_TOPICDESC2 "Haz Click para salir de esta aplicación." IDS_TOPIC_DESC2 "Haz Click para salir de esta aplicación."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_ESTONIAN, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Tere tulemast" IDS_APPTITLE "ReactOS - Tere tulemast"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Tere tulemast operatsioonisüsteemi ReactOS.\n\nVali teema vasakult." IDS_DEFAULT_TOPIC_DESC "Tere tulemast operatsioonisüsteemi ReactOS.\n\nVali teema vasakult."
IDS_CHECKTEXT "&Näita seda dialoogi veel" IDS_CHECKTEXT "&Näita seda dialoogi veel"
IDS_CLOSETEXT "&Välju" IDS_CLOSETEXT "&Välju"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Paigalda ReactOS" IDS_TOPIC_BUTTON0 "&Paigalda ReactOS"
IDS_TOPICBUTTON1 "&Sirvi CD sisu" IDS_TOPIC_BUTTON1 "&Sirvi CD sisu"
IDS_TOPICBUTTON2 "&Välju" IDS_TOPIC_BUTTON2 "&Välju"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Paigalda ReactOS" IDS_TOPIC_TITLE0 "Paigalda ReactOS"
IDS_TOPICTITLE1 "Sirvi CD sisu" IDS_TOPIC_TITLE1 "Sirvi CD sisu"
IDS_TOPICTITLE2 "Välju" IDS_TOPIC_TITLE2 "Välju"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Paigalda ReactOS oma arvutisse või uuenda olemasolevat installatsiooni." IDS_TOPIC_DESC0 "Paigalda ReactOS oma arvutisse või uuenda olemasolevat installatsiooni."
IDS_TOPICDESC1 "Sirvi CD sisu." IDS_TOPIC_DESC1 "Sirvi CD sisu."
IDS_TOPICDESC2 "Vajuta, et väljuda." IDS_TOPIC_DESC2 "Vajuta, et väljuda."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Bienvenue" IDS_APPTITLE "ReactOS - Bienvenue"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Bienvenue sur le système d'exploitation ReactOS.\n\nCliquez sur une section à gauche." IDS_DEFAULT_TOPIC_DESC "Bienvenue sur le système d'exploitation ReactOS.\n\nCliquez sur une section à gauche."
IDS_CHECKTEXT "&Afficher cette boîte de dialogue de nouveau." IDS_CHECKTEXT "&Afficher cette boîte de dialogue de nouveau."
IDS_CLOSETEXT "&Quitter" IDS_CLOSETEXT "&Quitter"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Installer ReactOS" IDS_TOPIC_BUTTON0 "&Installer ReactOS"
IDS_TOPICBUTTON1 "&Naviguer dans ce CD" IDS_TOPIC_BUTTON1 "&Naviguer dans ce CD"
IDS_TOPICBUTTON2 "&Quitter" IDS_TOPIC_BUTTON2 "&Quitter"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Installer ReactOS" IDS_TOPIC_TITLE0 "Installer ReactOS"
IDS_TOPICTITLE1 "Naviguer dans ce CD" IDS_TOPIC_TITLE1 "Naviguer dans ce CD"
IDS_TOPICTITLE2 "Quitter" IDS_TOPIC_TITLE2 "Quitter"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Crée une nouvelle installation de ReactOS sur votre ordinateur ou met à jour votre installation actuelle." IDS_TOPIC_DESC0 "Crée une nouvelle installation de ReactOS sur votre ordinateur ou met à jour votre installation actuelle."
IDS_TOPICDESC1 "Explore le CD." IDS_TOPIC_DESC1 "Explore le CD."
IDS_TOPICDESC2 "Cliquez pour quitter l'installation." IDS_TOPIC_DESC2 "Cliquez pour quitter l'installation."
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ברוכים הבאים - ReactOS" IDS_APPTITLE "ברוכים הבאים - ReactOS"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "ברוכים הבאים למערכת ההפעלה ReactOS,\nבחר נושא מצד ימין" IDS_DEFAULT_TOPIC_DESC "ברוכים הבאים למערכת ההפעלה ReactOS,\nבחר נושא מצד ימין"
IDS_CHECKTEXT "הראה חלון זה שוב" IDS_CHECKTEXT "הראה חלון זה שוב"
IDS_CLOSETEXT "יציאה" IDS_CLOSETEXT "יציאה"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "התקנת ReactOS" IDS_TOPIC_BUTTON0 "התקנת ReactOS"
IDS_TOPICBUTTON1 "סייר בתוכן הדיסק" IDS_TOPIC_BUTTON1 "סייר בתוכן הדיסק"
IDS_TOPICBUTTON2 "יציאה" IDS_TOPIC_BUTTON2 "יציאה"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "התקנת ReactOS" IDS_TOPIC_TITLE0 "התקנת ReactOS"
IDS_TOPICTITLE1 "סייר בתוכן הדיסק" IDS_TOPIC_TITLE1 "סייר בתוכן הדיסק"
IDS_TOPICTITLE2 "יציאה" IDS_TOPIC_TITLE2 "יציאה"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "צור התקנה חדשה של ReactOS במחשבך או שדרג את ההתקנה הנוכחית." IDS_TOPIC_DESC0 "צור התקנה חדשה של ReactOS במחשבך או שדרג את ההתקנה הנוכחית."
IDS_TOPICDESC1 "סייר בתוכן הדיסק." IDS_TOPIC_DESC1 "סייר בתוכן הדיסק."
IDS_TOPICDESC2 "לחץ כדי לסגור יישום זה." IDS_TOPIC_DESC2 "לחץ כדי לסגור יישום זה."
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Üdvözlünk" IDS_APPTITLE "ReactOS - Üdvözlünk"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Üdvözlünk a ReactOS Operációs Rendszerben.\n\n" IDS_DEFAULT_TOPIC_DESC "Üdvözlünk a ReactOS Operációs Rendszerben.\n\n"
IDS_CHECKTEXT "&Show this dialog again" IDS_CHECKTEXT "&Show this dialog again"
IDS_CLOSETEXT "&Kilépés" IDS_CLOSETEXT "&Kilépés"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&ReactOS telepítése" IDS_TOPIC_BUTTON0 "&ReactOS telepítése"
IDS_TOPICBUTTON1 "&A CD böngészése" IDS_TOPIC_BUTTON1 "&A CD böngészése"
IDS_TOPICBUTTON2 "&Kilépés" IDS_TOPIC_BUTTON2 "&Kilépés"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "ReactOS telepítése" IDS_TOPIC_TITLE0 "ReactOS telepítése"
IDS_TOPICTITLE1 "A CD böngészése" IDS_TOPIC_TITLE1 "A CD böngészése"
IDS_TOPICTITLE2 "Kilépés" IDS_TOPIC_TITLE2 "Kilépés"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "A ReactOS telepítése vagy frissítése." IDS_TOPIC_DESC0 "A ReactOS telepítése vagy frissítése."
IDS_TOPICDESC1 "A CD böngészése" IDS_TOPIC_DESC1 "A CD böngészése"
IDS_TOPICDESC2 "Kilépés" IDS_TOPIC_DESC2 "Kilépés"
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_INDONESIAN, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Selamat Datang" IDS_APPTITLE "ReactOS - Selamat Datang"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Selamat datang di ReactOS Operating System.\n\nKlik topik di sisi kiri." IDS_DEFAULT_TOPIC_DESC "Selamat datang di ReactOS Operating System.\n\nKlik topik di sisi kiri."
IDS_CHECKTEXT "&Show this dialog again" IDS_CHECKTEXT "&Show this dialog again"
IDS_CLOSETEXT "&Keluar" IDS_CLOSETEXT "&Keluar"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Instalasi ReactOS" IDS_TOPIC_BUTTON0 "&Instalasi ReactOS"
IDS_TOPICBUTTON1 "Lihat &CD ini" IDS_TOPIC_BUTTON1 "Lihat &CD ini"
IDS_TOPICBUTTON2 "&Keluar" IDS_TOPIC_BUTTON2 "&Keluar"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Instalasi ReactOS" IDS_TOPIC_TITLE0 "Instalasi ReactOS"
IDS_TOPICTITLE1 "Lihat CD ini" IDS_TOPIC_TITLE1 "Lihat CD ini"
IDS_TOPICTITLE2 "Keluar" IDS_TOPIC_TITLE2 "Keluar"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Buat instalasi baru ReactOS pada komputer anda atau tingkatkan instalasi yang sudah ada." IDS_TOPIC_DESC0 "Buat instalasi baru ReactOS pada komputer anda atau tingkatkan instalasi yang sudah ada."
IDS_TOPICDESC1 "Lihat CD." IDS_TOPIC_DESC1 "Lihat CD."
IDS_TOPICDESC2 "Klik untuk keluar aplikasi ini." IDS_TOPIC_DESC2 "Klik untuk keluar aplikasi ini."
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Benvenuto" IDS_APPTITLE "ReactOS - Benvenuto"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Benvenuto nel ReactOS Operating System.\n\nClicca su un argomento a sinistra." IDS_DEFAULT_TOPIC_DESC "Benvenuto nel ReactOS Operating System.\n\nClicca su un argomento a sinistra."
IDS_CHECKTEXT "&Mostra ancora questa finestra" IDS_CHECKTEXT "&Mostra ancora questa finestra"
IDS_CLOSETEXT "&Esci" IDS_CLOSETEXT "&Esci"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Installa ReactOS" IDS_TOPIC_BUTTON0 "&Installa ReactOS"
IDS_TOPICBUTTON1 "Esplora il &CD" IDS_TOPIC_BUTTON1 "Esplora il &CD"
IDS_TOPICBUTTON2 "&Esci" IDS_TOPIC_BUTTON2 "&Esci"
END END
/* Topic Titolos */ /* Topic Titolos */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Installa ReactOS" IDS_TOPIC_TITLE0 "Installa ReactOS"
IDS_TOPICTITLE1 "Esplora il CD" IDS_TOPIC_TITLE1 "Esplora il CD"
IDS_TOPICTITLE2 "Esci" IDS_TOPIC_TITLE2 "Esci"
END END
/* Descrizione argomentos */ /* Descrizione argomentos */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Crea una nuova installazione di ReactOS sul tuo computer o aggiorna l'installazione esistente." IDS_TOPIC_DESC0 "Crea una nuova installazione di ReactOS sul tuo computer o aggiorna l'installazione esistente."
IDS_TOPICDESC1 "Esplora il CD." IDS_TOPIC_DESC1 "Esplora il CD."
IDS_TOPICDESC2 "Clicca per uscire dall'applicazione." IDS_TOPIC_DESC2 "Clicca per uscire dall'applicazione."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Welcome" IDS_APPTITLE "ReactOS - Welcome"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "ReactOS へようこそ。\n\n左側のトピックをクリックしてください。" IDS_DEFAULT_TOPIC_DESC "ReactOS へようこそ。\n\n左側のトピックをクリックしてください。"
IDS_CHECKTEXT "&Show this dialog again" IDS_CHECKTEXT "&Show this dialog again"
IDS_CLOSETEXT "終了(&Q)" IDS_CLOSETEXT "終了(&Q)"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "ReactOS をインストールする" IDS_TOPIC_BUTTON0 "ReactOS をインストールする"
IDS_TOPICBUTTON1 "この CD を開く" IDS_TOPIC_BUTTON1 "この CD を開く"
IDS_TOPICBUTTON2 "終了(&Q)" IDS_TOPIC_BUTTON2 "終了(&Q)"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "ReactOS をインストールする" IDS_TOPIC_TITLE0 "ReactOS をインストールする"
IDS_TOPICTITLE1 "この CD を開く" IDS_TOPIC_TITLE1 "この CD を開く"
IDS_TOPICTITLE2 "終了" IDS_TOPIC_TITLE2 "終了"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "コンピュータに新しく ReactOS をインストールしたり、既存の ReactOS をアップグレードします。" IDS_TOPIC_DESC0 "コンピュータに新しく ReactOS をインストールしたり、既存の ReactOS をアップグレードします。"
IDS_TOPICDESC1 "CD の内容を参照します。" IDS_TOPIC_DESC1 "CD の内容を参照します。"
IDS_TOPICDESC2 "クリックするとこのアプリケーションを終了します。" IDS_TOPIC_DESC2 "クリックするとこのアプリケーションを終了します。"
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_LITHUANIAN, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Sveiki" IDS_APPTITLE "ReactOS - Sveiki"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Sveiki, čia ReactOS Operacinė Sistema.\n\nPasirinkite punktą kairėje." IDS_DEFAULT_TOPIC_DESC "Sveiki, čia ReactOS Operacinė Sistema.\n\nPasirinkite punktą kairėje."
IDS_CHECKTEXT "&Rodyti šį langą vėl" IDS_CHECKTEXT "&Rodyti šį langą vėl"
IDS_CLOSETEXT "&Išeiti" IDS_CLOSETEXT "&Išeiti"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "Įdiegti &ReactOS" IDS_TOPIC_BUTTON0 "Įdiegti &ReactOS"
IDS_TOPICBUTTON1 "&Peržiūrėti šį CD" IDS_TOPIC_BUTTON1 "&Peržiūrėti šį CD"
IDS_TOPICBUTTON2 "&Išeiti" IDS_TOPIC_BUTTON2 "&Išeiti"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Įdiegti ReactOS" IDS_TOPIC_TITLE0 "Įdiegti ReactOS"
IDS_TOPICTITLE1 "Peržiūrėti šį CD" IDS_TOPIC_TITLE1 "Peržiūrėti šį CD"
IDS_TOPICTITLE2 "Išeiti" IDS_TOPIC_TITLE2 "Išeiti"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Įdiekite arba atnaujinkite ReactOS." IDS_TOPIC_DESC0 "Įdiekite arba atnaujinkite ReactOS."
IDS_TOPICDESC1 "Peržiūrėti šį CD." IDS_TOPIC_DESC1 "Peržiūrėti šį CD."
IDS_TOPICDESC2 "Paspauskite, kad išeitumėte iš programos." IDS_TOPIC_DESC2 "Paspauskite, kad išeitumėte iš programos."
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_MALAY, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Selamat Datang" IDS_APPTITLE "ReactOS - Selamat Datang"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Selamat datang ke ReactOS Operating System.\n\nKlik tajuk di sebelah kiri." IDS_DEFAULT_TOPIC_DESC "Selamat datang ke ReactOS Operating System.\n\nKlik tajuk di sebelah kiri."
IDS_CHECKTEXT "&Show this dialog again" IDS_CHECKTEXT "&Show this dialog again"
IDS_CLOSETEXT "&Keluar" IDS_CLOSETEXT "&Keluar"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Pasang ReactOS" IDS_TOPIC_BUTTON0 "&Pasang ReactOS"
IDS_TOPICBUTTON1 "&Layari CD ini" IDS_TOPIC_BUTTON1 "&Layari CD ini"
IDS_TOPICBUTTON2 "&Keluar" IDS_TOPIC_BUTTON2 "&Keluar"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Pasang ReactOS" IDS_TOPIC_TITLE0 "Pasang ReactOS"
IDS_TOPICTITLE1 "Layari CD ini" IDS_TOPIC_TITLE1 "Layari CD ini"
IDS_TOPICTITLE2 "Keluar" IDS_TOPIC_TITLE2 "Keluar"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Membuat pemasangan ReactOS yang baru di dalam komputer anda atau naik taraf pemasangan sedia ada." IDS_TOPIC_DESC0 "Membuat pemasangan ReactOS yang baru di dalam komputer anda atau naik taraf pemasangan sedia ada."
IDS_TOPICDESC1 "Layari CD ini." IDS_TOPIC_DESC1 "Layari CD ini."
IDS_TOPICDESC2 "Klik untuk keluar dari aplikasi ini." IDS_TOPIC_DESC2 "Klik untuk keluar dari aplikasi ini."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_DUTCH, SUBLANG_NEUTRAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Welkom" IDS_APPTITLE "ReactOS - Welkom"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Welkom bij het ReactOS Operation System.\n\nKlik links op een onderwerp." IDS_DEFAULT_TOPIC_DESC "Welkom bij het ReactOS Operation System.\n\nKlik links op een onderwerp."
IDS_CHECKTEXT "&Ga terug naar dit scherm" IDS_CHECKTEXT "&Ga terug naar dit scherm"
IDS_CLOSETEXT "&Afsluiten" IDS_CLOSETEXT "&Afsluiten"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Installeer ReactOS" IDS_TOPIC_BUTTON0 "&Installeer ReactOS"
IDS_TOPICBUTTON1 "&Deze CD Verkennen" IDS_TOPIC_BUTTON1 "&Deze CD Verkennen"
IDS_TOPICBUTTON2 "&Afsluiten" IDS_TOPIC_BUTTON2 "&Afsluiten"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Installeer ReactOS" IDS_TOPIC_TITLE0 "Installeer ReactOS"
IDS_TOPICTITLE1 "Deze CD Verkennen" IDS_TOPIC_TITLE1 "Deze CD Verkennen"
IDS_TOPICTITLE2 "Afsluiten" IDS_TOPIC_TITLE2 "Afsluiten"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Maak een nieuwe ReactOS installatie of upgrade een bestaande installatie." IDS_TOPIC_DESC0 "Maak een nieuwe ReactOS installatie of upgrade een bestaande installatie."
IDS_TOPICDESC1 "Deze CD Verkennen." IDS_TOPIC_DESC1 "Deze CD Verkennen."
IDS_TOPICDESC2 "Klik om dit programma af te sluiten." IDS_TOPIC_DESC2 "Klik om dit programma af te sluiten."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Velkommen" IDS_APPTITLE "ReactOS - Velkommen"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Velkommen til ReactOS Operativsystem.\n\nTrykk et emne til venstre." IDS_DEFAULT_TOPIC_DESC "Velkommen til ReactOS Operativsystem.\n\nTrykk et emne til venstre."
IDS_CHECKTEXT "&Vis denne dialoget igjen" IDS_CHECKTEXT "&Vis denne dialoget igjen"
IDS_CLOSETEXT "&Avslutt" IDS_CLOSETEXT "&Avslutt"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Innstaller ReactOS" IDS_TOPIC_BUTTON0 "&Innstaller ReactOS"
IDS_TOPICBUTTON1 "&Utforsk denne CD" IDS_TOPIC_BUTTON1 "&Utforsk denne CD"
IDS_TOPICBUTTON2 "&Avslutt" IDS_TOPIC_BUTTON2 "&Avslutt"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Innstaller ReactOS" IDS_TOPIC_TITLE0 "Innstaller ReactOS"
IDS_TOPICTITLE1 "Utforsk denne CD" IDS_TOPIC_TITLE1 "Utforsk denne CD"
IDS_TOPICTITLE2 "Avslutt" IDS_TOPIC_TITLE2 "Avslutt"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Opprett en ny ReactOS innstallasjon på din datamaskin eller oppgrader eksisterende innstallasjon." IDS_TOPIC_DESC0 "Opprett en ny ReactOS innstallasjon på din datamaskin eller oppgrader eksisterende innstallasjon."
IDS_TOPICDESC1 "Utforsk CDen." IDS_TOPIC_DESC1 "Utforsk CDen."
IDS_TOPICDESC2 "Trykk avslutt for å avslutte denne applikasjonen." IDS_TOPIC_DESC2 "Trykk avslutt for å avslutte denne applikasjonen."
END END

View file

@ -12,8 +12,8 @@ LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Zapraszamy" IDS_APPTITLE "ReactOS - Zapraszamy"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Witaj w systemie operacyjnym ReactOS.\n\nWybierz temat po lewej." IDS_DEFAULT_TOPIC_DESC "Witaj w systemie operacyjnym ReactOS.\n\nWybierz temat po lewej."
IDS_CHECKTEXT "&Pokaż ten dialog ponownie" IDS_CHECKTEXT "&Pokaż ten dialog ponownie"
IDS_CLOSETEXT "&Wyjście" IDS_CLOSETEXT "&Wyjście"
@ -22,23 +22,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Zainstaluj ReactOS" IDS_TOPIC_BUTTON0 "&Zainstaluj ReactOS"
IDS_TOPICBUTTON1 "Przeglądaj &CD" IDS_TOPIC_BUTTON1 "Przeglądaj &CD"
IDS_TOPICBUTTON2 "&Wyjście" IDS_TOPIC_BUTTON2 "&Wyjście"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Zainstaluj ReactOS" IDS_TOPIC_TITLE0 "Zainstaluj ReactOS"
IDS_TOPICTITLE1 "Przeglądaj CD" IDS_TOPIC_TITLE1 "Przeglądaj CD"
IDS_TOPICTITLE2 "Wyjście" IDS_TOPIC_TITLE2 "Wyjście"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Utwórz nową instalację ReactOS na komputerze lub aktualizuj już istniejącą." IDS_TOPIC_DESC0 "Utwórz nową instalację ReactOS na komputerze lub aktualizuj już istniejącą."
IDS_TOPICDESC1 "Przeglądaj CD." IDS_TOPIC_DESC1 "Przeglądaj CD."
IDS_TOPICDESC2 "Kliknij, aby zakończyć aplikację." IDS_TOPIC_DESC2 "Kliknij, aby zakończyć aplikację."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Bem vindo" IDS_APPTITLE "ReactOS - Bem vindo"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Bem vindo ao Sistema Operacional ReactOS.\n\nClique em um tópico à esquerda." IDS_DEFAULT_TOPIC_DESC "Bem vindo ao Sistema Operacional ReactOS.\n\nClique em um tópico à esquerda."
IDS_CHECKTEXT "&Exibir este diálogo novamente" IDS_CHECKTEXT "&Exibir este diálogo novamente"
IDS_CLOSETEXT "&Sair" IDS_CLOSETEXT "&Sair"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Instalar ReactOS" IDS_TOPIC_BUTTON0 "&Instalar ReactOS"
IDS_TOPICBUTTON1 "Examinar este &CD" IDS_TOPIC_BUTTON1 "Examinar este &CD"
IDS_TOPICBUTTON2 "&Sair" IDS_TOPIC_BUTTON2 "&Sair"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Instalar ReactOS" IDS_TOPIC_TITLE0 "Instalar ReactOS"
IDS_TOPICTITLE1 "Examinar este CD" IDS_TOPIC_TITLE1 "Examinar este CD"
IDS_TOPICTITLE2 "Sair" IDS_TOPIC_TITLE2 "Sair"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Cria uma nova instalação do ReactOS em seu computador ou atualiza uma instalação já existente." IDS_TOPIC_DESC0 "Cria uma nova instalação do ReactOS em seu computador ou atualiza uma instalação já existente."
IDS_TOPICDESC1 "Exibe os arquivos contidos no CD." IDS_TOPIC_DESC1 "Exibe os arquivos contidos no CD."
IDS_TOPICDESC2 "Clique para fechar este aplicativo." IDS_TOPIC_DESC2 "Clique para fechar este aplicativo."
END END

View file

@ -13,8 +13,8 @@ LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Bun venit" IDS_APPTITLE "ReactOS - Bun venit"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Bun venit în Sistemul de Operare ReactOS.\n\nAlegeți o opțiune din stânga." IDS_DEFAULT_TOPIC_DESC "Bun venit în Sistemul de Operare ReactOS.\n\nAlegeți o opțiune din stânga."
IDS_CHECKTEXT "&Afișează acest dialog și altă dată" IDS_CHECKTEXT "&Afișează acest dialog și altă dată"
IDS_CLOSETEXT "&Ieșire" IDS_CLOSETEXT "&Ieșire"
@ -23,23 +23,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "Instalare &ReactOS" IDS_TOPIC_BUTTON0 "Instalare &ReactOS"
IDS_TOPICBUTTON1 "&Explorare CD" IDS_TOPIC_BUTTON1 "&Explorare CD"
IDS_TOPICBUTTON2 "&Ieșire" IDS_TOPIC_BUTTON2 "&Ieșire"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Instalare ReactOS" IDS_TOPIC_TITLE0 "Instalare ReactOS"
IDS_TOPICTITLE1 "Explorare CD" IDS_TOPIC_TITLE1 "Explorare CD"
IDS_TOPICTITLE2 "Ieșire" IDS_TOPIC_TITLE2 "Ieșire"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Creați o instalare nouă sau actualizați o instalare existentă." IDS_TOPIC_DESC0 "Creați o instalare nouă sau actualizați o instalare existentă."
IDS_TOPICDESC1 "Explorați conținutul acestui CD." IDS_TOPIC_DESC1 "Explorați conținutul acestui CD."
IDS_TOPICDESC2 "Apăsați pentru a ieși din aplicație." IDS_TOPIC_DESC2 "Apăsați pentru a ieși din aplicație."
END END

View file

@ -6,8 +6,8 @@ LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Добро пожаловать!" IDS_APPTITLE "ReactOS - Добро пожаловать!"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Добро пожаловать в ReactOS.\n\nВыберите пункт слева." IDS_DEFAULT_TOPIC_DESC "Добро пожаловать в ReactOS.\n\nВыберите пункт слева."
IDS_CHECKTEXT "&Показывать это окно снова" IDS_CHECKTEXT "&Показывать это окно снова"
IDS_CLOSETEXT "&Выход" IDS_CLOSETEXT "&Выход"
@ -16,23 +16,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Установить ReactOS" IDS_TOPIC_BUTTON0 "&Установить ReactOS"
IDS_TOPICBUTTON1 "&Обзор диска" IDS_TOPIC_BUTTON1 "&Обзор диска"
IDS_TOPICBUTTON2 "&Выход" IDS_TOPIC_BUTTON2 "&Выход"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Установить ReactOS" IDS_TOPIC_TITLE0 "Установить ReactOS"
IDS_TOPICTITLE1 "Обзор диска" IDS_TOPIC_TITLE1 "Обзор диска"
IDS_TOPICTITLE2 "Выход" IDS_TOPIC_TITLE2 "Выход"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Установит ReactOS на Ваш компьютер с нуля или обновит уже установленную версию." IDS_TOPIC_DESC0 "Установит ReactOS на Ваш компьютер с нуля или обновит уже установленную версию."
IDS_TOPICDESC1 "Обзор диска." IDS_TOPIC_DESC1 "Обзор диска."
IDS_TOPICDESC2 "Выберите для выхода из этого приложения." IDS_TOPIC_DESC2 "Выберите для выхода из этого приложения."
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Vitajte" IDS_APPTITLE "ReactOS - Vitajte"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Vitajte v operačnom systéme ReactOS.\n\nKliknite na tlačidlo v ľavom stĺpci." IDS_DEFAULT_TOPIC_DESC "Vitajte v operačnom systéme ReactOS.\n\nKliknite na tlačidlo v ľavom stĺpci."
IDS_CHECKTEXT "&Zobraziť toto okno aj nabudúce" IDS_CHECKTEXT "&Zobraziť toto okno aj nabudúce"
IDS_CLOSETEXT "&Koniec" IDS_CLOSETEXT "&Koniec"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Inštalovať ReactOS" IDS_TOPIC_BUTTON0 "&Inštalovať ReactOS"
IDS_TOPICBUTTON1 "&Prezerať toto CD" IDS_TOPIC_BUTTON1 "&Prezerať toto CD"
IDS_TOPICBUTTON2 "&Koniec" IDS_TOPIC_BUTTON2 "&Koniec"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Inštalovať ReactOS" IDS_TOPIC_TITLE0 "Inštalovať ReactOS"
IDS_TOPICTITLE1 "Prezerať toto CD" IDS_TOPIC_TITLE1 "Prezerať toto CD"
IDS_TOPICTITLE2 "Koniec" IDS_TOPIC_TITLE2 "Koniec"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Nainštaluje ReactOS na Váš počítač alebo zaktualizuje už existujúci systém." IDS_TOPIC_DESC0 "Nainštaluje ReactOS na Váš počítač alebo zaktualizuje už existujúci systém."
IDS_TOPICDESC1 "Prezerať toto CD." IDS_TOPIC_DESC1 "Prezerať toto CD."
IDS_TOPICDESC2 "Kliknutím ukončíte tento program." IDS_TOPIC_DESC2 "Kliknutím ukončíte tento program."
END END

View file

@ -10,8 +10,8 @@ LANGUAGE LANG_ALBANIAN, SUBLANG_NEUTRAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Mirë se vini" IDS_APPTITLE "ReactOS - Mirë se vini"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Mirë se vini në Sistemin Operative ReactOS.\n\nKliko në një topik në të majtë." IDS_DEFAULT_TOPIC_DESC "Mirë se vini në Sistemin Operative ReactOS.\n\nKliko në një topik në të majtë."
IDS_CHECKTEXT "&Trego këtë dialog përsëri" IDS_CHECKTEXT "&Trego këtë dialog përsëri"
IDS_CLOSETEXT "&Dil" IDS_CLOSETEXT "&Dil"
@ -20,23 +20,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Instalo ReactOS" IDS_TOPIC_BUTTON0 "&Instalo ReactOS"
IDS_TOPICBUTTON1 "&Shfleto këtë CD" IDS_TOPIC_BUTTON1 "&Shfleto këtë CD"
IDS_TOPICBUTTON2 "&Dil" IDS_TOPIC_BUTTON2 "&Dil"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Instalo ReactOS" IDS_TOPIC_TITLE0 "Instalo ReactOS"
IDS_TOPICTITLE1 "Shfleto këtë CD" IDS_TOPIC_TITLE1 "Shfleto këtë CD"
IDS_TOPICTITLE2 "Dil" IDS_TOPIC_TITLE2 "Dil"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Krijo një instalim ose përmirësim të ReactOS'it në instalimin ekzistues në kompjuterin tuaj." IDS_TOPIC_DESC0 "Krijo një instalim ose përmirësim të ReactOS'it në instalimin ekzistues në kompjuterin tuaj."
IDS_TOPICDESC1 "Shfleto këtë CD." IDS_TOPIC_DESC1 "Shfleto këtë CD."
IDS_TOPICDESC2 "Kliko për të dalë nga ky program." IDS_TOPIC_DESC2 "Kliko për të dalë nga ky program."
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Välkommen" IDS_APPTITLE "ReactOS - Välkommen"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Välkommen till ReactOS Operating System.\n\nKlicka på ett avsnitt till vänster." IDS_DEFAULT_TOPIC_DESC "Välkommen till ReactOS Operating System.\n\nKlicka på ett avsnitt till vänster."
IDS_CHECKTEXT "&Show this dialog again" IDS_CHECKTEXT "&Show this dialog again"
IDS_CLOSETEXT "&Avsluta" IDS_CLOSETEXT "&Avsluta"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&Installera ReactOS" IDS_TOPIC_BUTTON0 "&Installera ReactOS"
IDS_TOPICBUTTON1 "&Utforska skivan" IDS_TOPIC_BUTTON1 "&Utforska skivan"
IDS_TOPICBUTTON2 "&Avsluta" IDS_TOPIC_BUTTON2 "&Avsluta"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Installera ReactOS" IDS_TOPIC_TITLE0 "Installera ReactOS"
IDS_TOPICTITLE1 "Utforska skivan" IDS_TOPIC_TITLE1 "Utforska skivan"
IDS_TOPICTITLE2 "Avsluta" IDS_TOPIC_TITLE2 "Avsluta"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Skapa en ny ReactOS installation på den här datorn eller uppgradera en befintlig." IDS_TOPIC_DESC0 "Skapa en ny ReactOS installation på den här datorn eller uppgradera en befintlig."
IDS_TOPICDESC1 "Utforska skivan." IDS_TOPIC_DESC1 "Utforska skivan."
IDS_TOPICDESC2 "Avsluta det här programmet." IDS_TOPIC_DESC2 "Avsluta det här programmet."
END END

View file

@ -13,8 +13,8 @@ LANGUAGE LANG_THAI, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - ยินดีต้อนรับ" IDS_APPTITLE "ReactOS - ยินดีต้อนรับ"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "ยินดีต้อนรับสู่ระบบปฏิบัติการ ReactOS \n\nกดเลือกเนื้อหาบนแถบซ้ายมือ" IDS_DEFAULT_TOPIC_DESC "ยินดีต้อนรับสู่ระบบปฏิบัติการ ReactOS \n\nกดเลือกเนื้อหาบนแถบซ้ายมือ"
IDS_CHECKTEXT "แสดงคำแนะนำอีกครั้ง" IDS_CHECKTEXT "แสดงคำแนะนำอีกครั้ง"
IDS_CLOSETEXT "ออกจากโปรแกรม" IDS_CLOSETEXT "ออกจากโปรแกรม"
@ -23,23 +23,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "ติดตั้ง ReactOS" IDS_TOPIC_BUTTON0 "ติดตั้ง ReactOS"
IDS_TOPICBUTTON1 "ดูรายละเอียดของแผ่นซีดีนี้" IDS_TOPIC_BUTTON1 "ดูรายละเอียดของแผ่นซีดีนี้"
IDS_TOPICBUTTON2 "ออกจากโปรแกรม" IDS_TOPIC_BUTTON2 "ออกจากโปรแกรม"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "ติดตั้ง ReactOS" IDS_TOPIC_TITLE0 "ติดตั้ง ReactOS"
IDS_TOPICTITLE1 "ดูรายละเอียดของแผ่นซีดีนี้" IDS_TOPIC_TITLE1 "ดูรายละเอียดของแผ่นซีดีนี้"
IDS_TOPICTITLE2 "ออกจากโปรแกรม" IDS_TOPIC_TITLE2 "ออกจากโปรแกรม"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "คุณต้องการติดตั้ง ReactOS ลงในเครื่องคอมพิวเตอร์ของคุณ\n\nหรือต้องการปรับแต่งเพิ่มเติมจากที่มีอยู่เดิม." IDS_TOPIC_DESC0 "คุณต้องการติดตั้ง ReactOS ลงในเครื่องคอมพิวเตอร์ของคุณ\n\nหรือต้องการปรับแต่งเพิ่มเติมจากที่มีอยู่เดิม."
IDS_TOPICDESC1 "ดูรายละเอียดของแผ่นซีดีนี้." IDS_TOPIC_DESC1 "ดูรายละเอียดของแผ่นซีดีนี้."
IDS_TOPICDESC2 "กดเลือกที่นี่เพื่อต้องการออกจากการติดตั้ง." IDS_TOPIC_DESC2 "กดเลือกที่นี่เพื่อต้องการออกจากการติดตั้ง."
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Hoş Geldiniz" IDS_APPTITLE "ReactOS - Hoş Geldiniz"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "ReactOS İşletim Dizgesi'ne hoş geldiniz.\n\nSolda bir konuya tıklayınız." IDS_DEFAULT_TOPIC_DESC "ReactOS İşletim Dizgesi'ne hoş geldiniz.\n\nSolda bir konuya tıklayınız."
IDS_CHECKTEXT "&Bu iletiyi yine göster." IDS_CHECKTEXT "&Bu iletiyi yine göster."
IDS_CLOSETEXT "&Çıkış" IDS_CLOSETEXT "&Çıkış"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "&ReactOS'u Kur" IDS_TOPIC_BUTTON0 "&ReactOS'u Kur"
IDS_TOPICBUTTON1 "Bu &CD'yi Araştır" IDS_TOPIC_BUTTON1 "Bu &CD'yi Araştır"
IDS_TOPICBUTTON2 "&Çıkış" IDS_TOPIC_BUTTON2 "&Çıkış"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "ReactOS'u Kur" IDS_TOPIC_TITLE0 "ReactOS'u Kur"
IDS_TOPICTITLE1 "Bu CD'yi Araştır" IDS_TOPIC_TITLE1 "Bu CD'yi Araştır"
IDS_TOPICTITLE2 "Çıkış" IDS_TOPIC_TITLE2 "Çıkış"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Bilgisayarınıza yeni bir ReactOS yükleyiniz ya da var olan bir yüklemeyi yükseltiniz." IDS_TOPIC_DESC0 "Bilgisayarınıza yeni bir ReactOS yükleyiniz ya da var olan bir yüklemeyi yükseltiniz."
IDS_TOPICDESC1 "CD'yi araştır." IDS_TOPIC_DESC1 "CD'yi araştır."
IDS_TOPICDESC2 "Bu uygulamadan çıkmak için tıklayınız." IDS_TOPIC_DESC2 "Bu uygulamadan çıkmak için tıklayınız."
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - Ласкаво просимо" IDS_APPTITLE "ReactOS - Ласкаво просимо"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "Ласкаво просимо до операційної системи ReactOS.\n\nКлацніть по темі ліворуч" IDS_DEFAULT_TOPIC_DESC "Ласкаво просимо до операційної системи ReactOS.\n\nКлацніть по темі ліворуч"
IDS_CHECKTEXT "&Показувати цей діалог знов" IDS_CHECKTEXT "&Показувати цей діалог знов"
IDS_CLOSETEXT "&Вихід" IDS_CLOSETEXT "&Вихід"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "Встановлення &ReactOS" IDS_TOPIC_BUTTON0 "Встановлення &ReactOS"
IDS_TOPICBUTTON1 "&Огляд цього CD" IDS_TOPIC_BUTTON1 "&Огляд цього CD"
IDS_TOPICBUTTON2 "&Вихід" IDS_TOPIC_BUTTON2 "&Вихід"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "Встановлення ReactOS" IDS_TOPIC_TITLE0 "Встановлення ReactOS"
IDS_TOPICTITLE1 "Огляд цього CD" IDS_TOPIC_TITLE1 "Огляд цього CD"
IDS_TOPICTITLE2 "Вихід" IDS_TOPIC_TITLE2 "Вихід"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "Створення нової інсталяції ReactOS на Вашому комп'ютері чи оновлення існуючої інсталяції." IDS_TOPIC_DESC0 "Створення нової інсталяції ReactOS на Вашому комп'ютері чи оновлення існуючої інсталяції."
IDS_TOPICDESC1 "Проглянути CD." IDS_TOPIC_DESC1 "Проглянути CD."
IDS_TOPICDESC2 "Натисніть для виходу з цієї програми." IDS_TOPIC_DESC2 "Натисніть для виходу з цієї програми."
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - 欢迎" IDS_APPTITLE "ReactOS - 欢迎"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "欢迎使用 ReactOS 操作系统。\n\n 请点击左边的主题。" IDS_DEFAULT_TOPIC_DESC "欢迎使用 ReactOS 操作系统。\n\n 请点击左边的主题。"
IDS_CHECKTEXT "&Show this dialog again" IDS_CHECKTEXT "&Show this dialog again"
IDS_CLOSETEXT "退出(&Q)" IDS_CLOSETEXT "退出(&Q)"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "安装 &ReactOS" IDS_TOPIC_BUTTON0 "安装 &ReactOS"
IDS_TOPICBUTTON1 "浏览 &CD" IDS_TOPIC_BUTTON1 "浏览 &CD"
IDS_TOPICBUTTON2 "退出(&Q)" IDS_TOPIC_BUTTON2 "退出(&Q)"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "安装 ReactOS" IDS_TOPIC_TITLE0 "安装 ReactOS"
IDS_TOPICTITLE1 "浏览 CD" IDS_TOPIC_TITLE1 "浏览 CD"
IDS_TOPICTITLE2 "退出" IDS_TOPIC_TITLE2 "退出"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "重新安装 ReactOS 或 更新你的ReactOS 。" IDS_TOPIC_DESC0 "重新安装 ReactOS 或 更新你的ReactOS 。"
IDS_TOPICDESC1 "浏览 CD 的内容。" IDS_TOPIC_DESC1 "浏览 CD 的内容。"
IDS_TOPICDESC2 "点击退出应用程序。" IDS_TOPIC_DESC2 "点击退出应用程序。"
END END

View file

@ -8,8 +8,8 @@ LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_APPTITLE "ReactOS - 歡迎" IDS_APPTITLE "ReactOS - 歡迎"
IDS_DEFAULTTOPICTITLE "ReactOS" IDS_DEFAULT_TOPIC_TITLE "ReactOS"
IDS_DEFAULTTOPICDESC "歡迎使用 ReactOS 作業系統。\n\n 請點選左邊的主題。" IDS_DEFAULT_TOPIC_DESC "歡迎使用 ReactOS 作業系統。\n\n 請點選左邊的主題。"
IDS_CHECKTEXT "&Show this dialog again" IDS_CHECKTEXT "&Show this dialog again"
IDS_CLOSETEXT "退出(&Q)" IDS_CLOSETEXT "退出(&Q)"
@ -18,23 +18,23 @@ END
/* Topic buttons */ /* Topic buttons */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICBUTTON0 "安裝 &ReactOS" IDS_TOPIC_BUTTON0 "安裝 &ReactOS"
IDS_TOPICBUTTON1 "瀏覽 &CD" IDS_TOPIC_BUTTON1 "瀏覽 &CD"
IDS_TOPICBUTTON2 "退出(&Q)" IDS_TOPIC_BUTTON2 "退出(&Q)"
END END
/* Topic titles */ /* Topic titles */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICTITLE0 "安裝 ReactOS" IDS_TOPIC_TITLE0 "安裝 ReactOS"
IDS_TOPICTITLE1 "瀏覽 CD" IDS_TOPIC_TITLE1 "瀏覽 CD"
IDS_TOPICTITLE2 "退出" IDS_TOPIC_TITLE2 "退出"
END END
/* Topic descriptions */ /* Topic descriptions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICDESC0 "重新安裝 ReactOS 或 更新你的ReactOS 。" IDS_TOPIC_DESC0 "重新安裝 ReactOS 或 更新你的ReactOS 。"
IDS_TOPICDESC1 "瀏覽 CD 的內容。" IDS_TOPIC_DESC1 "瀏覽 CD 的內容。"
IDS_TOPICDESC2 "點選退出應用程式。" IDS_TOPIC_DESC2 "點選退出應用程式。"
END END

View file

@ -6,39 +6,43 @@
/* Strings */ /* Strings */
#define IDS_APPTITLE 1000 #define IDS_APPTITLE 1000
#define IDS_DEFAULTTOPICTITLE 1001 #define IDS_DEFAULT_TOPIC_TITLE 1001
#define IDS_DEFAULTTOPICDESC 1002 #define IDS_DEFAULT_TOPIC_DESC 1002
#define IDS_FONTNAME 1003 #define IDS_FONTNAME 1003
#define IDS_CHECKTEXT 1004 #define IDS_CHECKTEXT 1004
#define IDS_CLOSETEXT 1005 #define IDS_CLOSETEXT 1005
#define IDS_TOPICBUTTON0 1010 #define IDS_TOPIC_BUTTON0 1010
#define IDS_TOPICBUTTON1 1011 #define IDS_TOPIC_BUTTON1 1011
#define IDS_TOPICBUTTON2 1012 #define IDS_TOPIC_BUTTON2 1012
#define IDS_TOPICTITLE0 1020 #define IDS_TOPIC_TITLE0 1020
#define IDS_TOPICTITLE1 1021 #define IDS_TOPIC_TITLE1 1021
#define IDS_TOPICTITLE2 1022 #define IDS_TOPIC_TITLE2 1022
#define IDS_TOPICDESC0 1030 #define IDS_TOPIC_DESC0 1030
#define IDS_TOPICDESC1 1031 #define IDS_TOPIC_DESC1 1031
#define IDS_TOPICDESC2 1032 #define IDS_TOPIC_DESC2 1032
#define IDS_TOPICACTION0 1040 #define IDS_TOPIC_COMMAND0 1040
#define IDS_TOPICACTION1 1041 #define IDS_TOPIC_COMMAND1 1041
#define IDS_TOPICACTION2 1042 #define IDS_TOPIC_COMMAND2 1042 // Unused
// #define IDS_TOPICOPTION0 1050 #define IDS_TOPIC_CMD_ARGS0 1050 // Unused
// #define IDS_TOPICOPTION1 1051 #define IDS_TOPIC_CMD_ARGS1 1051 // Unused
// #define IDS_TOPICOPTION2 1052 #define IDS_TOPIC_CMD_ARGS2 1052 // Unused
#define IDS_TOPIC_ACTION0 1060 // Unused
#define IDS_TOPIC_ACTION1 1061 // Unused
#define IDS_TOPIC_ACTION2 1062
/* Bitmaps */ /* Bitmaps */
#define IDB_TITLEBITMAP 101 #define IDB_TITLE_BITMAP 101
#define IDB_DEFAULTTOPICBITMAP 102 #define IDB_DEFAULT_TOPIC_BITMAP 102
// #define IDB_TOPICBITMAP0 110 // #define IDB_TOPIC_BITMAP0 110
// #define IDB_TOPICBITMAP1 111 // #define IDB_TOPIC_BITMAP1 111
// #define IDB_TOPICBITMAP2 112 // #define IDB_TOPIC_BITMAP2 112
/* Icons */ /* Icons */
#define IDI_MAIN 3000 #define IDI_MAIN 3000

View file

@ -18,7 +18,7 @@
*/ */
/* /*
* COPYRIGHT: See COPYING in the top level directory * COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS welcome/autorun application * PROJECT: ReactOS "Welcome"/AutoRun application
* FILE: base/setup/welcome/welcome.c * FILE: base/setup/welcome/welcome.c
* PROGRAMMERS: Eric Kohl * PROGRAMMERS: Eric Kohl
* Casper S. Hornstrup (chorns@users.sourceforge.net) * Casper S. Hornstrup (chorns@users.sourceforge.net)
@ -40,7 +40,7 @@
#include <shellapi.h> #include <shellapi.h>
#include <strsafe.h> #include <strsafe.h>
#include <reactos/version.h> #include <reactos/buildno.h>
#include "resource.h" #include "resource.h"
@ -62,7 +62,7 @@ HWND hWndMain = NULL;
HWND hWndCheckButton = NULL; HWND hWndCheckButton = NULL;
HWND hWndCloseButton = NULL; HWND hWndCloseButton = NULL;
BOOL bDisplayCheckBox = FALSE; // FIXME: We should also repaint the OS version correctly! BOOL bDisplayCheckBox = FALSE;
BOOL bDisplayExitBtn = TRUE; BOOL bDisplayExitBtn = TRUE;
#define BUFFER_SIZE 1024 #define BUFFER_SIZE 1024
@ -74,10 +74,18 @@ typedef struct _TOPIC
{ {
HBITMAP hBitmap; HBITMAP hBitmap;
HWND hWndButton; HWND hWndButton;
/*
* TRUE : szCommand contains a command (e.g. executable to run);
* FALSE: szCommand contains a custom "Welcome"/AutoRun action.
*/
BOOL bIsCommand;
TCHAR szText[80]; TCHAR szText[80];
TCHAR szTitle[TOPIC_TITLE_LENGTH]; TCHAR szTitle[TOPIC_TITLE_LENGTH];
TCHAR szDesc[TOPIC_DESC_LENGTH]; TCHAR szDesc[TOPIC_DESC_LENGTH];
TCHAR szAction[512]; TCHAR szCommand[512];
TCHAR szArgs[512];
} TOPIC, *PTOPIC; } TOPIC, *PTOPIC;
DWORD dwNumberTopics = 0; DWORD dwNumberTopics = 0;
@ -202,6 +210,174 @@ VOID TranslateEscapes(IN OUT LPTSTR lpString)
} }
} }
VOID InitializeTopicList(VOID)
{
dwNumberTopics = 0;
pTopics = NULL;
}
PTOPIC AddNewTopic(VOID)
{
PTOPIC pTopic, *pTopicsTmp;
/* Allocate (or reallocate) the list of topics */
if (!pTopics)
pTopicsTmp = HeapAlloc(GetProcessHeap(), 0, (dwNumberTopics + 1) * sizeof(*pTopics));
else
pTopicsTmp = HeapReAlloc(GetProcessHeap(), 0, pTopics, (dwNumberTopics + 1) * sizeof(*pTopics));
if (!pTopicsTmp)
return NULL; // Cannot reallocate more
pTopics = pTopicsTmp;
/* Allocate a new topic entry */
pTopic = HeapAlloc(GetProcessHeap(), 0, sizeof(*pTopic));
if (!pTopic)
return NULL; // Cannot reallocate more
pTopics[dwNumberTopics++] = pTopic;
/* Return the allocated topic entry */
return pTopic;
}
PTOPIC AddNewTopicEx(
IN LPTSTR szText OPTIONAL,
IN LPTSTR szTitle OPTIONAL,
IN LPTSTR szDesc OPTIONAL,
IN LPTSTR szCommand OPTIONAL,
IN LPTSTR szArgs OPTIONAL,
IN LPTSTR szAction OPTIONAL)
{
PTOPIC pTopic = AddNewTopic();
if (!pTopic)
return NULL;
if (szText && *szText)
StringCchCopy(pTopic->szText, ARRAYSIZE(pTopic->szText), szText);
else
*pTopic->szText = 0;
if (szTitle && *szTitle)
StringCchCopy(pTopic->szTitle, ARRAYSIZE(pTopic->szTitle), szTitle);
else
*pTopic->szTitle = 0;
if (szDesc && *szDesc)
{
StringCchCopy(pTopic->szDesc, ARRAYSIZE(pTopic->szDesc), szDesc);
TranslateEscapes(pTopic->szDesc);
}
else
{
*pTopic->szDesc = 0;
}
if (szCommand && *szCommand)
{
pTopic->bIsCommand = TRUE;
StringCchCopy(pTopic->szCommand, ARRAYSIZE(pTopic->szCommand), szCommand);
}
else
{
pTopic->bIsCommand = FALSE;
*pTopic->szCommand = 0;
}
/* Only care about command arguments if we actually have a command */
if (*pTopic->szCommand)
{
if (szArgs && *szArgs)
{
StringCchCopy(pTopic->szArgs, ARRAYSIZE(pTopic->szArgs), szArgs);
}
else
{
/* Check for special applications: ReactOS Shell */
if (/* pTopic->szCommand && */ *pTopic->szCommand &&
_tcsicmp(pTopic->szCommand, TEXT("explorer.exe")) == 0)
{
#if 0
TCHAR CurrentDir[MAX_PATH];
GetCurrentDirectory(ARRAYSIZE(CurrentDir), CurrentDir);
#endif
StringCchCopy(pTopic->szArgs, ARRAYSIZE(pTopic->szArgs), TEXT("\\"));
}
else
{
*pTopic->szArgs = 0;
}
}
}
else
{
*pTopic->szArgs = 0;
}
/* Only care about custom actions if we actually don't have a command */
if (!*pTopic->szCommand && szAction && *szAction)
{
/*
* Re-use the pTopic->szCommand member. We distinguish with respect to
* a regular command by using the pTopic->bIsCommand flag.
*/
pTopic->bIsCommand = FALSE;
StringCchCopy(pTopic->szCommand, ARRAYSIZE(pTopic->szCommand), szAction);
TranslateEscapes(pTopic->szCommand);
}
return pTopic;
}
static VOID
LoadLocalizedResourcesInternal(VOID)
{
#define MAX_NUMBER_INTERNAL_TOPICS 3
UINT i;
LPTSTR lpszCommand, lpszAction;
TOPIC newTopic, *pTopic;
for (i = 0; i < MAX_NUMBER_INTERNAL_TOPICS; ++i)
{
lpszCommand = NULL, lpszAction = NULL;
/* Retrieve the information */
if (!LoadString(hInstance, IDS_TOPIC_BUTTON0 + i, newTopic.szText, ARRAYSIZE(newTopic.szText)))
*newTopic.szText = 0;
if (!LoadString(hInstance, IDS_TOPIC_TITLE0 + i, newTopic.szTitle, ARRAYSIZE(newTopic.szTitle)))
*newTopic.szTitle = 0;
if (!LoadString(hInstance, IDS_TOPIC_DESC0 + i, newTopic.szDesc, ARRAYSIZE(newTopic.szDesc)))
*newTopic.szDesc = 0;
if (!LoadString(hInstance, IDS_TOPIC_COMMAND0 + i, newTopic.szCommand, ARRAYSIZE(newTopic.szCommand)))
*newTopic.szCommand = 0;
/* Only care about command arguments if we actually have a command */
if (*newTopic.szCommand)
{
lpszCommand = newTopic.szCommand;
if (!LoadString(hInstance, IDS_TOPIC_CMD_ARGS0 + i, newTopic.szArgs, ARRAYSIZE(newTopic.szArgs)))
*newTopic.szArgs = 0;
}
/* Only care about custom actions if we actually don't have a command */
else // if (!*newTopic.szCommand)
{
lpszAction = newTopic.szCommand;
if (!LoadString(hInstance, IDS_TOPIC_ACTION0 + i, newTopic.szCommand, ARRAYSIZE(newTopic.szCommand)))
*newTopic.szCommand = 0;
}
/* Allocate a new topic */
pTopic = AddNewTopicEx(newTopic.szText,
newTopic.szTitle,
newTopic.szDesc,
lpszCommand,
newTopic.szArgs,
lpszAction);
if (!pTopic)
break; // Cannot reallocate more
}
}
static BOOL static BOOL
LoadLocalizedResourcesFromINI(LCID Locale, LPTSTR lpResPath) LoadLocalizedResourcesFromINI(LCID Locale, LPTSTR lpResPath)
{ {
@ -210,7 +386,8 @@ LoadLocalizedResourcesFromINI(LCID Locale, LPTSTR lpResPath)
TCHAR szBuffer[LOCALE_NAME_MAX_LENGTH]; TCHAR szBuffer[LOCALE_NAME_MAX_LENGTH];
TCHAR szIniPath[MAX_PATH]; TCHAR szIniPath[MAX_PATH];
LPTSTR lpszSections = NULL, lpszSection = NULL; LPTSTR lpszSections = NULL, lpszSection = NULL;
PTOPIC pTopic, *pTopicsTmp; LPTSTR lpszCommand, lpszAction;
TOPIC newTopic, *pTopic;
/* Retrieve the locale name (on which the INI file name is based) */ /* Retrieve the locale name (on which the INI file name is based) */
dwRet = (DWORD)GetLocaleName(Locale, szBuffer, ARRAYSIZE(szBuffer)); dwRet = (DWORD)GetLocaleName(Locale, szBuffer, ARRAYSIZE(szBuffer));
@ -221,35 +398,28 @@ LoadLocalizedResourcesFromINI(LCID Locale, LPTSTR lpResPath)
} }
/* Build the INI file name */ /* Build the INI file name */
StringCchCopy(szIniPath, ARRAYSIZE(szIniPath), lpResPath); StringCchPrintf(szIniPath, ARRAYSIZE(szIniPath),
StringCchCat(szIniPath, ARRAYSIZE(szIniPath), TEXT("\\")); TEXT("%s\\%s.ini"), lpResPath, szBuffer);
StringCchCat(szIniPath, ARRAYSIZE(szIniPath), szBuffer);
StringCchCat(szIniPath, ARRAYSIZE(szIniPath), TEXT(".ini"));
/* Verify that the file exists, otherwise fall back to english (US) */ /* Verify that the file exists, otherwise fall back to english (US) */
if (GetFileAttributes(szIniPath) == INVALID_FILE_ATTRIBUTES) if (GetFileAttributes(szIniPath) == INVALID_FILE_ATTRIBUTES)
{ {
StringCchCopy(szBuffer, ARRAYSIZE(szBuffer), TEXT("en-US")); StringCchCopy(szBuffer, ARRAYSIZE(szBuffer), TEXT("en-US"));
StringCchCopy(szIniPath, ARRAYSIZE(szIniPath), lpResPath); StringCchPrintf(szIniPath, ARRAYSIZE(szIniPath),
StringCchCat(szIniPath, ARRAYSIZE(szIniPath), TEXT("\\")); TEXT("%s\\%s.ini"), lpResPath, szBuffer);
StringCchCat(szIniPath, ARRAYSIZE(szIniPath), szBuffer);
StringCchCat(szIniPath, ARRAYSIZE(szIniPath), TEXT(".ini"));
} }
/* Verify that the file exists, otherwise fall back to internal (localized) resource */ /* Verify that the file exists, otherwise fall back to internal (localized) resource */
if (GetFileAttributes(szIniPath) == INVALID_FILE_ATTRIBUTES) if (GetFileAttributes(szIniPath) == INVALID_FILE_ATTRIBUTES)
return FALSE; // TODO: For localized resource, see the general function. return FALSE; // For localized resources, see the general function.
/* Try to load the default localized strings */ /* Try to load the default localized strings */
GetPrivateProfileString(TEXT("Defaults"), TEXT("AppTitle"), TEXT("ReactOS Welcome") /* default */, GetPrivateProfileString(TEXT("Defaults"), TEXT("AppTitle"), TEXT("ReactOS - Welcome") /* default */,
szAppTitle, ARRAYSIZE(szAppTitle), szIniPath); szAppTitle, ARRAYSIZE(szAppTitle), szIniPath);
if (!GetPrivateProfileString(TEXT("Defaults"), TEXT("DefaultTopicTitle"), NULL /* default */, GetPrivateProfileString(TEXT("Defaults"), TEXT("DefaultTopicTitle"), TEXT("") /* default */,
szDefaultTitle, ARRAYSIZE(szDefaultTitle), szIniPath)) szDefaultTitle, ARRAYSIZE(szDefaultTitle), szIniPath);
{ if (!GetPrivateProfileString(TEXT("Defaults"), TEXT("DefaultTopicDescription"), TEXT("") /* default */,
*szDefaultTitle = 0;
}
if (!GetPrivateProfileString(TEXT("Defaults"), TEXT("DefaultTopicDescription"), NULL /* default */,
szDefaultDesc, ARRAYSIZE(szDefaultDesc), szIniPath)) szDefaultDesc, ARRAYSIZE(szDefaultDesc), szIniPath))
{ {
*szDefaultDesc = 0; *szDefaultDesc = 0;
@ -271,60 +441,51 @@ LoadLocalizedResourcesFromINI(LCID Locale, LPTSTR lpResPath)
HeapFree(GetProcessHeap(), 0, lpszSections); HeapFree(GetProcessHeap(), 0, lpszSections);
} }
dwNumberTopics = 0;
pTopics = NULL;
/* Loop over the sections and load the topics */ /* Loop over the sections and load the topics */
lpszSection = lpszSections; lpszSection = lpszSections;
for (; lpszSection && *lpszSection; lpszSection += (_tcslen(lpszSection) + 1)) for (; lpszSection && *lpszSection; lpszSection += (_tcslen(lpszSection) + 1))
{ {
if (_tcsnicmp(lpszSection, TEXT("Topic"), 5) == 0) /* Ignore everything that is not a topic */
if (_tcsnicmp(lpszSection, TEXT("Topic"), 5) != 0)
continue;
lpszCommand = NULL, lpszAction = NULL;
/* Retrieve the information */
GetPrivateProfileString(lpszSection, TEXT("MenuText"), TEXT("") /* default */,
newTopic.szText, ARRAYSIZE(newTopic.szText), szIniPath);
GetPrivateProfileString(lpszSection, TEXT("Title"), TEXT("") /* default */,
newTopic.szTitle, ARRAYSIZE(newTopic.szTitle), szIniPath);
GetPrivateProfileString(lpszSection, TEXT("Description"), TEXT("") /* default */,
newTopic.szDesc, ARRAYSIZE(newTopic.szDesc), szIniPath);
GetPrivateProfileString(lpszSection, TEXT("ConfigCommand"), TEXT("") /* default */,
newTopic.szCommand, ARRAYSIZE(newTopic.szCommand), szIniPath);
/* Only care about command arguments if we actually have a command */
if (*newTopic.szCommand)
{ {
/* Allocate (or reallocate) the list of topics */ lpszCommand = newTopic.szCommand;
if (!pTopics) GetPrivateProfileString(lpszSection, TEXT("ConfigArgs"), TEXT("") /* default */,
pTopicsTmp = HeapAlloc(GetProcessHeap(), 0, (dwNumberTopics + 1) * sizeof(*pTopics)); newTopic.szArgs, ARRAYSIZE(newTopic.szArgs), szIniPath);
else
pTopicsTmp = HeapReAlloc(GetProcessHeap(), 0, pTopics, (dwNumberTopics + 1) * sizeof(*pTopics));
if (!pTopicsTmp)
break; // Cannot reallocate more
pTopics = pTopicsTmp;
/* Allocate a new topic */
pTopic = HeapAlloc(GetProcessHeap(), 0, sizeof(*pTopic));
if (!pTopic)
break; // Cannot reallocate more
pTopics[dwNumberTopics++] = pTopic;
/* Retrieve the information */
if (!GetPrivateProfileString(lpszSection, TEXT("Button"), NULL /* default */,
pTopic->szText, ARRAYSIZE(pTopic->szText), szIniPath))
{
*pTopic->szText = 0;
}
if (!GetPrivateProfileString(lpszSection, TEXT("Title"), NULL /* default */,
pTopic->szTitle, ARRAYSIZE(pTopic->szTitle), szIniPath))
{
*pTopic->szTitle = 0;
}
if (!GetPrivateProfileString(lpszSection, TEXT("Description"), NULL /* default */,
pTopic->szDesc, ARRAYSIZE(pTopic->szDesc), szIniPath))
{
*pTopic->szDesc = 0;
}
else
{
TranslateEscapes(pTopic->szDesc);
}
if (!GetPrivateProfileString(lpszSection, TEXT("Action"), NULL /* default */,
pTopic->szAction, ARRAYSIZE(pTopic->szAction), szIniPath))
{
*pTopic->szAction = 0;
}
else
{
TranslateEscapes(pTopic->szAction);
}
} }
/* Only care about custom actions if we actually don't have a command */
else // if (!*newTopic.szCommand)
{
lpszAction = newTopic.szCommand;
GetPrivateProfileString(lpszSection, TEXT("Action"), TEXT("") /* default */,
newTopic.szCommand, ARRAYSIZE(newTopic.szCommand), szIniPath);
}
/* Allocate a new topic */
pTopic = AddNewTopicEx(newTopic.szText,
newTopic.szTitle,
newTopic.szDesc,
lpszCommand,
newTopic.szArgs,
lpszAction);
if (!pTopic)
break; // Cannot reallocate more
} }
HeapFree(GetProcessHeap(), 0, lpszSections); HeapFree(GetProcessHeap(), 0, lpszSections);
@ -332,62 +493,73 @@ LoadLocalizedResourcesFromINI(LCID Locale, LPTSTR lpResPath)
return TRUE; return TRUE;
} }
static BOOL static VOID
LoadLocalizedResources(LPTSTR lpResPath) LoadConfiguration(VOID)
{ {
#define MAX_NUMBER_INTERNAL_TOPICS 3 BOOL bLoadDefaultResources;
TCHAR szAppPath[MAX_PATH];
TCHAR szIniPath[MAX_PATH];
TCHAR szResPath[MAX_PATH];
UINT i; /* Initialize the topic list */
PTOPIC pTopic, *pTopicsTmp; InitializeTopicList();
dwNumberTopics = 0;
pTopics = NULL;
/* /*
* First, try to load the default internal (localized) strings. * First, try to load the default internal (localized) strings.
* They can be redefined by the localized INI files. * They can be redefined by the localized INI files.
*/ */
if (!LoadString(hInstance, IDS_APPTITLE, szAppTitle, ARRAYSIZE(szAppTitle))) if (!LoadString(hInstance, IDS_APPTITLE, szAppTitle, ARRAYSIZE(szAppTitle)))
StringCchCopy(szAppTitle, ARRAYSIZE(szAppTitle), TEXT("ReactOS Welcome")); StringCchCopy(szAppTitle, ARRAYSIZE(szAppTitle), TEXT("ReactOS - Welcome"));
if (!LoadString(hInstance, IDS_DEFAULTTOPICTITLE, szDefaultTitle, ARRAYSIZE(szDefaultTitle))) if (!LoadString(hInstance, IDS_DEFAULT_TOPIC_TITLE, szDefaultTitle, ARRAYSIZE(szDefaultTitle)))
*szDefaultTitle = 0; *szDefaultTitle = 0;
if (!LoadString(hInstance, IDS_DEFAULTTOPICDESC, szDefaultDesc, ARRAYSIZE(szDefaultDesc))) if (!LoadString(hInstance, IDS_DEFAULT_TOPIC_DESC, szDefaultDesc, ARRAYSIZE(szDefaultDesc)))
*szDefaultDesc = 0; *szDefaultDesc = 0;
/* Try to load the resources from INI file */ /* Retrieve the full path to this application */
if (*lpResPath && LoadLocalizedResourcesFromINI(LOCALE_USER_DEFAULT, lpResPath)) GetModuleFileName(NULL, szAppPath, ARRAYSIZE(szAppPath));
return TRUE; if (*szAppPath)
/* We failed, fall back to internal (localized) resource */
for (i = 0; i < MAX_NUMBER_INTERNAL_TOPICS; ++i)
{ {
/* Allocate (or reallocate) the list of topics */ LPTSTR lpFileName = _tcsrchr(szAppPath, _T('\\'));
if (!pTopics) if (lpFileName)
pTopicsTmp = HeapAlloc(GetProcessHeap(), 0, (dwNumberTopics + 1) * sizeof(*pTopics)); *lpFileName = 0;
else else
pTopicsTmp = HeapReAlloc(GetProcessHeap(), 0, pTopics, (dwNumberTopics + 1) * sizeof(*pTopics)); *szAppPath = 0;
if (!pTopicsTmp)
break; // Cannot reallocate more
pTopics = pTopicsTmp;
/* Allocate a new topic */
pTopic = HeapAlloc(GetProcessHeap(), 0, sizeof(*pTopic));
if (!pTopic)
break; // Cannot reallocate more
pTopics[dwNumberTopics++] = pTopic;
/* Retrieve the information */
if (!LoadString(hInstance, IDS_TOPICBUTTON0 + i, pTopic->szText, ARRAYSIZE(pTopic->szText)))
*pTopic->szText = 0;
if (!LoadString(hInstance, IDS_TOPICTITLE0 + i, pTopic->szTitle, ARRAYSIZE(pTopic->szTitle)))
*pTopic->szTitle = 0;
if (!LoadString(hInstance, IDS_TOPICDESC0 + i, pTopic->szDesc, ARRAYSIZE(pTopic->szDesc)))
*pTopic->szDesc = 0;
if (!LoadString(hInstance, IDS_TOPICACTION0 + i, pTopic->szAction, ARRAYSIZE(pTopic->szAction)))
*pTopic->szAction = 0;
} }
return TRUE; /* Build the full INI file path name */
StringCchPrintf(szIniPath, ARRAYSIZE(szIniPath), TEXT("%s\\welcome.ini"), szAppPath);
/* Verify that the file exists, otherwise use the default configuration */
if (GetFileAttributes(szIniPath) == INVALID_FILE_ATTRIBUTES)
{
/* Use the default internal (localized) resources */
LoadLocalizedResourcesInternal();
return;
}
/* Load the settings from the INI configuration file */
bDisplayCheckBox = !!GetPrivateProfileInt(TEXT("Welcome"), TEXT("DisplayCheckBox"), FALSE /* default */, szIniPath);
bDisplayExitBtn = !!GetPrivateProfileInt(TEXT("Welcome"), TEXT("DisplayExitButton"), TRUE /* default */, szIniPath);
/* Load the default internal (localized) resources if needed */
bLoadDefaultResources = !!GetPrivateProfileInt(TEXT("Welcome"), TEXT("LoadDefaultResources"), FALSE /* default */, szIniPath);
if (bLoadDefaultResources)
LoadLocalizedResourcesInternal();
GetPrivateProfileString(TEXT("Welcome"), TEXT("ResourceDir"), TEXT("") /* default */,
szResPath, ARRAYSIZE(szResPath), szIniPath);
/* Set the current directory to the one of this application, and retrieve the resources */
SetCurrentDirectory(szAppPath);
if (!LoadLocalizedResourcesFromINI(LOCALE_USER_DEFAULT, szResPath))
{
/*
* Loading localized resources from INI file failed, try to load the
* internal resources only if they were not already loaded earlier.
*/
if (!bLoadDefaultResources)
LoadLocalizedResourcesInternal();
}
} }
static VOID static VOID
@ -406,50 +578,6 @@ FreeResources(VOID)
dwNumberTopics = 0; dwNumberTopics = 0;
} }
static BOOL
LoadConfiguration(VOID)
{
TCHAR szAppPath[MAX_PATH];
TCHAR szIniPath[MAX_PATH];
TCHAR szResPath[MAX_PATH];
/* Retrieve the full path to this application */
GetModuleFileName(NULL, szAppPath, ARRAYSIZE(szAppPath));
if (*szAppPath)
{
LPTSTR lpFileName = _tcsrchr(szAppPath, _T('\\'));
if (lpFileName)
*lpFileName = 0;
else
*szAppPath = 0;
}
/* Build the full INI file path name */
StringCchCopy(szIniPath, ARRAYSIZE(szIniPath), szAppPath);
StringCchCat(szIniPath, ARRAYSIZE(szIniPath), TEXT("\\welcome.ini"));
/* Verify that the file exists, otherwise use the default configuration */
if (GetFileAttributes(szIniPath) == INVALID_FILE_ATTRIBUTES)
{
/* Use the default configuration and retrieve the default resources */
return LoadLocalizedResources(TEXT(""));
}
/* Load the settings from the INI configuration file */
bDisplayCheckBox = !!GetPrivateProfileInt(TEXT("Welcome"), TEXT("DisplayCheckBox"), FALSE /* default */, szIniPath);
bDisplayExitBtn = !!GetPrivateProfileInt(TEXT("Welcome"), TEXT("DisplayExitButton"), TRUE /* default */, szIniPath);
if (!GetPrivateProfileString(TEXT("Welcome"), TEXT("ResourceDir"), NULL /* default */,
szResPath, ARRAYSIZE(szResPath), szIniPath))
{
*szResPath = 0;
}
/* Set the current directory to the one of this application, and retrieve the resources */
SetCurrentDirectory(szAppPath);
return LoadLocalizedResources(szResPath);
}
#if 0 #if 0
static VOID static VOID
ShowLastWin32Error(HWND hWnd) ShowLastWin32Error(HWND hWnd)
@ -503,6 +631,22 @@ _tWinMain(HINSTANCE hInst,
UNREFERENCED_PARAMETER(hPrevInstance); UNREFERENCED_PARAMETER(hPrevInstance);
UNREFERENCED_PARAMETER(lpszCmdLine); UNREFERENCED_PARAMETER(lpszCmdLine);
/* Ensure only one instance is running */
hMutex = CreateMutex(NULL, FALSE, szWindowClass);
if (hMutex && (GetLastError() == ERROR_ALREADY_EXISTS))
{
/* If already started, find its window */
hWndMain = FindWindow(szWindowClass, NULL);
/* Activate window */
ShowWindow(hWndMain, SW_SHOWNORMAL);
SetForegroundWindow(hWndMain);
/* Close the mutex handle and quit */
CloseHandle(hMutex);
return 0;
}
switch (GetUserDefaultUILanguage()) switch (GetUserDefaultUILanguage())
{ {
case MAKELANGID(LANG_HEBREW, SUBLANG_DEFAULT): case MAKELANGID(LANG_HEBREW, SUBLANG_DEFAULT):
@ -515,27 +659,11 @@ _tWinMain(HINSTANCE hInst,
hInstance = hInst; hInstance = hInst;
/* Ensure only one instance is running */
hMutex = CreateMutexW(NULL, FALSE, szWindowClass);
if (hMutex && (GetLastError() == ERROR_ALREADY_EXISTS))
{
/* If already started, find its window */
hWndMain = FindWindowW(szWindowClass, NULL);
/* Activate window */
ShowWindow(hWndMain, SW_SHOWNORMAL);
SetForegroundWindow(hWndMain);
/* Close the mutex handle and quit */
CloseHandle(hMutex);
return 0;
}
/* Load icons */ /* Load icons */
hMainIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MAIN)); hMainIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MAIN));
/* Register the window class */ /* Register the window class */
wndclass.cbSize = sizeof(WNDCLASSEX); wndclass.cbSize = sizeof(wndclass);
wndclass.style = CS_HREDRAW | CS_VREDRAW; wndclass.style = CS_HREDRAW | CS_VREDRAW;
wndclass.lpfnWndProc = (WNDPROC)MainWndProc; wndclass.lpfnWndProc = (WNDPROC)MainWndProc;
wndclass.cbClsExtra = 0; wndclass.cbClsExtra = 0;
@ -551,10 +679,10 @@ _tWinMain(HINSTANCE hInst,
RegisterClassEx(&wndclass); RegisterClassEx(&wndclass);
/* Load the banner bitmap, and compute the window dimensions */ /* Load the banner bitmap, and compute the window dimensions */
hTitleBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_TITLEBITMAP)); hTitleBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_TITLE_BITMAP));
if (hTitleBitmap) if (hTitleBitmap)
{ {
GetObject(hTitleBitmap, sizeof(BITMAP), &BitmapInfo); GetObject(hTitleBitmap, sizeof(BitmapInfo), &BitmapInfo);
ulInnerWidth = BitmapInfo.bmWidth; ulInnerWidth = BitmapInfo.bmWidth;
ulInnerHeight = (ulInnerWidth * 3) / 4; ulInnerHeight = (ulInnerWidth * 3) / 4;
ulTitleHeight = BitmapInfo.bmHeight + 3; ulTitleHeight = BitmapInfo.bmHeight + 3;
@ -711,43 +839,37 @@ ButtonSubclassWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
static BOOL static BOOL
RunAction(INT nTopic) RunAction(INT nTopic)
{ {
// TCHAR CurrentDir[MAX_PATH]; PCWSTR Command = NULL, Args = NULL;
TCHAR Parameters[2];
TCHAR AppName[MAX_PATH];
InvalidateRect(hWndMain, NULL, TRUE);
if (nTopic < 0) if (nTopic < 0)
return TRUE; return TRUE;
// GetCurrentDirectory(ARRAYSIZE(CurrentDir), CurrentDir); Command = pTopics[nTopic]->szCommand;
if (/* !Command && */ !*Command)
StringCchCopy(AppName, ARRAYSIZE(AppName), pTopics[nTopic]->szAction);
if (!*AppName)
return TRUE; return TRUE;
if (!_tcsicmp(AppName, TEXT("<exit>"))) /* Check for known actions */
return FALSE; if (!pTopics[nTopic]->bIsCommand)
if (!_tcsnicmp(AppName, TEXT("<msg>"), 5))
{ {
MessageBox(hWndMain, AppName + 5, TEXT("ReactOS"), MB_OK | MB_TASKMODAL); if (!_tcsicmp(Command, TEXT("<exit>")))
return TRUE; return FALSE;
}
if (_tcsicmp(AppName, TEXT("explorer.exe")) == 0) if (!_tcsnicmp(Command, TEXT("<msg>"), 5))
{ {
// StringCchCat(AppName, ARRAYSIZE(AppName), TEXT(" ")); MessageBox(hWndMain, Command + 5, TEXT("ReactOS"), MB_OK | MB_TASKMODAL);
// StringCchCat(AppName, ARRAYSIZE(AppName), CurrentDir); return TRUE;
_tcscpy(Parameters, TEXT("\\")); }
} }
else else
/* Run the command */
{ {
*Parameters = 0; Args = pTopics[nTopic]->szArgs;
if (!*Args) Args = NULL;
ShellExecute(NULL, NULL,
Command, Args,
NULL, SW_SHOWDEFAULT);
} }
ShellExecute(NULL, NULL, AppName, Parameters, NULL, SW_SHOWDEFAULT);
return TRUE; return TRUE;
} }
@ -777,12 +899,13 @@ GetButtonHeight(HDC hDC,
static LRESULT static LRESULT
OnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam) OnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
{ {
TCHAR szText[80];
UINT i; UINT i;
INT nLength; INT nLength;
HDC ScreenDC; HDC ScreenDC;
LOGFONT lf;
DWORD dwTop; DWORD dwTop;
DWORD dwHeight = 0; DWORD dwHeight = 0;
TCHAR szText[80];
UNREFERENCED_PARAMETER(wParam); UNREFERENCED_PARAMETER(wParam);
UNREFERENCED_PARAMETER(lParam); UNREFERENCED_PARAMETER(lParam);
@ -790,46 +913,46 @@ OnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
hbrLightBlue = CreateSolidBrush(LIGHT_BLUE); hbrLightBlue = CreateSolidBrush(LIGHT_BLUE);
hbrDarkBlue = CreateSolidBrush(DARK_BLUE); hbrDarkBlue = CreateSolidBrush(DARK_BLUE);
ZeroMemory(&lf, sizeof(lf));
lf.lfEscapement = 0;
lf.lfOrientation = 0; // TA_BASELINE;
// lf.lfItalic = lf.lfUnderline = lf.lfStrikeOut = FALSE;
lf.lfCharSet = ANSI_CHARSET;
lf.lfOutPrecision = OUT_DEFAULT_PRECIS;
lf.lfClipPrecision = CLIP_DEFAULT_PRECIS;
lf.lfQuality = DEFAULT_QUALITY;
lf.lfPitchAndFamily = FF_DONTCARE;
StringCchCopy(lf.lfFaceName, ARRAYSIZE(lf.lfFaceName), TEXT("Tahoma"));
/* Topic title font */ /* Topic title font */
hFontTopicTitle = CreateFont(-18, 0, 0, 0, FW_NORMAL, lf.lfHeight = -18;
FALSE, FALSE, FALSE, lf.lfWidth = 0;
ANSI_CHARSET, lf.lfWeight = FW_NORMAL;
OUT_DEFAULT_PRECIS, hFontTopicTitle = CreateFontIndirect(&lf);
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
FF_DONTCARE,
TEXT("Tahoma"));
/* Topic description font */ /* Topic description font */
hFontTopicDescription = CreateFont(-11, 0, 0, 0, FW_THIN, lf.lfHeight = -11;
FALSE, FALSE, FALSE, lf.lfWidth = 0;
ANSI_CHARSET, lf.lfWeight = FW_THIN;
OUT_DEFAULT_PRECIS, hFontTopicDescription = CreateFontIndirect(&lf);
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
FF_DONTCARE,
TEXT("Tahoma"));
/* Topic button font */ /* Topic button font */
hFontTopicButton = CreateFont(-11, 0, 0, 0, FW_BOLD, lf.lfHeight = -11;
FALSE, FALSE, FALSE, lf.lfWidth = 0;
ANSI_CHARSET, lf.lfWeight = FW_BOLD;
OUT_DEFAULT_PRECIS, hFontTopicButton = CreateFontIndirect(&lf);
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
FF_DONTCARE,
TEXT("Tahoma"));
/* Load title bitmap */ /* Load title bitmap */
if (hTitleBitmap) if (hTitleBitmap)
hTitleBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_TITLEBITMAP)); hTitleBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_TITLE_BITMAP));
/* Load topic bitmaps */ /* Load topic bitmaps */
hDefaultTopicBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_DEFAULTTOPICBITMAP)); hDefaultTopicBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_DEFAULT_TOPIC_BITMAP));
for (i = 0; i < dwNumberTopics; i++) for (i = 0; i < dwNumberTopics; i++)
{ {
// FIXME: Not implemented yet! // FIXME: Not implemented yet!
// pTopics[i]->hBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_TOPICBITMAP0 + i)); // pTopics[i]->hBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_TOPIC_BITMAP0 + i));
pTopics[i]->hBitmap = NULL; pTopics[i]->hBitmap = NULL;
} }
@ -877,14 +1000,10 @@ OnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
nLength = LoadString(hInstance, IDS_CHECKTEXT, szText, ARRAYSIZE(szText)); nLength = LoadString(hInstance, IDS_CHECKTEXT, szText, ARRAYSIZE(szText));
if (nLength > 0) if (nLength > 0)
{ {
hFontCheckButton = CreateFont(-10, 0, 0, 0, FW_THIN, lf.lfHeight = -10;
FALSE, FALSE, FALSE, lf.lfWidth = 0;
ANSI_CHARSET, lf.lfWeight = FW_THIN;
OUT_DEFAULT_PRECIS, hFontCheckButton = CreateFontIndirect(&lf);
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
FF_DONTCARE,
TEXT("Tahoma"));
hWndCheckButton = CreateWindow(TEXT("BUTTON"), hWndCheckButton = CreateWindow(TEXT("BUTTON"),
szText, szText,
@ -915,8 +1034,8 @@ OnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
hWndCloseButton = CreateWindow(TEXT("BUTTON"), hWndCloseButton = CreateWindow(TEXT("BUTTON"),
szText, szText,
WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | BS_FLAT, WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | BS_FLAT,
rcRightPanel.right - 10 - 57, rcRightPanel.right - 8 - 57,
rcRightPanel.bottom - 10 - 21, rcRightPanel.bottom - 8 - 21,
57, 57,
21, 21,
hWnd, hWnd,
@ -941,13 +1060,17 @@ OnCommand(HWND hWnd, WPARAM wParam, LPARAM lParam)
{ {
UNREFERENCED_PARAMETER(lParam); UNREFERENCED_PARAMETER(lParam);
if (LOWORD(wParam) == IDC_CLOSEBUTTON) /* Retrieve the low-word from wParam */
wParam = LOWORD(wParam);
/* Execute action */
if (wParam == IDC_CLOSEBUTTON)
{ {
DestroyWindow(hWnd); DestroyWindow(hWnd);
} }
else if ((LOWORD(wParam) - TOPIC_BTN_ID_BASE < dwNumberTopics)) else if (wParam - TOPIC_BTN_ID_BASE < dwNumberTopics)
{ {
if (RunAction(LOWORD(wParam) - TOPIC_BTN_ID_BASE) == FALSE) if (RunAction(wParam - TOPIC_BTN_ID_BASE) == FALSE)
DestroyWindow(hWnd); // Corresponds to a <exit> action. DestroyWindow(hWnd); // Corresponds to a <exit> action.
} }
@ -995,7 +1118,7 @@ OnPaint(HWND hWnd, WPARAM wParam, LPARAM lParam)
HFONT hOldFont; HFONT hOldFont;
RECT rcTitle, rcDescription; RECT rcTitle, rcDescription;
BITMAP bmpInfo; BITMAP bmpInfo;
TCHAR version[50]; TCHAR szVersion[50];
LPTSTR lpTitle = NULL, lpDesc = NULL; LPTSTR lpTitle = NULL, lpDesc = NULL;
UNREFERENCED_PARAMETER(wParam); UNREFERENCED_PARAMETER(wParam);
@ -1037,7 +1160,7 @@ OnPaint(HWND hWnd, WPARAM wParam, LPARAM lParam)
/* Draw topic bitmap */ /* Draw topic bitmap */
if ((nTopic == -1) && (hDefaultTopicBitmap)) if ((nTopic == -1) && (hDefaultTopicBitmap))
{ {
GetObject(hDefaultTopicBitmap, sizeof(BITMAP), &bmpInfo); GetObject(hDefaultTopicBitmap, sizeof(bmpInfo), &bmpInfo);
hOldBitmap = (HBITMAP)SelectObject(hdcMem, hDefaultTopicBitmap); hOldBitmap = (HBITMAP)SelectObject(hdcMem, hDefaultTopicBitmap);
BitBlt(hdc, BitBlt(hdc,
rcRightPanel.right - bmpInfo.bmWidth, rcRightPanel.right - bmpInfo.bmWidth,
@ -1051,7 +1174,7 @@ OnPaint(HWND hWnd, WPARAM wParam, LPARAM lParam)
} }
else if ((nTopic != -1) && (pTopics[nTopic]->hBitmap)) else if ((nTopic != -1) && (pTopics[nTopic]->hBitmap))
{ {
GetObject(pTopics[nTopic]->hBitmap, sizeof(BITMAP), &bmpInfo); GetObject(pTopics[nTopic]->hBitmap, sizeof(bmpInfo), &bmpInfo);
hOldBitmap = (HBITMAP)SelectObject(hdcMem, pTopics[nTopic]->hBitmap); hOldBitmap = (HBITMAP)SelectObject(hdcMem, pTopics[nTopic]->hBitmap);
BitBlt(hdc, BitBlt(hdc,
rcRightPanel.right - bmpInfo.bmWidth, rcRightPanel.right - bmpInfo.bmWidth,
@ -1078,18 +1201,28 @@ OnPaint(HWND hWnd, WPARAM wParam, LPARAM lParam)
SetBkMode(hdc, TRANSPARENT); SetBkMode(hdc, TRANSPARENT);
/* Draw version information */ /* Draw version information */
_stprintf(version, TEXT("ReactOS %d.%d.%d"), StringCchCopy(szVersion, ARRAYSIZE(szVersion),
KERNEL_VERSION_MAJOR, TEXT("ReactOS ") TEXT(KERNEL_VERSION_STR));
KERNEL_VERSION_MINOR,
KERNEL_VERSION_PATCH_LEVEL); /*
* Compute the original rect (position & size) of the version info,
* depending whether the checkbox is displayed (version info in the
* right panel) or not (version info in the left panel).
*/
if (bDisplayCheckBox)
rcTitle = rcRightPanel;
else
rcTitle = rcLeftPanel;
rcTitle.left = rcTitle.left + 8;
rcTitle.right = rcTitle.right - 5;
rcTitle.top = rcTitle.bottom - 43;
rcTitle.bottom = rcTitle.bottom - 8;
rcTitle.left = rcLeftPanel.left + 8;
rcTitle.right = rcLeftPanel.right - 5;
rcTitle.top = rcLeftPanel.bottom - 40;
rcTitle.bottom = rcLeftPanel.bottom - 5;
hOldFont = (HFONT)SelectObject(hdc, hFontTopicDescription); hOldFont = (HFONT)SelectObject(hdc, hFontTopicDescription);
DrawText(hdc, version, -1, &rcTitle, DT_BOTTOM | DT_CALCRECT | DT_SINGLELINE); DrawText(hdc, szVersion, -1, &rcTitle, DT_BOTTOM | DT_CALCRECT | DT_SINGLELINE);
DrawText(hdc, version, -1, &rcTitle, DT_BOTTOM | DT_SINGLELINE); SetTextColor(hdc, GetSysColor(COLOR_WINDOWTEXT));
DrawText(hdc, szVersion, -1, &rcTitle, DT_BOTTOM | DT_SINGLELINE);
SelectObject(hdc, hOldFont); SelectObject(hdc, hOldFont);
/* Draw topic title */ /* Draw topic title */
@ -1099,22 +1232,21 @@ OnPaint(HWND hWnd, WPARAM wParam, LPARAM lParam)
rcTitle.bottom = rcTitle.top + 57; rcTitle.bottom = rcTitle.top + 57;
hOldFont = (HFONT)SelectObject(hdc, hFontTopicTitle); hOldFont = (HFONT)SelectObject(hdc, hFontTopicTitle);
DrawText(hdc, lpTitle, -1, &rcTitle, DT_TOP | DT_CALCRECT); DrawText(hdc, lpTitle, -1, &rcTitle, DT_TOP | DT_CALCRECT);
SetTextColor(hdc, DARK_BLUE); SetTextColor(hdc, DARK_BLUE);
DrawText(hdc, lpTitle, -1, &rcTitle, DT_TOP); DrawText(hdc, lpTitle, -1, &rcTitle, DT_TOP);
SelectObject(hdc, hOldFont);
/* Draw topic description */ /* Draw topic description */
rcDescription.left = rcRightPanel.left + 12; rcDescription.left = rcRightPanel.left + 12;
rcDescription.right = rcRightPanel.right - 8; rcDescription.right = rcRightPanel.right - 8;
rcDescription.top = rcTitle.bottom + 8; rcDescription.top = rcTitle.bottom + 8;
rcDescription.bottom = rcRightPanel.bottom - 20; rcDescription.bottom = rcRightPanel.bottom - 20;
hOldFont = (HFONT)SelectObject(hdc, hFontTopicDescription);
SelectObject(hdc, hFontTopicDescription);
SetTextColor(hdc, GetSysColor(COLOR_WINDOWTEXT)); SetTextColor(hdc, GetSysColor(COLOR_WINDOWTEXT));
DrawText(hdc, lpDesc, -1, &rcDescription, DT_TOP | DT_WORDBREAK); DrawText(hdc, lpDesc, -1, &rcDescription, DT_TOP | DT_WORDBREAK);
SelectObject(hdc, hOldFont);
SetBkMode(hdc, OPAQUE); SetBkMode(hdc, OPAQUE);
SelectObject(hdc, hOldFont);
SelectObject(hdcMem, hOldBrush); SelectObject(hdcMem, hOldBrush);
SelectObject(hdcMem, hOldBitmap); SelectObject(hdcMem, hOldBitmap);

View file

@ -2,9 +2,9 @@
#include "resource.h" #include "resource.h"
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS-Welcome" #define REACTOS_STR_FILE_DESCRIPTION "ReactOS-Welcome"
#define REACTOS_STR_INTERNAL_NAME "welcome" #define REACTOS_STR_INTERNAL_NAME "welcome"
#define REACTOS_STR_ORIGINAL_FILENAME "welcome.exe" #define REACTOS_STR_ORIGINAL_FILENAME "welcome.exe"
#include <reactos/version.rc> #include <reactos/version.rc>
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
@ -13,19 +13,19 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
IDI_MAIN ICON "res/welcome.ico" IDI_MAIN ICON "res/welcome.ico"
/* Bitmaps */ /* Bitmaps */
IDB_TITLEBITMAP BITMAP "res/title.bmp" IDB_TITLE_BITMAP BITMAP "res/title.bmp"
// IDB_DEFAULTTOPICBITMAP BITMAP "res/default.bmp" // IDB_DEFAULT_TOPIC_BITMAP BITMAP "res/default.bmp"
// IDB_TOPICBITMAP0 BITMAP "res/topic0.bmp" // IDB_TOPIC_BITMAP0 BITMAP "res/topic0.bmp"
// IDB_TOPICBITMAP1 BITMAP "res/topic1.bmp" // IDB_TOPIC_BITMAP1 BITMAP "res/topic1.bmp"
// IDB_TOPICBITMAP2 BITMAP "res/topic2.bmp" // IDB_TOPIC_BITMAP2 BITMAP "res/topic2.bmp"
/* Topic actions */ /* Topic commands or actions */
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_TOPICACTION0 "reactos.exe" IDS_TOPIC_COMMAND0 "reactos.exe"
IDS_TOPICACTION1 "explorer.exe" IDS_TOPIC_COMMAND1 "explorer.exe"
IDS_TOPICACTION2 "<exit>" /* this quits the app */ IDS_TOPIC_ACTION2 "<exit>" /* Quits the program */
END END
/* UTF-8 */ /* UTF-8 */