/*
 * Program Manager
 *
 * Copyright 2009 Aurimas Fišeras <aurimas@gmail.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 "progman.h"

/* Menu */

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

LANGUAGE LANG_LITHUANIAN, SUBLANG_NEUTRAL

MAIN_MENU MENU
{
 POPUP "&Failas" {
   MENUITEM "&Nauja...",                     PM_NEW
   MENUITEM "&Atverti\tEnter",               PM_OPEN
   MENUITEM "&Perkelti...\tF7",              PM_MOVE,      GRAYED
   MENUITEM "&Kopijuoti...\tF8",             PM_COPY,      GRAYED
   MENUITEM "&Šalinti\tEntf",                PM_DELETE
   MENUITEM "At&ributai...\tAlt+Enter",      PM_ATTRIBUTES
   MENUITEM SEPARATOR
   MENUITEM "&Vykdyti...",                   PM_EXECUTE
   MENUITEM SEPARATOR
   MENUITEM "Iš&eiti...",                    PM_EXIT
 }
 POPUP "&Parinktys" {
   MENUITEM "Išdėstyti &automatiškai",       PM_AUTO_ARRANGE
   MENUITEM "&Suskleisti paleidžiant",       PM_MIN_ON_RUN
   MENUITEM "Išsaugoti &nuostatas išeinant", PM_SAVE_SETTINGS
 }
 POPUP "&Langai" {
   MENUITEM "&Persikloję\tShift+F5",         PM_OVERLAP
   MENUITEM "&Greta vienas kito\tShift+F4",  PM_SIDE_BY_SIDE
   MENUITEM "&Išdėstyti piktogramas",        PM_ARRANGE
 }
 POPUP "&Žinynas" {
   MENUITEM "&Turinys",                      PM_CONTENTS
   MENUITEM "&Paieška...",                   PM_SEARCH
   MENUITEM SEPARATOR
   MENUITEM "Pa&galba apie žinyną",          PM_HELPONHELP
   MENUITEM "&Mokymo programa",              PM_TUTORIAL
   MENUITEM SEPARATOR
   MENUITEM "&Apie Wine",                  PM_ABOUT_WINE
 }
}

/* Dialog `New' */

DIALOG_NEW DIALOG 0, 0, 170, 65
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Nauja"
{
RADIOBUTTON   "",                 PM_NEW_GROUP,    10, 15,  10, 15
LTEXT         "Programų &grupė",   -1,    20, 18,  80, 15
RADIOBUTTON   "",                 PM_NEW_PROGRAM,  10, 35,  10, 15
LTEXT         "&Programa", -1,  20, 38,  80, 15
DEFPUSHBUTTON "Gerai",          IDOK,           105,  5,  60, 15, WS_TABSTOP
PUSHBUTTON    "Atsisakyti",      IDCANCEL,       105, 25,  60, 15, WS_TABSTOP
PUSHBUTTON    "&Žinynas",        PM_HELP,        105, 45,  60, 15, WS_TABSTOP
}

/* Dialog `Move' */

DIALOG_MOVE DIALOG 0, 0, 250, 65
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Perkelti programą"
{
LTEXT         "Perkelti programą:",    -1,            5,  5,  90, 15
LTEXT         "",                     PM_PROGRAM,         95,  5,  90, 15
LTEXT         "Iš grupės:", -1,            5, 13,  90, 15
LTEXT         "",                     PM_FROM_GROUP,      95, 13,  90, 15
LTEXT         "&Į grupę:",   PM_TO_GROUP_TXT,     5, 28, 140, 15
COMBOBOX                              PM_TO_GROUP,         5, 38, 140, 50, WS_TABSTOP | CBS_DROPDOWNLIST
DEFPUSHBUTTON "Gerai",              IDOK,              185,  5,  60, 15, WS_TABSTOP
PUSHBUTTON    "Atsisakyti",          IDCANCEL,          185, 25,  60, 15, WS_TABSTOP
PUSHBUTTON    "&Žinynas",            PM_HELP,           185, 45,  60, 15, WS_TABSTOP
}

/* Dialog `Copy' */

DIALOG_COPY DIALOG 0, 0, 250, 65
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Kopijuoti programą"
{
LTEXT         "Kopijuoti programą:",    -1,            5,  5,  90, 15
LTEXT         "",                     PM_PROGRAM,         95,  5,  90, 15
LTEXT         "Iš grupės:", -1,            5, 13,  90, 15
LTEXT         "",                     PM_FROM_GROUP,      95, 13,  90, 15
LTEXT         "&Į grupę:",   PM_TO_GROUP_TXT,     5, 28, 140, 15
COMBOBOX                              PM_TO_GROUP,         5, 38, 140, 50, WS_TABSTOP | CBS_DROPDOWNLIST
DEFPUSHBUTTON "Gerai",              IDOK,              185,  5,  60, 15, WS_TABSTOP
PUSHBUTTON    "Atsisakyti",          IDCANCEL,          185, 25,  60, 15, WS_TABSTOP
PUSHBUTTON    "&Žinynas",            PM_HELP,           185, 45,  60, 15, WS_TABSTOP
}

/* Dialog `Group attributes' */

DIALOG_GROUP DIALOG 0, 0, 230, 65
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Programų grupės atributai"
{
LTEXT     "&Aprašas:", PM_DESCRIPTION_TXT,   05, 18,  50, 10
EDITTEXT                            PM_DESCRIPTION,       60, 18,  90, 15, WS_TABSTOP
LTEXT     "&Grupės failas:",        PM_FILE_TXT,          05, 38,  50, 10
EDITTEXT                            PM_FILE,              60, 38,  90, 15, WS_TABSTOP
DEFPUSHBUTTON "Gerai",            IDOK,                155,  5,  60, 15, WS_TABSTOP
PUSHBUTTON    "Atsisakyti",        IDCANCEL,            155, 25,  60, 15, WS_TABSTOP
PUSHBUTTON    "&Žinynas",          PM_HELP,             155, 45,  60, 15, WS_TABSTOP
}

/* Dialog `Program attributes' */

DIALOG_PROGRAM DIALOG 0, 0, 250, 105
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Programos atributai"
{
LTEXT         "&Aprašas:",  PM_DESCRIPTION_TXT,   05, 10,  80, 10
EDITTEXT                                   PM_DESCRIPTION,       90, 10,  80, 15, WS_TABSTOP
LTEXT         "Komandos &eilutė:", PM_COMMAND_LINE_TXT,  05, 25,  80, 10
EDITTEXT                                   PM_COMMAND_LINE,      90, 25,  80, 15, WS_TABSTOP
LTEXT         "&Veikiamasis katalogas:",    PM_DIRECTORY_TXT,     05, 40,  80, 10
EDITTEXT                                   PM_DIRECTORY,         90, 40,  80, 15, WS_TABSTOP
LTEXT         "&Klavišų kombinacija:",      PM_HOT_KEY_TXT,       05, 55,  80, 10
EDITTEXT                                   PM_HOT_KEY,           90, 55,  80, 15, WS_TABSTOP
ICON          "",                          PM_ICON,              20, 70
CHECKBOX      "",                          PM_SYMBOL,            90, 75,  10, 10, WS_TABSTOP
LTEXT         "&Suskleisti paleidus",       -1,             105, 75,  75, 10
DEFPUSHBUTTON "Gerai",                   IDOK,                175,  5,  70, 15, WS_TABSTOP
PUSHBUTTON    "Atsisakyti",               IDCANCEL,            175, 25,  70, 15, WS_TABSTOP
PUSHBUTTON    "Pari&nkti...",               PM_BROWSE,           175, 45,  70, 15, WS_TABSTOP
PUSHBUTTON    "Keisti &piktogramą...", PM_OTHER_SYMBOL,     175, 65,  70, 15, WS_TABSTOP
PUSHBUTTON    "&Žinynas",                 PM_HELP,             175, 85,  70, 15, WS_TABSTOP
}

/* Dialog `Symbol' */

DIALOG_SYMBOL DIALOG 0, 0, 200, 85
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Keisti piktogramą"
{
LTEXT     "&Failas:",    PM_ICON_FILE_TXT,    5, 15,  40, 10
EDITTEXT                         PM_ICON_FILE,       45, 15,  85, 15, WS_TABSTOP
LTEXT     "Dabartinė &piktograma:", PM_SYMBOL_LIST_TXT,  5, 30, 125, 10
COMBOBOX                         PM_SYMBOL_LIST,      5, 40, 125, 50,
   CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | CBS_OWNERDRAWFIXED | WS_TABSTOP
DEFPUSHBUTTON "Gerai",         IDOK,              135,  5,  60, 15, WS_TABSTOP
PUSHBUTTON    "Atsisakyti",     IDCANCEL,          135, 25,  60, 15, WS_TABSTOP
PUSHBUTTON    "Pari&nkti...",    PM_BROWSE,         135, 45,  60, 15, WS_TABSTOP
PUSHBUTTON    "&Žinynas",       PM_HELP,           135, 65,  60, 15, WS_TABSTOP
}

/* Dialog `Execute' */

DIALOG_EXECUTE DIALOG 0, 0, 200, 85
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Vykdyti programą"
{
LTEXT     "&Komandos eilutė:", -1,   05, 15, 120, 10
EDITTEXT                               PM_COMMAND, 05, 25, 120, 15, WS_TABSTOP
CHECKBOX      "",                      PM_SYMBOL,  05, 45,  10, 10, WS_TABSTOP
LTEXT         "&Suskleisti paleidus",   -1,   20, 45, 120, 10
DEFPUSHBUTTON "Gerai",               IDOK,      135,  5,  60, 15, WS_TABSTOP
PUSHBUTTON    "Atsisakyti",           IDCANCEL,  135, 25,  60, 15, WS_TABSTOP
PUSHBUTTON    "Pari&nkti...",          PM_BROWSE, 135, 45,  60, 15, WS_TABSTOP
PUSHBUTTON    "&Žinynas",             PM_HELP,   135, 65,  60, 15, WS_TABSTOP
}

/* Strings */

STRINGTABLE
{
IDS_PROGRAM_MANAGER,        "Programų tvarkytuvė"
IDS_ERROR,                  "KLAIDA"
IDS_WARNING,                "ĮSPĖJIMAS"
IDS_INFO,                   "Informacija"
IDS_DELETE,                 "Šalinti"
IDS_DELETE_GROUP_s,         "Šalinti grupę „%s“?"
IDS_DELETE_PROGRAM_s,       "Šalinti programą „%s“?"
IDS_NOT_IMPLEMENTED,        "Nerealizuota"
IDS_FILE_READ_ERROR_s,      "Klaida skaitant „%s“."
IDS_FILE_WRITE_ERROR_s,     "Klaida rašant „%s“."
IDS_GRPFILE_READ_ERROR_s,   "Nepavyko atidaryti grupės failo „%s“.\n\
                            Mėginti atidaryti toliau?"
IDS_OUT_OF_MEMORY,          "Trūksta atminties."
IDS_WINHELP_ERROR,          "Žinynas neprieinamas."
IDS_UNKNOWN_FEATURE_s,      "Nežinoma %s funkcija"
IDS_FILE_NOT_OVERWRITTEN_s, "Failas „%s“ egzistuoja. Neperrašytas."
IDS_SAVE_GROUP_AS_s,        "Išsaugoti grupę kaip „%s“, taip neperrašant originalių failų."
IDS_NO_HOT_KEY,             "Nėra"
IDS_ALL_FILES,              "Visi failai (*.*)"
IDS_PROGRAMS,               "Programos"
IDS_LIBRARIES_DLL,          "Bibliotekos (*.dll)"
IDS_SYMBOL_FILES,           "Piktogramų failai"
IDS_SYMBOLS_ICO,            "Piktogramos (*.ico)"
}
