;FontName include file for NSIS
;Written by Vytautas Krivickas (mailto:krivickas@vic.australis.com.au)
;
;If an error was generated the stack contains the translated error message
;and the error flag is set
;

;English (Default) translation by Vytautas Krivickas
;Lithuanian translation by Vytautas Krivickas

;Language String Definitions

  !define FontName_LANG "1033" #English (by Vytautas Krivickas)

    LangString FontName_FONTVERSION ${FontName_LANG} "Wrong Font Version"
    LangString FontName_MAPADDRESS  ${FontName_LANG} "MappedFile Address Error: %u"
    LangString FontName_MAPCREATE   ${FontName_LANG} "MappedFile Error: %u"
    LangString FontName_FILESIZE    ${FontName_LANG} "Invalid file size: %u"
    LangString FontName_FILEHANDLE  ${FontName_LANG} "Invalid file handle %u"
    LangString FontName_VERSIONINFO ${FontName_LANG} "FontName %s plugin for NSIS"

  !undef FontName_LANG

  !define FontName_LANG "1063" #Lithuanian (by Vytautas Krivickas)

    LangString FontName_FONTVERSION ${FontName_LANG} "Neteisinga rifto versija"
    LangString FontName_MAPADDRESS  ${FontName_LANG} "MappedFile Address Error: %u"
    LangString FontName_MAPCREATE   ${FontName_LANG} "Planines bylos sukurimo klaida: %u"
    LangString FontName_FILESIZE    ${FontName_LANG} "Neteisingas bylos dydis: %u"
    LangString FontName_FILEHANDLE  ${FontName_LANG} "Neteisinga bylos rankena: %u"
    LangString FontName_VERSIONINFO ${FontName_LANG} "FontName %s ijungiamoji byla i NSIS"

  !undef FontName_LANG

!macro FontNameVer
  call TranslateFontName
  fontname::version
!macroend

!macro FontName FONTFILE
  push ${FONTFILE}
  call TranslateFontName
  fontname::name
  call CheckFontNameError
!macroend

Function CheckFontNameError
  !define Index "LINE-${__LINE__}"
  
  exch $1
  strcmp $1 "*:*" 0 Index
    pop $1
    exch $1
    SetErrors
    
Index:
  exch $1

  !undef Index
FunctionEnd

Function TranslateFontName
    Push $(FontName_FONTVERSION)
    Push $(FontName_MAPADDRESS)
    Push $(FontName_MAPCREATE)
    Push $(FontName_FILESIZE)
    Push $(FontName_FILEHANDLE)
    Push $(FontName_VERSIONINFO)
FunctionEnd
