Felhasználói feltöltött - lua api

Widget - egy minimális eleme a felület (panel, gomb, szöveges tétel szöveges mező, stb.) Vannak többféle widget (lásd alább), de azok végrehajtása mindig örökölni egy alap osztályt Widget, az oldalon leírt. Widget alap osztály objektum nem hozható létre.

Widgets System - rendszer szentelt a vizualizációs felület és kezelése felhasználói beavatkozásra. Minden widget lehet képviselni az erőforrás az erőforrás-rendszer (xdb fájl) és a tényleges másolat (mezők, módszerek és reakciók) a program során.

A widget fizikailag képviseli a lemezen forrás erre widget xdb fájlt. modul fájl neve:

"<путь к аддону>\<Название виджета>.(Type widget) .xdb "

widgetet példány jön létre alapján az erőforrás fájl (vagyis az erőforrás - ez nem egy widget, a widget sablont, és a jövőben).

Amíg az alkalmazás erőforrás kerül bemutatásra formájában fogantyú WidgetDesc

modultípusokban példány képviseli WidgetSafe (lásd. LuaApiTypes)

A viselkedés és a kijelző a widget befolyásolható WidgetSafe felsorolt ​​módszerek CategoryWidget

Az alkalmazás során, akkor kap egy fogantyú egy meglévő modul WidgetDesc WidgetSafe segítségével

A nyerhető WidgetSafe almodult futási időben, vagy a szülő a widget, a

Alapján egyetlen erőforrás lehet több fizikai kütyü (például, az elemek egy listáját a tartály) használatával

Ez az új widget hozzá kell adni minden szülő segítségével

FONTOS! Az ilyen dinamikusan létrehozott Eszközprimitívek kell távolítani, ha szükséges, a

DestroyWidget (self). hogy megakadályozzák a túlzott memória használat.

A widget meghatározhatja több reakciók (depresszió, tanácsadás, stb), és végre a script addon rakodók ezeket a reakciókat. Lásd. Az alábbiakban.

típusú widgetet

Számos típusú widgetet és a megfelelő erőforrás típusok:

Egyszerű kütyü:

WidgetEditLine - bemeneti vonal

WidgetEditBox - többsoros szövegmező

WidgetTextView - vezérlő kijelző szöveget

konténerek:

WidgetContainer - alapanyagok görgethető tartályt és annak végrehajtását:

WidgetScrollableContainer - konténer görgethető kütyü

WidgetTextContainer - görgethető szövegtároló

WidgetScrollBar - alapanyagok görgetősáv a görgethető konténerek és annak végrehajtására:

WidgetDiscreteScrollBar - diszkrét görgetősáv

WidgetGlideScrollBar - sima görgetősáv

WidgetSlider - alapanyagok szétcsúsztatható telefon a görgetősáv és annak végrehajtása

WidgetDiscreteSlider - diszkrét csúszka

WidgetGlideSlider - zökkenőmentes csúszka

Különleges modulokat:

WidgetControl3D - vezérlés meg a 3D-objektumok

Minden ilyen típusú örökség erőforrások, azaz a mezőt tartalmazhatja a szülő osztály Widget. Azaz, például BackLayer mező a WidgetPanel és WidgetTextView. Továbbá, az összes típusú widgetet küldhet reakciók az alábbiakban felsorolt.

Csak akkor modulok létrehozását konkrét megvalósítások a fent felsorolt. Ez nem, hogy egy modultípusok Widget, WidgetContainer, WidgetScrollBar, WidgetSlider.

mezők Widget

FONTOS! Mezőnevek a kis- és nagybetűket.

Meglévő mezők az alap osztály Widget:

Alapvető területeken:

Név: string - a név a widget rendszer

Látható: logikai - akár a widget látható. Default igaz. Ha a widget nem látható, akkor nem áll rendelkezésre reakció

Engedélyezett: logikai - akár a widget áll rendelkezésre, és minden gyermek kütyük reakciókat. Ez befolyásolja a megjelenést (widget „zaserivaetsya”). Alapértelmezett igaz

Prioritás: szám (integer) - kijelző prioritás (szintén befolyásolja kezelése egér események) widgetet a listában a szülő widget. Azaz, az ezen a területen alkotnak hierarchiát kijelző hirdetések teljes addon.

elhelyezkedés

Elhelyezés: [ „WidgetPlacementXY”] - a leírása a helyét a widget.

Gyermek modulokat:

Gyermekek: táblázata Widget - gyermek kütyü. Szinte minden widget tartalmazhat gyermek kütyü, különleges esetek kivételével, a csúszka típus stb Gyermek widgetek jelennek tetején a szülő és a lehallgatott a reakció (ha bejelentik, és aláírt rakodók), mielőtt a szülő widgetet különleges esetek kivételével, az alábbiak szerint.

clipContent: logikai - El kell vágni tartalom, beleértve a gyermek kütyü az határai. Alapértelmezett hamis

A következő:

BackLayer, FrontLayer: WidgetLayer - rétegek megjelenítő textúra. Lehet, hogy hiányzik. BackLayer - alsó réteg, FrontLayer - fedőlap.

textureMask: UISingleTexture - textúra alfa. Ez lehet beállítani a maszk, amely levágta a fő textúra a szabályozás és annak minden gyerek

elhalványul: szám ([0.0f, 1.0f]) - a vizuális átláthatóságát a widget. Alapértelmezett 1.0f - átlátszatlan.

Nyomon követése és korlátozza reakciók:

pickMask: UISingleTexture - fekete-fehér textúra (2 hatványai) határozza meg az aktív (fehér képpont) terület kattintással. Ha kézzel kell beállítani mipSW = 0 export

PickChildrenOnly - Handle egér válasz csak gyerekeknek ez a widget, a widget maga figyelmen kívül hagyva

forceWheel - figyelmen kívül hagyása PickChildrenOnly amikor az egér scroll kerék és hover. Mindig óvatosan kezelje az egér kerék görgetés reakció

IgnoreDblClick - Ignore dupla kattintással a widget és a gyermekek

TransparentInput: logikai - akár a widget átlátható a bemenet. Alapértelmezett hamis

Speciális területek:

isProtected: logikai - akár Letiltás addons műveletet a widget. Default hamis. Lásd. Szintén AttachWidget2D.

TabOrder: szám (integer) - állítja a lap rendelést ellenőrzések Tab billentyűt. Alapértelmezett 0 (nincs kikapcsolva). Ahhoz, hogy részt vegyenek a bypass nagyobbnak kell lennie, mint 0.

soundShow, soundHide: WidgetSoundBase - hangok megjelenítése és elrejtése a modult.

reakciók Widget

Egy widget segítségével állapítsa meg a reakciót, akkor fizessen nekik a forgatókönyvet rakodók addon.

Ebben az esetben, amikor egy esemény bekövetkezik, amely kiváltja a reakciót sripte felvezető meghívjuk aláírt paraméterekkel params. Lásd. OnReaction(Params).

A reakciókat lehet rágcsáló (sajtolás, tanácsadás, stb) és a billentyűzet.

Billentyűzet reakciót Widget

Billentyűzet reakciókat lehet végrehajtani csak zabaindenyh kulcsok input.cfg fájlt. Egyedi kiegészítőket a billentyűzet válasz nem biztosított. billentyűzet válasz bejelentett csak WidgetForm és WidgetButton.

bindSections: táblázata BindSection - a lista reakciók gombnyomás. területeken:

bindSection: string - a név a szakasz

bindedReactions: táblázata húr - egy listát a reakciók

Rágcsáló reakciót Widget

Lehetséges reakciók az ősosztályának Widget:

reactionOnPointing: string - lebeg a bejelentés widget. (Kivéve a speciális kütyü - gombok, stb)

forceReactionOnPointing: string - lebeg a bejelentés widgetet függetlenül annak hozzáférhetőség kattintással. (Csak egy erős igény - fogyaszt sok erőforrást.)

reactionWheelUp: string - értesítés az egér scroll kerék fel

reactionWheelDown: string - értesítés az egér scroll kerék le

Vannak módszerek (lásd. CategoryAllowedInReactions), amelyeket fel lehet használni az egyéni addons csak rakodók egérkattintással.

A widget "MyWidget (WidgetPanel) .xdb.":

Ha lapozunk az egér kerék felett a widget ebben addon script választ fog küldeni „wheel_up” és „wheel_down”, még akkor is, ha az egér jelenleg található az kattintható gyerek widget „csúszka. (WidgetButton) .xdb”.

Kapcsolódó oldal: "CategoryLuaApi" "CategoryWidgetMembers"

Kapcsolódó oldal: "CategoryLuaApi" "CategoryWidget"

Kapcsolódó cikkek