/*
 * 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 "wordpad.h"

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

LANGUAGE LANG_LITHUANIAN, SUBLANG_NEUTRAL

IDM_MAINMENU MENU
BEGIN
    POPUP "&Failas"
    BEGIN
        MENUITEM "&Naujas...\tCtrl+N",              ID_FILE_NEW
        MENUITEM "&Atverti...\tCtrl+O",             ID_FILE_OPEN
        MENUITEM "&Išsaugoti\tCtrl+S",              ID_FILE_SAVE
        MENUITEM "Išsaugoti &kaip...",              ID_FILE_SAVEAS
        MENUITEM SEPARATOR
        MENUITEM "S&pausdinti...\tCtrl+P",          ID_PRINT
        MENUITEM "Spaudinio pe&ržiūra...",          ID_PREVIEW
        MENUITEM "Puslapio n&uostatos...",          ID_PRINTSETUP
        MENUITEM SEPARATOR
        MENUITEM "Iš&eiti",                         ID_FILE_EXIT
    END
    POPUP "&Taisa"
    BEGIN
        MENUITEM "&Atšaukti\tCtrl+Z",               ID_EDIT_UNDO
        MENUITEM "&Grąžinti\tCtrl+Y",               ID_EDIT_REDO
        MENUITEM SEPARATOR
        MENUITEM "&Iškirpti\tCtrl+X",               ID_EDIT_CUT
        MENUITEM "&Kopijuoti\tCtrl+C",              ID_EDIT_COPY
        MENUITEM "Į&dėti\tCtrl+V",                  ID_EDIT_PASTE
        MENUITEM "&Šalinti\tDEL",                   ID_EDIT_CLEAR
        MENUITEM "&Pažymėti viską\tCtrl+A",         ID_EDIT_SELECTALL
        MENUITEM SEPARATOR
        MENUITEM "I&eškoti...\tCtrl+F",             ID_FIND
        MENUITEM "Iešk&oti kito\tF3",               ID_FIND_NEXT
        MENUITEM "Pa&keisti...\tCtrl+H",            ID_REPLACE
        MENUITEM SEPARATOR
        MENUITEM "Tik skait&ymui",                  ID_EDIT_READONLY
        MENUITEM "&Modifikuotas",                   ID_EDIT_MODIFIED
        MENUITEM SEPARATOR
        POPUP "Papi&ldomi"
        BEGIN
            MENUITEM "Žymėjimo &informacija",       ID_EDIT_SELECTIONINFO
            MENUITEM "Rašmenų &formatas",           ID_EDIT_CHARFORMAT
            MENUITEM "&Numatytas rašmenų formatas", ID_EDIT_DEFCHARFORMAT
            MENUITEM "&Pastraipos formatas",        ID_EDIT_PARAFORMAT
            MENUITEM "&Gauti tekstą",               ID_EDIT_GETTEXT
        END
    END
    POPUP "&Rodymas"
    BEGIN
        MENUITEM "&Įrankių juosta",                 ID_TOGGLE_TOOLBAR
        MENUITEM "&Formatų juosta",                 ID_TOGGLE_FORMATBAR
        MENUITEM "&Liniuotė",                       ID_TOGGLE_RULER
        MENUITEM "&Būsenos juosta",                 ID_TOGGLE_STATUSBAR
        MENUITEM SEPARATOR
        MENUITEM "&Parinktys...",                   ID_VIEWPROPERTIES
    END
    POPUP "Įter&pimas"
    BEGIN
        MENUITEM "&Data ir laikas...",              ID_DATETIME
    END
    POPUP "F&ormatas"
    BEGIN
        MENUITEM "&Šriftas...",                     ID_FONTSETTINGS
        MENUITEM "&Ženkleliai"                      ID_BULLET
        MENUITEM "&Pastraipa..."                    ID_PARAFORMAT
        MENUITEM "&Tabuliavimo žymės..."            ID_TABSTOPS
        POPUP "&Fonas"
        BEGIN
            MENUITEM "&Sistemos\tCtrl+1",           ID_BACK_1
            MENUITEM "&Gelsvas\tCtrl+2",            ID_BACK_2
        END
    END
    POPUP "&Žinynas"
    BEGIN
        MENUITEM "&Apie Wine Wordpad"               ID_ABOUT
    END
END

IDM_POPUP MENU
BEGIN
    POPUP ""
    BEGIN
        MENUITEM "&Iškirpti",    ID_EDIT_CUT
        MENUITEM "&Kopijuoti",   ID_EDIT_COPY
        MENUITEM "Į&dėti",       ID_EDIT_PASTE
        MENUITEM SEPARATOR
        MENUITEM "&Ženkleliai"   ID_BULLET
        MENUITEM "&Pastraipa..." ID_PARAFORMAT
    END
END

IDM_COLOR_POPUP MENU
BEGIN
    POPUP ""
    BEGIN
        MENUITEM "Juoda"          ID_COLOR_BLACK
        MENUITEM "Kaštoninė"      ID_COLOR_MAROON
        MENUITEM "Žalia"          ID_COLOR_GREEN
        MENUITEM "Alyvinė"        ID_COLOR_OLIVE
        MENUITEM "Ultramarinas"   ID_COLOR_NAVY
        MENUITEM "Purpurinė"      ID_COLOR_PURPLE
        MENUITEM "Neutrali ciano" ID_COLOR_TEAL
        MENUITEM "Pilka"          ID_COLOR_GRAY
        MENUITEM "Sidabrinė"      ID_COLOR_SILVER
        MENUITEM "Raudona"        ID_COLOR_RED
        MENUITEM "Gelsvai žalsva" ID_COLOR_LIME
        MENUITEM "Geltona"        ID_COLOR_YELLOW
        MENUITEM "Mėlyna"         ID_COLOR_BLUE
        MENUITEM "Fuksija"        ID_COLOR_FUCHSIA
        MENUITEM "Žydra"          ID_COLOR_AQUA
        MENUITEM "Balta"          ID_COLOR_WHITE
        MENUITEM "Automatic"      ID_COLOR_AUTOMATIC
    END
END

IDD_DATETIME DIALOG 30, 20, 130, 80
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Data ir laikas"
FONT 10, "MS Sans Serif"
BEGIN
    LTEXT        "Galimi formatai",-1,3,2,100,15
    LISTBOX      IDC_DATETIME,3,12,80,65,LBS_NOINTEGRALHEIGHT | LBS_NOTIFY
    PUSHBUTTON   "&Gerai",IDOK,87,12,40,12
    PUSHBUTTON   "&Atsisakyti",IDCANCEL,87,26,40,12
END

IDD_NEWFILE DIALOG 30, 20, 140, 80
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Naujas"
FONT 10, "MS Sans Serif"
BEGIN
    LTEXT        "Naujo dokumento tipas",-1,3,2,100,15
    LISTBOX      IDC_NEWFILE,3,12,90,65,LBS_NOINTEGRALHEIGHT
    PUSHBUTTON   "&Gerai",IDOK,97,12,40,12
    PUSHBUTTON   "&Atsisakyti",IDCANCEL,97,26,40,12
END

IDD_PARAFORMAT DIALOG 30, 20, 200, 110
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
Caption "Pastraipos formatas"
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX "Įtrauka", -1, 10, 10, 120, 68
    LTEXT "Iš kairės", -1, 15, 22, 45, 13
    EDITTEXT IDC_PARA_LEFT, 60, 20, 55, 13
    LTEXT "Iš dešinės", -1, 15, 40, 45, 13
    EDITTEXT IDC_PARA_RIGHT, 60, 38, 55, 13
    LTEXT "Pirmoji eilutė", -1, 15, 58, 45, 13
    EDITTEXT IDC_PARA_FIRST, 60, 56, 55, 13
    LTEXT "Lygiuotė", -1, 15, 87, 40, 13
    COMBOBOX IDC_PARA_ALIGN, 55, 85, 60, 60, CBS_DROPDOWNLIST
    PUSHBUTTON "&Gerai", IDOK, 137, 15, 50, 15
    PUSHBUTTON "&Atsisakyti", IDCANCEL, 137, 33, 50, 15
END

IDD_TABSTOPS DIALOG 30, 20, 200, 110
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
Caption "Tabuliavimo žymės"
FONT 8, "MS SHell DLg"
BEGIN
    GROUPBOX "Tabuliavimo pozicija", -1, 10, 10, 120, 90
    COMBOBOX IDC_TABSTOPS, 20, 20, 100, 60, CBS_SIMPLE
    DEFPUSHBUTTON "&Pridėti", ID_TAB_ADD, 20, 80, 45, 15
    PUSHBUTTON "Pa&šalinti", ID_TAB_DEL, 72, 80, 45, 15
    PUSHBUTTON "&Gerai", IDOK, 137, 15, 50, 15
    PUSHBUTTON "&Atsisakyti", IDCANCEL, 137, 33, 50, 15
    PUSHBUTTON "Pašalinti &visas", ID_TAB_EMPTY, 137, 51, 50, 15
END

IDD_FORMATOPTS DIALOG 0, 0, 280, 110
STYLE DS_SYSMODAL
Caption ""
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX "Eilutės skaidymas", -1, 10, 10, 130, 85
    RADIOBUTTON "&Eilutės neskaidomos", IDC_PAGEFMT_WN, 18, 25, 117, 15
    RADIOBUTTON "Skaidyti tekstą prie lango &rėmelio", IDC_PAGEFMT_WW, 18, 45, 117, 15
    RADIOBUTTON "Skaidyti tekstą prie &paraštės", IDC_PAGEFMT_WM, 18, 65, 117, 15
    GROUPBOX "Įrankių juostos", -1, 150, 10, 120, 85
    CHECKBOX "Įran&kių juosta", IDC_PAGEFMT_TB, 160, 20, 80, 15
    CHECKBOX "&Formatų juosta", IDC_PAGEFMT_FB, 160, 38, 80, 15
    CHECKBOX "&Liniuotė", IDC_PAGEFMT_RU, 160, 56, 80, 15
    CHECKBOX "&Būsenos juosta", IDC_PAGEFMT_SB, 160, 74, 80, 15
    LTEXT "", IDC_PAGEFMT_ID, 0,0,0,0
END

STRINGTABLE
BEGIN
    STRING_RICHTEXT_FILES_RTF,     "Raiškiojo teksto dokumentai (*.rtf)"
    STRING_TEXT_FILES_TXT,         "Tekstiniai dokumentai (*.txt)"
    STRING_TEXT_FILES_UNICODE_TXT, "Teksto unikodu dokumentai (*.txt)"
    STRING_ALL_FILES,              "Visi dokumentai (*.*)"
END

STRINGTABLE
BEGIN
    STRING_ALIGN_LEFT,            "Kairinė"
    STRING_ALIGN_RIGHT,           "Dešininė"
    STRING_ALIGN_CENTER,          "Centrinė"
END

STRINGTABLE
BEGIN
    STRING_NEWFILE_RICHTEXT,     "Raiškiojo teksto dokumentas"
    STRING_NEWFILE_TXT,          "Tekstinis dokumentas"
    STRING_NEWFILE_TXT_UNICODE,  "Teksto unikodu dokumentas"
END

STRINGTABLE
BEGIN
    STRING_PRINTER_FILES_PRN,        "Spausdintuvo failai (*.PRN)"
END

STRINGTABLE
BEGIN
    STRING_VIEWPROPS_TITLE,          "Parinktys"
    STRING_VIEWPROPS_TEXT,           "Tekstas"
    STRING_VIEWPROPS_RICHTEXT,       "Raiškusis tekstas"
END

STRINGTABLE
BEGIN
    STRING_PREVIEW_PRINT,            "Spausdinti"
    STRING_PREVIEW_NEXTPAGE,         "Tolesnis puslapis"
    STRING_PREVIEW_PREVPAGE,         "Ankstesnis puslapis"
    STRING_PREVIEW_TWOPAGES,         "Du puslapiai"
    STRING_PREVIEW_ONEPAGE,          "Vienas puslapis"
    STRING_PREVIEW_ZOOMIN,           "Didinti"
    STRING_PREVIEW_ZOOMOUT,          "Mažinti"
    STRING_PREVIEW_CLOSE,            "Užverti"
    STRING_PREVIEW_PAGE,             "Puslapis"
    STRING_PREVIEW_PAGES,            "Puslapiai"
    STRING_UNITS_CM,                 "cm"
    STRING_UNITS_IN,                 "col."
    STRING_UNITS_INCH,               "coliai"
    STRING_UNITS_PT,                 "tašk."
END

STRINGTABLE
BEGIN
    STRING_DEFAULT_FILENAME,     "Dokumentas"
    STRING_PROMPT_SAVE_CHANGES,  "Išsaugoti „%s“ pakeitimus?"
    STRING_SEARCH_FINISHED,      "Paieška dokumente baigta."
    STRING_LOAD_RICHED_FAILED,   "Nepavyko įkelti RichEdit bibliotekos."
    STRING_SAVE_LOSEFORMATTING,  "Jūs pasirinkote išsaugoti paprasto teksto formatu, " \
                                 "todėl bus prarastas visas formatavimas. " \
                                 "Ar tikrai norite tai padaryti?"
    STRING_INVALID_NUMBER,       "Neteisingas skaičiaus formatas"
    STRING_OLE_STORAGE_NOT_SUPPORTED, "OLE saugyklos dokumentai yra nepalaikomi"
    STRING_WRITE_FAILED,              "Nepavyko išsaugoti failo."
    STRING_WRITE_ACCESS_DENIED,       "Jūs neturite prieigos failui išsaugoti."
    STRING_OPEN_FAILED,               "Nepavyko atverti failo."
    STRING_OPEN_ACCESS_DENIED,        "Jūs neturite prieigos failui atverti."
    STRING_PRINTING_NOT_IMPLEMENTED,  "Spausdinimas nerealizuotas"
    STRING_MAX_TAB_STOPS,             "Negalima pridėti daugiau negu 32-jų tabuliavimo pozicijų."
END
