/*
 * WineCfg resources
 * Dutch Language Support
 *
 * Copyright 2004 Rein Klazes
 *
 * 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., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 */

LANGUAGE LANG_DUTCH, SUBLANG_DEFAULT

IDD_ABOUTCFG DIALOGEX 0, 0, 260, 250
STYLE WS_CHILD
FONT 8, "MS Shell Dlg"
BEGIN
    LTEXT           "Wine Versie:",IDC_STATIC,119,17,55,8
    LTEXT           "CVS",IDC_WINEVER,179,17,56,8
    CONTROL         IDB_WINE,IDC_STATIC,"Static",SS_BITMAP | SS_CENTERIMAGE | 
                    SS_REALSIZEIMAGE | WS_BORDER,15,17,157,111, WS_EX_TRANSPARENT
    LTEXT           "http://www.winehq.org/",IDC_STATIC,119,31,106,8
    GROUPBOX        "Informatie",IDC_STATIC,8,4,244,106
    CTEXT           "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.",
                    IDC_STATIC,119,44,124,72
END

IDD_APPCFG DIALOG DISCARDABLE  0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        "Toepassingsinstellingen",IDC_STATIC, 8,4,244,240
    LTEXT           "Wine geeft de mogelijkheid om per toepassing Windowsversie en stijlen in te stellen",
                    IDC_STATIC,15,20,227,20
    CONTROL         "Toepassing",IDC_APP_TREEVIEW,"SysTreeView32",WS_BORDER | WS_TABSTOP | TVS_LINESATROOT | TVS_HASLINES | TVS_SHOWSELALWAYS | TVS_HASBUTTONS, 15,40,142,145
    PUSHBUTTON	    "Toepasing toevoegen...",IDC_APP_ADDAPP, 163,40,82,60
    PUSHBUTTON	    "Toepassing verwijderen",IDC_APP_REMOVEAPP, 163,125,82,60
    LTEXT           "Windows Versie:",IDC_STATIC,17,192,58,8
    LTEXT           "DOS Versie:",IDC_STATIC,17,211,57,8
    COMBOBOX        IDC_WINVER,83,190,158,56,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    COMBOBOX        IDC_DOSVER,83,208,158,56,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
END

IDD_GRAPHCFG DIALOG DISCARDABLE  0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    LTEXT	    "Kleurdiepte: ",IDC_STATIC,8,10,70,30
    COMBOBOX	    IDC_SCREEN_DEPTH,80,8,170,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP

    CONTROL	    "Een DirectX programma kan de muis in een window vasthouden.",IDC_DX_MOUSE_GRAB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,35,230,8
    CONTROL	    "Schakel \"double buffering\" in.",IDC_DOUBLE_BUFFER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,45,230,8
    
    GROUPBOX        " Windowsinstellingen ",IDC_STATIC,8,25,244,120

    /* FIXME: the wording of this explanation could be a lot better */
    LTEXT           "U kunt kiezen voor een virtuele windows desktop waarop alle windows geplaatst worden, of U kunt er voor kiezen dat de windows op uw standaard desktop geplaatst worden.",
                    IDC_STATIC,15,73,228,28
    LTEXT           "Desktop afmetingen:",IDC_DESKTOP_SIZE,15,115,44,8,WS_DISABLED
    LTEXT           "X",IDC_DESKTOP_BY,108,115,8,8,WS_DISABLED
    CONTROL         "Emuleer een virtuele desktop",IDC_ENABLE_DESKTOP,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,15,100,230,10
		    
    EDITTEXT        IDC_DESKTOP_WIDTH,64,115,40,12,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED
    EDITTEXT        IDC_DESKTOP_HEIGHT,117,115,40,12,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED
END

IDD_DLLCFG DIALOG DISCARDABLE  0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        "DLL Overrides",IDC_STATIC,8,4,244,240
    LTEXT           "Het is mogelijk om per uitvoerbaar bestand te specificeren of deze \"builtin\" dan wel \"native\" moet zijn. De specificatie voor ""*"" geldt voor alle niet expliciet genoemde bestanden."
                    ,  IDC_STATIC,15,17,228,32
    CONTROL         "DLL Overrides", IDC_TREE_DLLS, "SysTreeView32", WS_BORDER | WS_TABSTOP | TVS_LINESATROOT | TVS_HASLINES | TVS_SHOWSELALWAYS | TVS_HASBUTTONS, 15,50,142,187
    LTEXT           "Laad volgorde:",IDC_STATIC,163,50,37,8
    CONTROL         "Builtin (Wine)",IDC_RAD_BUILTIN,"Button", BS_AUTORADIOBUTTON | WS_GROUP,163,65,75,10
    CONTROL         "Native (Windows)",IDC_RAD_NATIVE,"Button", BS_AUTORADIOBUTTON,163,80,75,10
    CONTROL         "Builtin, Native",IDC_RAD_BUILTIN_NATIVE,"Button", BS_AUTORADIOBUTTON,163,95,75,10
    CONTROL         "Native, Builtin",IDC_RAD_NATIVE_BUILTIN,"Button", BS_AUTORADIOBUTTON,163,110,75,10
    CONTROL         "Uitzetten",IDC_RAD_DISABLE,"Button", BS_AUTORADIOBUTTON,163,125,75,10
    PUSHBUTTON	    "Toepassing toevoegen",IDC_DLLS_ADDAPP,163,144,82,14
    PUSHBUTTON	    "Toepassing verwijderen",IDC_DLLS_REMOVEAPP, 163,164,82,14
    PUSHBUTTON	    "Override toevoegen voor:",IDC_DLLS_ADDDLL, 163,184,82,14
    COMBOBOX        IDC_DLLLIST,163,204,82,14,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP | CBS_SORT | CBS_LOWERCASE
    PUSHBUTTON	    "Override verwijderen",IDC_DLLS_REMOVEDLL,163,224,82,14
END

IDD_SYSTEMCFG DIALOG DISCARDABLE  0, 0, 260, 250
STYLE WS_CHILD
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        "Stations",IDC_STATIC,8,4,244,120
    LISTBOX         IDC_LIST_DRIVES,15,23,179,90,WS_VSCROLL
    PUSHBUTTON      "&Toevoegen",IDC_DRIVE_ADD,197,22,50,22
    PUSHBUTTON      "&Verwijderen",IDC_DRIVE_REMOVE,197,51,50,22
    PUSHBUTTON      "&Bewerken",IDC_DRIVE_EDIT,197,80,50,22
END

IDD_DRIVECFG DIALOG DISCARDABLE  0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        " Stations ",IDC_STATIC,7,107,246,112
    LISTBOX         IDC_LIST_DRIVES,14,118,232,76,LBS_SORT | LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
    PUSHBUTTON      "Toevoegen",IDC_BUTTON_ADD,14,199,37,14
    PUSHBUTTON      "Verwijderen",IDC_BUTTON_REMOVE,55,199,37,14
    PUSHBUTTON      "Bewerken",IDC_BUTTON_EDIT,97,199,37,14
    PUSHBUTTON      "Auto Instellen",IDC_BUTTON_AUTODETECT,197,199,49,14
    LTEXT	    "WAARSCHUWING: Er is geen C: station gedefinieerd. Klik op ""Toevoegen"" om deze aan te maken.", IDS_DRIVE_NO_C, 7,223,250,110
END

IDD_DRIVE_EDIT DIALOG DISCARDABLE  0, 0, 203, 169
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Station Bewerken"
FONT 8, "MS Shell Dlg"
BEGIN
    DEFPUSHBUTTON   "&Ok",ID_BUTTON_OK,145,150,50,16
    LTEXT           "Letter:",IDC_STATIC,5,23,26,9
    EDITTEXT        IDC_EDIT_LABEL,63,108,78,13,ES_AUTOHSCROLL
    LTEXT           "Naam:",IDC_STATIC_LABEL,33,111,29,12
    LTEXT           "Serienummer:",IDC_STATIC_SERIAL,33,127,29,12
    EDITTEXT        IDC_EDIT_SERIAL,63,124,78,13,ES_AUTOHSCROLL
    LTEXT           "Soort:",IDC_STATIC_TYPE,5,39,21,10
    EDITTEXT        IDC_EDIT_PATH,31,5,117,13,ES_AUTOHSCROLL
    LTEXT           "Pad:",IDC_STATIC,5,8,20,9
    COMBOBOX        IDC_COMBO_LETTER,31,20,77,60,CBS_DROPDOWNLIST  | 
                    WS_VSCROLL | WS_TABSTOP
    PUSHBUTTON      "Bladeren...",IDC_BUTTON_BROWSE_PATH,154,5,40,13
    COMBOBOX        IDC_COMBO_TYPE,31,36,77,60,CBS_DROPDOWNLIST | 
                    WS_VSCROLL | WS_TABSTOP
    PUSHBUTTON      "Geavanceerd",IDC_BUTTON_SHOW_HIDE_ADVANCED,134,34,60,16
    CONTROL         "Automatisch detecteren van apparaat:",IDC_RADIO_AUTODETECT,"Button",
                    BS_AUTORADIOBUTTON,21,69,93,10
    EDITTEXT        IDC_EDIT_DEVICE,33,79,108,13,ES_AUTOHSCROLL
    PUSHBUTTON      "Bladeren...",IDC_BUTTON_BROWSE_DEVICE,148,79,40,13
    CONTROL         "Handmatig instellen:",IDC_RADIO_ASSIGN,"Button",
                    BS_AUTORADIOBUTTON,21,98,69,10
    GROUPBOX        "Naam en serienummer",IDC_BOX_LABELSERIAL,6,58,189,85
END

IDD_AUDIOCFG DIALOG DISCARDABLE  0, 0, 260, 250
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    LTEXT	"Geluidsbesturing: ",IDC_STATIC,10,20,60,8
    COMBOBOX	IDC_AUDIO_DRIVER,70,18,85,85,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    PUSHBUTTON	"Auto detecteren",IDC_AUDIO_AUTODETECT,170,20,49,14
END

STRINGTABLE DISCARDABLE
BEGIN
    IDS_WINE_VERSION        "CVS"
    IDS_TAB_GENERAL         "Algemeen"
    IDS_TAB_DLLS            "Bibliotheken"
    IDS_TAB_DRIVES          "Stations"
END
