/*
 * Commdlg
 * French language support
 *
 * Copyright 1995 Alexandre Julliard
 * Copyright 2005-2008 Jonathan Ernst
 * Copyright 2009-2010 Frédéric Delanoy
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 */

#include "cdlg.h"
#include "filedlgbrowser.h"

/* UTF-8 */
#pragma code_page(65001)

/*
 * WARNING: DO NOT CHANGE THE SIZE OF THE STANDARD DIALOG TEMPLATES.
 */

LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL

OPEN_FILE DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 275, 134
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Ouvrir"
FONT 8, "MS Shell Dlg"
{
 LTEXT "&Nom de fichier :", 1090, 6, 6, 76, 9
 EDITTEXT edt1, 6, 16, 90, 12, ES_AUTOHSCROLL | ES_OEMCONVERT | WS_BORDER | WS_TABSTOP
 LISTBOX 1120, 6, 32, 90, 68, LBS_STANDARD | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_DISABLENOSCROLL | WS_TABSTOP
 LTEXT "&Répertoires", -1, 110, 6, 92, 9
 LTEXT "", 1088, 110, 18, 92, 9, SS_NOPREFIX | WS_GROUP
 LISTBOX 1121, 110, 32, 92, 68, LBS_STANDARD | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_DISABLENOSCROLL | WS_TABSTOP
 LTEXT "Liste des fichiers de &type :", 1089, 6, 104, 90, 9
 COMBOBOX cmb1, 6, 114, 90, 15, CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 LTEXT "&Lecteurs :", 1091, 110, 104, 92, 9
 COMBOBOX cmb2, 110, 114, 92, 15, CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_AUTOHSCROLL | CBS_SORT | CBS_HASSTRINGS | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 DEFPUSHBUTTON "Ouvrir", 1, 208, 6, 56, 14, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Annuler", 2, 208, 24, 56, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Aid&e", pshHelp, 208, 46, 56, 14, WS_GROUP | WS_TABSTOP
 CHECKBOX "&Lecture seule", chx1, 208, 68, 55, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
}


SAVE_FILE DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 275, 134
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Enregistrer sous..."
FONT 8, "MS Shell Dlg"
{
 LTEXT "&Nom de fichier :", 1090, 6, 6, 76, 9
 EDITTEXT edt1, 6, 16, 90, 12, ES_AUTOHSCROLL | ES_OEMCONVERT | WS_BORDER | WS_TABSTOP
 LISTBOX 1120, 6, 32, 90, 68, LBS_STANDARD | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_DISABLENOSCROLL | WS_TABSTOP
 LTEXT "&Répertoires :", -1, 110, 6, 92, 9
 LTEXT "", 1088, 110, 18, 92, 9, SS_NOPREFIX | WS_GROUP
 LISTBOX 1121, 110, 32, 92, 68, LBS_STANDARD | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_DISABLENOSCROLL | WS_TABSTOP
 LTEXT "Lister les fichiers de &type :", 1089, 6, 104, 90, 9
 COMBOBOX cmb1, 6, 114, 90, 36, CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 LTEXT "&Lecteurs :", 1091, 110, 104, 92, 9
 COMBOBOX cmb2, 110, 114, 92, 68, CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_AUTOHSCROLL | CBS_SORT | CBS_HASSTRINGS | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 DEFPUSHBUTTON "Enregistrer", 1, 208, 6, 60, 14, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Annuler", 2, 208, 24, 60, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Aid&e", pshHelp, 208, 46, 60, 14, WS_GROUP | WS_TABSTOP
 CHECKBOX "Lecture seule", chx1, 208, 68, 55, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
}


PRINT DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 237, 134
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Imprimer"
FONT 8, "MS Shell Dlg"
{
 LTEXT "Imprimante :", 1088, 6, 6, 40, 9
 LTEXT "", 1089, 60, 6, 150, 9
 GROUPBOX "Zone d'impression", grp1, 6, 30, 160, 65, BS_GROUPBOX
 RADIOBUTTON "&Tout", rad1, 16, 45, 60, 12
 RADIOBUTTON "&Sélection", rad2, 16, 60, 60, 12
 RADIOBUTTON "&Pages", rad3, 16, 75, 41, 12
 DEFPUSHBUTTON "Imprimer", 1, 173, 6, 56, 14, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Annuler", 2, 173, 24, 56, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Configurer...", psh1, 173, 46, 56, 14, WS_GROUP | WS_TABSTOP
 LTEXT "&De :", 1090, 64, 77, 30, 9
 LTEXT "&à :", 1091, 120, 77, 30, 9
 LTEXT "&Qualité d'impression :", 1092, 7, 102, 69, 9
 COMBOBOX cmb1, 78, 100, 88, 13, CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_AUTOHSCROLL | CBS_SORT | CBS_HASSTRINGS | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 CHECKBOX "Imprimer dans un &fichier", chx1, 7, 117, 93, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
 CHECKBOX "Copies t&riées", chx2, 106, 118, 63, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
}


PRINT_SETUP DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 264, 151
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Configuration de l'impression"
FONT 8, "MS Shell Dlg"
{
 GROUPBOX "Imprimante", grp1, 6, 6, 180, 74, BS_GROUPBOX
 RADIOBUTTON "&Imprimante par défaut", rad1, 16, 22, 90, 12
 LTEXT "[aucune]", 1088, 35, 35, 120, 9
 RADIOBUTTON "Imprimante &spécifique", rad2, 16, 46, 90, 12
 COMBOBOX cmb1, 35, 60, 146, 17, CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_AUTOHSCROLL | CBS_SORT | CBS_HASSTRINGS | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 DEFPUSHBUTTON "OK", 1, 206, 6, 56, 14, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Annuler", 2, 206, 24, 56, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Options...", psh1, 206, 46, 56, 14, WS_GROUP | WS_TABSTOP
 GROUPBOX "Orientation", grp2, 6, 90, 100, 50, BS_GROUPBOX
 RADIOBUTTON "&Portrait", rad3, 50, 105, 40, 12
 RADIOBUTTON "Pa&ysage", rad4, 50, 120, 40, 12
 ICON "LANDSCAP", stc10, 10, 100, 21, 20
 ICON "PORTRAIT", stc11, 10, 100, 21, 20
 GROUPBOX "Papier", grp3, 120, 90, 135, 50, BS_GROUPBOX
 LTEXT "&Taille :", 1089, 125, 103, 30, 9
 LTEXT "&Source :", 1090, 125, 121, 30, 9
 COMBOBOX cmb2, 155, 100, 92, 17, CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_AUTOHSCROLL | CBS_SORT | CBS_HASSTRINGS | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 COMBOBOX cmb3, 155, 118, 92, 17, CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_AUTOHSCROLL | CBS_SORT | CBS_HASSTRINGS | WS_BORDER | WS_VSCROLL | WS_TABSTOP
}


CHOOSE_FONT DIALOG DISCARDABLE  13, 54, 264, 147
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Police"
FONT 8, "MS Shell Dlg"
{
    LTEXT           "&Police :",stc1 ,6,3,40,9
    COMBOBOX        cmb1 ,6,13,94,54,  CBS_OWNERDRAWFIXED | CBS_HASSTRINGS | CBS_DISABLENOSCROLL |
                    CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP | CBS_SIMPLE
    LTEXT           "St&yle :",stc2 ,108,3,44,9
    COMBOBOX        cmb2,108,13,64,54, CBS_OWNERDRAWFIXED | CBS_HASSTRINGS | CBS_DISABLENOSCROLL |
                    WS_VSCROLL | WS_TABSTOP | CBS_SIMPLE
    LTEXT           "&Taille :",stc3,179,3,30,9
    COMBOBOX        cmb3,179,13,32,54, CBS_OWNERDRAWFIXED | CBS_HASSTRINGS | CBS_DISABLENOSCROLL |
                    WS_VSCROLL | WS_TABSTOP | CBS_SIMPLE | CBS_SORT
    DEFPUSHBUTTON   "OK",IDOK,218,6,40,14,WS_GROUP
    PUSHBUTTON      "Annuler",IDCANCEL,218,23,40,14,WS_GROUP
    PUSHBUTTON      "A&ppliquer", psh3,218,40,40,14,WS_GROUP
    PUSHBUTTON      "Aid&e" , pshHelp,218,57,40,14,WS_GROUP
    GROUPBOX        "Effets",grp1,6,72,84,34,WS_GROUP
    CHECKBOX        "&Barré", chx1, 10,82,50,10, BS_AUTOCHECKBOX | WS_TABSTOP
    CHECKBOX        "&Souligné", chx2, 10,94,50,10, BS_AUTOCHECKBOX
    LTEXT           "&Couleur :", stc4 ,6,110,30,9
    COMBOBOX        cmb4,6,120,84,100,CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_HASSTRINGS |
                    CBS_AUTOHSCROLL |  WS_BORDER | WS_VSCROLL | WS_TABSTOP
    GROUPBOX        "Aperçu",grp2,98,72,120,36,WS_GROUP
    CTEXT           "\nÀàCcÇçEeÉéÈèÊêIiÏïÎîLlUuÙù12",stc5,103,80,109,24,SS_NOPREFIX | NOT WS_VISIBLE
    LTEXT           "Sc&ript :",stc7 ,98,110,80,9
    COMBOBOX        cmb5,98,120,120,90,CBS_DROPDOWNLIST | CBS_HASSTRINGS |
		    CBS_AUTOHSCROLL |   WS_VSCROLL | WS_TABSTOP
}


CHOOSE_COLOR DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 300, 185
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Couleurs"
FONT 8, "MS Shell Dlg"
{
 LTEXT "Couleurs de base :",   1088, 4,    4,  140, 10
 LTEXT "Couleurs personnalisées :",  1089, 4,   106, 140, 10
 LTEXT "Couleur | &Uni",  1090, 150, 151,  48, 10
 LTEXT   "&Rouge :", 726 /*1094*/,249,126,24,10
 EDITTEXT 706, 275,124,21,12, WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT   "&Vert :",727/*1095*/,249,140,24,10
 EDITTEXT 707, 275,138,21,12, WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT   "Bl&eu :",728 /*1096*/,249,154,24,10
 EDITTEXT 708, 275,152,21,12, WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT  "&Teinte :" ,723 /*1091*/,202,126,22,10
 EDITTEXT 703, 226,124,21,12, WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT  "&Satur. :" ,724 /*1092*/,202,140,22,10
 EDITTEXT 704, 226,138,21,12, WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT  "&Lum. :" ,725 /*1093*/,202,154,22,10
 EDITTEXT 705, 226,152,21,12, WS_BORDER | WS_GROUP | WS_TABSTOP
 CONTROL "" ,720,"STATIC",SS_SIMPLE|WS_TABSTOP|WS_GROUP,4,14,140,86
 CONTROL "" ,721,"STATIC",SS_SIMPLE|WS_TABSTOP|WS_GROUP,4,116,140,28
 CONTROL "" ,710,"STATIC",WS_BORDER|SS_SIMPLE|WS_TABSTOP|WS_GROUP, 152,4,118,116
 CONTROL "" ,702,"STATIC",SS_SIMPLE|WS_TABSTOP|WS_GROUP, 278,4,8,116
 CONTROL "" ,709,"STATIC",SS_SIMPLE|WS_TABSTOP|WS_GROUP, 152,124,40,26
 DEFPUSHBUTTON "OK",  1,  4, 166, 44, 14, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Annuler", 2, 52, 166, 44, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Aid&e", pshHelp,100,166, 44, 14
 PUSHBUTTON "&Ajouter aux couleurs personnalisées", 712/*1024*/, 152, 166, 142, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Définir les couleurs personnalisées >>", 719/*1025*/,   4, 149, 142, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON  "&i",713,300,200,4,14   /* just a dummy:  'i' is  like  &i in "sol&id" */
}


FINDDLGORD DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 236, 62
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Rechercher"
FONT 8, "MS Shell Dlg"
{
 LTEXT "&Rechercher :", -1, 4, 8, 42, 8
 EDITTEXT edt1, 47, 7, 128, 12, ES_AUTOHSCROLL | WS_BORDER | WS_GROUP | WS_TABSTOP
 CHECKBOX "Mots &entiers seulement", chx1, 4, 26, 100, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
 CHECKBOX "Respecter la &casse", chx2, 4, 42, 74, 12, BS_AUTOCHECKBOX | WS_TABSTOP
 GROUPBOX "Direction", grp1, 103, 26, 72, 28
 CONTROL "&Haut", rad1, "BUTTON", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE | WS_GROUP | WS_TABSTOP, 108, 38, 30, 12
 CONTROL "&Bas", rad2, "BUTTON", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 140, 38, 30, 12

 DEFPUSHBUTTON "&Suivant", 1, 182, 5, 50, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Annuler", 2, 182, 23, 50, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Aid&e", pshHelp, 182, 45, 50, 14, WS_GROUP | WS_TABSTOP
}


REPLACEDLGORD DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 230, 94
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Remplacer"
FONT 8, "MS Shell Dlg"
{
 LTEXT "&Rechercher :", -1, 4, 7, 48, 8
 EDITTEXT edt1, 56, 5, 106, 12, ES_AUTOHSCROLL | WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT "R&emplacer par :", -1, 4, 24, 53, 8
 EDITTEXT edt2, 56, 22, 106, 12, ES_AUTOHSCROLL | WS_BORDER | WS_GROUP | WS_TABSTOP
 CHECKBOX "Mots &entiers uniquement", chx1, 5, 44, 104, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
 CHECKBOX "Respecter la &casse", chx2, 5, 60, 74, 12, BS_AUTOCHECKBOX | WS_TABSTOP

 DEFPUSHBUTTON "&Suivant", 1, 168, 4, 56, 14, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Remplacer", psh1, 168, 21, 56, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Remplacer &tout", psh2, 168, 38, 56, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Annuler", IDCANCEL, 168, 55, 56, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Aid&e", pshHelp, 168, 75, 56, 14, WS_GROUP | WS_TABSTOP
}


PRINT32 DIALOG LOADONCALL MOVEABLE DISCARDABLE  32, 32, 288, 196
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU |
      DS_CONTEXTHELP | DS_3DLOOK
CAPTION "Impression"
FONT 8, "MS Shell Dlg"
{
    DEFPUSHBUTTON   "OK",             IDOK,     178,176, 48,14, WS_GROUP | BS_DEFPUSHBUTTON
    PUSHBUTTON      "Annuler",        IDCANCEL, 231,176, 48,14, WS_GROUP
    PUSHBUTTON      "Aid&e",          pshHelp,  55, 176, 48,14, WS_GROUP

    GROUPBOX        "Imprimante",     grp4,   8,  4, 272,84, WS_GROUP
    CONTROL         "Imprimer dans un fichier", chx1, "Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,185,44,93,14
    PUSHBUTTON      "&Propriétés",     psh2, 214, 17,  60,14, WS_GROUP
    LTEXT           "&Nom :",          stc6,  16, 20,  36,8
    COMBOBOX                          cmb4,  65, 18, 145, 15, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
    LTEXT           "État :",          stc8,  16, 36,  36,10, SS_NOPREFIX
    LTEXT           "État fictif",    stc12, 65, 36, 112,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Type :",          stc7,  16, 48,  36,10, SS_NOPREFIX
    LTEXT           "Type fictif",     stc11, 65, 48, 111,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Emplacement :",   stc10, 16, 60,  47,10, SS_NOPREFIX
    LTEXT           "Emplacement fictif", stc14, 65, 60, 211,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Commentaire :",   stc9,  16, 72,  47, 10, SS_NOPREFIX
    LTEXT           "Remarque fictive",   stc13, 65, 72, 144, 10, SS_NOPREFIX | SS_LEFTNOWORDWRAP

    GROUPBOX        "Copies",         grp2, 160, 92, 120,73, WS_GROUP
    LTEXT           "Nombre de copies :",stc5,168,108,68,8
    ICON            "",               ico3, 183,121,76,24, WS_GROUP | SS_CENTERIMAGE
    CONTROL         "Copies assemblées",chx2,"Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,167,148,77,12
    EDITTEXT                          edt3, 240,106,  32,12, WS_GROUP | ES_NUMBER

    GROUPBOX        "Zone d'impression",  grp1,   8,92,  144,73, WS_GROUP
    CONTROL         "&Tout",         rad1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,16,108,64,12
    CONTROL         "&Pages",          rad3,"Button",BS_AUTORADIOBUTTON,16,124,36,12
    CONTROL         "&Sélection",      rad2,"Button",BS_AUTORADIOBUTTON,16,140,64,12
    EDITTEXT                          edt1,  74,124,  26,12, WS_GROUP | ES_NUMBER
    EDITTEXT                          edt2, 118,124,  26,12, WS_GROUP | ES_NUMBER
    RTEXT           "&de :",           stc2,  52,127,  20,8
    RTEXT           "&à :",            stc3, 100,127,  16,8
}

PRINT32_SETUP DIALOG LOADONCALL MOVEABLE DISCARDABLE  32, 32, 288, 178
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU |
      DS_CONTEXTHELP | DS_3DLOOK
CAPTION "Configuration de l'imprimante"
FONT 8, "MS Shell Dlg"
BEGIN
    DEFPUSHBUTTON   "OK",IDOK,180,156,48,14,WS_GROUP
    PUSHBUTTON      "Annuler",IDCANCEL,232,156,48,14
/*    PUSHBUTTON      "Réseau...", psh5, 284,156,48,14 */

    GROUPBOX        "Imprimante",     grp4,   8,  4, 272,84, WS_GROUP
    PUSHBUTTON      "&Propriétés",    psh2, 214, 17,  60,14, WS_GROUP
    LTEXT           "&Nom :",          stc6,  16, 20,  36,8
    COMBOBOX                          cmb1,  65, 18, 145,15,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
    LTEXT           "État :",          stc8,  16, 36,  36,10, SS_NOPREFIX
    LTEXT           "État fictif",        stc12, 65, 36, 210,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Type :",          stc7,  16, 48,  36,10, SS_NOPREFIX
    LTEXT           "Type fictif",        stc11, 65, 48, 210,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Emplacement :",   stc10, 16, 60,  47,10, SS_NOPREFIX
    LTEXT           "Emplacement fictif",        stc14, 65, 60, 210,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Commentaire :",   stc9,  16, 72,  47,10, SS_NOPREFIX
    LTEXT           "Commentaire fictif",        stc13, 65, 72, 210,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP

    GROUPBOX        "Papier",         grp2,   8, 92, 164,56, WS_GROUP
    LTEXT           "&Taille :",       stc2,  16,108,  36, 8
    COMBOBOX                          cmb2,  52,106, 112,112,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
    LTEXT           "Source :",        stc3,  16,128,  36, 8
    COMBOBOX                          cmb3,  52,126, 112,112,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP

    GROUPBOX        "Orientation",    grp1, 180, 92, 100,56, WS_GROUP
    ICON            "",               ico1, 195,112,  18,20, WS_GROUP
    CONTROL         "&Portrait",      rad1,"Button",BS_AUTORADIOBUTTON | WS_GROUP |WS_TABSTOP,224,106,52,12
    CONTROL         "Pa&ysage",       rad2,"Button",BS_AUTORADIOBUTTON,224,126,52,12
END

PAGESETUPDLGORD DIALOG LOADONCALL MOVEABLE DISCARDABLE 32, 32, 242, 240
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Mise en page"
FONT 8, "MS Shell Dlg"
BEGIN
  CONTROL "", rct1, "Static", SS_WHITERECT, 80, 8, 80, 80
  CONTROL "", rct2, "Static", SS_GRAYRECT, 160, 12, 4, 80
  CONTROL "", rct3, "Static", SS_GRAYRECT,  84, 88, 80, 4
  GROUPBOX "Papier", grp2, 8, 96, 228, 56, BS_GROUPBOX
  LTEXT "&Taille :", stc2, 16, 112, 36, 8
  COMBOBOX cmb2, 64, 110, 167, 15, CBS_SIMPLE|CBS_DROPDOWN|CBS_SORT|WS_GROUP|WS_TABSTOP|WS_VSCROLL
  LTEXT "&Bac :", stc3, 16, 132, 36, 8
  COMBOBOX cmb3, 64, 130, 167, 15, CBS_SIMPLE|CBS_DROPDOWN|CBS_SORT|WS_GROUP|WS_TABSTOP|WS_VSCROLL
  GROUPBOX "Orientation", grp1, 8, 156, 64, 56, BS_GROUPBOX
  AUTORADIOBUTTON "&Portrait", rad1, 16, 170, 52, 12, BS_AUTORADIOBUTTON
  AUTORADIOBUTTON "Pa&ysage", rad2, 16, 190, 52, 12, BS_AUTORADIOBUTTON
  GROUPBOX "Marges", grp4, 80, 156, 156, 56, BS_GROUPBOX
  LTEXT "&Gauche :", stc15, 88, 172, 29, 8
  EDITTEXT edt4, 119, 170, 39, 12, WS_TABSTOP|WS_GROUP|WS_BORDER
  LTEXT "&Droite :", stc16, 163, 172, 27, 8
  EDITTEXT edt6, 190, 170, 39, 12, WS_TABSTOP|WS_GROUP|WS_BORDER
  LTEXT "&Haut :", stc17, 88, 192, 21, 8
  EDITTEXT edt5, 119, 190, 39, 12, WS_TABSTOP|WS_GROUP|WS_BORDER
  LTEXT "&Bas :", stc18, 163, 192, 23, 8
  EDITTEXT edt7, 190, 190, 39, 12, WS_TABSTOP|WS_GROUP|WS_BORDER
  DEFPUSHBUTTON "OK", IDOK, 70, 220, 51, 14, BS_PUSHBUTTON
  PUSHBUTTON "Annuler", IDCANCEL, 125, 220, 51, 14
  PUSHBUTTON "&Imprimante...", psh3, 184, 220, 51, 14
END

NEWFILEOPENORD DIALOG LOADONCALL MOVEABLE DISCARDABLE 0, 0, 280, 164
STYLE DS_MODALFRAME | DS_CONTEXTHELP | WS_VISIBLE | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_CLIPCHILDREN
CAPTION "Ouvrir"
FONT 8, "MS Shell Dlg"
{
    LTEXT	"&Rechercher dans",IDC_LOOKINSTATIC,4,6,43,8, SS_NOTIFY
    COMBOBOX	IDC_LOOKIN,49,3,132,100,CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP

    LTEXT	"" , IDC_TOOLBARSTATIC, 181, 2, 102, 17, NOT WS_GROUP | NOT WS_VISIBLE
    LISTBOX	IDC_SHELLSTATIC,4,20,272,85, LBS_SORT | LBS_NOINTEGRALHEIGHT | LBS_MULTICOLUMN | WS_HSCROLL | NOT WS_VISIBLE

    LTEXT	"&Nom du fichier :",IDC_FILENAMESTATIC,5,112,50,8, SS_NOTIFY
    EDITTEXT	IDC_FILENAME,63,110,155,12,ES_AUTOHSCROLL

    LTEXT	"Fichiers du &type :",IDC_FILETYPESTATIC,5,128,56,8, SS_NOTIFY
    COMBOBOX	IDC_FILETYPE,63,126,155,15,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP

    CONTROL	"&Lecture seule",IDC_OPENREADONLY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,59,145,100,10

    DEFPUSHBUTTON	"Ouvrir",		 IDOK,222,110,50,14
    PUSHBUTTON		"Annuler",		 IDCANCEL,222,128,50,14
    PUSHBUTTON		"Aid&e",		 pshHelp,222,145,50,14
}

STRINGTABLE DISCARDABLE
{
    IDS_ABOUTBOX            "À propos du sélecteur de répertoires"
    IDS_DOCUMENTFOLDERS     "Répertoires des documents"
    IDS_PERSONAL            "Mes documents"
    IDS_FAVORITES           "Mes favoris"
    IDS_PATH                "Chemin système (path)"
    IDS_DESKTOP             "Bureau"
    IDS_FONTS               "Polices"
    IDS_MYCOMPUTER          "Poste de travail"
}

STRINGTABLE DISCARDABLE
{
    IDS_SYSTEMFOLDERS       "Répertoires système"
    IDS_LOCALHARDRIVES      "Disques locaux"
    IDS_FILENOTFOUND        "Fichier non trouvé"
    IDS_VERIFYFILE          "Veuillez vérifier que le nom de fichier indiqué est correct"
    IDS_CREATEFILE          "Ce fichier n'existe pas.\nSouhaitez-vous le créer ?"
    IDS_OVERWRITEFILE       "Ce fichier existe déjà.\nVoulez-vous le remplacer ?"
    IDS_INVALID_FILENAME_TITLE "Le chemin d'accès contient des caractères invalides"
    IDS_INVALID_FILENAME    "Un nom de fichier ne peut contenir aucun des caractères suivants :\n                          / : < > |"
    IDS_PATHNOTEXISTING     "Le chemin d'accès n'existe pas"
    IDS_FILENOTEXISTING     "Le fichier n'existe pas"
}

STRINGTABLE DISCARDABLE
{
    IDS_UPFOLDER         "Remonter d'un niveau"
    IDS_NEWFOLDER        "Créer un nouveau dossier"
    IDS_LISTVIEW         "Liste"
    IDS_REPORTVIEW       "Détails"
    IDS_TODESKTOP        "Voir le bureau"
}

STRINGTABLE DISCARDABLE
{
    PD32_PRINT_TITLE       "Imprimer"

    PD32_VALUE_UREADABLE                  "Entrée illisible"
    PD32_INVALID_PAGE_RANGE "Cette valeur n'est pas dans l'étendue de pages\n\
Veuillez indiquer une valeur entre %d et %d."
    PD32_FROM_NOT_ABOVE_TO                "Le champ « de » ne peut être plus grand \
que le champ « à »."
    PD32_MARGINS_OVERLAP                  "Les marges se chevauchent ou dépassent du papier\n\
Veuillez indiquer de nouvelles valeurs."
    PD32_NR_OF_COPIES_EMPTY               "Le champ « Nombre de copies » est vide.\n\
Veuillez entrer un nombre et r&essayer."
    PD32_TOO_LARGE_COPIES                 "Votre imprimante ne peut gérer autant de copies.\n\
Veuillez indiquer un nombre de copies entre 1 et %d."
    PD32_PRINT_ERROR                      "Une erreur d'impression s'est produite."
    PD32_NO_DEFAULT_PRINTER               "Imprimante par défaut non définie."
    PD32_CANT_FIND_PRINTER                "Impossible de trouver l'imprimante."
    PD32_OUT_OF_MEMORY                    "Pas assez de mémoire."
    PD32_GENERIC_ERROR                    "Une erreur s'est produite."
    PD32_DRIVER_UNKNOWN                   "Pilote d'imprimante inconnu."
    PD32_NO_DEVICES                       "Avant de pouvoir effectuer des opérations en relation avec l'impression \
comme la configuration de l'imprimante ou l'impression d'un document, vous devez installer une imprimante. \
Veuillez en installer une et réessayez."

    PD32_DEFAULT_PRINTER                  "Imprimante par défaut ; "
    PD32_NR_OF_DOCUMENTS_IN_QUEUE         "Il y a %d document(s) dans la file d'attente"
    PD32_MARGINS_IN_INCHES                "Marges (pouces)"
    PD32_MARGINS_IN_MILLIMETERS           "Marges (mm)"
    PD32_MILLIMETERS                      "mm"

    PD32_PRINTER_STATUS_READY             "Prêt"
    PD32_PRINTER_STATUS_PAUSED            "Suspendu ; "
    PD32_PRINTER_STATUS_ERROR             "Erreur ; "
    PD32_PRINTER_STATUS_PENDING_DELETION  "En attente de suppression ; "
    PD32_PRINTER_STATUS_PAPER_JAM         "Bourrage papier ; "
    PD32_PRINTER_STATUS_PAPER_OUT         "Plus de papier ; "
    PD32_PRINTER_STATUS_MANUAL_FEED       "Insertion manuelle du papier ; "
    PD32_PRINTER_STATUS_PAPER_PROBLEM     "Problème de papier ; "
    PD32_PRINTER_STATUS_OFFLINE           "L'imprimante n'est pas en ligne ; "
    PD32_PRINTER_STATUS_IO_ACTIVE         "E/S Active ; "
    PD32_PRINTER_STATUS_BUSY              "Occupée ; "
    PD32_PRINTER_STATUS_PRINTING          "En cours d'impression ; "
    PD32_PRINTER_STATUS_OUTPUT_BIN_FULL   "Le bac de sortie est plein ; "
    PD32_PRINTER_STATUS_NOT_AVAILABLE     "Non disponible ; "
    PD32_PRINTER_STATUS_WAITING           "En attente ; "
    PD32_PRINTER_STATUS_PROCESSING        "Traitement en cours ; "
    PD32_PRINTER_STATUS_INITIALIZING      "Démarrage en cours ; "
    PD32_PRINTER_STATUS_WARMING_UP        "Préchauffage ; "
    PD32_PRINTER_STATUS_TONER_LOW         "Toner presque vide ; "
    PD32_PRINTER_STATUS_NO_TONER          "Pas de toner ; "
    PD32_PRINTER_STATUS_PAGE_PUNT         "Abandon de page ; "
    PD32_PRINTER_STATUS_USER_INTERVENTION "Interrompu par utilisateur ; "
    PD32_PRINTER_STATUS_OUT_OF_MEMORY     "Plus assez de mémoire ; "
    PD32_PRINTER_STATUS_DOOR_OPEN         "La porte de l'imprimante est ouverte ; "
    PD32_PRINTER_STATUS_SERVER_UNKNOWN    "Serveur d'impression inconnu ; "
    PD32_PRINTER_STATUS_POWER_SAVE        "Mode économie d'énergie ; "
}

STRINGTABLE DISCARDABLE /* Font styles */
{
    IDS_FONT_REGULAR       "Normal"
    IDS_FONT_BOLD          "Gras"
    IDS_FONT_ITALIC        "Italique"
    IDS_FONT_BOLD_ITALIC   "Gras italique"
}


STRINGTABLE DISCARDABLE /* Color names */
{
    IDS_COLOR_BLACK     "Noir"
    IDS_COLOR_MAROON    "Marron"
    IDS_COLOR_GREEN     "Vert"
    IDS_COLOR_OLIVE     "Olive"
    IDS_COLOR_NAVY      "Bleu marine"
    IDS_COLOR_PURPLE    "Pourpre"
    IDS_COLOR_TEAL      "Sarcelle"
    IDS_COLOR_GRAY      "Gris"
    IDS_COLOR_SILVER    "Argent"
    IDS_COLOR_RED       "Rouge"
    IDS_COLOR_LIME      "Citron vert"
    IDS_COLOR_YELLOW    "Jaune"
    IDS_COLOR_BLUE      "Bleu"
    IDS_COLOR_FUCHSIA   "Fuchsia"
    IDS_COLOR_AQUA      "Eau"
    IDS_COLOR_WHITE     "Blanc"
}

STRINGTABLE DISCARDABLE
{
    IDS_FONT_SIZE   "Sélectionnez une taille de police entre %d et %d points."
    IDS_SAVE_BUTTON "&Enregistrer"
    IDS_SAVE_IN     "Enregistrer &dans :"
    IDS_SAVE        "Enregistrer"
    IDS_SAVE_AS     "Enregistrer sous"
    IDS_OPEN_FILE   "Ouvrir fichier"
}
