# &quanta; muud omadused

See peatükk kirjeldab &quanta; muid omadusi.

## Kommanderi kasutamine &quanta;ga

Kommanderi autor on Marc Britton.

&debugging-quanta;

## &quanta; sildifailid

&quanta; kasutab sildifaile määramaks mitmesuguseid tööriistaribadelt kasutatavaid tegevusi. Sildifailid võivad defineerida tavalise atribuutideta sildi või ka dialoogikasti, mis toob esile kõik kättesaadavad atribuudid, jättes sinu vaevaks vaid tühjad väljad.

Tühikud üldiselt midagi ei mõjuta, kuid ettevaatlik tasub olla märkidega & ja <. On tõenäoline, et need asendatakse kõigis XML-põhistes &quanta; ressursifailides vastavalt märkidega && ja &lt;. See ei põhjusta küll krahhi, kuid tähelepanematuse korral võib tubli tükk tööd vastu taevast lennata.

### Sildifaili struktuur

####

Sildi attr tüübiatribuudi võimalikud kirjed. Võimalike tüüpide leidmiseks kasutasin sildikataloogides järgmist käsku : grep -h type= *.tag |sed -e 's/^.*type=\"\([a-z]*\).*/\1/'| sort |uniq

Sildidialoogi elementide tüübid:

- check
- color
- input
- list
- text
- url

Need on argumenditübid PHP funktsioonisiltides (küsi Andrase käest, kas need on pigem vabavormis):

- array
- bool
- boolean
- char
- constant
- flags
- float
- function
- int
- long
- mixed
- number
- object
- resource
- resoure
- string

Sildimääratlusel on järgmised lisaatribuudid:

hasScript

  "1", kui selle sildiga saab seostada tavalisi sündmusi/skripte (onclick jne.)

hasCore

  "1", kui on olemas tavalised põhiatribuudid (id, class jne.)

hasI18n

  "1", kui on olemas tavalised i18n atribuudid (lang, dir)

single

  "1", kui on üksik silt (nt. <hr >)

optional

  "1", kui on lisasilt (nt. <colgroup >)

returnType

  skriptikeeltes funktsiooni tagasiside tüüp, kui on (nt int)

<attr > määratlusel võivad olla järgmised atribuudid:

defaultValue

  Sildi vaikeväärtus ???

status

  võib olla optional, required, implied

####

Skriptikeele funktsioonide jaoks defineeri sildifailid näiteks nii:

    <!DOCTYPE tags>
    <tags>

    <tag name=[function-name] type=function returnType=[return-type]>
      <attr name=[argument1]> type=[argument1-type]
    ></attr>
      <attr name=[argument2] type=[argument2-type] status=optional
    ></attr>
        ...
    </tag>
    <tag ...
    ...
    </tag>
     ...
    </tags>

Elemendid nurksulgudes asendatakse. argument1 on nõutav, argument2 lisavõimalus.

Sildifail, millega peaks kaasnema redigeerimisdialoog, peaks välja nägema umbes nii:

    <!DOCTYPE tags>
    <tags>
      <tag name="[name] [hasCore="[01]" hasI18n="[01]" hasScript="[01]"]>
        <attr name="[attribute1]" type="[check|color|input|list|text|url]">
          <text
    ></text>
          <textlocation col="0" row="0" />
          <tooltip
    ></tooltip>
          <location col="1" row="0" colspan="3"/>
        </attr>
      ...
      </tag>
      ...
    </tags>

<text</text > defineerib objekti lühikirjelduse.

<textlocation .../> defineerib sildi <text veergude ja ridade asetuse.

<tooltip</tooltip > on tekst, mis ilmub kohtspikrina.

<location ../> defineerib objekti asukoha antud atribuudil.

Sildifailis peavad olema kirjas kõik atribuudid. Kui sa ei soovi sildidialoogi ilmumist, siis jäta lihtsalt silt <location > ära. Nt. <attr ... > </attr >