On Thursday 26 January 2006 13:15, Alexandre Julliard wrote:
> Yes, I think shell32 should take care of making sure the directories
> exist, and creating sane defaults if they don't. Moving things to
> winecfg wouldn't prevent file dialogs from getting broken if users
> move directories around.
Please find attached what I've been working on. The patch to shellpath.c is
trivial. It just removes the $HOME mapping magic. This means it will create
all necessary directories in the user's profile, as it probably was before
Juan's patches. So this should work without problems, but with the
disadvantage that it won't map to $HOME anymore.
With the patch to winecfg, the user can select where to link 'Desktop' and 'My
Documents' to. I don't see why things should break, as long as the user
doesn't fiddle with registry settings.
Of course, we should probably set up symlinks to $HOME in wineprefixcreate,
which is not implemented yet. Should not be too much work, though.
Sorry for the huge winecfg patch, but most of it is due to resource updates.
Could this go into cvs?
Bye,
--
Michael Jung
[EMAIL PROTECTED]
Subject: [PATCH] Support setting symlinks for 'Desktop' and 'My Documents' in winecfg.
---
programs/winecfg/Bg.rc | 26 +++++--
programs/winecfg/De.rc | 28 +++++---
programs/winecfg/En.rc | 52 +++++++++-----
programs/winecfg/Es.rc | 28 +++++---
programs/winecfg/Fi.rc | 28 +++++---
programs/winecfg/Fr.rc | 28 +++++---
programs/winecfg/Ja.rc | 28 +++++---
programs/winecfg/Ko.rc | 28 +++++---
programs/winecfg/Nl.rc | 28 +++++---
programs/winecfg/No.rc | 28 +++++---
programs/winecfg/Ru.rc | 28 +++++---
programs/winecfg/driveui.c | 22 ++++--
programs/winecfg/main.c | 4 +
programs/winecfg/resource.h | 12 ++-
programs/winecfg/theme.c | 159 +++++++++++++++++++++++++++++++++++++++----
programs/winecfg/winecfg.h | 1
16 files changed, 385 insertions(+), 143 deletions(-)
19beecf5a1f34be2ef6804ecf119a65b7e0e912e
diff --git a/programs/winecfg/Bg.rc b/programs/winecfg/Bg.rc
index 2e2f153..27f9b5f 100644
--- a/programs/winecfg/Bg.rc
+++ b/programs/winecfg/Bg.rc
@@ -172,17 +172,25 @@ BEGIN
CONTROL "Ñîôòóåðíà åìóëàöèÿ",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Òåìà:",IDC_STATIC,8,10,244,8
- COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "Èíñòàëèðàé òåìà...",IDC_THEME_INSTALL,152,32,100,14
- LTEXT "Öâÿò:",IDC_THEME_COLORTEXT,8,48,244,8
- COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "Ðàçìåð:",IDC_THEME_SIZETEXT,8,74,244,8
- COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "Òåìà:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Èíñòàëèðàé òåìà...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "Öâÿò:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Ðàçìåð:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
STRINGTABLE DISCARDABLE
@@ -196,7 +204,7 @@ BEGIN
IDS_SHOW_ADVANCED "Ïîêàæè äîïúëíèòåëíèòå"
IDS_NOTHEME "(áåç òåìà)"
IDS_TAB_GRAPHICS "Ãðàôèêà"
- IDS_TAB_APPEARANCE "Âúíøåí âèä"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "Çâóê"
IDS_TAB_ABOUT "Îòíîñíî"
IDS_WINECFG_TITLE "Íàñòðîéêà íà Wine"
diff --git a/programs/winecfg/De.rc b/programs/winecfg/De.rc
index ba643cf..51746b8 100644
--- a/programs/winecfg/De.rc
+++ b/programs/winecfg/De.rc
@@ -172,17 +172,25 @@ BEGIN
CONTROL "Treiber Emulation",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Motiv:",IDC_STATIC,8,10,244,8
- COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "Motiv installieren...",IDC_THEME_INSTALL,152,32,100,14
- LTEXT "Farbe:",IDC_THEME_COLORTEXT,8,48,244,8
- COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "Größe:",IDC_THEME_SIZETEXT,8,74,244,8
- COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Darstellung ",IDC_STATIC,8,4,244,106
+ LTEXT "Motiv:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Motiv installieren...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "Farbe:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Größe:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Ordner ",IDC_STATIC,8,114,244,82
+ CONTROL "Verknüpfe 'Eigene Dateien' mit:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,180,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "Durch&suchen",IDC_BROWSE_MYDOCS_PATH,200,138,46,13
+ CONTROL "Verknüpfe 'Desktop' mit:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,180,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "Durch&suchen",IDC_BROWSE_DESKTOP_PATH,200,175,46,13
END
STRINGTABLE DISCARDABLE
@@ -191,12 +199,12 @@ BEGIN
IDS_TAB_APPLICATIONS "Anwendungen"
IDS_TAB_DLLS "Bibliotheken"
IDS_TAB_DRIVES "Laufwerke"
- IDS_CHOOSE_PATH "Bitte wählen Sie ein Unix-Verzeichnis für das Laufwerk."
+ IDS_CHOOSE_PATH "Bitte wählen Sie das Ziel-Unix-Verzeichnis."
IDS_HIDE_ADVANCED "Verstecke Erweitert"
IDS_SHOW_ADVANCED "Zeige Erweitert"
IDS_NOTHEME "(Kein Motiv)"
IDS_TAB_GRAPHICS "Grafik"
- IDS_TAB_APPEARANCE "Darstellung"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "Audio"
IDS_TAB_ABOUT "Über"
IDS_WINECFG_TITLE "Wine-Konfiguration"
diff --git a/programs/winecfg/En.rc b/programs/winecfg/En.rc
index 887aa81..9352f34 100644
--- a/programs/winecfg/En.rc
+++ b/programs/winecfg/En.rc
@@ -174,17 +174,25 @@ BEGIN
CONTROL "Driver Emulation",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Theme:",IDC_STATIC,8,10,244,8
- COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "Install theme...",IDC_THEME_INSTALL,152,32,100,14
- LTEXT "Color:",IDC_THEME_COLORTEXT,8,48,244,8
- COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "Size:",IDC_THEME_SIZETEXT,8,74,244,8
- COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "Theme:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Install theme...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "Color:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Size:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
STRINGTABLE DISCARDABLE
@@ -193,12 +201,12 @@ BEGIN
IDS_TAB_APPLICATIONS "Applications"
IDS_TAB_DLLS "Libraries"
IDS_TAB_DRIVES "Drives"
- IDS_CHOOSE_PATH "Select the unix directory to be mapped, please."
+ IDS_CHOOSE_PATH "Select the unix target directory, please."
IDS_HIDE_ADVANCED "Hide Advanced"
IDS_SHOW_ADVANCED "Show Advanced"
IDS_NOTHEME "(No Theme)"
IDS_TAB_GRAPHICS "Graphics"
- IDS_TAB_APPEARANCE "Appearance"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "Audio"
IDS_TAB_ABOUT "About"
IDS_WINECFG_TITLE "Wine configuration"
@@ -245,15 +253,23 @@ BEGIN
CONTROL "Allow Pixel Shader (if supported by hardware)",IDC_D3D_PSHADER_MODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,165,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
-LTEXT "Theme:",IDC_STATIC,8,10,244,8
-COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
-PUSHBUTTON "Install theme...",IDC_THEME_INSTALL,152,32,100,14
-LTEXT "Colour:",IDC_THEME_COLORTEXT,8,48,244,8
-COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
-LTEXT "Size:",IDC_THEME_SIZETEXT,8,74,244,8
-COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "Theme:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Install theme...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "Colour:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Size:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
diff --git a/programs/winecfg/Es.rc b/programs/winecfg/Es.rc
index 748c90f..236a141 100644
--- a/programs/winecfg/Es.rc
+++ b/programs/winecfg/Es.rc
@@ -169,17 +169,25 @@ BEGIN
CONTROL "Emulación del manejador",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Tema:",IDC_STATIC,8,10,244,8
- COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "Instalar tema...",IDC_THEME_INSTALL,152,32,100,14
- LTEXT "Color:",IDC_THEME_COLORTEXT,8,48,244,8
- COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "Tamaño:",IDC_THEME_SIZETEXT,8,74,244,8
- COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "Tema:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Instalar tema...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "Color:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Tamaño:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
STRINGTABLE DISCARDABLE
@@ -188,12 +196,12 @@ BEGIN
IDS_TAB_APPLICATIONS "Aplicaciones"
IDS_TAB_DLLS "Librerías"
IDS_TAB_DRIVES "Unidades"
- IDS_CHOOSE_PATH "Seleccione el directorio de unix para mapear."
+ IDS_CHOOSE_PATH "Select the unix target directory, please."
IDS_HIDE_ADVANCED "Ocultar avanzado"
IDS_SHOW_ADVANCED "Mostrar avanzado"
IDS_NOTHEME "(Ningún tema)"
IDS_TAB_GRAPHICS "Gráficos"
- IDS_TAB_APPEARANCE "Apariencia"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "Audio"
IDS_TAB_ABOUT "Acerca de"
IDS_WINECFG_TITLE "Configuración de Wine"
diff --git a/programs/winecfg/Fi.rc b/programs/winecfg/Fi.rc
index 8526b2e..29db7d6 100644
--- a/programs/winecfg/Fi.rc
+++ b/programs/winecfg/Fi.rc
@@ -168,17 +168,25 @@ BEGIN
CONTROL "Ajurin &emulointi",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Teema:",IDC_STATIC,8,10,244,8
- COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "Asenna &teema...",IDC_THEME_INSTALL,152,32,100,14
- LTEXT "Väri:",IDC_THEME_COLORTEXT,8,48,244,8
- COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "Koko:",IDC_THEME_SIZETEXT,8,74,244,8
- COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "Teema:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Asenna &teema...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "Väri:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Koko:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
STRINGTABLE DISCARDABLE
@@ -187,12 +195,12 @@ BEGIN
IDS_TAB_APPLICATIONS "Sovellukset"
IDS_TAB_DLLS "Kirjastot"
IDS_TAB_DRIVES "Asemat"
- IDS_CHOOSE_PATH "Valitse mapattava unix -kansio."
+ IDS_CHOOSE_PATH "Select the unix target directory, please."
IDS_HIDE_ADVANCED "Piilota lisäasetukset"
IDS_SHOW_ADVANCED "Näytä lisäasetukset"
IDS_NOTHEME "(Ei Teemaa)"
IDS_TAB_GRAPHICS "Grafiikka"
- IDS_TAB_APPEARANCE "Ulkoasu"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "Ääni"
IDS_TAB_ABOUT "Tietoja"
IDS_WINECFG_TITLE "Winen asetukset"
diff --git a/programs/winecfg/Fr.rc b/programs/winecfg/Fr.rc
index 33e3142..438bcf6 100644
--- a/programs/winecfg/Fr.rc
+++ b/programs/winecfg/Fr.rc
@@ -170,17 +170,25 @@ BEGIN
CONTROL "Emulation pilote",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Thème:",IDC_STATIC,8,10,244,8
- COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "Installer un thème...",IDC_THEME_INSTALL,152,32,100,14
- LTEXT "Couleur:",IDC_THEME_COLORTEXT,8,48,244,8
- COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "Taille:",IDC_THEME_SIZETEXT,8,74,244,8
- COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "Thème:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Installer un thème...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "Couleur:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Taille:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
STRINGTABLE DISCARDABLE
@@ -189,12 +197,12 @@ BEGIN
IDS_TAB_APPLICATIONS "Applications"
IDS_TAB_DLLS "Bibliothèques"
IDS_TAB_DRIVES "Lecteurs"
- IDS_CHOOSE_PATH "Veuillez sélectionner le répertoire unix à assigner."
+ IDS_CHOOSE_PATH "Select the unix target directory, please."
IDS_HIDE_ADVANCED "Cacher avancés"
IDS_SHOW_ADVANCED "Montrer avancés"
IDS_NOTHEME "(Pas de thème)"
IDS_TAB_GRAPHICS "Affichage"
- IDS_TAB_APPEARANCE "Apparence"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "Audio"
IDS_TAB_ABOUT "A propos"
IDS_WINECFG_TITLE "Configuration de Wine"
diff --git a/programs/winecfg/Ja.rc b/programs/winecfg/Ja.rc
index 4c8060b..66540ef 100644
--- a/programs/winecfg/Ja.rc
+++ b/programs/winecfg/Ja.rc
@@ -171,17 +171,25 @@ BEGIN
CONTROL "hCoEG~
[V",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 9, "MS UI Gothic"
BEGIN
- LTEXT "e[}:",IDC_STATIC,8,10,244,8
- COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "e[}ÌCXg[...",IDC_THEME_INSTALL,152,32,100,14
- LTEXT "zF:",IDC_THEME_COLORTEXT,8,48,244,8
- COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "TCY:",IDC_THEME_SIZETEXT,8,74,244,8
- COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "e[}:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "e[}ÌCXg[...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "zF:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "TCY:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
STRINGTABLE DISCARDABLE
@@ -190,12 +198,12 @@ BEGIN
IDS_TAB_APPLICATIONS "AvP[V"
IDS_TAB_DLLS "Cu"
IDS_TAB_DRIVES "hCu"
- IDS_CHOOSE_PATH "}bsO·éUnixfBNg[ðIñÅŸ³¢"
+ IDS_CHOOSE_PATH "Select the unix target directory, please."
IDS_HIDE_ADVANCED "Ú×ðB·"
IDS_SHOW_ADVANCED "Ú×ð\Š"
IDS_NOTHEME "(e[}³µ)"
IDS_TAB_GRAPHICS "æÊ"
- IDS_TAB_APPEARANCE "OÏ"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "I[fBI"
IDS_TAB_ABOUT "WineÉ¢Ä"
IDS_WINECFG_TITLE "WineÝè"
diff --git a/programs/winecfg/Ko.rc b/programs/winecfg/Ko.rc
index 01bc003..da6bbef 100644
--- a/programs/winecfg/Ko.rc
+++ b/programs/winecfg/Ko.rc
@@ -176,17 +176,25 @@ BEGIN
CONTROL "µå¶óÀ̹ö ŸÖ¹Ä",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Åמ¶:",IDC_STATIC,8,10,244,8
- COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "Åמ¶ Œ³Ä¡...",IDC_THEME_INSTALL,152,32,100,14
- LTEXT "»ö»ó:",IDC_THEME_COLORTEXT,8,48,244,8
- COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "Å©±â:",IDC_THEME_SIZETEXT,8,74,244,8
- COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "Åמ¶:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Åמ¶ Œ³Ä¡...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "»ö»ó:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Å©±â:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
STRINGTABLE DISCARDABLE
@@ -195,12 +203,12 @@ BEGIN
IDS_TAB_APPLICATIONS "Ç®±×ž²"
IDS_TAB_DLLS "¶óÀ̺귯ž®"
IDS_TAB_DRIVES "µå¶óÀ̺ê"
- IDS_CHOOSE_PATH "žÊÇÎÇÒ À¯ŽÐœº µð·ºÅäž®žŠ Œ±ÅÃÇϜÿÀ."
+ IDS_CHOOSE_PATH "Select the unix target folder, please."
IDS_HIDE_ADVANCED "Ãß°¡ ¿ÉŒÇ Œû±â±â"
IDS_SHOW_ADVANCED "Ãß°¡ ¿ÉŒÇ ºž¿©ÁÖ±â"
IDS_NOTHEME "(Åמ¶ ŸøÀœ)"
IDS_TAB_GRAPHICS "±×·¡ÇÈ"
- IDS_TAB_APPEARANCE "¿ÜŸç"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "¿Àµð¿À"
IDS_TAB_ABOUT "Á€ºž"
IDS_WINECFG_TITLE "Wine Œ³Á€"
diff --git a/programs/winecfg/Nl.rc b/programs/winecfg/Nl.rc
index fd29e29..0c37449 100644
--- a/programs/winecfg/Nl.rc
+++ b/programs/winecfg/Nl.rc
@@ -169,17 +169,25 @@ BEGIN
CONTROL "Stuurprogramma emulatie",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Thema:",IDC_STATIC,8,10,244,8
- COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "Thema installeren...",IDC_THEME_INSTALL,152,32,100,14
- LTEXT "Kleuren:",IDC_THEME_COLORTEXT,8,48,244,8
- COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "Tekstgrootte:",IDC_THEME_SIZETEXT,8,74,244,8
- COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "Thema:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Thema installeren...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "Kleuren:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Tekstgrootte:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
STRINGTABLE DISCARDABLE
@@ -188,12 +196,12 @@ BEGIN
IDS_TAB_APPLICATIONS "Toepassingen"
IDS_TAB_DLLS "Bibliotheken"
IDS_TAB_DRIVES "Stations"
- IDS_CHOOSE_PATH "Selecteer een unix folder voor dit station."
+ IDS_CHOOSE_PATH "Select the unix target folder, please."
IDS_HIDE_ADVANCED "Verberg uitgebreid"
IDS_SHOW_ADVANCED "Toon uitgebreid"
IDS_NOTHEME "(Geen Thema)"
IDS_TAB_GRAPHICS "Graphics" /* FIXME */
- IDS_TAB_APPEARANCE "Vormgeving"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "Audio"
IDS_TAB_ABOUT "Info"
IDS_WINECFG_TITLE "Wine configuratie"
diff --git a/programs/winecfg/No.rc b/programs/winecfg/No.rc
index 91b0f75..ae90dbe 100644
--- a/programs/winecfg/No.rc
+++ b/programs/winecfg/No.rc
@@ -171,17 +171,25 @@ BEGIN
CONTROL "Driveremulering",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
-LTEXT "Tema:",IDC_STATIC,8,10,244,8
-COMBOBOX IDC_THEME_THEMECOMBO,8,18,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "Installer tema . . .",IDC_THEME_INSTALL,152,32,100,14
- LTEXT "Farge:",IDC_THEME_COLORTEXT,8,48,244,8
- COMBOBOX IDC_THEME_COLORCOMBO,8,56,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "Størrelse:",IDC_THEME_SIZETEXT,8,74,244,8
- COMBOBOX IDC_THEME_SIZECOMBO,8,82,244,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "Tema:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Installer tema . . .",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "Farge:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Størrelse:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
STRINGTABLE DISCARDABLE
@@ -190,12 +198,12 @@ BEGIN
IDS_TAB_APPLICATIONS "Programmer"
IDS_TAB_DLLS "Biblioteker"
IDS_TAB_DRIVES "Stasjoner"
- IDS_CHOOSE_PATH "Velg Unix-katalogens som skal kartlegges."
+ IDS_CHOOSE_PATH "Select the unix target folder, please."
IDS_HIDE_ADVANCED "Enkel visning"
IDS_SHOW_ADVANCED "Avansert visning"
IDS_NOTHEME "(Intet tema)"
IDS_TAB_GRAPHICS "Grafikk"
- IDS_TAB_APPEARANCE "Utseende"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "Lyd"
IDS_TAB_ABOUT "Om"
IDS_WINECFG_TITLE "Oppsett av Wine"
diff --git a/programs/winecfg/Ru.rc b/programs/winecfg/Ru.rc
index 9bfe923..8f78009 100644
--- a/programs/winecfg/Ru.rc
+++ b/programs/winecfg/Ru.rc
@@ -172,17 +172,25 @@ BEGIN
CONTROL "Ïðîãðàììíàÿ ýìóëÿöèÿ",IDC_DSOUND_DRV_EMUL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,230,230,10
END
-IDD_APPEARANCE DIALOG DISCARDABLE 0, 0, 260, 250
+IDD_DESKTOP_INTEGRATION DIALOG DISCARDABLE 0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Òåìà:",IDC_STATIC,15,5,228,8
- COMBOBOX IDC_THEME_THEMECOMBO,15,13,228,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- PUSHBUTTON "Óñòàíîâèòü òåìó...",IDC_THEME_INSTALL,152,32,90,14
- LTEXT "Öâåò:",IDC_THEME_COLORTEXT,15,48,228,8
- COMBOBOX IDC_THEME_COLORCOMBO,15,56,228,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "Ðàçìåð:",IDC_THEME_SIZETEXT,15,74,228,8
- COMBOBOX IDC_THEME_SIZECOMBO,15,82,228,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Appearance ",IDC_STATIC,8,4,244,106
+ LTEXT "Òåìà:",IDC_STATIC,15,16,230,8
+ COMBOBOX IDC_THEME_THEMECOMBO,15,24,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ PUSHBUTTON "Óñòàíîâèòü òåìó...",IDC_THEME_INSTALL,152,38,93,14
+ LTEXT "Öâåò:",IDC_THEME_COLORTEXT,15,54,230,8
+ COMBOBOX IDC_THEME_COLORCOMBO,15,62,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "Ðàçìåð:",IDC_THEME_SIZETEXT,15,80,230,8
+ COMBOBOX IDC_THEME_SIZECOMBO,15,88,230,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX " Shell Folders ",IDC_STATIC,8,114,244,82
+ CONTROL "Link 'My Documents' shell folder to:",IDC_LINK_MYDOCS_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,8
+ EDITTEXT IDC_EDIT_MYDOCS_PATH,15,138,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_MYDOCS_PATH,206,138,40,13
+ CONTROL "Link 'Desktop' shell folder to:",IDC_LINK_DESKTOP_PATH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,163,230,8
+ EDITTEXT IDC_EDIT_DESKTOP_PATH,15,175,186,13,ES_AUTOHSCROLL | WS_TABSTOP
+ PUSHBUTTON "&Browse...",IDC_BROWSE_DESKTOP_PATH,206,175,40,13
END
STRINGTABLE DISCARDABLE
@@ -191,12 +199,12 @@ BEGIN
IDS_TAB_APPLICATIONS "Ïðèëîæåíèÿ"
IDS_TAB_DLLS "Áèáëèîòåêè"
IDS_TAB_DRIVES "Äèñêè"
- IDS_CHOOSE_PATH "Âûáåðèòå unix êàòàëîã äëÿ äèñêà."
+ IDS_CHOOSE_PATH "Select the target unix folder, please."
IDS_HIDE_ADVANCED "Ñêðûòü äîïîëíèòåëüíûå"
IDS_SHOW_ADVANCED "Ïîêàçàòü äîïîëíèòåëüíûå"
IDS_NOTHEME "(áåç òåìû)"
IDS_TAB_GRAPHICS "Ãðàôèêà"
- IDS_TAB_APPEARANCE "Âíåøíèé âèä"
+ IDS_TAB_DESKTOP_INTEGRATION "Desktop Integration"
IDS_TAB_AUDIO "Àóäèî"
IDS_TAB_ABOUT "Î ïðîãðàììå"
IDS_WINECFG_TITLE "Íàñòðîéêà Wine"
diff --git a/programs/winecfg/driveui.c b/programs/winecfg/driveui.c
index 5f407b5..ea80889 100644
--- a/programs/winecfg/driveui.c
+++ b/programs/winecfg/driveui.c
@@ -21,6 +21,8 @@
*
*/
+#include <stdio.h>
+
#define WIN32_LEAN_AND_MEAN
#define COBJMACROS
@@ -590,7 +592,7 @@ static void paint(HWND dialog)
EndPaint(dialog, &ps);
}
-static void browse_for_folder(HWND dialog)
+BOOL browse_for_unix_folder(HWND dialog, char *pszPath)
{
static WCHAR wszUnixRootDisplayName[] =
{ ':',':','{','C','C','7','0','2','E','B','2','-','7','D','C','5','-','1','1','D','9','-',
@@ -613,13 +615,13 @@ static void browse_for_folder(HWND dialo
LoadString(GetModuleHandle(NULL), IDS_CHOOSE_PATH, pszChoosePath, 256);
hr = SHGetDesktopFolder(&pDesktop);
- if (!SUCCEEDED(hr)) return;
+ if (!SUCCEEDED(hr)) return FALSE;
hr = IShellFolder_ParseDisplayName(pDesktop, NULL, NULL, wszUnixRootDisplayName, NULL,
&pidlUnixRoot, NULL);
if (!SUCCEEDED(hr)) {
IShellFolder_Release(pDesktop);
- return;
+ return FALSE;
}
bi.pidlRoot = pidlUnixRoot;
@@ -636,17 +638,19 @@ static void browse_for_folder(HWND dialo
IShellFolder_Release(pDesktop);
if (!SUCCEEDED(hr)) {
SHFree(pidlSelectedPath);
- return;
+ return FALSE;
}
hr = StrRetToStr(&strSelectedPath, pidlSelectedPath, &pszSelectedPath);
SHFree(pidlSelectedPath);
- if (!SUCCEEDED(hr)) return;
+ if (!SUCCEEDED(hr)) return FALSE;
- set_text(dialog, IDC_EDIT_PATH, pszSelectedPath);
+ lstrcpy(pszPath, pszSelectedPath);
CoTaskMemFree(pszSelectedPath);
+ return TRUE;
}
+ return FALSE;
}
static void init_listview_columns(HWND dialog)
@@ -760,8 +764,12 @@ DriveDlgProc (HWND dialog, UINT msg, WPA
break;
case IDC_BUTTON_BROWSE_PATH:
- browse_for_folder(dialog);
+ {
+ char szTargetPath[FILENAME_MAX];
+ if (browse_for_unix_folder(dialog, szTargetPath))
+ set_text(dialog, IDC_EDIT_PATH, szTargetPath);
break;
+ }
case IDC_RADIO_ASSIGN:
{
diff --git a/programs/winecfg/main.c b/programs/winecfg/main.c
index b77d02b..14168e6 100644
--- a/programs/winecfg/main.c
+++ b/programs/winecfg/main.c
@@ -146,10 +146,10 @@ doPropertySheet (HINSTANCE hInstance, HW
psp[pg].dwSize = sizeof (PROPSHEETPAGEW);
psp[pg].dwFlags = PSP_USETITLE;
psp[pg].hInstance = hInstance;
- psp[pg].u.pszTemplate = MAKEINTRESOURCEW (IDD_APPEARANCE);
+ psp[pg].u.pszTemplate = MAKEINTRESOURCEW (IDD_DESKTOP_INTEGRATION);
psp[pg].u2.pszIcon = NULL;
psp[pg].pfnDlgProc = ThemeDlgProc;
- psp[pg].pszTitle = load_string (IDS_TAB_APPEARANCE);
+ psp[pg].pszTitle = load_string (IDS_TAB_DESKTOP_INTEGRATION);
psp[pg].lParam = 0;
pg++;
diff --git a/programs/winecfg/resource.h b/programs/winecfg/resource.h
index df7f0b9..7330fc3 100644
--- a/programs/winecfg/resource.h
+++ b/programs/winecfg/resource.h
@@ -33,7 +33,7 @@
#define IDS_HIDE_ADVANCED 7
#define IDS_NOTHEME 8
#define IDS_TAB_GRAPHICS 9
-#define IDS_TAB_APPEARANCE 10
+#define IDS_TAB_DESKTOP_INTEGRATION 10
#define IDS_TAB_AUDIO 11
#define IDS_TAB_ABOUT 12
#define IDS_WINECFG_TITLE 13
@@ -48,7 +48,7 @@
#define IDD_DLLCFG 111
#define IDD_DRIVECFG 112
#define IDD_DRIVE_EDIT 114
-#define IDD_APPEARANCE 115
+#define IDD_DESKTOP_INTEGRATION 115
#define IDB_WINE_LOGO 200
#define IDC_TABABOUT 1001
#define IDC_APPLYBTN 1002
@@ -143,10 +143,16 @@
#define IDB_DEVICE 1307
#define IDS_AUDIO_MISSING 1308
-/* appearance tab */
+/* desktop integration tab */
#define IDC_THEME_COLORCOMBO 1401
#define IDC_THEME_COLORTEXT 1402
#define IDC_THEME_SIZECOMBO 1403
#define IDC_THEME_SIZETEXT 1404
#define IDC_THEME_THEMECOMBO 1405
#define IDC_THEME_INSTALL 1406
+#define IDC_EDIT_MYDOCS_PATH 1407
+#define IDC_LINK_MYDOCS_PATH 1408
+#define IDC_BROWSE_MYDOCS_PATH 1409
+#define IDC_EDIT_DESKTOP_PATH 1410
+#define IDC_LINK_DESKTOP_PATH 1411
+#define IDC_BROWSE_DESKTOP_PATH 1412
diff --git a/programs/winecfg/theme.c b/programs/winecfg/theme.c
index 3cb0e39..94edec3 100644
--- a/programs/winecfg/theme.c
+++ b/programs/winecfg/theme.c
@@ -1,7 +1,10 @@
/*
- * Theme configuration code
+ * Desktop Integration
+ * - Theme configuration code
+ * - User Shell Folder mapping
*
* Copyright (c) 2005 by Frank Richter
+ * Copyright (c) 2006 by Michael Jung
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -22,6 +25,8 @@
#include <stdarg.h>
#include <stdlib.h>
#include <stdio.h>
+#include <sys/stat.h>
+#include <unistd.h>
#include <windows.h>
#include <uxtheme.h>
@@ -572,11 +577,119 @@ static void on_theme_install(HWND dialog
else WINE_TRACE("user cancelled\n");
}
+/* Information about UI controls and symbolic link targets of certain User Shell Folders. */
+static struct ShellFolderUIInfo {
+ int nFolder;
+ char szLinkTarget[FILENAME_MAX];
+ int idcCheckbox;
+ int idcEdit;
+ int idcButton;
+} aSFUIInfo[2] = {
+ { CSIDL_DESKTOP, "", IDC_LINK_DESKTOP_PATH, IDC_EDIT_DESKTOP_PATH, IDC_BROWSE_DESKTOP_PATH },
+ { CSIDL_PERSONAL, "", IDC_LINK_MYDOCS_PATH, IDC_EDIT_MYDOCS_PATH, IDC_BROWSE_MYDOCS_PATH }
+};
+
+#define NUM_ELEMS(x) (sizeof(x)/sizeof(*(x)))
+
+static void get_shell_folder_link_targets() {
+ WCHAR wszPath[MAX_PATH];
+ HRESULT hr;
+ int i;
+
+ for (i=0; i<NUM_ELEMS(aSFUIInfo); i++) {
+ aSFUIInfo[i].szLinkTarget[0] = '\0';
+ hr = SHGetFolderPathW(NULL, aSFUIInfo[i].nFolder|CSIDL_FLAG_CREATE, NULL,
+ SHGFP_TYPE_DEFAULT, wszPath);
+ if (SUCCEEDED(hr)) {
+ char *pszUnixPath = wine_get_unix_file_name(wszPath);
+ if (pszUnixPath) {
+ struct stat statPath;
+ if (!lstat(pszUnixPath, &statPath) && S_ISLNK(statPath.st_mode))
+ readlink(pszUnixPath, aSFUIInfo[i].szLinkTarget, FILENAME_MAX);
+ HeapFree(GetProcessHeap(), 0, pszUnixPath);
+ }
+ }
+ }
+}
+
+static void update_shell_folder_ui(HWND dialog) {
+ int i;
+
+ for (i=0; i<NUM_ELEMS(aSFUIInfo); i++) {
+ set_text(dialog, aSFUIInfo[i].idcEdit, aSFUIInfo[i].szLinkTarget);
+ if (lstrlenA(aSFUIInfo[i].szLinkTarget)) {
+ CheckDlgButton(dialog, aSFUIInfo[i].idcCheckbox, BST_CHECKED);
+ enable(aSFUIInfo[i].idcEdit);
+ enable(aSFUIInfo[i].idcButton);
+ } else {
+ CheckDlgButton(dialog, aSFUIInfo[i].idcCheckbox, BST_UNCHECKED);
+ disable(aSFUIInfo[i].idcEdit);
+ disable(aSFUIInfo[i].idcButton);
+ }
+ }
+}
+
+static void apply_shell_folder_changes() {
+ WCHAR wszPath[MAX_PATH];
+ char szBackupPath[FILENAME_MAX], szUnixPath[FILENAME_MAX], *pszUnixPath = NULL;
+ int i, cUnixPathLen;
+ struct stat statPath;
+ HRESULT hr;
+
+ for (i=0; i<NUM_ELEMS(aSFUIInfo); i++) {
+ hr = SHGetFolderPathW(NULL, aSFUIInfo[i].nFolder|CSIDL_FLAG_CREATE, NULL,
+ SHGFP_TYPE_DEFAULT, wszPath);
+ if (FAILED(hr)) continue;
+
+ /* Retrieve the corresponding unix path. */
+ pszUnixPath = wine_get_unix_file_name(wszPath);
+ if (!pszUnixPath) continue;
+ lstrcpyA(szUnixPath, pszUnixPath);
+ HeapFree(GetProcessHeap(), 0, pszUnixPath);
+
+ /* Derive name for folder backup. */
+ cUnixPathLen = lstrlenA(szUnixPath);
+ lstrcpyA(szBackupPath, szUnixPath);
+ lstrcatA(szBackupPath, ".winecfg");
+
+ if (lstat(szUnixPath, &statPath)) continue;
+
+ /* Move old folder/link out of the way. */
+ if (S_ISLNK(statPath.st_mode)) {
+ if (unlink(szUnixPath)) continue; /* Unable to remove link. */
+ } else {
+ if (!*aSFUIInfo[i].szLinkTarget) {
+ continue; /* We are done. Old was real folder, as new shall be. */
+ } else {
+ if (rename(szUnixPath, szBackupPath)) { /* Move folder out of the way. */
+ continue; /* Unable to move old folder. */
+ }
+ }
+ }
+
+ /* Create new link/folder. */
+ if (*aSFUIInfo[i].szLinkTarget) {
+ symlink(aSFUIInfo[i].szLinkTarget, szUnixPath);
+ } else {
+ /* If there's a backup folder, restore it. Else create new folder. */
+ if (!lstat(szBackupPath, &statPath) && S_ISDIR(statPath.st_mode)) {
+ rename(szBackupPath, szUnixPath);
+ } else {
+ mkdir(szUnixPath, S_IRWXU|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH);
+ }
+ }
+ }
+}
+
INT_PTR CALLBACK
ThemeDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
+ int i;
+
switch (uMsg) {
case WM_INITDIALOG:
+ get_shell_folder_link_targets();
+ update_shell_folder_ui(hDlg);
break;
case WM_DESTROY:
@@ -600,23 +713,38 @@ ThemeDlgProc (HWND hDlg, UINT uMsg, WPAR
}
break;
}
-
- default:
- break;
- }
- switch (LOWORD(wParam))
- {
- case IDC_THEME_INSTALL:
- if (HIWORD(wParam) != BN_CLICKED) break;
- on_theme_install (hDlg);
- break;
-
- default:
+
+ case BN_CLICKED:
+ switch (LOWORD(wParam))
+ {
+ case IDC_THEME_INSTALL:
+ on_theme_install (hDlg);
+ break;
+
+ default:
+ for (i=0; i<NUM_ELEMS(aSFUIInfo); i++) {
+ if (LOWORD(wParam) == aSFUIInfo[i].idcButton) {
+ if (browse_for_unix_folder(hDlg, aSFUIInfo[i].szLinkTarget)) {
+ SendMessage(GetParent(hDlg), PSM_CHANGED, 0, 0);
+ }
+ }
+ if (LOWORD(wParam) == aSFUIInfo[i].idcCheckbox) {
+ if (IsDlgButtonChecked(hDlg, aSFUIInfo[i].idcCheckbox)) {
+ if (browse_for_unix_folder(hDlg, aSFUIInfo[i].szLinkTarget))
+ SendMessage(GetParent(hDlg), PSM_CHANGED, 0, 0);
+ } else {
+ aSFUIInfo[i].szLinkTarget[0] = '\0';
+ SendMessage(GetParent(hDlg), PSM_CHANGED, 0, 0);
+ }
+ }
+ }
+ update_shell_folder_ui(hDlg);
+ break;
+ }
break;
}
break;
-
case WM_NOTIFY:
switch (((LPNMHDR)lParam)->code) {
case PSN_KILLACTIVE: {
@@ -626,6 +754,9 @@ ThemeDlgProc (HWND hDlg, UINT uMsg, WPAR
case PSN_APPLY: {
apply();
apply_theme(hDlg);
+ apply_shell_folder_changes();
+ get_shell_folder_link_targets();
+ update_shell_folder_ui(hDlg);
SetWindowLongPtr(hDlg, DWLP_MSGRESULT, PSNRET_NOERROR);
break;
}
diff --git a/programs/winecfg/winecfg.h b/programs/winecfg/winecfg.h
index 0e78d2f..4966dcb 100644
--- a/programs/winecfg/winecfg.h
+++ b/programs/winecfg/winecfg.h
@@ -101,6 +101,7 @@ long drive_available_mask(char letter);
BOOL add_drive(const char letter, const char *targetpath, const char *label, const char *serial, unsigned int type);
void delete_drive(struct drive *pDrive);
void apply_drive_changes(void);
+BOOL browse_for_unix_folder(HWND dialog, char *pszPath);
extern struct drive drives[26]; /* one for each drive letter */
BOOL gui_mode;
--
1.0.6
Subject: [PATCH] Get rid of the magic MyDocuments->$HOME mapping code.
---
dlls/shell32/shellpath.c | 110 ----------------------------------------------
1 files changed, 0 insertions(+), 110 deletions(-)
fbbaea94f737fc28eeaf26e0fa4bc56294289c65
diff --git a/dlls/shell32/shellpath.c b/dlls/shell32/shellpath.c
index 29c004f..f60397e 100644
--- a/dlls/shell32/shellpath.c
+++ b/dlls/shell32/shellpath.c
@@ -1229,66 +1229,6 @@ static HRESULT _SHGetUserShellFolderPath
return hr;
}
-/* Helper function for _SHGetDefaultValue
- *
- * handing the directories under $HOME:
- * 1) try path under $HOME (such as $HOME/My Documents/My Pictures), if it
- * exists return it.
- * 2) if not, but $HOME/My Documents exists return path 1 and have it created
- * 3) try $HOME if it exists return it
- * 4) normal fallback to C:/windows/Profiles/...
- */
-static HRESULT expand_home_path(LPWSTR pszPath, LPCWSTR def_path, UINT resource,
- BOOL create_lastdir)
-{
- HRESULT hr = E_FAIL;
- const char *home = getenv("HOME");
-
- if (home)
- {
- LPWSTR homeW = wine_get_dos_file_name(home);
-
- if (homeW)
- {
- WCHAR resourcePath[MAX_PATH];
- lstrcpynW(pszPath, homeW, MAX_PATH);
-
- if (LoadStringW(shell32_hInstance, resource, resourcePath, MAX_PATH))
- PathAppendW(pszPath, resourcePath);
- else
- PathAppendW(pszPath, def_path);
-
- if (PathIsDirectoryW(pszPath)) hr = S_OK;
- else if (create_lastdir)
- {
- /* attempt 2, try for My Documents */
-
- WCHAR* ptr = strrchrW(pszPath, '\\');
- if (ptr)
- {
- *ptr = 0;
- if (PathIsDirectoryW(pszPath))
- {
- *ptr = '\\';
- hr = S_OK;
- }
- }
- }
-
- if (hr != S_OK)
- {
- /* attempt 3 return HOME */
- lstrcpyW(pszPath,homeW);
- hr = S_OK;
- }
- HeapFree(GetProcessHeap(), 0, homeW);
- }
- else
- hr = HRESULT_FROM_WIN32(GetLastError());
- }
- return hr;
-}
-
/* Gets a 'semi-expanded' default value of the CSIDL with index folder into
* pszPath, based on the entries in CSIDL_Data. By semi-expanded, I mean:
* - The entry's szDefaultPath may be either a string value or an integer
@@ -1316,56 +1256,6 @@ static HRESULT _SHGetDefaultValue(BYTE f
if (!pszPath)
return E_INVALIDARG;
- /* Try special cases first */
- hr = E_FAIL;
- switch (folder)
- {
- case CSIDL_MYPICTURES:
- hr = expand_home_path(pszPath,My_PicturesW,IDS_MYPICTURES,TRUE);
- break;
- case CSIDL_PERSONAL:
- hr = expand_home_path(pszPath,PersonalW,IDS_PERSONAL,FALSE);
- break;
- case CSIDL_MYMUSIC:
- hr = expand_home_path(pszPath,My_MusicW,IDS_MYMUSIC,TRUE);
- break;
- case CSIDL_MYVIDEO:
- hr = expand_home_path(pszPath,My_VideoW,IDS_MYVIDEO,TRUE);
- break;
- case CSIDL_DESKTOP:
- case CSIDL_DESKTOPDIRECTORY:
- {
- const char *home = getenv("HOME");
-
- /* special case for Desktop, map to $HOME/Desktop if it exists */
- if (home)
- {
- LPWSTR homeW = wine_get_dos_file_name(home);
-
- if (homeW)
- {
- lstrcpynW(pszPath, homeW, MAX_PATH);
- if (PathAppendW(pszPath, DesktopW))
- {
- if (PathIsDirectoryW(pszPath))
- hr = S_OK;
- }
- else
- hr = HRESULT_FROM_WIN32(GetLastError());
- HeapFree(GetProcessHeap(), 0, homeW);
- }
- else
- hr = HRESULT_FROM_WIN32(GetLastError());
- }
- break;
- }
- }
- if (SUCCEEDED(hr))
- return hr;
-
- /* Either the folder was unhandled, or a suitable default wasn't found,
- * so use one of the resource-based defaults
- */
if (CSIDL_Data[folder].szDefaultPath &&
IS_INTRESOURCE(CSIDL_Data[folder].szDefaultPath))
{
--
1.0.6