/*
 * Copyright 1995 Alexandre Julliard
 * Copyright 2008 Michael Stefaniuc
 *
 * 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
 */

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

LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL

#pragma code_page(65001)

OPEN_FILE DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 275, 134
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Deschide"
FONT 8, "MS Shell Dlg"
{
 LTEXT "&Nume fișier:", 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 "&Dosare:", -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 "&Tip de fișier:", 1089, 6, 104, 90, 9
 COMBOBOX cmb1, 6, 114, 90, 36, CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 LTEXT "D&iscuri:", 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 "Deschide", 1, 208, 6, 56, 14, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Renunță", 2, 208, 24, 56, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Ajutor", pshHelp, 208, 46, 56, 14, WS_GROUP | WS_TABSTOP
 CHECKBOX "&Numai-citire", chx1, 208, 68, 50, 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 "Salvare ca..."
FONT 8, "MS Shell Dlg"
{
 LTEXT "&Nume fișier:", 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 "&Dosare:", -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 "&Tip de fișier:", 1089, 6, 104, 90, 9
 COMBOBOX cmb1, 6, 114, 90, 36, CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 LTEXT "D&iscuri:", 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 "Salvează ca", 1, 208, 6, 56, 14, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Renunță", 2, 208, 24, 56, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Ajutor", pshHelp, 208, 46, 56, 14, WS_GROUP | WS_TABSTOP
 CHECKBOX "&Numai-citire", chx1, 208, 68, 50, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
}


PRINT DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 264, 134
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Tipărire"
FONT 8, "MS Shell Dlg"
{
 LTEXT "Imprimantă:", 1088, 6, 6, 40, 9
 LTEXT "", 1089, 60, 6, 150, 9
 GROUPBOX "Interval tipărire", grp1, 6, 30, 160, 65, BS_GROUPBOX
 RADIOBUTTON "&Toate", rad1, 16, 45, 60, 12
 RADIOBUTTON "S&elecție", rad2, 16, 60, 60, 12
 RADIOBUTTON "&Pagini", rad3, 16, 75, 60, 12
 DEFPUSHBUTTON "Tipăreşte", 1, 206, 6, 56, 14, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Renunță", 2, 206, 24, 56, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Setează", psh1, 206, 46, 56, 14, WS_GROUP | WS_TABSTOP
 LTEXT "&De la:", 1090, 60, 80, 30, 9
 LTEXT "&La:", 1091, 120, 80, 30, 9
 LTEXT "&Calitate tipărire:", 1092, 6, 100, 76, 9
 COMBOBOX cmb1, 80, 100, 92, 68, CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_AUTOHSCROLL | CBS_SORT | CBS_HASSTRINGS | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 CHECKBOX "Tipăreşte în fişier", chx1, 20, 100, 50, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
 CHECKBOX "Comprimat", chx2, 160, 100, 50, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
}


PRINT_SETUP DIALOG LOADONCALL MOVEABLE DISCARDABLE 36, 24, 264, 134
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Setări tipărire"
FONT 8, "MS Shell Dlg"
{
 GROUPBOX "Imprimantă", grp1, 6, 10, 180, 65, BS_GROUPBOX
 RADIOBUTTON "&Imprimantă implicită", rad1, 16, 20, 80, 12
 LTEXT "[nimic]", 1088, 35, 35, 120, 9
 RADIOBUTTON "I&mprimantă specifică", rad2, 16, 50, 80, 12
 COMBOBOX cmb1, 35, 65, 149, 68, CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_AUTOHSCROLL | CBS_SORT | CBS_HASSTRINGS | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 DEFPUSHBUTTON "OK", IDOK, 206, 6, 56, 14, BS_DEFPUSHBUTTON | WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Renunță", IDCANCEL, 206, 24, 56, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Setează", psh1, 206, 46, 56, 14, WS_GROUP | WS_TABSTOP
 GROUPBOX "Orientare", grp2, 6, 85, 100, 50, BS_GROUPBOX
 RADIOBUTTON "P&ortret", rad3, 50, 100, 40, 12
 RADIOBUTTON "&Peisaj", rad4, 50, 115, 40, 12
 ICON "LANDSCAP", stc10, 10, 95, 32, 32
 ICON "PORTRAIT", stc11, 10, 95, 32, 32
 GROUPBOX "Hârtie", grp3, 120, 85, 180, 50, BS_GROUPBOX
 LTEXT "&Mărime", 1089, 130, 95, 30, 9
 LTEXT "&Sursă", 1090, 130, 110, 30, 9
 COMBOBOX cmb2, 155, 95, 92, 68, CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_AUTOHSCROLL | CBS_SORT | CBS_HASSTRINGS | WS_BORDER | WS_VSCROLL | WS_TABSTOP
 COMBOBOX cmb3, 155, 110, 92, 68, 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 "Font"
FONT 8, "MS Shell Dlg"
{
    LTEXT           "&Font:",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           "&Stil font:",stc2 ,108,3,44,9
    COMBOBOX        cmb2,108,13,64,54, CBS_OWNERDRAWFIXED | CBS_HASSTRINGS | CBS_DISABLENOSCROLL |
                    WS_VSCROLL | WS_TABSTOP | CBS_SIMPLE
    LTEXT           "&Mărime:",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 | WS_TABSTOP | BS_DEFPUSHBUTTON
    PUSHBUTTON      "Renunță",IDCANCEL,218,23,40,14,WS_GROUP | WS_TABSTOP
    PUSHBUTTON      "A&plică", psh3,218,40,40,14,WS_GROUP | WS_TABSTOP
    PUSHBUTTON      "&Ajutor" , pshHelp,218,57,40,14,WS_GROUP | WS_TABSTOP
    GROUPBOX        "Efecte",grp1,6,72,84,34,WS_GROUP
    CHECKBOX        "&Linie mijloc", chx1, 10,82,50,10, BS_AUTOCHECKBOX | WS_TABSTOP
    CHECKBOX        "&Subliniat", chx2, 10,94,50,10, BS_AUTOCHECKBOX
    LTEXT           "&Culoare:", 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        "Eșantion",grp2,98,72,120,36,WS_GROUP
    CTEXT           "AaBbYyZz",stc5,103,80,109,24,SS_NOPREFIX | NOT WS_VISIBLE
    LTEXT           "Scr&ipt:",stc7 ,98,114,40,9
    COMBOBOX        cmb5,98,124,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 "Culoare"
FONT 8, "MS Shell Dlg"
{
 LTEXT "Culori de &basă:",   1088, 4,    4,  140, 10
 LTEXT "&Culori personalizate:",  1089, 4,   106, 140, 10
 LTEXT "Culoare |  Sol&id",  1090, 150, 151,  48, 10
 LTEXT   "&Roșu:", 726 /*1094*/,249,126,24,10
 EDITTEXT 706, 275,124,21,12, WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT   "&Verde:",727/*1095*/,249,140,24,10
 EDITTEXT 707, 275,138,21,12, WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT   "&Albastru:",728 /*1096*/,249,154,24,10
 EDITTEXT 708, 275,152,21,12, WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT  "&Nuanță:" ,723 /*1091*/,202,126,22,10
 EDITTEXT 703, 226,124,21,12, WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT  "&Sat:" ,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 "Renunță", 2, 52, 166, 44, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Ajutor", pshHelp,100,166, 44, 14
 PUSHBUTTON "&Adaugă culori personalizate",    712/*1024*/, 152, 166, 142, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Definește colori personalizate >>", 719/*1025*/,   4, 150, 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 "Caută"
FONT 8, "MS Shell Dlg"
{
 LTEXT "&Caută:", -1, 4, 8, 42, 8
 EDITTEXT edt1, 47, 7, 128, 12, ES_AUTOHSCROLL | WS_BORDER | WS_GROUP | WS_TABSTOP
 CHECKBOX "&Numai cuvinte întregi", chx1, 4, 26, 100, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
 CHECKBOX "Sensibil la registru", chx2, 4, 42, 100, 12, BS_AUTOCHECKBOX | WS_TABSTOP
 GROUPBOX "Direcție", grp1, 107, 26, 68, 28
 CONTROL "&Sus", rad1, "BUTTON", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE | WS_GROUP | WS_TABSTOP, 111, 38, 30, 12
 CONTROL "&Jos", rad2, "BUTTON", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 138, 38, 30, 12

 DEFPUSHBUTTON "Caută &înainte", IDOK, 182,  5, 50, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
 PUSHBUTTON "Renunță", IDCANCEL , 182, 23, 50, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Ajutor", 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 "Înlocuire"
FONT 8, "MS Shell Dlg"
{
 LTEXT "Caută:", -1, 4, 9, 48, 8
 EDITTEXT edt1, 54, 7, 114, 12, ES_AUTOHSCROLL | WS_BORDER | WS_GROUP | WS_TABSTOP
 LTEXT "În&locuieşte cu:", -1, 4, 26, 48, 8
 EDITTEXT edt2, 54, 24, 114, 12, ES_AUTOHSCROLL | WS_BORDER | WS_GROUP | WS_TABSTOP
 CHECKBOX "&Numai cuvinte întregi", chx1, 5, 46, 100, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
 CHECKBOX "Sensibil la registru", chx2, 5, 62, 100, 12, BS_AUTOCHECKBOX | WS_TABSTOP

 DEFPUSHBUTTON "Caută &înainte", IDOK, 174,  4, 50, 14, WS_GROUP | WS_TABSTOP | BS_DEFPUSHBUTTON
 PUSHBUTTON "&Înlocuieşte", psh1 , 174, 21, 50, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Înlocuieşte &tot", psh2 , 174, 38, 50, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "Renunță", IDCANCEL , 174, 55, 50, 14, WS_GROUP | WS_TABSTOP
 PUSHBUTTON "&Ajutor", pshHelp , 174, 75, 50, 14, WS_GROUP | WS_TABSTOP
}


PRINT32 DIALOG LOADONCALL MOVEABLE DISCARDABLE  32, 32, 288, 186
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU |
      DS_CONTEXTHELP | DS_3DLOOK
CAPTION "Tipărire"
FONT 8, "MS Shell Dlg"
{
    DEFPUSHBUTTON   "OK",     IDOK,     180,164, 48,14, WS_GROUP | BS_DEFPUSHBUTTON
    PUSHBUTTON      "Renunță", IDCANCEL, 232,164, 48,14, WS_GROUP
    PUSHBUTTON      "&Ajutor",  pshHelp,  50, 161, 48,14, WS_GROUP

    GROUPBOX        "Imprimantă",     grp4,   8,  4, 272,84, WS_GROUP
    CONTROL         "Tipăreşte în &fişier",chx1, "Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,212,70,64,12
    PUSHBUTTON      "&Proprietăți",   psh2, 212, 17,  60,14, WS_GROUP
    LTEXT           "&Nume:",         stc6,  16, 20,  36,8
    COMBOBOX                          cmb4,  52, 18, 152,152,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
    LTEXT           "Stare:",         stc8,  16, 36,  36,10, SS_NOPREFIX
    LTEXT           "Dummy State",    stc12, 52, 36, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Tip:",           stc7,  16, 48,  36,10, SS_NOPREFIX
    LTEXT           "Dummy Type",     stc11, 52, 48, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Loc:",           stc10, 16, 60,  36,10, SS_NOPREFIX
    LTEXT           "Dummy Location", stc14, 52, 60, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Comentariu:",    stc9,  16, 72,  36,10, SS_NOPREFIX
    LTEXT           "Dummy Remark",   stc13, 52, 72, 152,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP

    GROUPBOX        "Copii",          grp2, 160, 92, 120,64, WS_GROUP
    LTEXT           "Număr de &copii:",stc5,168,108,68,8
    ICON            "",               ico3, 162,124,  76,24, WS_GROUP | SS_CENTERIMAGE
    CONTROL         "C&olaționate",   chx2,"Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,240,130,36,12
    EDITTEXT                          edt3, 240,106,  32,12, WS_GROUP | ES_NUMBER

    GROUPBOX        "Interval tipărire",grp1,   8,92,  144,64, WS_GROUP
    CONTROL         "&Toate",         rad1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,16,106,64,12
    CONTROL         "Pa&ginile",      rad3,"Button",BS_AUTORADIOBUTTON,16,122,36,12
    CONTROL         "&Selecție",      rad2,"Button",BS_AUTORADIOBUTTON,16,138,64,12
    EDITTEXT                          edt1,  74,122,  26,12, WS_GROUP | ES_NUMBER
    EDITTEXT                          edt2, 118,122,  26,12, WS_GROUP | ES_NUMBER
    RTEXT           "&de la:",        stc2,  52,124,  20,8
    RTEXT           "&la:",           stc3, 100,124,  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 "Setări tipărire"
FONT 8, "MS Shell Dlg"
BEGIN
    DEFPUSHBUTTON   "OK",IDOK,180,156,48,14,WS_GROUP
    PUSHBUTTON      "Renunță",IDCANCEL,232,156,48,14
/*    PUSHBUTTON      "Network...", psh5, 284,156,48,14 */

    GROUPBOX        "Imprimantă",     grp4,   8,  4, 272,84, WS_GROUP
    PUSHBUTTON      "&Proprietăți",   psh2, 212, 17,  60,14, WS_GROUP
    LTEXT           "&Nume:",         stc6,  16, 20,  36,8
    COMBOBOX                          cmb1,  52, 18, 152,152,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
    LTEXT           "Stare:",         stc8,  16, 36,  36,10, SS_NOPREFIX
    LTEXT           "[nimic]",        stc12, 52, 36, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Tip:",           stc7,  16, 48,  36,10, SS_NOPREFIX
    LTEXT           "[nimic]",        stc11, 52, 48, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Loc:",           stc10, 16, 60,  36,10, SS_NOPREFIX
    LTEXT           "[nimic]",        stc14, 52, 60, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
    LTEXT           "Comentariu:",    stc9,  16, 72,  36,10, SS_NOPREFIX
    LTEXT           "[nimic]",        stc13, 52, 72, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP

    GROUPBOX        "Hârtie",         grp2,   8, 92, 164,56, WS_GROUP
    LTEXT           "&Mărime:",       stc2,  16,108,  36, 8
    COMBOBOX                          cmb2,  52,106, 112,112,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
    LTEXT           "&Sursă:",        stc3,  16,128,  36, 8
    COMBOBOX                          cmb3,  52,126, 112,112,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP

    GROUPBOX        "Orientare",      grp1, 180, 92, 100,56, WS_GROUP
    ICON            "",               ico1, 195,112,  18,20, WS_GROUP
    CONTROL         "P&ortret",       rad1,"Button",BS_AUTORADIOBUTTON | WS_GROUP |WS_TABSTOP,224,106,52,12
    CONTROL         "&Peisaj",        rad2,"Button",BS_AUTORADIOBUTTON,224,126,52,12
END

PAGESETUPDLGORD DIALOG LOADONCALL MOVEABLE DISCARDABLE 32, 32, 240, 240
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Setare Pagină"
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 "Hârtie", grp2, 8, 96, 224, 56, BS_GROUPBOX
  LTEXT "&Mărime:", stc2, 16, 112, 36, 8
  COMBOBOX cmb2, 64, 110, 160, 160, CBS_SIMPLE|CBS_DROPDOWN|CBS_SORT|WS_GROUP|WS_TABSTOP|WS_VSCROLL
  LTEXT "S&ertar:", stc3, 16, 132, 36, 8
  COMBOBOX cmb3, 64, 130, 160, 160, CBS_SIMPLE|CBS_DROPDOWN|CBS_SORT|WS_GROUP|WS_TABSTOP|WS_VSCROLL
  GROUPBOX "Orientare", grp1, 8, 156, 64, 56, BS_GROUPBOX
  AUTORADIOBUTTON "P&ortret", rad1, 16, 170, 52, 12, BS_AUTORADIOBUTTON
  AUTORADIOBUTTON "&Peisaj", rad2, 16, 190, 52, 12, BS_AUTORADIOBUTTON
  GROUPBOX "Margini", grp4, 80, 156, 152, 56, BS_GROUPBOX
  LTEXT "S&tânga:", stc15, 84, 172, 27, 8
  EDITTEXT edt4, 111, 170, 39, 12, WS_TABSTOP|WS_GROUP|WS_BORDER|ES_NUMBER
  LTEXT "&Dreapta:", stc16, 159, 172, 27, 8
  EDITTEXT edt6, 187, 170, 39, 12, WS_TABSTOP|WS_GROUP|WS_BORDER|ES_NUMBER
  LTEXT "&Sus:", stc17, 84, 192, 21, 8
  EDITTEXT edt5, 111, 190, 39, 12, WS_TABSTOP|WS_GROUP|WS_BORDER|ES_NUMBER
  LTEXT "&Jos:", stc18, 159, 192, 23, 8
  EDITTEXT edt7, 187, 190, 39, 12, WS_TABSTOP|WS_GROUP|WS_BORDER|ES_NUMBER
  DEFPUSHBUTTON "OK", IDOK, 71, 220, 50, 14, BS_PUSHBUTTON
  PUSHBUTTON "Renunță", IDCANCEL, 126, 220, 50, 14
  PUSHBUTTON "&Imprimantă...", psh3, 184, 220, 48, 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 "Deschide"
FONT 8, "MS Shell Dlg"
{
    LTEXT       "Caută &în:",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       "&Nume fișier:",IDC_FILENAMESTATIC,5,112,46,8, SS_NOTIFY
    EDITTEXT    IDC_FILENAME,54,110,155,12,ES_AUTOHSCROLL

    LTEXT       "&Tip de fișier:",IDC_FILETYPESTATIC,5,128,42,8, SS_NOTIFY
    COMBOBOX    IDC_FILETYPE,54,126,155,53,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP

    CONTROL     "Deschide pentru &numai-citire",IDC_OPENREADONLY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,54,145,110,10

    DEFPUSHBUTTON "&Deschide", IDOK,222,110,50,14
    PUSHBUTTON    "Renunță", IDCANCEL,222,128,50,14
    PUSHBUTTON    "&Ajutor", pshHelp,222,145,50,14
}

STRINGTABLE DISCARDABLE
{
    IDS_ABOUTBOX            "&Despre testul FolderPicker"
    IDS_DOCUMENTFOLDERS     "Dosarele de documente"
    IDS_PERSONAL            "Documentele mele"
    IDS_FAVORITES           "Favoritele mele"
    IDS_PATH                "Calea de sistem"
    IDS_DESKTOP             "Birou"
    IDS_FONTS               "Fonturi"
    IDS_MYCOMPUTER          "Computerul meu"
}

STRINGTABLE DISCARDABLE
{
    IDS_SYSTEMFOLDERS       "Dosarele de sistem"
    IDS_LOCALHARDRIVES      "Discurile locale"
    IDS_FILENOTFOUND        "Fișierul nu a fost găsit"
    IDS_VERIFYFILE          "Verificați vă rog că numele de fișier este corect"
    IDS_CREATEFILE          "Fişierul nu există.\nDoriți să creați acest fișier?"
    IDS_OVERWRITEFILE       "Fișierul există deja.\nDoriți să îl înlocuiți?"
    IDS_INVALID_FILENAME_TITLE "Caracter(e) invalid(e) în cale"
    IDS_INVALID_FILENAME    "Numele de fișier nu poate conține caracterele următoare:\n                          / : < > |"
    IDS_PATHNOTEXISTING     "Calea nu există"
    IDS_FILENOTEXISTING     "Fişierul nu există"
}

STRINGTABLE DISCARDABLE
{
    IDS_UPFOLDER         "Un nivel de dosare mai sus"
    IDS_NEWFOLDER        "Creează un dosar nou"
    IDS_LISTVIEW         "Listă"
    IDS_REPORTVIEW       "Detalii"
    IDS_TODESKTOP        "Navigează la birou"
}

STRINGTABLE DISCARDABLE
{
    PD32_PRINT_TITLE        "Tipărire"

    PD32_VALUE_UREADABLE    "Înregistrare necitibilă"
    PD32_INVALID_PAGE_RANGE "Această valoare nu este inclusă în intervalul de tipărire.\n Introduceți vă rog un număr între %d și %d."
    PD32_FROM_NOT_ABOVE_TO  "Numărul 'de la' nu poate fi mai mare decât numărul 'la'."
    PD32_MARGINS_OVERLAP    "Marginile se suprapun sau sunt in afara hârtiei.\nIntroduceți vă rog din nou marginile."
    PD32_NR_OF_COPIES_EMPTY "Numărul de copii nu poate fi nul."
    PD32_TOO_LARGE_COPIES   "Imprimanta nu suportă un număr așa de mare de copii.\nIntroduceți vă rog un număr între 1 și %d."
    PD32_PRINT_ERROR        "S-a produs o eroare la tipărire."
    PD32_NO_DEFAULT_PRINTER "Imprimanta implicită n-a fost definită."
    PD32_CANT_FIND_PRINTER  "Nu pot găsi imprimanta."
    PD32_OUT_OF_MEMORY      "Memorie insuficientă."
    PD32_GENERIC_ERROR      "S-a produs o eroare."
    PD32_DRIVER_UNKNOWN     "Driver de imprimantă necunoscut."
    PD32_NO_DEVICES         "Trebuie să instalați o imprimantă înainte de a executa activități în referință cu imprimanta ca spre exemplu setări pagină sau tipărirea unui document. Instalați va rog o imprimantă și reincercați."

    PD32_DEFAULT_PRINTER                  "Imprimantă implicită; "
    PD32_NR_OF_DOCUMENTS_IN_QUEUE         "%d documente sunt în coadă"
    PD32_MARGINS_IN_INCHES                "Margini [țoli]"
    PD32_MARGINS_IN_MILIMETERS            "Margini [mm]"
    PD32_MILIMETERS                       "mm"

    PD32_PRINTER_STATUS_READY             "Gata"
    PD32_PRINTER_STATUS_PAUSED            "Pauză; "
    PD32_PRINTER_STATUS_ERROR             "Eroare; "
    PD32_PRINTER_STATUS_PENDING_DELETION  "Aștept stergerea; "
    PD32_PRINTER_STATUS_PAPER_JAM         "Hârtie blocată în imprimantă; "
    PD32_PRINTER_STATUS_PAPER_OUT         "Fără hârtia; "
    PD32_PRINTER_STATUS_MANUAL_FEED       "Alimentați hârtia manual; "
    PD32_PRINTER_STATUS_PAPER_PROBLEM     "Problemă cu hârtia; "
    PD32_PRINTER_STATUS_OFFLINE           "Imprimantă deconectată; "
    PD32_PRINTER_STATUS_IO_ACTIVE         "I/O activ; "
    PD32_PRINTER_STATUS_BUSY              "Ocupat; "
    PD32_PRINTER_STATUS_PRINTING          "Tipăresc; "
    PD32_PRINTER_STATUS_OUTPUT_BIN_FULL   "Sertarul de ieșire este plin; "
    PD32_PRINTER_STATUS_NOT_AVAILABLE     "Indisponibil; "
    PD32_PRINTER_STATUS_WAITING           "Aștept; "
    PD32_PRINTER_STATUS_PROCESSING        "Procesez; "
    PD32_PRINTER_STATUS_INITIALIZING      "Initializez; "
    PD32_PRINTER_STATUS_WARMING_UP        "Încălzesc; "
    PD32_PRINTER_STATUS_TONER_LOW         "Toner puțin; "
    PD32_PRINTER_STATUS_NO_TONER          "Fără toner; "
    PD32_PRINTER_STATUS_PAGE_PUNT         "Page punt; "
    PD32_PRINTER_STATUS_USER_INTERVENTION "Întrerupere utilizator; "
    PD32_PRINTER_STATUS_OUT_OF_MEMORY     "Memorie insuficientă; "
    PD32_PRINTER_STATUS_DOOR_OPEN         "Carcasa imprimantei este deschisă; "
    PD32_PRINTER_STATUS_SERVER_UNKNOWN    "Server de tipărire necunoscut; "
    PD32_PRINTER_STATUS_POWER_SAVE        "Economisire de energie; "
}

STRINGTABLE DISCARDABLE /* Font styles */
{
    IDS_FONT_REGULAR       "Normal"
    IDS_FONT_BOLD          "Aldin"
    IDS_FONT_ITALIC        "Cursiv"
    IDS_FONT_BOLD_ITALIC   "Aldin cursiv"
}

STRINGTABLE DISCARDABLE /* Color names */
{
    IDS_COLOR_BLACK     "Negru"
    IDS_COLOR_MAROON    "Maro"
    IDS_COLOR_GREEN     "Verde"
    IDS_COLOR_OLIVE     "Oliviu"
    IDS_COLOR_NAVY      "Ultramarin"
    IDS_COLOR_PURPLE    "Violet"
    IDS_COLOR_TEAL      "Verde-albastru"
    IDS_COLOR_GRAY      "Griu"
    IDS_COLOR_SILVER    "Argintiu"
    IDS_COLOR_RED       "Roșu"
    IDS_COLOR_LIME      "Verde deschis"
    IDS_COLOR_YELLOW    "Galben"
    IDS_COLOR_BLUE      "Albastru"
    IDS_COLOR_FUCHSIA   "Roz"
    IDS_COLOR_AQUA      "Azur"
    IDS_COLOR_WHITE     "Alb"
}

STRINGTABLE DISCARDABLE
{
    IDS_FONT_SIZE   "Alegeți o mărime de font între %d și %d puncte."
    IDS_SAVE_BUTTON "&Salvează"
    IDS_SAVE_IN     "Salvează &în:"
    IDS_SAVE        "Salvează"
    IDS_SAVE_AS     "Salvează ca"
    IDS_OPEN_FILE   "Deschide fișier"
}

#pragma code_page(default){
