/*
 * WineCfg resources
 * Norwegian Bokmål Language Support
 *
 * Copyright 2005-2010 Alexander N. Sørnes <alex@thehandofagony.com>
 *
 * 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 "config.h"   /* Needed for the PACKAGE_STRING definition */
#include "resource.h"

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

LANGUAGE LANG_NORWEGIAN, SUBLANG_NORWEGIAN_BOKMAL

IDR_WINECFG MENU
BEGIN
    POPUP ""
    BEGIN
        MENUITEM "Oppsett", IDC_AUDIO_CONFIGURE
    END
END

IDD_ABOUTCFG DIALOGEX 0, 0, 260, 220
STYLE WS_CHILD
FONT 8, "MS Shell Dlg"
BEGIN
    CONTROL         "", IDC_ABT_PANEL, "STATIC", SS_OWNERDRAW, 0, 0, 260, 140
    LTEXT           PACKAGE_NAME,IDC_ABT_TITLE_TEXT,105,30,55,30
    LTEXT           PACKAGE_VERSION,IDC_ABT_PANEL_TEXT,160,43,140,8
    CONTROL         "",IDC_ABT_WEB_LINK,"SysLink", LWS_TRANSPARENT, 105,53,106,8
    LTEXT           "Dette biblioteket er fri programvarer; det kan redistribueres i henhold til vilkårene i GNU Lesser General Public License utgitt av «the Free Software Foundation», enten versjon 2.1 av denne Lisensen, eller (hvis du ønsker det) en nyere versjon.",
                    IDC_ABT_LICENSE_TEXT,105,64,145,60
    GROUPBOX        " Brukerinformasjon ", IDC_STATIC, 15, 155, 230, 55
    LTEXT           "Eier:", IDC_STATIC, 22, 171, 40, 20
    EDITTEXT        IDC_ABT_OWNER, 75, 171, 160, 13, ES_AUTOHSCROLL | WS_TABSTOP
    LTEXT           "Organisasjon:", IDC_STATIC, 22, 185, 50, 20
    EDITTEXT        IDC_ABT_ORG, 75, 185, 160, 13, ES_AUTOHSCROLL | WS_TABSTOP
END

IDD_APPCFG DIALOG  0, 0, 260, 220
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        " Programminnstillinger ",IDC_STATIC, 8,4,244,210
    LTEXT           "Wine kan etterligne forskjellige Windows-versjoner for hvert program. Denne fanen er koblet med bibliotek- og grafikkfanene, sånn at du kan endre innstillinger for hele systemet eller enkelte programmer der også.",
                    IDC_STATIC,15,20,229,30
    CONTROL         "Programmer",IDC_APP_LISTVIEW,"SysListView32",WS_BORDER | WS_TABSTOP | LVS_LIST | LVS_SINGLESEL | LVS_SHOWSELALWAYS,
                    15,50,230,120
    PUSHBUTTON	    "Legg til progr&am...",IDC_APP_ADDAPP, 90,174,75,14
    PUSHBUTTON	    "Fje&rn program",IDC_APP_REMOVEAPP, 170,174,75,14
    LTEXT           "&Windows-versjon:",IDC_STATIC,17,196,58,8
    COMBOBOX        IDC_WINVER,83,194,163,56,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP    
END

IDD_GRAPHCFG DIALOG  0, 0, 260, 220
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX    " Vinduinnstillinger ",IDC_STATIC,8,4,244,84
    CONTROL     "Tillat DirectX-programmer å hindre musen fra å forlate vinduet",IDC_DX_MOUSE_GRAB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,20,230,8
    CONTROL     "Tillat vindusbehandleren å &dekorere vinduer",IDC_ENABLE_DECORATED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,32,230,8
    CONTROL     "Tillat vindusbehandleren å kontrollere vinduene",IDC_ENABLE_MANAGED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,44,230,8
    CONTROL     "Vis et virtuelt skrivebord",IDC_ENABLE_DESKTOP,"Button",
                BS_AUTOCHECKBOX | WS_TABSTOP,15,56,230,8
    LTEXT       "Størrelse:",IDC_DESKTOP_SIZE,15,70,44,8,WS_DISABLED
    LTEXT       "X",IDC_DESKTOP_BY,109,70,8,8,WS_DISABLED
    EDITTEXT    IDC_DESKTOP_WIDTH,64,68,40,12,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED
    EDITTEXT    IDC_DESKTOP_HEIGHT,117,68,40,12,ES_AUTOHSCROLL | ES_NUMBER | WS_DISABLED

    GROUPBOX    " Direct3D ",IDC_STATIC,8,95,244,49
    LTEXT       "Verteks-skyggelegging: ",IDC_STATIC,15,110,80,32
    COMBOBOX    IDC_D3D_VSHADER_MODE,100,108,145,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    CONTROL     "Tillat piksel-skyggelegger (hvis maskinvaren støtter det)",IDC_D3D_PSHADER_MODE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,126,230,10

    GROUPBOX    " Skjermoppløsning (styrer skriftstørrelse) ",IDC_STATIC,8,151,244,63
    CONTROL     "", IDC_RES_TRACKBAR, "msctls_trackbar32",WS_TABSTOP,12,161,187,15
    EDITTEXT    IDC_RES_DPIEDIT,204,161,23,13,ES_NUMBER|WS_TABSTOP
    LTEXT       "dpi",IDC_STATIC,235,163,10,8
    LTEXT       "Forhåndsvisning av tekst med 10 punkters Tahoma",IDC_RES_FONT_PREVIEW,15,181,230,28
END

IDD_DLLCFG DIALOG  0, 0, 260, 220
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        " DLL-overstyring ",IDC_STATIC,8,4,244,210
    LTEXT           "Dynamisk koblede biblioteker kan oppgis individuelt til å være enten innebygget (fra Wine) eller innfødt (tatt fra Windows eller gitt av et program)."
                    ,IDC_STATIC,16,16,220,32
    LTEXT           "Ny overstyring for bibliotek:",IDC_STATIC,16,58,100,8
    COMBOBOX        IDC_DLLCOMBO,16,68,140,14,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP | CBS_SORT | CBS_LOWERCASE
    PUSHBUTTON      "&Legg til",IDC_DLLS_ADDDLL, 164,68,82,13
    LTEXT           "Gjeldende overstyringer:",IDC_STATIC,16,86,100,8
    LISTBOX         IDC_DLLS_LIST,16,96,140,112,WS_BORDER | WS_TABSTOP | WS_VSCROLL
    PUSHBUTTON      "R&ediger",IDC_DLLS_EDITDLL,164,96,82,14
    PUSHBUTTON      "Fje&rn",IDC_DLLS_REMOVEDLL,164,114,82,14 
END

IDD_LOADORDER DIALOG 80, 90, 110, 92
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Rediger overstyring"
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        " Lastingsrekkefølge ",IDC_STATIC,8,4,94,66
    CONTROL         "Inne&bygget (Wine)",IDC_RAD_BUILTIN,"Button", BS_AUTORADIOBUTTON | WS_GROUP,16,14,75,10
    CONTROL         "I&nnfødt (Windows)",IDC_RAD_NATIVE,"Button", BS_AUTORADIOBUTTON,16,24,75,10
    CONTROL         "&Innebygget så innfødt",IDC_RAD_BUILTIN_NATIVE,"Button", BS_AUTORADIOBUTTON,16,34,75,10
    CONTROL         "Innfdø&dt så innebygget",IDC_RAD_NATIVE_BUILTIN,"Button", BS_AUTORADIOBUTTON,16,44,75,10
    CONTROL         "&Deaktiver",IDC_RAD_DISABLE,"Button", BS_AUTORADIOBUTTON,16,54,75,10
    DEFPUSHBUTTON   "OK",IDOK,8,74,45,14,WS_GROUP
    PUSHBUTTON      "Avbryt",IDCANCEL,57,74,45,14,WS_GROUP
END

IDD_DRIVECHOOSE DIALOG  60, 70, 170, 60
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Velg stasjonsbokstav"
FONT 8, "MS Shell Dlg"
BEGIN
    COMBOBOX IDC_DRIVESA2Z,15,10,75,230,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    DEFPUSHBUTTON   "OK",IDOK,105,10,45,14,WS_GROUP
    PUSHBUTTON      "Avbryt",IDCANCEL,105,30,45,14,WS_GROUP
END

IDD_DRIVECFG DIALOG  0, 0, 260, 220
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        " Stasjonkartlegging ",IDC_STATIC,8,4,244,195
    LTEXT           "Klarte ikke koble til monteringsbehandleren; diskstasjonene kan derfor ikke redigeres.", IDC_STATIC_MOUNTMGR_ERROR, 15,30,190,76
    CONTROL         "Listevisning",IDC_LIST_DRIVES,"SysListView32",LVS_REPORT | LVS_AUTOARRANGE | LVS_ALIGNLEFT |
                    LVS_SINGLESEL | WS_BORDER | WS_TABSTOP, 15,18,232,76
    PUSHBUTTON      "&Legg til...",IDC_BUTTON_ADD,15,98,45,14
    PUSHBUTTON      "Fje&rn",IDC_BUTTON_REMOVE,63,98,37,14
    PUSHBUTTON      "&Automatisk...",IDC_BUTTON_AUTODETECT,190,98,56,14

    /* editing drive details */
    LTEXT           "&Sti:",IDC_STATIC_PATH,15,123,20,9
    EDITTEXT        IDC_EDIT_PATH,41,120,160,13,ES_AUTOHSCROLL | WS_TABSTOP
    PUSHBUTTON      "&Bla...",IDC_BUTTON_BROWSE_PATH,206,120,40,13

    LTEXT           "&Type:",IDC_STATIC_TYPE,15,138,21,10
    COMBOBOX        IDC_COMBO_TYPE,41,135,77,60,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP

    PUSHBUTTON      "Avan&sert visning",IDC_BUTTON_SHOW_HIDE_ADVANCED,186,135,60,13
    LTEXT           "En&het:",IDC_STATIC_DEVICE,15,153,26,9
    EDITTEXT        IDC_EDIT_DEVICE,41,150,160,13,ES_AUTOHSCROLL | WS_TABSTOP
    PUSHBUTTON      "&Bla...",IDC_BUTTON_BROWSE_DEVICE,206,150,40,13

    LTEXT           "Vo&lumnavn:",IDC_STATIC_LABEL,15,168,49,12
    EDITTEXT        IDC_EDIT_LABEL,65,165,78,13,ES_AUTOHSCROLL | WS_TABSTOP
    LTEXT           "S&erienummer:",IDC_STATIC_SERIAL,15,183,49,12
    EDITTEXT        IDC_EDIT_SERIAL,65,180,78,13,ES_AUTOHSCROLL | WS_TABSTOP

    CONTROL         "Vis .-filer",IDC_SHOW_DOT_FILES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,8,205,230,8
END

IDD_AUDIOCFG DIALOG  0, 0, 260, 220
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        " Valg av driver ",IDC_STATIC,8,4,244,160
    LTEXT           "Velg en lyddriver ved å krysse av i boksen ved siden av den du vil bruke. Deaktiver lyd ved å ikke velge noen. Det anbefales ikke å velge flere drivere. Driverens oppsett kan endres ved å høyreklikke på den.",IDC_STATIC,15,20,227,30
    CONTROL         "Enheter",IDC_AUDIO_TREE,"SysTreeView32",WS_BORDER | WS_TABSTOP,15,50,140,105
    PUSHBUTTON      "&Test",IDC_AUDIO_TEST,170,50,59,14
    PUSHBUTTON	    "Kontrollpanel",IDC_AUDIO_CONTROL_PANEL,170,70,59,14
    GROUPBOX        " DirectSound ",IDC_STATIC,8,170,244,45
    LTEXT	 "Maskinvareakselerasjon: ",IDC_STATIC,15,180,90,10
    COMBOBOX	    IDC_DSOUND_HW_ACCEL,100,178,150,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    LTEXT           "Std. samplingsrate:",IDC_STATIC,15,197,70,8
    COMBOBOX        IDC_DSOUND_RATES,90,195,42,76,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    LTEXT           "Std. biter per prøve:",IDC_STATIC,137,197,80,8
    COMBOBOX        IDC_DSOUND_BITS,220,195,30,56,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
END

IDD_DESKTOP_INTEGRATION DIALOG  0, 0, 260, 220
STYLE WS_CHILD | WS_DISABLED
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        " Utseende ",IDC_STATIC,8,4,244,106
    LTEXT           "Tema:",IDC_STATIC,15,16,130,8
    COMBOBOX        IDC_THEME_THEMECOMBO,15,24,130,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    PUSHBUTTON      "Installer tema...",IDC_THEME_INSTALL,152,23,93,14
    LTEXT           "Farge:",IDC_THEME_COLORTEXT,15,40,112,8
    COMBOBOX        IDC_THEME_COLORCOMBO,15,48,112,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    LTEXT           "Størrelse:",IDC_THEME_SIZETEXT,135,40,110,8
    COMBOBOX        IDC_THEME_SIZECOMBO,135,48,110,14,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    LTEXT           "Element:",IDC_STATIC,15,64,112,8
    COMBOBOX        IDC_SYSPARAM_COMBO,15,74,112,120,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP | CBS_SORT
    LTEXT           "Farge:",IDC_SYSPARAM_COLOR_TEXT,135,64,25,8,WS_DISABLED
    PUSHBUTTON      "",IDC_SYSPARAM_COLOR,135,74,25,13,WS_DISABLED | BS_OWNERDRAW
    LTEXT           "Størrelse:",IDC_SYSPARAM_SIZE_TEXT,166,64,30,8,WS_DISABLED
    EDITTEXT        IDC_SYSPARAM_SIZE,166,74,23,13,ES_AUTOHSCROLL | WS_TABSTOP | WS_DISABLED
    CONTROL         "",IDC_SYSPARAM_SIZE_UD,UPDOWN_CLASS,UDS_SETBUDDYINT | WS_DISABLED,187,74,15,13
    PUSHBUTTON      "Skrift",IDC_SYSPARAM_FONT,208,74,37,13,WS_DISABLED
    GROUPBOX        " Spesielle mapper ",IDC_STATIC,8,114,244,100
    CONTROL         "Listevisning",IDC_LIST_SFPATHS,"SysListView32",LVS_REPORT | LVS_AUTOARRANGE | LVS_ALIGNLEFT |
                     LVS_SINGLESEL | WS_BORDER | WS_TABSTOP, 15,126,230,64
    CONTROL         "Pek til:",IDC_LINK_SFPATH,"Button",BS_AUTOCHECKBOX|WS_TABSTOP|WS_DISABLED,15,195,50,13
    EDITTEXT         IDC_EDIT_SFPATH,65,195,145,13,ES_AUTOHSCROLL|WS_TABSTOP|WS_DISABLED
    PUSHBUTTON      "Bla",IDC_BROWSE_SFPATH,215,195,30,13,WS_DISABLED
END

STRINGTABLE
BEGIN
    IDS_TAB_APPLICATIONS    "Programmer"
    IDS_TAB_DLLS            "Biblioteker"
    IDS_TAB_DRIVES          "Stasjoner"
    IDS_CHOOSE_PATH         "Velg Unix-målkatalogen."
    IDS_HIDE_ADVANCED       "Enkel visning"
    IDS_SHOW_ADVANCED       "Avansert visning"
    IDS_NOTHEME             "(Intet tema)"
    IDS_TAB_GRAPHICS        "Grafikk"
    IDS_TAB_DESKTOP_INTEGRATION "Skrivebordsintegrering"
    IDS_TAB_AUDIO           "Lyd"
    IDS_TAB_ABOUT           "Om"
    IDS_WINECFG_TITLE       "Oppsett av Wine"
    IDS_WINECFG_TITLE_APP   "Oppsett av Wine for «%s»"
    IDS_THEMEFILE           "Temafiler (*.msstyles; *.theme)"
    IDS_THEMEFILE_SELECT    "Velg en temafil"
    IDS_AUDIO_MISSING       "Ingen lyddriver er oppgitt i registeret.\n\nEn anbefalt driver er valgt for deg;\nbruk den eller velg en annen,\nog trykk «Bruk» for at endringene skal tre i kraft."
    IDS_SHELL_FOLDER        "Mappe"
    IDS_LINKS_TO            "Peker til"
END
    
    STRINGTABLE
    BEGIN
    IDS_DLL_WARNING         "Endring av lastingsrekkefølgen for dette biblioteket anbefales ikke.\nEr du sikker på at du vil gjøre det?"
    IDS_DLL_WARNING_CAPTION "Advarsel: systembibliotek"
    IDS_DLL_NATIVE          "innfødt"
    IDS_DLL_BUILTIN         "innebygget"
    IDS_DLL_NATIVE_BUILTIN  "innfødt, innebygget"
    IDS_DLL_BUILTIN_NATIVE  "innebygget, innfødt"
    IDS_DLL_DISABLED        "slått av"
    IDS_DEFAULT_SETTINGS    "Globale innstillinger"
    IDS_EXECUTABLE_FILTER   "Wine-programmer (*.exe,*.exe.so)\0*.exe;*.exe.so\0"
    IDS_USE_GLOBAL_SETTINGS "Bruk globale innstillinger"
    IDS_SELECT_EXECUTABLE   "Velg en programfil"
END

STRINGTABLE
BEGIN
    IDS_SHADER_MODE_HARDWARE    "Maskinvare"
    IDS_SHADER_MODE_NONE        "Ingen"
END

STRINGTABLE
BEGIN
    IDS_DRIVE_UNKNOWN           "Automatisk"
    IDS_DRIVE_FIXED             "Lokal harddisk"
    IDS_DRIVE_REMOTE            "Nettverksressurs"
    IDS_DRIVE_REMOVABLE         "Diskett"
    IDS_DRIVE_CDROM             "CD-ROM"
    IDS_DRIVE_LETTERS_EXCEEDED  "Du kan ikke legge til flere stasjoner.\n\nHver stasjon må ha en bokstav fra A til Z, så 26 stasjoner er det meste"
    IDS_SYSTEM_DRIVE_LABEL      "Systemstasjon"
    IDS_CONFIRM_DELETE_C        "Vil du virkelig fjerne stasjon C?\n\nDe fleste Windows-programmer forventer at C finnes, og lager bråk hvis den ikke er der. Husk å lage den på nytt hvis du fortsetter."
    IDS_COL_DRIVELETTER         "Bokstav"
    IDS_COL_DRIVEMAPPING        "Peker til"
    IDS_NO_DRIVE_C              "Du har ikke en C-stasjon. Det er ikke så bra..\n\nHusk å trykke «Legg til» i stasjonsfanen for å lage en.\n"
END

STRINGTABLE
BEGIN
    IDS_ACCEL_FULL              "Full"
    IDS_ACCEL_STANDARD          "Standard"
    IDS_ACCEL_BASIC             "Grunnleggende"
    IDS_ACCEL_EMULATION         "Emulering"
    IDS_DRIVER_ALSA             "ALSA-driver"
    IDS_DRIVER_ESOUND           "EsounD-driver"
    IDS_DRIVER_OSS              "OSS-driver"
    IDS_DRIVER_JACK             "JACK-driver"
    IDS_DRIVER_NAS              "NAS-driver"
    IDS_DRIVER_COREAUDIO        "CoreAudio-driver"
    IDS_OPEN_DRIVER_ERROR       "Klarte ikke åpne %s."
    IDS_SOUNDDRIVERS            "Lyddrivere"
    IDS_DEVICES_WAVEOUT         "Lyd ut-enheter"
    IDS_DEVICES_WAVEIN          "Lyd inn-enheter"
    IDS_DEVICES_MIDIOUT         "MIDI ut-enheter"
    IDS_DEVICES_MIDIIN          "MIDI inn-enheter"
    IDS_DEVICES_AUX             "Aux-enheter"
    IDS_DEVICES_MIXER           "Mikserenheter"
    IDS_UNAVAILABLE_DRIVER      "Fant driver i registeret som ikke er tilgjengelig.\n\nFjerne «%s» fra registeret?"
    IDS_WARNING                 "Advarsel"
END

STRINGTABLE
BEGIN
    IDC_SYSPARAMS_BUTTON            "Kontrollerbakgrunn"
    IDC_SYSPARAMS_BUTTON_TEXT       "Kontrollertekst"
    IDC_SYSPARAMS_DESKTOP           "Skrivebord"
    IDC_SYSPARAMS_MENU              "Menybakgrunn"
    IDC_SYSPARAMS_MENU_TEXT         "Menytekst"
    IDC_SYSPARAMS_SCROLLBAR         "Rullefelt"
    IDC_SYSPARAMS_SELECTION         "Bakgrunn for merking"
    IDC_SYSPARAMS_SELECTION_TEXT    "Merket tekst"
    IDC_SYSPARAMS_TOOLTIP           "Bakgrunn for verktøytips"
    IDC_SYSPARAMS_TOOLTIP_TEXT      "Tekst i verktøytips"
    IDC_SYSPARAMS_WINDOW            "Vindubakgrunn"
    IDC_SYSPARAMS_WINDOW_TEXT       "Vinduteksts"
    IDC_SYSPARAMS_ACTIVE_TITLE      "Aktiv tittellinje"
    IDC_SYSPARAMS_ACTIVE_TITLE_TEXT "Aktiv titteltekst"
    IDC_SYSPARAMS_INACTIVE_TITLE    "Inaktiv tittellinje"
    IDC_SYSPARAMS_INACTIVE_TITLE_TEXT "Inaktiv titteltekst"
    IDC_SYSPARAMS_MSGBOX_TEXT       "Meldingsvindutekst"
    IDC_SYSPARAMS_APPWORKSPACE      "Arbeidsområde i program"
    IDC_SYSPARAMS_WINDOW_FRAME      "Visrusramme"
    IDC_SYSPARAMS_ACTIVE_BORDER     "Aktiv kant"
    IDC_SYSPARAMS_INACTIVE_BORDER   "Inaktiv kant"
    IDC_SYSPARAMS_BUTTON_SHADOW     "Kontrollerskygge"
    IDC_SYSPARAMS_GRAY_TEXT         "Grå tekst"
    IDC_SYSPARAMS_BUTTON_HILIGHT    "Merket kontroller"
    IDC_SYSPARAMS_BUTTON_DARK_SHADOW "Mørk skygge i kontroller"
    IDC_SYSPARAMS_BUTTON_LIGHT      "Kontrollerlys"
    IDC_SYSPARAMS_BUTTON_ALTERNATE  "Bakgrunn for skiftende kontroller"
    IDC_SYSPARAMS_HOT_TRACKING      "Merket element"
    IDC_SYSPARAMS_ACTIVE_TITLE_GRADIENT "Gradient for aktiv tittellinje"
    IDC_SYSPARAMS_INACTIVE_TITLE_GRADIENT "Gradient for inaktiv tittellinje"
    IDC_SYSPARAMS_MENU_HILIGHT      "Menymerking"
    IDC_SYSPARAMS_MENUBAR           "Menylinje"
END
