/*
 * 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 DISCARDABLE
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...\tCrtl+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 DISCARDABLE
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

IDD_DATETIME DIALOG DISCARDABLE 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 DISCARDABLE 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 DISCARDABLE 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 DISCARDABLE 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 DISCARDABLE 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 DISCARDABLE
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 DISCARDABLE
BEGIN
    STRING_ALIGN_LEFT,            "Kairinė"
    STRING_ALIGN_RIGHT,           "Dešininė"
    STRING_ALIGN_CENTER,          "Centrinė"
END

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

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

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

STRINGTABLE DISCARDABLE
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_CLOSE,            "Užverti"
END

STRINGTABLE DISCARDABLE
BEGIN
    STRING_UNITS_CM,             "cm"
END

STRINGTABLE DISCARDABLE
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
