online help

Registered by Laszlo Simon

Please translate help/user manual to english, deutch and create online version containing:
- menu/main window description
- basic/scientific/programming/financial layout description
- cal file format description

Description in hungarian:

Felhasználói leírás

A PolyCalc egy gyorsan bövithetö és programozható kalkulátor különbözö
célú billentyüzetkiosztásokkal. Alapból a Polycalc két beépített kiosztást
tartalmaz, az egyszerü és a tudományos kalkulátor kiosztást. Emellett
a programhoz további kiosztások tölthetöek le.

A letöltött kiosztások installálása egyszerüen a fájl megfelelö könyvtárba
másolásával történik. Ez a könyvtár Linuxon a /usr/share/polycalc könyvtár, Windowson pedig a
PolyCalc telepítési könyvtára, ahol az indítható állomány található.

A PolyCalc menüje:
File/Quit - kilépés az alkalmazásból
View/Command Log - megjeleníti/elrejti a kifejezéseket és eredményeket loggoló ablakot
Options/... - váltás a különbözö kalkulátorok között
Help/PolyCalc - help oldal

Kiosztás fejlesztői leirás

A PolyCalc kalkulátor egy programozható keretrendszer amivel egyszerűen lehet különböző célú kalulátorokat létrehozni.

A PolyCalc alkalmazás részei

  Gomb kiosztás
    A kalkulátor gombjainak és egyéb megjelenítőinek gyüjteménye. A gombokat a kalkulátor dinamikusan hozza létre
    a kiosztás leíró fájlok alapján. Lásd PolyCalc formátum bekezdés.

  Kijelző
    Az eredményt megjelenítő kijelző elem. Ez egyben egy kifejezés szerkesztő doboz és egy
    legördülő menü amiből az előző kifejezések kiválaszthatóak.

  Kalkulátor motor (engine)
    A kalkulátor motor az a parancsértelmező, aminek a gombokkal begépelt kifejezések átadódnak, majd az általa
    kiértékelt kifejezés eredménye a kijelzőre íródik.

  Adatcsatorna motor
    A kalkulátorban van egy QtScript szkriptmotor. A kalkulátor különböző események hatására a szkript motorban
    előre deklarált és a leirófájlokban opcionálisan implementált függvényeket hív meg.
    Ezek a függvények módosíthatják a kalkulátor belső adatait (pl. státuszbár szöveg, kijelző szöveg).
    Bövebbel lásd: tag: hooks

PolyCalc formátum

  A PolyCalc kiosztás leíro fájl XML formátumu. A formátum a polycalc.xsd XML séma fájlal validálható.

tag: polycalc

  A fajlban egy 'polycalc' gyökér tagnak kell lennie. Ennek egy kötelező version attributuma van, ami visszafele kompatibilitast jelöl.
  A jelenlegi leiras az 1.0-as formatumhoz tartozik.

  <polycalc version="1.0">...</polycalc>

  A 'polycalc' tag a következő tag-tipusokat tartalmazhatja:
  * engine (opcionális)
  * hooks (opcionális)
  * statusbar (opcionális)
  * buttontable

tag: engine

  Ez az opcionális tag a layout-hoz tartozó kalkulátor motort, illetve annak konfigurációját specifikálja.
  Ez alap értelmezésben a Qt beépített scriptnyelve, a QtScript, ami az ECMAScripten alapszik (leírás:link).
  A motort a tag-hez tartozó type attributum határozza meg. Ennek lehetséges értékei:

  * QtScript - beépített QtScript
  * external - külső program, aminek meghívását a 'command' attributummal specifikáljuk

  <engine type="external" command="parancssoroskalkulátor">
    <init>...</init>
  </engine>

  Opcionálisan tartalmazhat egy 'init' tag-et amibe inicializációs kód kerülhet, ami átadódik a motornak
  annak létrehozásakor.

tag: statusbar

  A 'statusbar' egy opcionális tag egy 'text' nevű kötelező attributumot tartalmaz. Ez az attributum egy olyan
  QtScript kifejezést tartalmaz, amit az adatcsatorna motor értékel ki. Ennek az eredménye lesz a státuszbárra
  kiírt szöveg. A státuszbár minden gombnyomás hatására frissül.

  <statusbar text='"status: "+error' />

tag: hooks

  Opcionális tag, ami az Adatcsatorna motorhoz tartalmazhat eseménykezelő függvényeket.
  Ezek a függvények külön al-tag-be kerülnek. Lehetséges al-tag-ek:

  * init: inicializációs kód a motorhoz
  * presend: lefut, mielőtt a kifejezés átadódik a motornak;
  * postsend: lefut, miután a kifejezés átadódott a motornak;
  * preshow: lefut, minden kijelző megváltozás előtt;

  Példa: ';' hozzáfűzése minden parancshoz mielőtt átadódik a kiértékelő motornak:

  <hooks><presend>command=command+";";</presend></hooks>

  Adatcsatorna motorban elérhető kalkulátor belső változók:
  * cursorpos: a szövegdobozban levő kurzor poziciója
  * selected: kijelölt szövegrész, ha van kijelölés
  * beforeselection: a kijelölt szövegrész előtti szövegrész
  * afterselection: a kijelölt szövegrész utánni szövegrész
  * beforecursor: a kurzor előtti szövegrész
  * aftercursor: a kurzor előtti szövegrész
  * display (read/write): a kijelzőn lévő aktuális kifejezés
  * command (read/write): a kalkulátor motornak küldendő, a display értékével inicializált kifejezés
  * reply: a kalkulátor motor válasza az elküldött kifejezésre

tag: buttontable

  Ez a tag tartalmazza a gombok és azok elhelyezkedésének definicióit. A gombokat rács
  formában lehet elhelyezni, a rács sorokból áll, ahol a sorok minden cellája egy gombot,
  label-t vagy egy beágyazot al-rácsot tartalmazhat. A 'a buttontable' tag egyetlen 'grid'
  tag-et tartalmaz.

  <buttontable>
    <grid>
      <row>
        <button caption="1" append="1" />
        <button caption="2" append="2" />
      </row>
      <row>
        <button caption="3" append="3" />
        <button caption="4" append="4" />
      </row>
    </grid>
  </buttontable>

tag: grid

  Rács definiciós tag. Egy vagy több 'row' taget tartalmazhat a rács sorainak megfelelően.
  A rács tag három opcionális attributumot tartalmazhat:
  * spacing: a cellák közötti rés mérete;
  * stretch: a rács alrács, a szülőrács megfelelő oszlopának szélessége. Az érték egy arányszám,
    ami alapértelmezésben 1, és a többi oszlophoz való arányt jelzi. Csak egész számokat tartalmazhat.
  * style: CSS stilus szöveg, amivel a gombok/label-ek stílusa határozható meg
    (bővebben: lásd Qt CSS styles).

tag: row

  A rács sorait definiálja. Tartalmazza a benne lévő cellákhoz tartozó tag-eket (grid,label,button).
  Opcionális attributumai:
  * stretch: a sor magasságának aránya a grid megfelelő attributumának mintájára
  * style: lásd grid

tag: button

  A kalkulátor gombjait definiáló tag. Attributumai:
  * caption: a gomb felírata, unicode karaktereket tartalmazhat.
  * stretch, style: lásd grid tag.
  * send: meghatározza, hogy a gomb lenyomása után a kapott kifejezés elküldődjön-e a
    kalkulátor motornak. Értéke true vagy false.

  A következő négy attributum a gombnyomás hatására a kijelző módosítását szabályozza:
  * set: az attributum szövege a kijelzőben lévő szöveg helyére kerül;
  * insert: az attributum szövege szúródik be a kurzor után vagy a kijelölés helyére;
  * prepend: az attributum szövege a kijelzőben lévő szöveg elejéhez adódik;
  * append: az attributum szövege a kijelzőben lévő szöveg végéhez adódik;

  Emellett az adatcsatorna motorhoz gombonként is meghatározhatóak a már bemutatott eseményvezérlő kódok:
  * preshow
  * presend
  * postsend

tag: label

  Egy szöveges kijelzőt definiáló tag. 'caption' attributuma határozza meg a kijelzett szöveget.
  A 'style' attributum a stílusát határozza meg. A 'label' elnevezhető a 'name' attributummal.
  Ezzel a névvel a label szövege elérhető/átírható az adatcsatorna motoron keresztül.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
Esthefan Maleki
Definition:
New
Series goal:
Accepted for 0.1
Implementation:
Implemented
Milestone target:
milestone icon 0.1.0
Started by
Esthefan Maleki
Completed by
Laszlo Simon

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.