/*
 *  Task Manager
 *
 *  Copyright 1999-2001 Brian Palmer
 *  Copyright 2010 Luca Bennati
 *
 *
 * 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 "resource.h"

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

LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL

/*
 Menu
*/

IDR_TASKMANAGER MENU DISCARDABLE
BEGIN
    POPUP "&File"
    BEGIN
        MENUITEM "&Nuovo processo (Esegui...)",          ID_FILE_NEW
        MENUITEM SEPARATOR
        MENUITEM "&Esci dal gestore dei processi",          ID_FILE_EXIT
    END
    POPUP "&Opzioni"
    BEGIN
        MENUITEM "&Sempre davanti",              ID_OPTIONS_ALWAYSONTOP
        , CHECKED
        MENUITEM "&Minimizza durante l'uso",            ID_OPTIONS_MINIMIZEONUSE
        , CHECKED
        MENUITEM "&Nascondi quando minimizzato",        ID_OPTIONS_HIDEWHENMINIMIZED
        , CHECKED
        MENUITEM "M&ostra processi a 16 bit",          ID_OPTIONS_SHOW16BITTASKS
        , CHECKED
    END
    POPUP "&Visualizza"
    BEGIN
        MENUITEM "&Aggiorna ora",                ID_VIEW_REFRESH
        POPUP "&Velocità di aggiornamento"
        BEGIN
            MENUITEM "&Alta",                       ID_VIEW_UPDATESPEED_HIGH
            MENUITEM "&Normale",                     ID_VIEW_UPDATESPEED_NORMAL
            , CHECKED
            MENUITEM "&Bassa",                        ID_VIEW_UPDATESPEED_LOW
            MENUITEM "&In pausa",                     ID_VIEW_UPDATESPEED_PAUSED

        END
        MENUITEM SEPARATOR
        MENUITEM "Icone &grandi",                ID_VIEW_LARGE
        MENUITEM "Icone &piccole",                ID_VIEW_SMALL
        MENUITEM "&Dettagli",                    ID_VIEW_DETAILS, CHECKED
        MENUITEM "&Seleziona le colonne...",          ID_VIEW_SELECTCOLUMNS
        POPUP "Grafico della &CPU"
        BEGIN
            MENUITEM "&Un grafico per tutte le CPU",        ID_VIEW_CPUHISTORY_ONEGRAPHALL

            MENUITEM "Un grafico &per ciascuna CPU",          ID_VIEW_CPUHISTORY_ONEGRAPHPERCPU
            , CHECKED
        END
        MENUITEM "&Mostra i tempi del kernel",          ID_VIEW_SHOWKERNELTIMES
    END
    POPUP "F&inestre"
    BEGIN
        MENUITEM "Ordina &orizzontalmente",          ID_WINDOWS_TILEHORIZONTALLY
        MENUITEM "Ordina &verticalmente",            ID_WINDOWS_TILEVERTICALLY
        MENUITEM "&Minimizza",                   ID_WINDOWS_MINIMIZE
        MENUITEM "Ma&ssimizza",                   ID_WINDOWS_MAXIMIZE
        MENUITEM "&A cascata",                    ID_WINDOWS_CASCADE
        MENUITEM "&Porta davanti",             ID_WINDOWS_BRINGTOFRONT
    END
    POPUP "&Aiuto"
    BEGIN
        MENUITEM "&Guida per argomenti al Gestore dei Processi",   ID_HELP_TOPICS
        MENUITEM SEPARATOR
        MENUITEM "&Sul Gestore dei Processi",         ID_HELP_ABOUT
    END
END

IDR_WINDOWSMENU MENU DISCARDABLE
BEGIN
    MENUITEM "Ordina &orizzontalmente",          ID_WINDOWS_TILEHORIZONTALLY
    MENUITEM "Ordina &verticalmente",            ID_WINDOWS_TILEVERTICALLY
    MENUITEM "&Minimizza",                   ID_WINDOWS_MINIMIZE
    MENUITEM "Ma&ssimizza",                   ID_WINDOWS_MAXIMIZE
    MENUITEM "&A cascata",                    ID_WINDOWS_CASCADE
    MENUITEM "&Porta davanti",             ID_WINDOWS_BRINGTOFRONT
END

IDR_APPLICATION_PAGE_CONTEXT1 MENU DISCARDABLE
BEGIN
    POPUP "DUMMY"
    BEGIN
        MENUITEM "&Nuovo processo (Esegui...)",          ID_FILE_NEW
        MENUITEM SEPARATOR
        MENUITEM "Icone &grandi",                ID_VIEW_LARGE
        MENUITEM "Icone &piccole",                ID_VIEW_SMALL
        MENUITEM "&Dettagli",                    ID_VIEW_DETAILS, CHECKED
    END
END

IDR_APPLICATION_PAGE_CONTEXT2 MENU DISCARDABLE
BEGIN
    POPUP "DUMMY"
    BEGIN
        MENUITEM "&Passa a",                  ID_APPLICATION_PAGE_SWITCHTO
        MENUITEM "Porta &davanti",             ID_WINDOWS_BRINGTOFRONT
        MENUITEM SEPARATOR
        MENUITEM "Ordina &orizzontalmente",          ID_WINDOWS_TILEHORIZONTALLY
        MENUITEM "Ordina &verticalmente",            ID_WINDOWS_TILEVERTICALLY
        MENUITEM "&Minimizza",                   ID_WINDOWS_MINIMIZE
        MENUITEM "Ma&ssimizza",                   ID_WINDOWS_MAXIMIZE
        MENUITEM "&A cascata",                    ID_WINDOWS_CASCADE
        MENUITEM SEPARATOR
        MENUITEM "&Termina processo",                   ID_APPLICATION_PAGE_ENDTASK
        MENUITEM "Vai al &processo",              ID_APPLICATION_PAGE_GOTOPROCESS
    END
END

IDR_TRAY_POPUP MENU DISCARDABLE
BEGIN
    POPUP "DUMMY"
    BEGIN
        MENUITEM "&Ripristina",                    ID_RESTORE
        MENUITEM "&Chiudi",                      ID_FILE_EXIT
        MENUITEM SEPARATOR
        MENUITEM "&Sempre davanti",              ID_OPTIONS_ALWAYSONTOP
    END
END

IDR_PROCESS_PAGE_CONTEXT MENU DISCARDABLE
BEGIN
    POPUP "DUMMY"
    BEGIN
        MENUITEM "&Termina il processo",                ID_PROCESS_PAGE_ENDPROCESS
        MENUITEM "Termina la &famiglia dei processi",           ID_PROCESS_PAGE_ENDPROCESSTREE

        MENUITEM "&Debug",                      ID_PROCESS_PAGE_DEBUG
        MENUITEM SEPARATOR
        POPUP "Setta la &priorità"
        BEGIN
            MENUITEM "Tempo &reale",                   ID_PROCESS_PAGE_SETPRIORITY_REALTIME

            MENUITEM "&Alta",                       ID_PROCESS_PAGE_SETPRIORITY_HIGH

            MENUITEM "P&iù che normale",                ID_PROCESS_PAGE_SETPRIORITY_ABOVENORMAL

            MENUITEM "&Normale",                     ID_PROCESS_PAGE_SETPRIORITY_NORMAL

            MENUITEM "&Meno che normale",                ID_PROCESS_PAGE_SETPRIORITY_BELOWNORMAL

            MENUITEM "&Bassa",                        ID_PROCESS_PAGE_SETPRIORITY_LOW

        END
        MENUITEM "Imposta &affinità...",            ID_PROCESS_PAGE_SETAFFINITY
	MENUITEM "Modifica i &canali di debug...",	ID_PROCESS_PAGE_DEBUGCHANNELS
    END
END

/*
 Dialog
*/

IDD_TASKMGR_DIALOG DIALOG DISCARDABLE  0, 0, 264, 246
STYLE DS_CENTER | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP |
    WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU |
    WS_THICKFRAME
CAPTION "Gestore dei processi"
MENU IDR_TASKMANAGER
FONT 8, "MS Shell Dlg"
BEGIN
    CONTROL         "Tab1",IDC_TAB,"SysTabControl32",WS_TABSTOP,3,3,257,228
END

IDD_APPLICATION_PAGE DIALOG DISCARDABLE  0, 0, 247, 210
STYLE DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
FONT 8, "MS Shell Dlg"
BEGIN
    CONTROL         "List2",IDC_APPLIST,"SysListView32",LVS_REPORT |
                    LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP,7,7,233,177
    PUSHBUTTON      "&Nuovo processo...",IDC_NEWTASK,187,189,53,14
    PUSHBUTTON      "&Passa a",IDC_SWITCHTO,131,189,53,14,WS_DISABLED
    PUSHBUTTON      "&Termina processo",IDC_ENDTASK,75,189,53,14,WS_DISABLED
END

IDD_PROCESS_PAGE DIALOG DISCARDABLE  0, 0, 247, 210
STYLE DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
FONT 8, "MS Shell Dlg"
BEGIN
    CONTROL         "List2",IDC_PROCESSLIST,"SysListView32",LVS_REPORT |
                    LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_OWNERDATA |
                    WS_BORDER | WS_TABSTOP,7,7,233,177
    PUSHBUTTON      "&Termina processo",IDC_ENDPROCESS,171,189,69,14
    CONTROL         "&Mostra i processi di tutti gli utenti",IDC_SHOWALLPROCESSES,
                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,191,111,10
END

/*IDD_PERFORMANCE_PAGE DIALOGEX 0, 0, 247, 210*/
IDD_PERFORMANCE_PAGE DIALOGEX DISCARDABLE  0, 0, 247, 210
STYLE DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX        "Uso della CPU",IDC_CPU_USAGE_FRAME,5,5,60,54,WS_TABSTOP, WS_EX_TRANSPARENT
    GROUPBOX        "Uso della MEM",IDC_MEM_USAGE_FRAME,5,63,60,54,BS_LEFTTEXT, WS_EX_TRANSPARENT
    GROUPBOX        "Totali",IDC_TOTALS_FRAME,5,122,111,39,0,WS_EX_TRANSPARENT
    GROUPBOX        "Carico di lavore (K)",IDC_COMMIT_CHARGE_FRAME,5,166,111,39,0,WS_EX_TRANSPARENT
    GROUPBOX        "Memoria Fisica (K)",IDC_PHYSICAL_MEMORY_FRAME,131,122,111,39,0,WS_EX_TRANSPARENT
    GROUPBOX        "Memoria del Kernel (K)",IDC_KERNEL_MEMORY_FRAME,131,166,111,39,0,WS_EX_TRANSPARENT
    LTEXT           "Handles",IDS_TOTALS_HANDLE_COUNT,12,131,27,8
    LTEXT           "Threads",IDS_TOTALS_THREAD_COUNT,12,140,27,8
    LTEXT           "Processi",IDS_TOTALS_PROCESS_COUNT,12,149,34,8
    EDITTEXT        IDC_TOTALS_HANDLE_COUNT,65,131,45,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    EDITTEXT        IDC_TOTALS_THREAD_COUNT,65,140,45,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    EDITTEXT        IDC_TOTALS_PROCESS_COUNT,65,149,45,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    LTEXT           "Totale",IDS_COMMIT_CHARGE_TOTAL,12,175,27,8
    LTEXT           "Limite",IDS_COMMIT_CHARGE_LIMIT,12,184,15,8
    LTEXT           "Massimo",IDS_COMMIT_CHARGE_PEAK,12,193,34,8
    EDITTEXT        IDC_COMMIT_CHARGE_TOTAL,65,174,45,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    EDITTEXT        IDC_COMMIT_CHARGE_LIMIT,65,184,45,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    EDITTEXT        IDC_COMMIT_CHARGE_PEAK,65,193,45,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    LTEXT           "Totale",IDS_PHYSICAL_MEMORY_TOTAL,137,131,27,8
    LTEXT           "Disponibile",IDS_PHYSICAL_MEMORY_AVAILABLE,137,140,30,8
    LTEXT           "Cache di Sistema",IDS_PHYSICAL_MEMORY_SYSTEM_CACHE,137,149,46,8
    EDITTEXT        IDC_PHYSICAL_MEMORY_TOTAL,185,131,48,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    EDITTEXT        IDC_PHYSICAL_MEMORY_AVAILABLE,185,140,48,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    EDITTEXT        IDC_PHYSICAL_MEMORY_SYSTEM_CACHE,185,149,48,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    LTEXT           "Totale",IDS_KERNEL_MEMORY_TOTAL,137,174,27,8
    LTEXT           "Paginata",IDS_KERNEL_MEMORY_PAGED,137,184,21,8
    LTEXT           "Non paginata",IDS_KERNEL_MEMORY_NONPAGED,137,193,34,8
    EDITTEXT        IDC_KERNEL_MEMORY_TOTAL,185,174,48,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    EDITTEXT        IDC_KERNEL_MEMORY_PAGED,185,184,48,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    EDITTEXT        IDC_KERNEL_MEMORY_NONPAGED,185,193,48,8,ES_RIGHT |
                    ES_READONLY | ES_NUMBER | NOT WS_BORDER
    GROUPBOX        "Grafico di uso della CPU",IDC_CPU_USAGE_HISTORY_FRAME,74,5,168,54,0,WS_EX_TRANSPARENT
    GROUPBOX        "Grafico di uso della memoria",IDC_MEMORY_USAGE_HISTORY_FRAME,74,63,168,54,0,WS_EX_TRANSPARENT
    PUSHBUTTON      "Barra di uso della CPU",IDC_CPU_USAGE_GRAPH,12,17,47,37,0,
		    WS_EX_CLIENTEDGE
    PUSHBUTTON      "Barra di uso della MEM",IDC_MEM_USAGE_GRAPH,12,75,47,37,0,
                    WS_EX_CLIENTEDGE
    PUSHBUTTON      "Grafico di uso della CPU",IDC_CPU_USAGE_HISTORY_GRAPH,81,17,
                    153,37,0,WS_EX_CLIENTEDGE
    PUSHBUTTON      "Grafico di uso della MEM",IDC_MEM_USAGE_HISTORY_GRAPH,81,75,
                    153,37,0,WS_EX_CLIENTEDGE
END

IDD_DEBUG_CHANNELS_DIALOG DIALOG DISCARDABLE  0, 0, 247, 210
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Canali di debug"
FONT 8, "MS Shell Dlg"
BEGIN
    CONTROL         "List2",IDC_DEBUG_CHANNELS_LIST,"SysListView32",LVS_REPORT |
                    LVS_SINGLESEL | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP |
		    LVS_SORTASCENDING,7,7,233,177
    PUSHBUTTON      "Chiudi",IDOK,171,189,69,14
END

IDD_AFFINITY_DIALOG DIALOG DISCARDABLE  0, 0, 231, 154
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Affinità del processore"
FONT 8, "MS Shell Dlg"
BEGIN
    DEFPUSHBUTTON   "OK",IDOK,120,133,50,14
    PUSHBUTTON      "Annulla",IDCANCEL,174,133,50,14
    LTEXT           "L'impostazione dell'affinità del processore controlla su quali CPU il processo potrà essere eseguito.",
                    IDC_STATIC,5,5,220,16
    CONTROL         "CPU 0",IDC_CPU0,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,
                    11,28,37,10
    CONTROL         "CPU 1",IDC_CPU1,"Button",BS_AUTOCHECKBOX | WS_DISABLED |
                    WS_TABSTOP,11,41,37,10
    CONTROL         "CPU 2",IDC_CPU2,"Button",BS_AUTOCHECKBOX | WS_DISABLED |
                    WS_TABSTOP,11,54,37,10
    CONTROL         "CPU 3",IDC_CPU3,"Button",BS_AUTOCHECKBOX | WS_DISABLED |
                    WS_TABSTOP,11,67,37,10
    CONTROL         "CPU 4",IDC_CPU4,"Button",BS_AUTOCHECKBOX | WS_DISABLED |
                    WS_TABSTOP,11,80,37,10
    CONTROL         "CPU 5",IDC_CPU5,"Button",BS_AUTOCHECKBOX | WS_DISABLED |
                    WS_TABSTOP,11,93,37,10
    CONTROL         "CPU 6",IDC_CPU6,"Button",BS_AUTOCHECKBOX | WS_DISABLED |
                    WS_TABSTOP,11,106,37,10
    CONTROL         "CPU 7",IDC_CPU7,"Button",BS_AUTOCHECKBOX | WS_DISABLED |
                    WS_TABSTOP,11,119,37,10
    CONTROL         "CPU 8",IDC_CPU8,"Button",BS_AUTOCHECKBOX | WS_DISABLED |
                    WS_TABSTOP,61,28,37,10
    CONTROL         "CPU 9",IDC_CPU9,"Button",BS_AUTOCHECKBOX | WS_DISABLED |
                    WS_TABSTOP,61,41,37,10
    CONTROL         "CPU 10",IDC_CPU10,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,61,54,41,10
    CONTROL         "CPU 11",IDC_CPU11,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,61,67,41,10
    CONTROL         "CPU 12",IDC_CPU12,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,61,80,41,10
    CONTROL         "CPU 13",IDC_CPU13,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,61,93,41,10
    CONTROL         "CPU 14",IDC_CPU14,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,61,106,41,10
    CONTROL         "CPU 15",IDC_CPU15,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,61,119,41,10
    CONTROL         "CPU 16",IDC_CPU16,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,116,28,41,10
    CONTROL         "CPU 17",IDC_CPU17,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,116,41,41,10
    CONTROL         "CPU 18",IDC_CPU18,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,116,54,41,10
    CONTROL         "CPU 19",IDC_CPU19,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,116,67,41,10
    CONTROL         "CPU 20",IDC_CPU20,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,116,80,41,10
    CONTROL         "CPU 21",IDC_CPU21,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,116,93,41,10
    CONTROL         "CPU 22",IDC_CPU22,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,116,106,41,10
    CONTROL         "CPU 23",IDC_CPU23,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,116,119,41,10
    CONTROL         "CPU 24",IDC_CPU24,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,175,28,41,10
    CONTROL         "CPU 25",IDC_CPU25,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,175,41,41,10
    CONTROL         "CPU 26",IDC_CPU26,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,175,54,41,10
    CONTROL         "CPU 27",IDC_CPU27,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,175,67,41,10
    CONTROL         "CPU 28",IDC_CPU28,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,175,80,41,10
    CONTROL         "CPU 29",IDC_CPU29,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,175,93,41,10
    CONTROL         "CPU 30",IDC_CPU30,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,175,106,41,10
    CONTROL         "CPU 31",IDC_CPU31,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,175,119,41,10
END

IDD_COLUMNS_DIALOG DIALOG DISCARDABLE  0, 0, 195, 199
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Seleziona le colonne"
FONT 8, "MS Shell Dlg"
BEGIN
    DEFPUSHBUTTON   "OK",IDOK,84,178,50,14
    PUSHBUTTON      "Annulla",IDCANCEL,138,178,50,14
    LTEXT           "Seleziona le colonne che appariranno sulla pagina 'Processi' del gestore dei processi.",
                    IDC_STATIC,7,7,181,17
    CONTROL         "Nome dell'&immagine",IDC_IMAGENAME,"Button",BS_AUTOCHECKBOX |
                    WS_DISABLED | WS_TABSTOP,7,28,56,10
    CONTROL         "&PID (Identificatore processo)",IDC_PID,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,7,39,88,10
    CONTROL         "Uso della &CPU",IDC_CPUUSAGE,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,7,50,53,10
    CONTROL         "T&empo della CPU",IDC_CPUTIME,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,7,61,48,10
    CONTROL         "Uso della &memoria",IDC_MEMORYUSAGE,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,7,72,63,10
    CONTROL         "&Delta di uso della memoria",IDC_MEMORYUSAGEDELTA,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,7,83,82,10
    CONTROL         "Massimo &uso della memoria",IDC_PEAKMEMORYUSAGE,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,7,94,82,10
    CONTROL         "E&rrore di paginazione",IDC_PAGEFAULTS,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,7,105,53,10
    CONTROL         "Oggetti &USER",IDC_USEROBJECTS,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,7,116,62,10
    CONTROL         "Letture I/O",IDC_IOREADS,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,7,127,49,10
    CONTROL         "Byte di letture I/O",IDC_IOREADBYTES,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,7,138,65,10
    CONTROL         "ID &sessione",IDC_SESSIONID,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,7,149,50,10
    CONTROL         "&Nome utente",IDC_USERNAME,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,7,160,51,10
    CONTROL         "Delt&a di errori di pagina",IDC_PAGEFAULTSDELTA,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,107,28,72,10
    CONTROL         "Dimensione della memoria &virtuale",IDC_VIRTUALMEMORYSIZE,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,107,39,77,10
    CONTROL         "Riserva di pa&ging",IDC_PAGEDPOOL,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,107,50,53,10
    CONTROL         "Riserva n&on di paging",IDC_NONPAGEDPOOL,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,107,61,67,10
    CONTROL         "P&riorità base",IDC_BASEPRIORITY,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,107,72,55,10
    CONTROL         "Conto degli &handle",IDC_HANDLECOUNT,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,107,83,59,10
    CONTROL         "Conto dei &thread",IDC_THREADCOUNT,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,107,94,59,10
    CONTROL         "Oggetti GDI",IDC_GDIOBJECTS,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,107,105,55,10
    CONTROL         "Scritture I/O",IDC_IOWRITES,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,107,116,49,10
    CONTROL         "Byte di scritture I/O",IDC_IOWRITEBYTES,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,107,127,65,10
    CONTROL         "Altri I/O",IDC_IOOTHER,"Button",BS_AUTOCHECKBOX |
                    WS_TABSTOP,107,138,46,10
    CONTROL         "Byte di altri I/O",IDC_IOOTHERBYTES,"Button",
                    BS_AUTOCHECKBOX | WS_TABSTOP,107,149,65,10
END

/*
 String Table
*/

STRINGTABLE DISCARDABLE
BEGIN
    IDS_APP_TITLE           "Gestore dei processi"
    IDC_TASKMGR             "Gestore dei processi"
    IDS_RUNDLG_CAPTION      "Crea un nuovo processo"
END

STRINGTABLE DISCARDABLE
BEGIN
    ID_FILE_NEW             "Esegue un nuovo programma"
    ID_OPTIONS_ALWAYSONTOP  "Il gestore dei processi rimane davanti a tutte le altre finestre se non minimizzato"
    ID_OPTIONS_MINIMIZEONUSE
                            "Il gestore dei processi viene minimizzato quando è eseguita un'operazione 'Passa a'"
    ID_OPTIONS_HIDEWHENMINIMIZED "Nascondi il gestore dei processi quando è minimizzato"
    ID_VIEW_REFRESH         "Forza il gestore dei processi ad aggiornare ora, nonostante la regolazione 'Velocità di aggiornamento'"
    ID_VIEW_LARGE           "Mostra i processi usando icone grandi"
    ID_VIEW_SMALL           "Mostra i processi usando icone piccole"
    ID_VIEW_DETAILS         "Mostra informazioni su ogni processo"
    ID_VIEW_UPDATESPEED_HIGH "Aggiorna la schermata due volte al secondo"
    ID_VIEW_UPDATESPEED_NORMAL "Aggiorna la schermata ogni due secondi"
    ID_VIEW_UPDATESPEED_LOW "Aggiorna la schermata ogni quattro secondi"
END

STRINGTABLE DISCARDABLE
BEGIN
    ID_VIEW_UPDATESPEED_PAUSED "Non si aggiorna automaticamente"
    ID_WINDOWS_TILEHORIZONTALLY
                            "Affianca le finestre orizzontalmente sul desktop"
    ID_WINDOWS_TILEVERTICALLY "Affianca le finestre verticalmente sul desktop"
    ID_WINDOWS_MINIMIZE     "Minimizza le finestre"
    ID_WINDOWS_MAXIMIZE     "Massimizza le finestre"
    ID_WINDOWS_CASCADE      "Impila le finestre diagonalmente sul desktop"
    ID_WINDOWS_BRINGTOFRONT "Porta la finestra davanti, ma non passare a quella"
    ID_HELP_TOPICS          "Mostra l'aiuto del gestore di processi"
    ID_HELP_ABOUT           "Mostra informazioni, numero di versione e copyright del programma"
    ID_FILE_EXIT            "Esce dal gestore di processi"
    ID_OPTIONS_SHOW16BITTASKS
                            "Mostra i processi a 16 bit sotto il ntvdm.exe associato"
    ID_VIEW_SELECTCOLUMNS   "Seleziona quali colonne saranno visibili nella pagina Processi"
    ID_VIEW_SHOWKERNELTIMES "Mostra il tempo del kernel nei grafici delle prestazioni"
    ID_VIEW_CPUHISTORY_ONEGRAPHALL
                            "Un singolo grafico mostra l'uso totale della CPU"
    ID_VIEW_CPUHISTORY_ONEGRAPHPERCPU "Ogni CPU ha il suo grafico"
    ID_APPLICATION_PAGE_SWITCHTO
                            "Porta un processo in primo piano, mette il focus su quel processo"
END

STRINGTABLE DISCARDABLE
BEGIN
    ID_ENDTASK              "Chiede ai processi selezionati di chiudersi"
    ID_GOTOPROCESS          "Mette il focus sul processo selezionato"
    ID_RESTORE              "Ripristina il gestore dei processi dal suo stato nascosto"
    ID_PROCESS_PAGE_ENDPROCESS "Rimuove questo processo dal sistema"
    ID_PROCESS_PAGE_ENDPROCESSTREE
                            "Rimuove questo processo e tutti i discendenti dal sistema"
    ID_PROCESS_PAGE_DEBUG   "Lega il debugger a questo processo"
    ID_PROCESS_PAGE_SETAFFINITY
                            "Controlla su quali processori il processo potrà essere eseguito"
    ID_PROCESS_PAGE_SETPRIORITY_REALTIME
                            "Mette il processo nella classe di priorità 'Tempo reale'"
    ID_PROCESS_PAGE_SETPRIORITY_HIGH "Mette il processo nella classe di priorità 'Alta"
    ID_PROCESS_PAGE_SETPRIORITY_ABOVENORMAL
                            "Mette il processo nella classe di priorità 'Sopra normale'"
    ID_PROCESS_PAGE_SETPRIORITY_NORMAL
                            "Mette il processo nella classe di priorità 'Normale'"
    ID_PROCESS_PAGE_SETPRIORITY_BELOWNORMAL
                            "Mette il processo nella classe di priorità 'Sotto normale'"
    ID_PROCESS_PAGE_SETPRIORITY_LOW "Mette il processo nella classe di priorità 'Bassa'"
    ID_PROCESS_PAGE_DEBUGCHANNELS
                            "Controlla i canali di debug"
END

STRINGTABLE DISCARDABLE
BEGIN
    IDS_VIEW_LARGE                     "Icone &grandi"
    IDS_VIEW_SMALL                     "Icone &piccole"
    IDS_VIEW_DETAILS                   "&Dettagli"
    IDS_WINDOWS                        "&Finestre"
    IDS_VIEW_SELECTCOLUMNS             "&Seleziona colonne..."
    IDS_OPTIONS_SHOW16BITTASKS         "&Mostra i processi a 16 bit"
    IDS_VIEW_CPUHISTORY                "&Grafico CPU"
    IDS_VIEW_CPUHISTORY_ONEGRAPHALL    "&Un grafico, tutte le CPU"
    IDS_VIEW_CPUHISTORY_ONEGRAPHPERCPU "Un grafico per &ogni CPU"
    IDS_VIEW_SHOWKERNELTIMES           "Mostra i &tempi del kernel"
    IDS_APPLICATIONS                   "Applicazioni"
    IDS_PROCESSES                      "Processi"
    IDS_PERFORMANCE                    "Prestazioni"
    IDS_STATUS_BAR_CPU_USAGE           "Uso della CPU: %3d%%"
    IDS_STATUS_BAR_PROCESSES           "Processi: %d"
    IDS_STATUS_BAR_MEMORY_USAGE        "Uso della Memoria: %dK / %dK"
END

STRINGTABLE DISCARDABLE
BEGIN
    IDS_IMAGENAME         "Nome dell'immagine"
    IDS_PID               "PID"
    IDS_CPUUSAGE          "CPU"
    IDS_CPUTIME           "Tempo CPU"
    IDS_MEMORYUSAGE       "Uso della memoria"
    IDS_MEMORYUSAGEDELTA  "Delta della memoria"
    IDS_PEAKMEMORYUSAGE   "Massimo uso della memoria"
    IDS_PAGEFAULTS        "Errori di paginazione"
    IDS_USEROBJECTS       "Oggetti USER"
    IDS_IOREADS           "Letture I/O"
    IDS_IOREADBYTES       "Bytes di letture I/O"
    IDS_SESSIONID         "ID sessione"
    IDS_USERNAME          "Nome utente"
    IDS_PAGEFAULTSDELTA   "Delta PF"
    IDS_VIRTUALMEMORYSIZE "Dimensione VM"
    IDS_PAGEDPOOL         "Riserva paging"
    IDS_NONPAGEDPOOL      "Riserva NP"
    IDS_BASEPRIORITY      "Priorità base"
    IDS_HANDLECOUNT       "Handles"
    IDS_THREADCOUNT       "Threads"
    IDS_GDIOBJECTS        "Oggetti GDI"
    IDS_IOWRITES          "Scritture I/O"
    IDS_IOWRITEBYTES      "Bytes scritture I/O"
    IDS_IOOTHER           "Altri I/O"
    IDS_IOOTHERBYTES      "Bytes altri I/O"
END

STRINGTABLE DISCARDABLE
BEGIN
    IDS_WARNING_TITLE               "Avviso del gestore di processi"
    IDS_PRIORITY_CHANGE_MESSAGE     "ATTENZIONE: Cambiare la classe di priorità di questo processo potrebbe\n\
                                     causare effetti collaterali inclusa instabilità di sistema. Sei sicuro\n\
                                     di voler cambiare la classe di priorità?"
    IDS_PRIORITY_UNABLE2CHANGE      "Impossibile cambiare priorità"
    IDS_TERMINATE_MESSAGE           "ATTENZIONE: Terminare un processo può causare effetti\n\
                                     collaterali inclusa la perdita di dati e instabilità di sistema.\n\
                                     Il processo non avrà la possibilità di salvare il suo stato o\n\
                                     i dati prima che sia terminato. Sei sicuro di voler\n\
                                     terminare il processo?"
    IDS_TERMINATE_UNABLE2TERMINATE  "Impossibile terminare il processo"
    IDS_DEBUG_MESSAGE               "ATTENZIONE: Fare il debug di questo processo potrebbe risultare in una perdita\n\
                                     di dati. Sei sicuro di voler legare il debugger?"
    IDS_DEBUG_UNABLE2DEBUG          "Impossibile il Debug del processo"
    IDS_AFFINITY_ERROR_MESSAGE      "Il processo deve avere affinità con almeno un processore"
    IDS_AFFINITY_ERROR_TITLE        "Opzione non valida"
    IDS_AFFINITY_UNABLE2ACCESS      "Impossibile accedere o cambiare affinità di processo"
END

STRINGTABLE DISCARDABLE
BEGIN
    IDS_SYSTEM_IDLE_PROCESS            "Processo di sistema inattivo"
    IDS_APPLICATION_NOT_RESPONDING     "Non risponde"
    IDS_APPLICATION_RUNNING            "In esecuzione"
    IDS_APPLICATION_TASK               "Processo"
    IDS_APPLICATION_STATUS             "Status"
    IDS_DEBUG_CHANNEL                  "Canali debug"
    IDS_DEBUG_CHANNEL_FIXME            "Fixme"
    IDS_DEBUG_CHANNEL_ERR              "Err"
    IDS_DEBUG_CHANNEL_WARN             "Warn"
    IDS_DEBUG_CHANNEL_TRACE            "Trace"
END
