AngelScriptAPI.h 299 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870
  1. // Script API header intended to be 'force included' in IDE for AngelScript content assist / code completion
  2. #define int8 signed char
  3. #define int16 signed short
  4. #define int64 long
  5. #define uint8 unsigned char
  6. #define uint16 unsigned short
  7. #define uint64 unsigned long
  8. #define null 0
  9. // Classes
  10. class Animatable
  11. {
  12. // Methods:
  13. void ApplyAttributes();
  14. Variant GetAttribute(const String&) const;
  15. ValueAnimation GetAttributeAnimation(const String&) const;
  16. float GetAttributeAnimationSpeed(const String&) const;
  17. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  18. Variant GetAttributeDefault(const String&) const;
  19. bool Load(File, bool = false);
  20. bool Load(VectorBuffer&, bool = false);
  21. bool LoadXML(const XMLElement&, bool = false);
  22. void MarkNetworkUpdate() const;
  23. void RemoveInstanceDefault();
  24. void ResetToDefault();
  25. bool Save(File) const;
  26. bool Save(VectorBuffer&) const;
  27. bool SaveXML(XMLElement&) const;
  28. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  29. bool SetAttribute(const String&, const Variant&);
  30. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  31. void SetAttributeAnimationSpeed(const String&, float);
  32. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  33. // Properties:
  34. bool animationEnabled;
  35. /* readonly */
  36. Array<Variant> attributeDefaults;
  37. /* readonly */
  38. Array<AttributeInfo> attributeInfos;
  39. Array<Variant> attributes;
  40. /* readonly */
  41. StringHash baseType;
  42. /* readonly */
  43. String category;
  44. /* readonly */
  45. uint numAttributes;
  46. ObjectAnimation objectAnimation;
  47. /* readonly */
  48. int refs;
  49. bool temporary;
  50. /* readonly */
  51. StringHash type;
  52. /* readonly */
  53. String typeName;
  54. /* readonly */
  55. int weakRefs;
  56. };
  57. class AnimatedModel
  58. {
  59. // Methods:
  60. AnimationState AddAnimationState(Animation);
  61. void ApplyAttributes();
  62. void ApplyMaterialList(const String& = String ( ));
  63. void DrawDebugGeometry(DebugRenderer, bool);
  64. AnimationState GetAnimationState(Animation) const;
  65. AnimationState GetAnimationState(uint) const;
  66. Variant GetAttribute(const String&) const;
  67. ValueAnimation GetAttributeAnimation(const String&) const;
  68. float GetAttributeAnimationSpeed(const String&) const;
  69. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  70. Variant GetAttributeDefault(const String&) const;
  71. float GetMorphWeight(uint) const;
  72. bool IsInView(Camera) const;
  73. bool Load(File, bool = false);
  74. bool Load(VectorBuffer&, bool = false);
  75. bool LoadXML(const XMLElement&, bool = false);
  76. void MarkNetworkUpdate() const;
  77. void Remove();
  78. void RemoveAllAnimationStates();
  79. void RemoveAnimationState(Animation);
  80. void RemoveAnimationState(AnimationState);
  81. void RemoveAnimationState(const String&);
  82. void RemoveAnimationState(uint);
  83. void RemoveInstanceDefault();
  84. void ResetMorphWeights();
  85. void ResetToDefault();
  86. bool Save(File) const;
  87. bool Save(VectorBuffer&) const;
  88. bool SaveXML(XMLElement&) const;
  89. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  90. bool SetAttribute(const String&, const Variant&);
  91. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  92. void SetAttributeAnimationSpeed(const String&, float);
  93. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  94. void SetMorphWeight(uint, float);
  95. // Properties:
  96. bool animationEnabled;
  97. float animationLodBias;
  98. /* readonly */
  99. Array<AnimationState> animationStates;
  100. /* readonly */
  101. Array<Variant> attributeDefaults;
  102. /* readonly */
  103. Array<AttributeInfo> attributeInfos;
  104. Array<Variant> attributes;
  105. /* readonly */
  106. StringHash baseType;
  107. /* readonly */
  108. BoundingBox boundingBox;
  109. bool castShadows;
  110. /* readonly */
  111. String category;
  112. float drawDistance;
  113. bool enabled;
  114. /* readonly */
  115. bool enabledEffective;
  116. /* readonly */
  117. uint id;
  118. /* readonly */
  119. bool inView;
  120. uint lightMask;
  121. float lodBias;
  122. /* writeonly */
  123. Material material;
  124. Array<Material> materials;
  125. uint maxLights;
  126. Model model;
  127. /* readonly */
  128. Array<String> morphNames;
  129. Array<float> morphWeights;
  130. /* readonly */
  131. Node node;
  132. /* readonly */
  133. uint numAnimationStates;
  134. /* readonly */
  135. uint numAttributes;
  136. /* readonly */
  137. uint numGeometries;
  138. /* readonly */
  139. uint numMorphs;
  140. ObjectAnimation objectAnimation;
  141. bool occludee;
  142. bool occluder;
  143. /* readonly */
  144. int refs;
  145. float shadowDistance;
  146. uint shadowMask;
  147. /* readonly */
  148. Skeleton skeleton;
  149. bool temporary;
  150. /* readonly */
  151. StringHash type;
  152. /* readonly */
  153. String typeName;
  154. bool updateInvisible;
  155. uint viewMask;
  156. /* readonly */
  157. int weakRefs;
  158. /* readonly */
  159. BoundingBox worldBoundingBox;
  160. /* readonly */
  161. Zone zone;
  162. uint zoneMask;
  163. };
  164. class AnimatedSprite2D
  165. {
  166. // Methods:
  167. void ApplyAttributes();
  168. void DrawDebugGeometry(DebugRenderer, bool);
  169. Variant GetAttribute(const String&) const;
  170. ValueAnimation GetAttributeAnimation(const String&) const;
  171. float GetAttributeAnimationSpeed(const String&) const;
  172. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  173. Variant GetAttributeDefault(const String&) const;
  174. bool IsInView(Camera) const;
  175. bool Load(File, bool = false);
  176. bool Load(VectorBuffer&, bool = false);
  177. bool LoadXML(const XMLElement&, bool = false);
  178. void MarkNetworkUpdate() const;
  179. void Remove();
  180. void RemoveInstanceDefault();
  181. void ResetToDefault();
  182. bool Save(File) const;
  183. bool Save(VectorBuffer&) const;
  184. bool SaveXML(XMLElement&) const;
  185. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  186. void SetAnimation(AnimationSet2D, const String&, LoopMode2D = LM_DEFAULT);
  187. void SetAnimation(const String&, LoopMode2D = LM_DEFAULT);
  188. bool SetAttribute(const String&, const Variant&);
  189. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  190. void SetAttributeAnimationSpeed(const String&, float);
  191. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  192. void SetFlip(bool, bool);
  193. // Properties:
  194. String animation;
  195. bool animationEnabled;
  196. AnimationSet2D animationSet;
  197. /* readonly */
  198. Array<Variant> attributeDefaults;
  199. /* readonly */
  200. Array<AttributeInfo> attributeInfos;
  201. Array<Variant> attributes;
  202. /* readonly */
  203. StringHash baseType;
  204. BlendMode blendMode;
  205. /* readonly */
  206. BoundingBox boundingBox;
  207. bool castShadows;
  208. /* readonly */
  209. String category;
  210. Color color;
  211. float drawDistance;
  212. bool enabled;
  213. /* readonly */
  214. bool enabledEffective;
  215. bool flipX;
  216. bool flipY;
  217. /* readonly */
  218. uint id;
  219. /* readonly */
  220. bool inView;
  221. int layer;
  222. uint lightMask;
  223. float lodBias;
  224. LoopMode2D loopMode;
  225. uint maxLights;
  226. /* readonly */
  227. Node node;
  228. /* readonly */
  229. uint numAttributes;
  230. ObjectAnimation objectAnimation;
  231. bool occludee;
  232. bool occluder;
  233. int orderInLayer;
  234. /* readonly */
  235. int refs;
  236. float shadowDistance;
  237. uint shadowMask;
  238. float speed;
  239. bool temporary;
  240. /* readonly */
  241. StringHash type;
  242. /* readonly */
  243. String typeName;
  244. uint viewMask;
  245. /* readonly */
  246. int weakRefs;
  247. /* readonly */
  248. BoundingBox worldBoundingBox;
  249. uint zoneMask;
  250. };
  251. class Animation
  252. {
  253. // Methods:
  254. void AddTrigger(float, bool, const Variant&);
  255. bool Load(File);
  256. bool Load(VectorBuffer&);
  257. void RemoveAllTriggers();
  258. void RemoveTrigger(uint);
  259. bool Save(File) const;
  260. bool Save(VectorBuffer&) const;
  261. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  262. // Properties:
  263. /* readonly */
  264. String animationName;
  265. /* readonly */
  266. StringHash baseType;
  267. /* readonly */
  268. String category;
  269. /* readonly */
  270. float length;
  271. /* readonly */
  272. uint memoryUse;
  273. String name;
  274. /* readonly */
  275. uint numTracks;
  276. uint numTriggers;
  277. /* readonly */
  278. int refs;
  279. /* readonly */
  280. Array<AnimationTriggerPoint> triggers;
  281. /* readonly */
  282. StringHash type;
  283. /* readonly */
  284. String typeName;
  285. /* readonly */
  286. uint useTimer;
  287. /* readonly */
  288. int weakRefs;
  289. };
  290. class Animation2D
  291. {
  292. // Properties:
  293. /* readonly */
  294. float length;
  295. /* readonly */
  296. bool looped;
  297. /* readonly */
  298. String name;
  299. /* readonly */
  300. int refs;
  301. /* readonly */
  302. int weakRefs;
  303. };
  304. class AnimationController
  305. {
  306. // Methods:
  307. void ApplyAttributes();
  308. void DrawDebugGeometry(DebugRenderer, bool);
  309. bool Fade(const String&, float, float);
  310. bool FadeOthers(const String&, float, float);
  311. AnimationState GetAnimationState(StringHash) const;
  312. AnimationState GetAnimationState(const String&) const;
  313. Variant GetAttribute(const String&) const;
  314. ValueAnimation GetAttributeAnimation(const String&) const;
  315. float GetAttributeAnimationSpeed(const String&) const;
  316. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  317. Variant GetAttributeDefault(const String&) const;
  318. float GetAutoFade(const String&) const;
  319. float GetFadeTarget(const String&) const;
  320. uint8 GetLayer(const String&) const;
  321. float GetLength(const String&) const;
  322. bool GetLooped(const String&) const;
  323. float GetSpeed(const String&) const;
  324. float GetTime(const String&) const;
  325. float GetWeight(const String&) const;
  326. bool IsFadingIn(const String&) const;
  327. bool IsFadingOut(const String&) const;
  328. bool IsPlaying(const String&) const;
  329. bool Load(File, bool = false);
  330. bool Load(VectorBuffer&, bool = false);
  331. bool LoadXML(const XMLElement&, bool = false);
  332. void MarkNetworkUpdate() const;
  333. bool Play(const String&, uint8, bool, float = 0.0f);
  334. bool PlayExclusive(const String&, uint8, bool, float = 0.0f);
  335. void Remove();
  336. void RemoveInstanceDefault();
  337. void ResetToDefault();
  338. bool Save(File) const;
  339. bool Save(VectorBuffer&) const;
  340. bool SaveXML(XMLElement&) const;
  341. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  342. bool SetAttribute(const String&, const Variant&);
  343. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  344. void SetAttributeAnimationSpeed(const String&, float);
  345. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  346. bool SetAutoFade(const String&, float);
  347. bool SetLayer(const String&, uint8);
  348. bool SetLooped(const String&, bool);
  349. bool SetSpeed(const String&, float);
  350. bool SetStartBone(const String&, const String&);
  351. bool SetTime(const String&, float);
  352. bool SetWeight(const String&, float);
  353. void Stop(const String&, float = 0.0f);
  354. void StopAll(float = 0.0f);
  355. void StopLayer(uint8, float = 0.0f);
  356. const String& GetStartBone(const String&) const;
  357. // Properties:
  358. bool animationEnabled;
  359. /* readonly */
  360. Array<Variant> attributeDefaults;
  361. /* readonly */
  362. Array<AttributeInfo> attributeInfos;
  363. Array<Variant> attributes;
  364. /* readonly */
  365. StringHash baseType;
  366. /* readonly */
  367. String category;
  368. bool enabled;
  369. /* readonly */
  370. bool enabledEffective;
  371. /* readonly */
  372. uint id;
  373. /* readonly */
  374. Node node;
  375. /* readonly */
  376. uint numAttributes;
  377. ObjectAnimation objectAnimation;
  378. /* readonly */
  379. int refs;
  380. bool temporary;
  381. /* readonly */
  382. StringHash type;
  383. /* readonly */
  384. String typeName;
  385. /* readonly */
  386. int weakRefs;
  387. };
  388. class AnimationSet2D
  389. {
  390. // Methods:
  391. Animation2D GetAnimation(const String&) const;
  392. Animation2D GetAnimation(uint) const;
  393. bool Load(File);
  394. bool Load(VectorBuffer&);
  395. bool Save(File) const;
  396. bool Save(VectorBuffer&) const;
  397. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  398. // Properties:
  399. /* readonly */
  400. StringHash baseType;
  401. /* readonly */
  402. String category;
  403. /* readonly */
  404. uint memoryUse;
  405. String name;
  406. /* readonly */
  407. uint numAnimations;
  408. /* readonly */
  409. int refs;
  410. /* readonly */
  411. StringHash type;
  412. /* readonly */
  413. String typeName;
  414. /* readonly */
  415. uint useTimer;
  416. /* readonly */
  417. int weakRefs;
  418. };
  419. class AnimationState
  420. {
  421. // Methods:
  422. void AddTime(float);
  423. void AddWeight(float);
  424. void Apply();
  425. float GetBoneWeight(StringHash) const;
  426. float GetBoneWeight(uint) const;
  427. uint GetTrackIndex(StringHash) const;
  428. uint GetTrackIndex(const String&) const;
  429. void SetBoneWeight(StringHash, float, bool = false);
  430. void SetBoneWeight(const String&, float, bool = false);
  431. void SetBoneWeight(uint, float, bool = false);
  432. // Properties:
  433. /* readonly */
  434. Animation animation;
  435. Array<float> boneWeights;
  436. /* readonly */
  437. bool enabled;
  438. uint8 layer;
  439. /* readonly */
  440. float length;
  441. bool looped;
  442. /* readonly */
  443. AnimatedModel model;
  444. /* readonly */
  445. Node node;
  446. /* readonly */
  447. int refs;
  448. Bone startBone;
  449. float time;
  450. /* readonly */
  451. int weakRefs;
  452. float weight;
  453. };
  454. class AnimationTriggerPoint
  455. {
  456. // Properties:
  457. Variant data;
  458. float time;
  459. };
  460. template <class T> class Array
  461. {
  462. // Methods:
  463. void Clear();
  464. void Erase(uint);
  465. int Find(const T&) const;
  466. int Find(uint, const T&) const;
  467. int FindByRef(const T&) const;
  468. int FindByRef(uint, const T&) const;
  469. void Insert(uint, const T&);
  470. void Pop();
  471. void Push(const T&);
  472. void Reserve(uint);
  473. void Resize(uint);
  474. void Reverse();
  475. void Sort();
  476. void Sort(uint, uint);
  477. void SortReverse();
  478. void SortReverse(uint, uint);
  479. // Properties:
  480. /* readonly */
  481. bool empty;
  482. uint length;
  483. };
  484. class AttributeInfo
  485. {
  486. // Properties:
  487. Variant defaultValue;
  488. /* readonly */
  489. Array<String> enumNames;
  490. uint mode;
  491. String name;
  492. VariantType type;
  493. };
  494. class Audio
  495. {
  496. // Methods:
  497. bool Play();
  498. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  499. void SetMode(int, int, bool, bool = true);
  500. void Stop();
  501. // Properties:
  502. /* readonly */
  503. StringHash baseType;
  504. /* readonly */
  505. String category;
  506. /* readonly */
  507. bool initialized;
  508. /* readonly */
  509. bool interpolation;
  510. SoundListener listener;
  511. Array<float> masterGain;
  512. /* readonly */
  513. int mixRate;
  514. /* readonly */
  515. bool playing;
  516. /* readonly */
  517. int refs;
  518. /* readonly */
  519. uint sampleSize;
  520. /* readonly */
  521. bool stereo;
  522. /* readonly */
  523. StringHash type;
  524. /* readonly */
  525. String typeName;
  526. /* readonly */
  527. int weakRefs;
  528. };
  529. class BiasParameters
  530. {
  531. // Properties:
  532. float constantBias;
  533. float slopeScaledBias;
  534. };
  535. class Billboard
  536. {
  537. // Properties:
  538. Color color;
  539. bool enabled;
  540. Vector3 position;
  541. float rotation;
  542. Vector2 size;
  543. Rect uv;
  544. };
  545. class BillboardSet
  546. {
  547. // Methods:
  548. void ApplyAttributes();
  549. void Commit();
  550. void DrawDebugGeometry(DebugRenderer, bool);
  551. Variant GetAttribute(const String&) const;
  552. ValueAnimation GetAttributeAnimation(const String&) const;
  553. float GetAttributeAnimationSpeed(const String&) const;
  554. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  555. Variant GetAttributeDefault(const String&) const;
  556. bool IsInView(Camera) const;
  557. bool Load(File, bool = false);
  558. bool Load(VectorBuffer&, bool = false);
  559. bool LoadXML(const XMLElement&, bool = false);
  560. void MarkNetworkUpdate() const;
  561. void Remove();
  562. void RemoveInstanceDefault();
  563. void ResetToDefault();
  564. bool Save(File) const;
  565. bool Save(VectorBuffer&) const;
  566. bool SaveXML(XMLElement&) const;
  567. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  568. bool SetAttribute(const String&, const Variant&);
  569. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  570. void SetAttributeAnimationSpeed(const String&, float);
  571. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  572. // Properties:
  573. bool animationEnabled;
  574. float animationLodBias;
  575. /* readonly */
  576. Array<Variant> attributeDefaults;
  577. /* readonly */
  578. Array<AttributeInfo> attributeInfos;
  579. Array<Variant> attributes;
  580. /* readonly */
  581. StringHash baseType;
  582. /* readonly */
  583. Array<Billboard> billboards;
  584. /* readonly */
  585. BoundingBox boundingBox;
  586. bool castShadows;
  587. /* readonly */
  588. String category;
  589. float drawDistance;
  590. bool enabled;
  591. /* readonly */
  592. bool enabledEffective;
  593. FaceCameraMode faceCameraMode;
  594. /* readonly */
  595. uint id;
  596. /* readonly */
  597. bool inView;
  598. uint lightMask;
  599. float lodBias;
  600. Material material;
  601. uint maxLights;
  602. /* readonly */
  603. Node node;
  604. /* readonly */
  605. uint numAttributes;
  606. uint numBillboards;
  607. ObjectAnimation objectAnimation;
  608. bool occludee;
  609. bool occluder;
  610. /* readonly */
  611. int refs;
  612. bool relative;
  613. bool scaled;
  614. float shadowDistance;
  615. uint shadowMask;
  616. bool sorted;
  617. bool temporary;
  618. /* readonly */
  619. StringHash type;
  620. /* readonly */
  621. String typeName;
  622. uint viewMask;
  623. /* readonly */
  624. int weakRefs;
  625. /* readonly */
  626. BoundingBox worldBoundingBox;
  627. /* readonly */
  628. Zone zone;
  629. uint zoneMask;
  630. };
  631. class Bone
  632. {
  633. // Properties:
  634. bool animated;
  635. BoundingBox boundingBox;
  636. Vector3 initialPosition;
  637. Quaternion initialRotation;
  638. Vector3 initialScale;
  639. String name;
  640. Node node;
  641. float radius;
  642. };
  643. class BorderImage
  644. {
  645. // Methods:
  646. void AddChild(UIElement);
  647. void ApplyAttributes();
  648. void BringToFront();
  649. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  650. void DisableLayoutUpdate();
  651. IntVector2 ElementToScreen(const IntVector2&);
  652. void EnableLayoutUpdate();
  653. uint FindChild(UIElement) const;
  654. Variant GetAttribute(const String&) const;
  655. ValueAnimation GetAttributeAnimation(const String&) const;
  656. float GetAttributeAnimationSpeed(const String&) const;
  657. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  658. Variant GetAttributeDefault(const String&) const;
  659. UIElement GetChild(const String&, bool = false) const;
  660. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  661. Array<UIElement> GetChildren(bool = false) const;
  662. UIElement GetElementEventSender() const;
  663. uint GetNumChildren(bool) const;
  664. void InsertChild(uint, UIElement);
  665. bool IsInside(IntVector2, bool);
  666. bool IsInsideCombined(IntVector2, bool);
  667. bool Load(File, bool = false);
  668. bool Load(VectorBuffer&, bool = false);
  669. bool LoadChildXML(XMLFile, XMLFile = null);
  670. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  671. bool LoadXML(File);
  672. bool LoadXML(VectorBuffer&);
  673. bool LoadXML(XMLFile, XMLFile);
  674. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  675. bool LoadXML(const XMLElement&, bool = false);
  676. void MarkNetworkUpdate() const;
  677. void Remove();
  678. void RemoveAllChildren();
  679. void RemoveChild(UIElement, uint = 0);
  680. void RemoveChild(uint);
  681. void RemoveInstanceDefault();
  682. void ResetDeepEnabled();
  683. void ResetToDefault();
  684. bool Save(File) const;
  685. bool Save(VectorBuffer&) const;
  686. bool SaveXML(File);
  687. bool SaveXML(VectorBuffer&);
  688. bool SaveXML(XMLElement&) const;
  689. IntVector2 ScreenToElement(const IntVector2&);
  690. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  691. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  692. bool SetAttribute(const String&, const Variant&);
  693. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  694. void SetAttributeAnimationSpeed(const String&, float);
  695. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  696. void SetDeepEnabled(bool);
  697. void SetEnabledRecursive(bool);
  698. void SetFixedHeight(int);
  699. void SetFixedSize(int, int);
  700. void SetFixedWidth(int);
  701. void SetFullImageRect();
  702. void SetHoverOffset(int, int);
  703. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  704. void SetMaxSize(int, int);
  705. void SetMinSize(int, int);
  706. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  707. void SetPosition(int, int);
  708. void SetSize(int, int);
  709. bool SetStyle(const String&, XMLFile = null);
  710. bool SetStyle(const XMLElement&);
  711. bool SetStyleAuto(XMLFile = null);
  712. void UpdateLayout();
  713. const Variant& GetVar(const StringHash&);
  714. // Properties:
  715. bool animationEnabled;
  716. /* readonly */
  717. Array<Variant> attributeDefaults;
  718. /* readonly */
  719. Array<AttributeInfo> attributeInfos;
  720. Array<Variant> attributes;
  721. /* readonly */
  722. StringHash baseType;
  723. BlendMode blendMode;
  724. IntRect border;
  725. bool bringToBack;
  726. bool bringToFront;
  727. /* readonly */
  728. String category;
  729. /* readonly */
  730. IntVector2 childOffset;
  731. /* readonly */
  732. Array<UIElement> children;
  733. IntRect clipBorder;
  734. bool clipChildren;
  735. /* writeonly */
  736. Color color;
  737. /* readonly */
  738. bool colorGradient;
  739. Array<Color> colors;
  740. /* readonly */
  741. IntRect combinedScreenRect;
  742. XMLFile defaultStyle;
  743. /* readonly */
  744. float derivedOpacity;
  745. /* readonly */
  746. uint dragButtonCombo;
  747. /* readonly */
  748. int dragButtonCount;
  749. uint dragDropMode;
  750. bool editable;
  751. bool elementEventSender;
  752. bool enabled;
  753. /* readonly */
  754. bool enabledSelf;
  755. /* readonly */
  756. bool fixedHeight;
  757. /* readonly */
  758. bool fixedSize;
  759. /* readonly */
  760. bool fixedWidth;
  761. bool focus;
  762. FocusMode focusMode;
  763. int height;
  764. HorizontalAlignment horizontalAlignment;
  765. IntVector2 hoverOffset;
  766. /* readonly */
  767. bool hovering;
  768. IntRect imageBorder;
  769. IntRect imageRect;
  770. int indent;
  771. int indentSpacing;
  772. /* readonly */
  773. int indentWidth;
  774. bool internal;
  775. IntRect layoutBorder;
  776. Vector2 layoutFlexScale;
  777. LayoutMode layoutMode;
  778. int layoutSpacing;
  779. int maxHeight;
  780. IntVector2 maxSize;
  781. int maxWidth;
  782. int minHeight;
  783. IntVector2 minSize;
  784. int minWidth;
  785. String name;
  786. /* readonly */
  787. uint numAllChildren;
  788. /* readonly */
  789. uint numAttributes;
  790. /* readonly */
  791. uint numChildren;
  792. ObjectAnimation objectAnimation;
  793. float opacity;
  794. UIElement parent;
  795. IntVector2 position;
  796. int priority;
  797. /* readonly */
  798. int refs;
  799. /* readonly */
  800. UIElement root;
  801. /* readonly */
  802. IntVector2 screenPosition;
  803. bool selected;
  804. IntVector2 size;
  805. bool sortChildren;
  806. String style;
  807. bool temporary;
  808. Texture texture;
  809. bool tiled;
  810. TraversalMode traversalMode;
  811. /* readonly */
  812. StringHash type;
  813. /* readonly */
  814. String typeName;
  815. bool useDerivedOpacity;
  816. /* readonly */
  817. VariantMap vars;
  818. VerticalAlignment verticalAlignment;
  819. bool visible;
  820. /* readonly */
  821. int weakRefs;
  822. int width;
  823. };
  824. class BoundingBox
  825. {
  826. // Methods:
  827. void Clear();
  828. void Clip(const BoundingBox&);
  829. void Define(const BoundingBox&);
  830. void Define(const Frustum&);
  831. void Define(const Polyhedron&);
  832. void Define(const Sphere&);
  833. void Define(const Vector3&);
  834. void Define(const Vector3&, const Vector3&);
  835. void Define(float, float);
  836. Intersection IsInside(const BoundingBox&) const;
  837. Intersection IsInside(const Sphere&) const;
  838. Intersection IsInside(const Vector3&) const;
  839. void Merge(const BoundingBox&);
  840. void Merge(const Frustum&);
  841. void Merge(const Polyhedron&);
  842. void Merge(const Sphere&);
  843. void Merge(const Vector3&);
  844. Rect Projected(const Matrix4&) const;
  845. String ToString() const;
  846. void Transform(const Matrix3&);
  847. void Transform(const Matrix3x4&);
  848. BoundingBox Transformed(const Matrix3&) const;
  849. BoundingBox Transformed(const Matrix3x4&) const;
  850. // Properties:
  851. /* readonly */
  852. Vector3 center;
  853. bool defined;
  854. /* readonly */
  855. Vector3 halfSize;
  856. Vector3 max;
  857. Vector3 min;
  858. /* readonly */
  859. Vector3 size;
  860. };
  861. class Button
  862. {
  863. // Methods:
  864. void AddChild(UIElement);
  865. void ApplyAttributes();
  866. void BringToFront();
  867. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  868. void DisableLayoutUpdate();
  869. IntVector2 ElementToScreen(const IntVector2&);
  870. void EnableLayoutUpdate();
  871. uint FindChild(UIElement) const;
  872. Variant GetAttribute(const String&) const;
  873. ValueAnimation GetAttributeAnimation(const String&) const;
  874. float GetAttributeAnimationSpeed(const String&) const;
  875. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  876. Variant GetAttributeDefault(const String&) const;
  877. UIElement GetChild(const String&, bool = false) const;
  878. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  879. Array<UIElement> GetChildren(bool = false) const;
  880. UIElement GetElementEventSender() const;
  881. uint GetNumChildren(bool) const;
  882. void InsertChild(uint, UIElement);
  883. bool IsInside(IntVector2, bool);
  884. bool IsInsideCombined(IntVector2, bool);
  885. bool Load(File, bool = false);
  886. bool Load(VectorBuffer&, bool = false);
  887. bool LoadChildXML(XMLFile, XMLFile = null);
  888. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  889. bool LoadXML(File);
  890. bool LoadXML(VectorBuffer&);
  891. bool LoadXML(XMLFile, XMLFile);
  892. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  893. bool LoadXML(const XMLElement&, bool = false);
  894. void MarkNetworkUpdate() const;
  895. void Remove();
  896. void RemoveAllChildren();
  897. void RemoveChild(UIElement, uint = 0);
  898. void RemoveChild(uint);
  899. void RemoveInstanceDefault();
  900. void ResetDeepEnabled();
  901. void ResetToDefault();
  902. bool Save(File) const;
  903. bool Save(VectorBuffer&) const;
  904. bool SaveXML(File);
  905. bool SaveXML(VectorBuffer&);
  906. bool SaveXML(XMLElement&) const;
  907. IntVector2 ScreenToElement(const IntVector2&);
  908. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  909. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  910. bool SetAttribute(const String&, const Variant&);
  911. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  912. void SetAttributeAnimationSpeed(const String&, float);
  913. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  914. void SetDeepEnabled(bool);
  915. void SetEnabledRecursive(bool);
  916. void SetFixedHeight(int);
  917. void SetFixedSize(int, int);
  918. void SetFixedWidth(int);
  919. void SetFullImageRect();
  920. void SetHoverOffset(int, int);
  921. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  922. void SetMaxSize(int, int);
  923. void SetMinSize(int, int);
  924. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  925. void SetPosition(int, int);
  926. void SetPressedChildOffset(int, int);
  927. void SetPressedOffset(int, int);
  928. void SetRepeat(float, float);
  929. void SetSize(int, int);
  930. bool SetStyle(const String&, XMLFile = null);
  931. bool SetStyle(const XMLElement&);
  932. bool SetStyleAuto(XMLFile = null);
  933. void UpdateLayout();
  934. const Variant& GetVar(const StringHash&);
  935. // Properties:
  936. bool animationEnabled;
  937. /* readonly */
  938. Array<Variant> attributeDefaults;
  939. /* readonly */
  940. Array<AttributeInfo> attributeInfos;
  941. Array<Variant> attributes;
  942. /* readonly */
  943. StringHash baseType;
  944. BlendMode blendMode;
  945. IntRect border;
  946. bool bringToBack;
  947. bool bringToFront;
  948. /* readonly */
  949. String category;
  950. /* readonly */
  951. IntVector2 childOffset;
  952. /* readonly */
  953. Array<UIElement> children;
  954. IntRect clipBorder;
  955. bool clipChildren;
  956. /* writeonly */
  957. Color color;
  958. /* readonly */
  959. bool colorGradient;
  960. Array<Color> colors;
  961. /* readonly */
  962. IntRect combinedScreenRect;
  963. XMLFile defaultStyle;
  964. /* readonly */
  965. float derivedOpacity;
  966. /* readonly */
  967. uint dragButtonCombo;
  968. /* readonly */
  969. int dragButtonCount;
  970. uint dragDropMode;
  971. bool editable;
  972. bool elementEventSender;
  973. bool enabled;
  974. /* readonly */
  975. bool enabledSelf;
  976. /* readonly */
  977. bool fixedHeight;
  978. /* readonly */
  979. bool fixedSize;
  980. /* readonly */
  981. bool fixedWidth;
  982. bool focus;
  983. FocusMode focusMode;
  984. int height;
  985. HorizontalAlignment horizontalAlignment;
  986. IntVector2 hoverOffset;
  987. /* readonly */
  988. bool hovering;
  989. IntRect imageBorder;
  990. IntRect imageRect;
  991. int indent;
  992. int indentSpacing;
  993. /* readonly */
  994. int indentWidth;
  995. bool internal;
  996. IntRect layoutBorder;
  997. Vector2 layoutFlexScale;
  998. LayoutMode layoutMode;
  999. int layoutSpacing;
  1000. int maxHeight;
  1001. IntVector2 maxSize;
  1002. int maxWidth;
  1003. int minHeight;
  1004. IntVector2 minSize;
  1005. int minWidth;
  1006. String name;
  1007. /* readonly */
  1008. uint numAllChildren;
  1009. /* readonly */
  1010. uint numAttributes;
  1011. /* readonly */
  1012. uint numChildren;
  1013. ObjectAnimation objectAnimation;
  1014. float opacity;
  1015. UIElement parent;
  1016. IntVector2 position;
  1017. /* readonly */
  1018. bool pressed;
  1019. IntVector2 pressedChildOffset;
  1020. IntVector2 pressedOffset;
  1021. int priority;
  1022. /* readonly */
  1023. int refs;
  1024. float repeatDelay;
  1025. float repeatRate;
  1026. /* readonly */
  1027. UIElement root;
  1028. /* readonly */
  1029. IntVector2 screenPosition;
  1030. bool selected;
  1031. IntVector2 size;
  1032. bool sortChildren;
  1033. String style;
  1034. bool temporary;
  1035. Texture texture;
  1036. bool tiled;
  1037. TraversalMode traversalMode;
  1038. /* readonly */
  1039. StringHash type;
  1040. /* readonly */
  1041. String typeName;
  1042. bool useDerivedOpacity;
  1043. /* readonly */
  1044. VariantMap vars;
  1045. VerticalAlignment verticalAlignment;
  1046. bool visible;
  1047. /* readonly */
  1048. int weakRefs;
  1049. int width;
  1050. };
  1051. class Camera
  1052. {
  1053. // Methods:
  1054. void ApplyAttributes();
  1055. void DrawDebugGeometry(DebugRenderer, bool);
  1056. Variant GetAttribute(const String&) const;
  1057. ValueAnimation GetAttributeAnimation(const String&) const;
  1058. float GetAttributeAnimationSpeed(const String&) const;
  1059. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  1060. Variant GetAttributeDefault(const String&) const;
  1061. float GetDistance(const Vector3&) const;
  1062. float GetDistanceSquared(const Vector3&) const;
  1063. Ray GetScreenRay(float, float) const;
  1064. Frustum GetSplitFrustum(float, float) const;
  1065. bool Load(File, bool = false);
  1066. bool Load(VectorBuffer&, bool = false);
  1067. bool LoadXML(const XMLElement&, bool = false);
  1068. void MarkNetworkUpdate() const;
  1069. void Remove();
  1070. void RemoveInstanceDefault();
  1071. void ResetToDefault();
  1072. bool Save(File) const;
  1073. bool Save(VectorBuffer&) const;
  1074. bool SaveXML(XMLElement&) const;
  1075. Vector3 ScreenToWorldPoint(const Vector3&) const;
  1076. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1077. bool SetAttribute(const String&, const Variant&);
  1078. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  1079. void SetAttributeAnimationSpeed(const String&, float);
  1080. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  1081. void SetOrthoSize(const Vector2&);
  1082. Vector2 WorldToScreenPoint(const Vector3&) const;
  1083. // Properties:
  1084. bool animationEnabled;
  1085. float aspectRatio;
  1086. /* readonly */
  1087. Array<Variant> attributeDefaults;
  1088. /* readonly */
  1089. Array<AttributeInfo> attributeInfos;
  1090. Array<Variant> attributes;
  1091. bool autoAspectRatio;
  1092. /* readonly */
  1093. StringHash baseType;
  1094. /* readonly */
  1095. String category;
  1096. Plane clipPlane;
  1097. /* readonly */
  1098. Matrix3x4 effectiveWorldTransform;
  1099. bool enabled;
  1100. /* readonly */
  1101. bool enabledEffective;
  1102. float farClip;
  1103. FillMode fillMode;
  1104. float fov;
  1105. /* readonly */
  1106. Frustum frustum;
  1107. /* readonly */
  1108. float halfViewSize;
  1109. /* readonly */
  1110. uint id;
  1111. float lodBias;
  1112. float nearClip;
  1113. /* readonly */
  1114. Node node;
  1115. /* readonly */
  1116. uint numAttributes;
  1117. ObjectAnimation objectAnimation;
  1118. float orthoSize;
  1119. bool orthographic;
  1120. /* readonly */
  1121. Matrix4 projection;
  1122. Vector2 projectionOffset;
  1123. Plane reflectionPlane;
  1124. /* readonly */
  1125. int refs;
  1126. bool temporary;
  1127. /* readonly */
  1128. StringHash type;
  1129. /* readonly */
  1130. String typeName;
  1131. bool useClipping;
  1132. bool useReflection;
  1133. /* readonly */
  1134. Matrix3x4 view;
  1135. uint viewMask;
  1136. uint viewOverrideFlags;
  1137. /* readonly */
  1138. Frustum viewSpaceFrustum;
  1139. /* readonly */
  1140. int weakRefs;
  1141. float zoom;
  1142. };
  1143. class CascadeParameters
  1144. {
  1145. // Properties:
  1146. float biasAutoAdjust;
  1147. float fadeStart;
  1148. float split1;
  1149. float split2;
  1150. float split3;
  1151. float split4;
  1152. };
  1153. class CheckBox
  1154. {
  1155. // Methods:
  1156. void AddChild(UIElement);
  1157. void ApplyAttributes();
  1158. void BringToFront();
  1159. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  1160. void DisableLayoutUpdate();
  1161. IntVector2 ElementToScreen(const IntVector2&);
  1162. void EnableLayoutUpdate();
  1163. uint FindChild(UIElement) const;
  1164. Variant GetAttribute(const String&) const;
  1165. ValueAnimation GetAttributeAnimation(const String&) const;
  1166. float GetAttributeAnimationSpeed(const String&) const;
  1167. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  1168. Variant GetAttributeDefault(const String&) const;
  1169. UIElement GetChild(const String&, bool = false) const;
  1170. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  1171. Array<UIElement> GetChildren(bool = false) const;
  1172. UIElement GetElementEventSender() const;
  1173. uint GetNumChildren(bool) const;
  1174. void InsertChild(uint, UIElement);
  1175. bool IsInside(IntVector2, bool);
  1176. bool IsInsideCombined(IntVector2, bool);
  1177. bool Load(File, bool = false);
  1178. bool Load(VectorBuffer&, bool = false);
  1179. bool LoadChildXML(XMLFile, XMLFile = null);
  1180. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  1181. bool LoadXML(File);
  1182. bool LoadXML(VectorBuffer&);
  1183. bool LoadXML(XMLFile, XMLFile);
  1184. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  1185. bool LoadXML(const XMLElement&, bool = false);
  1186. void MarkNetworkUpdate() const;
  1187. void Remove();
  1188. void RemoveAllChildren();
  1189. void RemoveChild(UIElement, uint = 0);
  1190. void RemoveChild(uint);
  1191. void RemoveInstanceDefault();
  1192. void ResetDeepEnabled();
  1193. void ResetToDefault();
  1194. bool Save(File) const;
  1195. bool Save(VectorBuffer&) const;
  1196. bool SaveXML(File);
  1197. bool SaveXML(VectorBuffer&);
  1198. bool SaveXML(XMLElement&) const;
  1199. IntVector2 ScreenToElement(const IntVector2&);
  1200. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1201. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  1202. bool SetAttribute(const String&, const Variant&);
  1203. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  1204. void SetAttributeAnimationSpeed(const String&, float);
  1205. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  1206. void SetCheckedOffset(int, int);
  1207. void SetDeepEnabled(bool);
  1208. void SetEnabledRecursive(bool);
  1209. void SetFixedHeight(int);
  1210. void SetFixedSize(int, int);
  1211. void SetFixedWidth(int);
  1212. void SetFullImageRect();
  1213. void SetHoverOffset(int, int);
  1214. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  1215. void SetMaxSize(int, int);
  1216. void SetMinSize(int, int);
  1217. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  1218. void SetPosition(int, int);
  1219. void SetSize(int, int);
  1220. bool SetStyle(const String&, XMLFile = null);
  1221. bool SetStyle(const XMLElement&);
  1222. bool SetStyleAuto(XMLFile = null);
  1223. void UpdateLayout();
  1224. const Variant& GetVar(const StringHash&);
  1225. // Properties:
  1226. bool animationEnabled;
  1227. /* readonly */
  1228. Array<Variant> attributeDefaults;
  1229. /* readonly */
  1230. Array<AttributeInfo> attributeInfos;
  1231. Array<Variant> attributes;
  1232. /* readonly */
  1233. StringHash baseType;
  1234. BlendMode blendMode;
  1235. IntRect border;
  1236. bool bringToBack;
  1237. bool bringToFront;
  1238. /* readonly */
  1239. String category;
  1240. bool checked;
  1241. IntVector2 checkedOffset;
  1242. /* readonly */
  1243. IntVector2 childOffset;
  1244. /* readonly */
  1245. Array<UIElement> children;
  1246. IntRect clipBorder;
  1247. bool clipChildren;
  1248. /* writeonly */
  1249. Color color;
  1250. /* readonly */
  1251. bool colorGradient;
  1252. Array<Color> colors;
  1253. /* readonly */
  1254. IntRect combinedScreenRect;
  1255. XMLFile defaultStyle;
  1256. /* readonly */
  1257. float derivedOpacity;
  1258. /* readonly */
  1259. uint dragButtonCombo;
  1260. /* readonly */
  1261. int dragButtonCount;
  1262. uint dragDropMode;
  1263. bool editable;
  1264. bool elementEventSender;
  1265. bool enabled;
  1266. /* readonly */
  1267. bool enabledSelf;
  1268. /* readonly */
  1269. bool fixedHeight;
  1270. /* readonly */
  1271. bool fixedSize;
  1272. /* readonly */
  1273. bool fixedWidth;
  1274. bool focus;
  1275. FocusMode focusMode;
  1276. int height;
  1277. HorizontalAlignment horizontalAlignment;
  1278. IntVector2 hoverOffset;
  1279. /* readonly */
  1280. bool hovering;
  1281. IntRect imageBorder;
  1282. IntRect imageRect;
  1283. int indent;
  1284. int indentSpacing;
  1285. /* readonly */
  1286. int indentWidth;
  1287. bool internal;
  1288. IntRect layoutBorder;
  1289. Vector2 layoutFlexScale;
  1290. LayoutMode layoutMode;
  1291. int layoutSpacing;
  1292. int maxHeight;
  1293. IntVector2 maxSize;
  1294. int maxWidth;
  1295. int minHeight;
  1296. IntVector2 minSize;
  1297. int minWidth;
  1298. String name;
  1299. /* readonly */
  1300. uint numAllChildren;
  1301. /* readonly */
  1302. uint numAttributes;
  1303. /* readonly */
  1304. uint numChildren;
  1305. ObjectAnimation objectAnimation;
  1306. float opacity;
  1307. UIElement parent;
  1308. IntVector2 position;
  1309. int priority;
  1310. /* readonly */
  1311. int refs;
  1312. /* readonly */
  1313. UIElement root;
  1314. /* readonly */
  1315. IntVector2 screenPosition;
  1316. bool selected;
  1317. IntVector2 size;
  1318. bool sortChildren;
  1319. String style;
  1320. bool temporary;
  1321. Texture texture;
  1322. bool tiled;
  1323. TraversalMode traversalMode;
  1324. /* readonly */
  1325. StringHash type;
  1326. /* readonly */
  1327. String typeName;
  1328. bool useDerivedOpacity;
  1329. /* readonly */
  1330. VariantMap vars;
  1331. VerticalAlignment verticalAlignment;
  1332. bool visible;
  1333. /* readonly */
  1334. int weakRefs;
  1335. int width;
  1336. };
  1337. class CollisionBox2D
  1338. {
  1339. // Methods:
  1340. void ApplyAttributes();
  1341. void DrawDebugGeometry(DebugRenderer, bool);
  1342. Variant GetAttribute(const String&) const;
  1343. ValueAnimation GetAttributeAnimation(const String&) const;
  1344. float GetAttributeAnimationSpeed(const String&) const;
  1345. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  1346. Variant GetAttributeDefault(const String&) const;
  1347. bool Load(File, bool = false);
  1348. bool Load(VectorBuffer&, bool = false);
  1349. bool LoadXML(const XMLElement&, bool = false);
  1350. void MarkNetworkUpdate() const;
  1351. void Remove();
  1352. void RemoveInstanceDefault();
  1353. void ResetToDefault();
  1354. bool Save(File) const;
  1355. bool Save(VectorBuffer&) const;
  1356. bool SaveXML(XMLElement&) const;
  1357. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1358. bool SetAttribute(const String&, const Variant&);
  1359. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  1360. void SetAttributeAnimationSpeed(const String&, float);
  1361. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  1362. void SetCenter(float, float);
  1363. void SetSize(float, float);
  1364. // Properties:
  1365. float angle;
  1366. bool animationEnabled;
  1367. /* readonly */
  1368. Array<Variant> attributeDefaults;
  1369. /* readonly */
  1370. Array<AttributeInfo> attributeInfos;
  1371. Array<Variant> attributes;
  1372. /* readonly */
  1373. StringHash baseType;
  1374. /* readonly */
  1375. String category;
  1376. int categoryBits;
  1377. Vector2 center;
  1378. float density;
  1379. bool enabled;
  1380. /* readonly */
  1381. bool enabledEffective;
  1382. float friction;
  1383. int groupIndex;
  1384. /* readonly */
  1385. uint id;
  1386. /* readonly */
  1387. float inertia;
  1388. int maskBits;
  1389. /* readonly */
  1390. float mass;
  1391. /* readonly */
  1392. Vector2 massCenter;
  1393. /* readonly */
  1394. Node node;
  1395. /* readonly */
  1396. uint numAttributes;
  1397. ObjectAnimation objectAnimation;
  1398. /* readonly */
  1399. int refs;
  1400. float restitution;
  1401. Vector2 size;
  1402. bool temporary;
  1403. bool trigger;
  1404. /* readonly */
  1405. StringHash type;
  1406. /* readonly */
  1407. String typeName;
  1408. /* readonly */
  1409. int weakRefs;
  1410. };
  1411. class CollisionChain2D
  1412. {
  1413. // Methods:
  1414. void ApplyAttributes();
  1415. void DrawDebugGeometry(DebugRenderer, bool);
  1416. Variant GetAttribute(const String&) const;
  1417. ValueAnimation GetAttributeAnimation(const String&) const;
  1418. float GetAttributeAnimationSpeed(const String&) const;
  1419. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  1420. Variant GetAttributeDefault(const String&) const;
  1421. Array<Vector2> GetVertices() const;
  1422. bool Load(File, bool = false);
  1423. bool Load(VectorBuffer&, bool = false);
  1424. bool LoadXML(const XMLElement&, bool = false);
  1425. void MarkNetworkUpdate() const;
  1426. void Remove();
  1427. void RemoveInstanceDefault();
  1428. void ResetToDefault();
  1429. bool Save(File) const;
  1430. bool Save(VectorBuffer&) const;
  1431. bool SaveXML(XMLElement&) const;
  1432. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1433. bool SetAttribute(const String&, const Variant&);
  1434. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  1435. void SetAttributeAnimationSpeed(const String&, float);
  1436. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  1437. void SetVertex(uint, const Vector2&);
  1438. void SetVertices(Array<Vector2>);
  1439. const Vector2& GetVertex(uint) const;
  1440. // Properties:
  1441. bool animationEnabled;
  1442. /* readonly */
  1443. Array<Variant> attributeDefaults;
  1444. /* readonly */
  1445. Array<AttributeInfo> attributeInfos;
  1446. Array<Variant> attributes;
  1447. /* readonly */
  1448. StringHash baseType;
  1449. /* readonly */
  1450. String category;
  1451. int categoryBits;
  1452. float density;
  1453. bool enabled;
  1454. /* readonly */
  1455. bool enabledEffective;
  1456. float friction;
  1457. int groupIndex;
  1458. /* readonly */
  1459. uint id;
  1460. /* readonly */
  1461. float inertia;
  1462. bool loop;
  1463. int maskBits;
  1464. /* readonly */
  1465. float mass;
  1466. /* readonly */
  1467. Vector2 massCenter;
  1468. /* readonly */
  1469. Node node;
  1470. /* readonly */
  1471. uint numAttributes;
  1472. ObjectAnimation objectAnimation;
  1473. /* readonly */
  1474. int refs;
  1475. float restitution;
  1476. bool temporary;
  1477. bool trigger;
  1478. /* readonly */
  1479. StringHash type;
  1480. /* readonly */
  1481. String typeName;
  1482. uint vertexCount;
  1483. /* readonly */
  1484. int weakRefs;
  1485. };
  1486. class CollisionCircle2D
  1487. {
  1488. // Methods:
  1489. void ApplyAttributes();
  1490. void DrawDebugGeometry(DebugRenderer, bool);
  1491. Variant GetAttribute(const String&) const;
  1492. ValueAnimation GetAttributeAnimation(const String&) const;
  1493. float GetAttributeAnimationSpeed(const String&) const;
  1494. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  1495. Variant GetAttributeDefault(const String&) const;
  1496. bool Load(File, bool = false);
  1497. bool Load(VectorBuffer&, bool = false);
  1498. bool LoadXML(const XMLElement&, bool = false);
  1499. void MarkNetworkUpdate() const;
  1500. void Remove();
  1501. void RemoveInstanceDefault();
  1502. void ResetToDefault();
  1503. bool Save(File) const;
  1504. bool Save(VectorBuffer&) const;
  1505. bool SaveXML(XMLElement&) const;
  1506. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1507. bool SetAttribute(const String&, const Variant&);
  1508. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  1509. void SetAttributeAnimationSpeed(const String&, float);
  1510. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  1511. void SetCenter(float, float);
  1512. // Properties:
  1513. bool animationEnabled;
  1514. /* readonly */
  1515. Array<Variant> attributeDefaults;
  1516. /* readonly */
  1517. Array<AttributeInfo> attributeInfos;
  1518. Array<Variant> attributes;
  1519. /* readonly */
  1520. StringHash baseType;
  1521. /* readonly */
  1522. String category;
  1523. int categoryBits;
  1524. Vector2 center;
  1525. float density;
  1526. bool enabled;
  1527. /* readonly */
  1528. bool enabledEffective;
  1529. float friction;
  1530. int groupIndex;
  1531. /* readonly */
  1532. uint id;
  1533. /* readonly */
  1534. float inertia;
  1535. int maskBits;
  1536. /* readonly */
  1537. float mass;
  1538. /* readonly */
  1539. Vector2 massCenter;
  1540. /* readonly */
  1541. Node node;
  1542. /* readonly */
  1543. uint numAttributes;
  1544. ObjectAnimation objectAnimation;
  1545. float radius;
  1546. /* readonly */
  1547. int refs;
  1548. float restitution;
  1549. bool temporary;
  1550. bool trigger;
  1551. /* readonly */
  1552. StringHash type;
  1553. /* readonly */
  1554. String typeName;
  1555. /* readonly */
  1556. int weakRefs;
  1557. };
  1558. class CollisionEdge2D
  1559. {
  1560. // Methods:
  1561. void ApplyAttributes();
  1562. void DrawDebugGeometry(DebugRenderer, bool);
  1563. Variant GetAttribute(const String&) const;
  1564. ValueAnimation GetAttributeAnimation(const String&) const;
  1565. float GetAttributeAnimationSpeed(const String&) const;
  1566. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  1567. Variant GetAttributeDefault(const String&) const;
  1568. bool Load(File, bool = false);
  1569. bool Load(VectorBuffer&, bool = false);
  1570. bool LoadXML(const XMLElement&, bool = false);
  1571. void MarkNetworkUpdate() const;
  1572. void Remove();
  1573. void RemoveInstanceDefault();
  1574. void ResetToDefault();
  1575. bool Save(File) const;
  1576. bool Save(VectorBuffer&) const;
  1577. bool SaveXML(XMLElement&) const;
  1578. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1579. bool SetAttribute(const String&, const Variant&);
  1580. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  1581. void SetAttributeAnimationSpeed(const String&, float);
  1582. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  1583. void SetVertices(const Vector2&, const Vector2&);
  1584. // Properties:
  1585. bool animationEnabled;
  1586. /* readonly */
  1587. Array<Variant> attributeDefaults;
  1588. /* readonly */
  1589. Array<AttributeInfo> attributeInfos;
  1590. Array<Variant> attributes;
  1591. /* readonly */
  1592. StringHash baseType;
  1593. /* readonly */
  1594. String category;
  1595. int categoryBits;
  1596. float density;
  1597. bool enabled;
  1598. /* readonly */
  1599. bool enabledEffective;
  1600. float friction;
  1601. int groupIndex;
  1602. /* readonly */
  1603. uint id;
  1604. /* readonly */
  1605. float inertia;
  1606. int maskBits;
  1607. /* readonly */
  1608. float mass;
  1609. /* readonly */
  1610. Vector2 massCenter;
  1611. /* readonly */
  1612. Node node;
  1613. /* readonly */
  1614. uint numAttributes;
  1615. ObjectAnimation objectAnimation;
  1616. /* readonly */
  1617. int refs;
  1618. float restitution;
  1619. bool temporary;
  1620. bool trigger;
  1621. /* readonly */
  1622. StringHash type;
  1623. /* readonly */
  1624. String typeName;
  1625. Vector2 vertex1;
  1626. Vector2 vertex2;
  1627. /* readonly */
  1628. int weakRefs;
  1629. };
  1630. class CollisionPolygon2D
  1631. {
  1632. // Methods:
  1633. void ApplyAttributes();
  1634. void DrawDebugGeometry(DebugRenderer, bool);
  1635. Variant GetAttribute(const String&) const;
  1636. ValueAnimation GetAttributeAnimation(const String&) const;
  1637. float GetAttributeAnimationSpeed(const String&) const;
  1638. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  1639. Variant GetAttributeDefault(const String&) const;
  1640. Array<Vector2> GetVertices() const;
  1641. bool Load(File, bool = false);
  1642. bool Load(VectorBuffer&, bool = false);
  1643. bool LoadXML(const XMLElement&, bool = false);
  1644. void MarkNetworkUpdate() const;
  1645. void Remove();
  1646. void RemoveInstanceDefault();
  1647. void ResetToDefault();
  1648. bool Save(File) const;
  1649. bool Save(VectorBuffer&) const;
  1650. bool SaveXML(XMLElement&) const;
  1651. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1652. bool SetAttribute(const String&, const Variant&);
  1653. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  1654. void SetAttributeAnimationSpeed(const String&, float);
  1655. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  1656. void SetVertex(uint, const Vector2&);
  1657. void SetVertices(Array<Vector2>);
  1658. const Vector2& GetVertex(uint) const;
  1659. // Properties:
  1660. bool animationEnabled;
  1661. /* readonly */
  1662. Array<Variant> attributeDefaults;
  1663. /* readonly */
  1664. Array<AttributeInfo> attributeInfos;
  1665. Array<Variant> attributes;
  1666. /* readonly */
  1667. StringHash baseType;
  1668. /* readonly */
  1669. String category;
  1670. int categoryBits;
  1671. float density;
  1672. bool enabled;
  1673. /* readonly */
  1674. bool enabledEffective;
  1675. float friction;
  1676. int groupIndex;
  1677. /* readonly */
  1678. uint id;
  1679. /* readonly */
  1680. float inertia;
  1681. int maskBits;
  1682. /* readonly */
  1683. float mass;
  1684. /* readonly */
  1685. Vector2 massCenter;
  1686. /* readonly */
  1687. Node node;
  1688. /* readonly */
  1689. uint numAttributes;
  1690. ObjectAnimation objectAnimation;
  1691. /* readonly */
  1692. int refs;
  1693. float restitution;
  1694. bool temporary;
  1695. bool trigger;
  1696. /* readonly */
  1697. StringHash type;
  1698. /* readonly */
  1699. String typeName;
  1700. uint vertexCount;
  1701. /* readonly */
  1702. int weakRefs;
  1703. };
  1704. class CollisionShape
  1705. {
  1706. // Methods:
  1707. void ApplyAttributes();
  1708. void DrawDebugGeometry(DebugRenderer, bool);
  1709. Variant GetAttribute(const String&) const;
  1710. ValueAnimation GetAttributeAnimation(const String&) const;
  1711. float GetAttributeAnimationSpeed(const String&) const;
  1712. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  1713. Variant GetAttributeDefault(const String&) const;
  1714. bool Load(File, bool = false);
  1715. bool Load(VectorBuffer&, bool = false);
  1716. bool LoadXML(const XMLElement&, bool = false);
  1717. void MarkNetworkUpdate() const;
  1718. void Remove();
  1719. void RemoveInstanceDefault();
  1720. void ResetToDefault();
  1721. bool Save(File) const;
  1722. bool Save(VectorBuffer&) const;
  1723. bool SaveXML(XMLElement&) const;
  1724. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1725. bool SetAttribute(const String&, const Variant&);
  1726. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  1727. void SetAttributeAnimationSpeed(const String&, float);
  1728. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  1729. void SetBox(const Vector3&, const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1730. void SetCapsule(float, float, const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1731. void SetCone(float, float, const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1732. void SetConvexHull(Model, uint = 0, const Vector3& = Vector3 ( 1 , 1 , 1 ), const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1733. void SetCustomConvexHull(CustomGeometry, const Vector3& = Vector3 ( 1 , 1 , 1 ), const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1734. void SetCustomTriangleMesh(CustomGeometry, const Vector3& = Vector3 ( 1 , 1 , 1 ), const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1735. void SetCylinder(float, float, const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1736. void SetSphere(float, const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1737. void SetStaticPlane(const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1738. void SetTerrain();
  1739. void SetTransform(const Vector3&, const Quaternion&);
  1740. void SetTriangleMesh(Model, uint = 0, const Vector3& = Vector3 ( 1 , 1 , 1 ), const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1741. // Properties:
  1742. bool animationEnabled;
  1743. /* readonly */
  1744. Array<Variant> attributeDefaults;
  1745. /* readonly */
  1746. Array<AttributeInfo> attributeInfos;
  1747. Array<Variant> attributes;
  1748. /* readonly */
  1749. StringHash baseType;
  1750. /* readonly */
  1751. String category;
  1752. bool enabled;
  1753. /* readonly */
  1754. bool enabledEffective;
  1755. /* readonly */
  1756. uint id;
  1757. uint lodLevel;
  1758. float margin;
  1759. Model model;
  1760. /* readonly */
  1761. Node node;
  1762. /* readonly */
  1763. uint numAttributes;
  1764. ObjectAnimation objectAnimation;
  1765. Vector3 position;
  1766. /* readonly */
  1767. int refs;
  1768. Quaternion rotation;
  1769. ShapeType shapeType;
  1770. Vector3 size;
  1771. bool temporary;
  1772. /* readonly */
  1773. StringHash type;
  1774. /* readonly */
  1775. String typeName;
  1776. /* readonly */
  1777. int weakRefs;
  1778. /* readonly */
  1779. BoundingBox worldBoundingBox;
  1780. };
  1781. class CollisionShape2D
  1782. {
  1783. // Methods:
  1784. void ApplyAttributes();
  1785. void DrawDebugGeometry(DebugRenderer, bool);
  1786. Variant GetAttribute(const String&) const;
  1787. ValueAnimation GetAttributeAnimation(const String&) const;
  1788. float GetAttributeAnimationSpeed(const String&) const;
  1789. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  1790. Variant GetAttributeDefault(const String&) const;
  1791. bool Load(File, bool = false);
  1792. bool Load(VectorBuffer&, bool = false);
  1793. bool LoadXML(const XMLElement&, bool = false);
  1794. void MarkNetworkUpdate() const;
  1795. void Remove();
  1796. void RemoveInstanceDefault();
  1797. void ResetToDefault();
  1798. bool Save(File) const;
  1799. bool Save(VectorBuffer&) const;
  1800. bool SaveXML(XMLElement&) const;
  1801. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1802. bool SetAttribute(const String&, const Variant&);
  1803. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  1804. void SetAttributeAnimationSpeed(const String&, float);
  1805. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  1806. // Properties:
  1807. bool animationEnabled;
  1808. /* readonly */
  1809. Array<Variant> attributeDefaults;
  1810. /* readonly */
  1811. Array<AttributeInfo> attributeInfos;
  1812. Array<Variant> attributes;
  1813. /* readonly */
  1814. StringHash baseType;
  1815. /* readonly */
  1816. String category;
  1817. int categoryBits;
  1818. float density;
  1819. bool enabled;
  1820. /* readonly */
  1821. bool enabledEffective;
  1822. float friction;
  1823. int groupIndex;
  1824. /* readonly */
  1825. uint id;
  1826. /* readonly */
  1827. float inertia;
  1828. int maskBits;
  1829. /* readonly */
  1830. float mass;
  1831. /* readonly */
  1832. Vector2 massCenter;
  1833. /* readonly */
  1834. Node node;
  1835. /* readonly */
  1836. uint numAttributes;
  1837. ObjectAnimation objectAnimation;
  1838. /* readonly */
  1839. int refs;
  1840. float restitution;
  1841. bool temporary;
  1842. bool trigger;
  1843. /* readonly */
  1844. StringHash type;
  1845. /* readonly */
  1846. String typeName;
  1847. /* readonly */
  1848. int weakRefs;
  1849. };
  1850. class Color
  1851. {
  1852. // Methods:
  1853. Color Abs() const;
  1854. float Average() const;
  1855. float Chroma() const;
  1856. void Clip(bool);
  1857. bool Equals() const;
  1858. void FromHSL(float, float, float, float);
  1859. void FromHSV(float, float, float, float);
  1860. float Hue() const;
  1861. void Invert(bool);
  1862. Color Lerp(const Color&, float) const;
  1863. float Lightness() const;
  1864. float Luma() const;
  1865. float MaxRGB() const;
  1866. float MinRGB() const;
  1867. float Range() const;
  1868. float SaturationHSL() const;
  1869. float SaturationHSV() const;
  1870. float SumRGB() const;
  1871. Vector3 ToHSL() const;
  1872. Vector3 ToHSV() const;
  1873. String ToString() const;
  1874. uint ToUInt() const;
  1875. float Value() const;
  1876. // Properties:
  1877. float a;
  1878. float b;
  1879. /* readonly */
  1880. Array<float> data;
  1881. float g;
  1882. float r;
  1883. /* readonly */
  1884. Vector3 rgb;
  1885. /* readonly */
  1886. Vector4 rgba;
  1887. };
  1888. class ColorFrame
  1889. {
  1890. // Properties:
  1891. Color color;
  1892. float time;
  1893. };
  1894. class Component
  1895. {
  1896. // Methods:
  1897. void ApplyAttributes();
  1898. void DrawDebugGeometry(DebugRenderer, bool);
  1899. Variant GetAttribute(const String&) const;
  1900. ValueAnimation GetAttributeAnimation(const String&) const;
  1901. float GetAttributeAnimationSpeed(const String&) const;
  1902. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  1903. Variant GetAttributeDefault(const String&) const;
  1904. bool Load(File, bool = false);
  1905. bool Load(VectorBuffer&, bool = false);
  1906. bool LoadXML(const XMLElement&, bool = false);
  1907. void MarkNetworkUpdate() const;
  1908. void Remove();
  1909. void RemoveInstanceDefault();
  1910. void ResetToDefault();
  1911. bool Save(File) const;
  1912. bool Save(VectorBuffer&) const;
  1913. bool SaveXML(XMLElement&) const;
  1914. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1915. bool SetAttribute(const String&, const Variant&);
  1916. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  1917. void SetAttributeAnimationSpeed(const String&, float);
  1918. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  1919. // Properties:
  1920. bool animationEnabled;
  1921. /* readonly */
  1922. Array<Variant> attributeDefaults;
  1923. /* readonly */
  1924. Array<AttributeInfo> attributeInfos;
  1925. Array<Variant> attributes;
  1926. /* readonly */
  1927. StringHash baseType;
  1928. /* readonly */
  1929. String category;
  1930. bool enabled;
  1931. /* readonly */
  1932. bool enabledEffective;
  1933. /* readonly */
  1934. uint id;
  1935. /* readonly */
  1936. Node node;
  1937. /* readonly */
  1938. uint numAttributes;
  1939. ObjectAnimation objectAnimation;
  1940. /* readonly */
  1941. int refs;
  1942. bool temporary;
  1943. /* readonly */
  1944. StringHash type;
  1945. /* readonly */
  1946. String typeName;
  1947. /* readonly */
  1948. int weakRefs;
  1949. };
  1950. class Connection
  1951. {
  1952. // Methods:
  1953. void Disconnect(int = 0);
  1954. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1955. void SendMessage(int, bool, bool, const VectorBuffer&, uint = 0);
  1956. void SendPackageToClient(PackageFile);
  1957. void SendRemoteEvent(Node, const String&, bool, const VariantMap& = VariantMap ( ));
  1958. void SendRemoteEvent(const String&, bool, const VariantMap& = VariantMap ( ));
  1959. String ToString() const;
  1960. // Properties:
  1961. /* readonly */
  1962. String address;
  1963. /* readonly */
  1964. StringHash baseType;
  1965. /* readonly */
  1966. String category;
  1967. /* readonly */
  1968. bool client;
  1969. /* readonly */
  1970. bool connectPending;
  1971. /* readonly */
  1972. bool connected;
  1973. Controls controls;
  1974. /* readonly */
  1975. String downloadName;
  1976. /* readonly */
  1977. float downloadProgress;
  1978. VariantMap identity;
  1979. bool logStatistics;
  1980. /* readonly */
  1981. uint numDownloads;
  1982. /* readonly */
  1983. uint16 port;
  1984. Vector3 position;
  1985. /* readonly */
  1986. int refs;
  1987. Quaternion rotation;
  1988. Scene scene;
  1989. /* readonly */
  1990. bool sceneLoaded;
  1991. /* readonly */
  1992. StringHash type;
  1993. /* readonly */
  1994. String typeName;
  1995. /* readonly */
  1996. int weakRefs;
  1997. };
  1998. class Console
  1999. {
  2000. // Methods:
  2001. void CopySelectedRows() const;
  2002. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2003. void Toggle();
  2004. void UpdateElements();
  2005. // Properties:
  2006. bool autoVisibleOnError;
  2007. /* readonly */
  2008. BorderImage background;
  2009. /* readonly */
  2010. StringHash baseType;
  2011. /* readonly */
  2012. String category;
  2013. /* readonly */
  2014. Button closeButton;
  2015. String commandInterpreter;
  2016. XMLFile defaultStyle;
  2017. bool focusOnShow;
  2018. /* readonly */
  2019. uint historyPosition;
  2020. /* readonly */
  2021. Array<String> historyRow;
  2022. /* readonly */
  2023. LineEdit lineEdit;
  2024. uint numBufferedRows;
  2025. uint numHistoryRows;
  2026. uint numRows;
  2027. /* readonly */
  2028. int refs;
  2029. /* readonly */
  2030. StringHash type;
  2031. /* readonly */
  2032. String typeName;
  2033. bool visible;
  2034. /* readonly */
  2035. int weakRefs;
  2036. };
  2037. class Constraint
  2038. {
  2039. // Methods:
  2040. void ApplyAttributes();
  2041. void DrawDebugGeometry(DebugRenderer, bool);
  2042. Variant GetAttribute(const String&) const;
  2043. ValueAnimation GetAttributeAnimation(const String&) const;
  2044. float GetAttributeAnimationSpeed(const String&) const;
  2045. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2046. Variant GetAttributeDefault(const String&) const;
  2047. bool Load(File, bool = false);
  2048. bool Load(VectorBuffer&, bool = false);
  2049. bool LoadXML(const XMLElement&, bool = false);
  2050. void MarkNetworkUpdate() const;
  2051. void Remove();
  2052. void RemoveInstanceDefault();
  2053. void ResetToDefault();
  2054. bool Save(File) const;
  2055. bool Save(VectorBuffer&) const;
  2056. bool SaveXML(XMLElement&) const;
  2057. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2058. bool SetAttribute(const String&, const Variant&);
  2059. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2060. void SetAttributeAnimationSpeed(const String&, float);
  2061. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2062. // Properties:
  2063. bool animationEnabled;
  2064. /* readonly */
  2065. Array<Variant> attributeDefaults;
  2066. /* readonly */
  2067. Array<AttributeInfo> attributeInfos;
  2068. Array<Variant> attributes;
  2069. /* writeonly */
  2070. Vector3 axis;
  2071. /* readonly */
  2072. StringHash baseType;
  2073. /* readonly */
  2074. String category;
  2075. float cfm;
  2076. ConstraintType constraintType;
  2077. bool disableCollision;
  2078. bool enabled;
  2079. /* readonly */
  2080. bool enabledEffective;
  2081. float erp;
  2082. Vector2 highLimit;
  2083. /* readonly */
  2084. uint id;
  2085. Vector2 lowLimit;
  2086. /* readonly */
  2087. Node node;
  2088. /* readonly */
  2089. uint numAttributes;
  2090. ObjectAnimation objectAnimation;
  2091. /* writeonly */
  2092. Vector3 otherAxis;
  2093. RigidBody otherBody;
  2094. Vector3 otherPosition;
  2095. Quaternion otherRotation;
  2096. /* readonly */
  2097. RigidBody ownBody;
  2098. Vector3 position;
  2099. /* readonly */
  2100. int refs;
  2101. Quaternion rotation;
  2102. bool temporary;
  2103. /* readonly */
  2104. StringHash type;
  2105. /* readonly */
  2106. String typeName;
  2107. /* readonly */
  2108. int weakRefs;
  2109. Vector3 worldPosition;
  2110. };
  2111. class Constraint2D
  2112. {
  2113. // Methods:
  2114. void ApplyAttributes();
  2115. void DrawDebugGeometry(DebugRenderer, bool);
  2116. Variant GetAttribute(const String&) const;
  2117. ValueAnimation GetAttributeAnimation(const String&) const;
  2118. float GetAttributeAnimationSpeed(const String&) const;
  2119. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2120. Variant GetAttributeDefault(const String&) const;
  2121. bool Load(File, bool = false);
  2122. bool Load(VectorBuffer&, bool = false);
  2123. bool LoadXML(const XMLElement&, bool = false);
  2124. void MarkNetworkUpdate() const;
  2125. void Remove();
  2126. void RemoveInstanceDefault();
  2127. void ResetToDefault();
  2128. bool Save(File) const;
  2129. bool Save(VectorBuffer&) const;
  2130. bool SaveXML(XMLElement&) const;
  2131. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2132. bool SetAttribute(const String&, const Variant&);
  2133. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2134. void SetAttributeAnimationSpeed(const String&, float);
  2135. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2136. // Properties:
  2137. bool animationEnabled;
  2138. /* readonly */
  2139. Array<Variant> attributeDefaults;
  2140. /* readonly */
  2141. Array<AttributeInfo> attributeInfos;
  2142. Array<Variant> attributes;
  2143. /* readonly */
  2144. StringHash baseType;
  2145. /* readonly */
  2146. String category;
  2147. bool collideConnected;
  2148. bool enabled;
  2149. /* readonly */
  2150. bool enabledEffective;
  2151. /* readonly */
  2152. uint id;
  2153. /* readonly */
  2154. Node node;
  2155. /* readonly */
  2156. uint numAttributes;
  2157. ObjectAnimation objectAnimation;
  2158. RigidBody2D otherBody;
  2159. /* readonly */
  2160. RigidBody2D ownerBody;
  2161. /* readonly */
  2162. int refs;
  2163. bool temporary;
  2164. /* readonly */
  2165. StringHash type;
  2166. /* readonly */
  2167. String typeName;
  2168. /* readonly */
  2169. int weakRefs;
  2170. };
  2171. class ConstraintDistance2D
  2172. {
  2173. // Methods:
  2174. void ApplyAttributes();
  2175. void DrawDebugGeometry(DebugRenderer, bool);
  2176. Variant GetAttribute(const String&) const;
  2177. ValueAnimation GetAttributeAnimation(const String&) const;
  2178. float GetAttributeAnimationSpeed(const String&) const;
  2179. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2180. Variant GetAttributeDefault(const String&) const;
  2181. bool Load(File, bool = false);
  2182. bool Load(VectorBuffer&, bool = false);
  2183. bool LoadXML(const XMLElement&, bool = false);
  2184. void MarkNetworkUpdate() const;
  2185. void Remove();
  2186. void RemoveInstanceDefault();
  2187. void ResetToDefault();
  2188. bool Save(File) const;
  2189. bool Save(VectorBuffer&) const;
  2190. bool SaveXML(XMLElement&) const;
  2191. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2192. bool SetAttribute(const String&, const Variant&);
  2193. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2194. void SetAttributeAnimationSpeed(const String&, float);
  2195. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2196. // Properties:
  2197. bool animationEnabled;
  2198. /* readonly */
  2199. Array<Variant> attributeDefaults;
  2200. /* readonly */
  2201. Array<AttributeInfo> attributeInfos;
  2202. Array<Variant> attributes;
  2203. /* readonly */
  2204. StringHash baseType;
  2205. /* readonly */
  2206. String category;
  2207. bool collideConnected;
  2208. float dampingRatio;
  2209. bool enabled;
  2210. /* readonly */
  2211. bool enabledEffective;
  2212. float frequencyHz;
  2213. /* readonly */
  2214. uint id;
  2215. /* readonly */
  2216. Node node;
  2217. /* readonly */
  2218. uint numAttributes;
  2219. ObjectAnimation objectAnimation;
  2220. RigidBody2D otherBody;
  2221. Vector2 otherBodyAnchor;
  2222. /* readonly */
  2223. RigidBody2D ownerBody;
  2224. Vector2 ownerBodyAnchor;
  2225. /* readonly */
  2226. int refs;
  2227. bool temporary;
  2228. /* readonly */
  2229. StringHash type;
  2230. /* readonly */
  2231. String typeName;
  2232. /* readonly */
  2233. int weakRefs;
  2234. };
  2235. class ConstraintFriction2D
  2236. {
  2237. // Methods:
  2238. void ApplyAttributes();
  2239. void DrawDebugGeometry(DebugRenderer, bool);
  2240. Variant GetAttribute(const String&) const;
  2241. ValueAnimation GetAttributeAnimation(const String&) const;
  2242. float GetAttributeAnimationSpeed(const String&) const;
  2243. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2244. Variant GetAttributeDefault(const String&) const;
  2245. bool Load(File, bool = false);
  2246. bool Load(VectorBuffer&, bool = false);
  2247. bool LoadXML(const XMLElement&, bool = false);
  2248. void MarkNetworkUpdate() const;
  2249. void Remove();
  2250. void RemoveInstanceDefault();
  2251. void ResetToDefault();
  2252. bool Save(File) const;
  2253. bool Save(VectorBuffer&) const;
  2254. bool SaveXML(XMLElement&) const;
  2255. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2256. bool SetAttribute(const String&, const Variant&);
  2257. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2258. void SetAttributeAnimationSpeed(const String&, float);
  2259. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2260. // Properties:
  2261. Vector2 anchor;
  2262. bool animationEnabled;
  2263. /* readonly */
  2264. Array<Variant> attributeDefaults;
  2265. /* readonly */
  2266. Array<AttributeInfo> attributeInfos;
  2267. Array<Variant> attributes;
  2268. /* readonly */
  2269. StringHash baseType;
  2270. /* readonly */
  2271. String category;
  2272. bool collideConnected;
  2273. bool enabled;
  2274. /* readonly */
  2275. bool enabledEffective;
  2276. /* readonly */
  2277. uint id;
  2278. float maxForce;
  2279. float maxTorque;
  2280. /* readonly */
  2281. Node node;
  2282. /* readonly */
  2283. uint numAttributes;
  2284. ObjectAnimation objectAnimation;
  2285. RigidBody2D otherBody;
  2286. /* readonly */
  2287. RigidBody2D ownerBody;
  2288. /* readonly */
  2289. int refs;
  2290. bool temporary;
  2291. /* readonly */
  2292. StringHash type;
  2293. /* readonly */
  2294. String typeName;
  2295. /* readonly */
  2296. int weakRefs;
  2297. };
  2298. class ConstraintGear2D
  2299. {
  2300. // Methods:
  2301. void ApplyAttributes();
  2302. void DrawDebugGeometry(DebugRenderer, bool);
  2303. Variant GetAttribute(const String&) const;
  2304. ValueAnimation GetAttributeAnimation(const String&) const;
  2305. float GetAttributeAnimationSpeed(const String&) const;
  2306. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2307. Variant GetAttributeDefault(const String&) const;
  2308. bool Load(File, bool = false);
  2309. bool Load(VectorBuffer&, bool = false);
  2310. bool LoadXML(const XMLElement&, bool = false);
  2311. void MarkNetworkUpdate() const;
  2312. void Remove();
  2313. void RemoveInstanceDefault();
  2314. void ResetToDefault();
  2315. bool Save(File) const;
  2316. bool Save(VectorBuffer&) const;
  2317. bool SaveXML(XMLElement&) const;
  2318. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2319. bool SetAttribute(const String&, const Variant&);
  2320. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2321. void SetAttributeAnimationSpeed(const String&, float);
  2322. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2323. // Properties:
  2324. bool animationEnabled;
  2325. /* readonly */
  2326. Array<Variant> attributeDefaults;
  2327. /* readonly */
  2328. Array<AttributeInfo> attributeInfos;
  2329. Array<Variant> attributes;
  2330. /* readonly */
  2331. StringHash baseType;
  2332. /* readonly */
  2333. String category;
  2334. bool collideConnected;
  2335. bool enabled;
  2336. /* readonly */
  2337. bool enabledEffective;
  2338. /* readonly */
  2339. uint id;
  2340. /* readonly */
  2341. Node node;
  2342. /* readonly */
  2343. uint numAttributes;
  2344. ObjectAnimation objectAnimation;
  2345. RigidBody2D otherBody;
  2346. Constraint2D otherConstraint;
  2347. /* readonly */
  2348. RigidBody2D ownerBody;
  2349. Constraint2D ownerConstraint;
  2350. float ratio;
  2351. /* readonly */
  2352. int refs;
  2353. bool temporary;
  2354. /* readonly */
  2355. StringHash type;
  2356. /* readonly */
  2357. String typeName;
  2358. /* readonly */
  2359. int weakRefs;
  2360. };
  2361. class ConstraintMotor2D
  2362. {
  2363. // Methods:
  2364. void ApplyAttributes();
  2365. void DrawDebugGeometry(DebugRenderer, bool);
  2366. Variant GetAttribute(const String&) const;
  2367. ValueAnimation GetAttributeAnimation(const String&) const;
  2368. float GetAttributeAnimationSpeed(const String&) const;
  2369. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2370. Variant GetAttributeDefault(const String&) const;
  2371. bool Load(File, bool = false);
  2372. bool Load(VectorBuffer&, bool = false);
  2373. bool LoadXML(const XMLElement&, bool = false);
  2374. void MarkNetworkUpdate() const;
  2375. void Remove();
  2376. void RemoveInstanceDefault();
  2377. void ResetToDefault();
  2378. bool Save(File) const;
  2379. bool Save(VectorBuffer&) const;
  2380. bool SaveXML(XMLElement&) const;
  2381. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2382. bool SetAttribute(const String&, const Variant&);
  2383. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2384. void SetAttributeAnimationSpeed(const String&, float);
  2385. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2386. // Properties:
  2387. float angularOffset;
  2388. bool animationEnabled;
  2389. /* readonly */
  2390. Array<Variant> attributeDefaults;
  2391. /* readonly */
  2392. Array<AttributeInfo> attributeInfos;
  2393. Array<Variant> attributes;
  2394. /* readonly */
  2395. StringHash baseType;
  2396. /* readonly */
  2397. String category;
  2398. bool collideConnected;
  2399. float correctionFactor;
  2400. bool enabled;
  2401. /* readonly */
  2402. bool enabledEffective;
  2403. /* readonly */
  2404. uint id;
  2405. Vector2 linearOffset;
  2406. float maxForce;
  2407. float maxTorque;
  2408. /* readonly */
  2409. Node node;
  2410. /* readonly */
  2411. uint numAttributes;
  2412. ObjectAnimation objectAnimation;
  2413. RigidBody2D otherBody;
  2414. /* readonly */
  2415. RigidBody2D ownerBody;
  2416. /* readonly */
  2417. int refs;
  2418. bool temporary;
  2419. /* readonly */
  2420. StringHash type;
  2421. /* readonly */
  2422. String typeName;
  2423. /* readonly */
  2424. int weakRefs;
  2425. };
  2426. class ConstraintMouse2D
  2427. {
  2428. // Methods:
  2429. void ApplyAttributes();
  2430. void DrawDebugGeometry(DebugRenderer, bool);
  2431. Variant GetAttribute(const String&) const;
  2432. ValueAnimation GetAttributeAnimation(const String&) const;
  2433. float GetAttributeAnimationSpeed(const String&) const;
  2434. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2435. Variant GetAttributeDefault(const String&) const;
  2436. bool Load(File, bool = false);
  2437. bool Load(VectorBuffer&, bool = false);
  2438. bool LoadXML(const XMLElement&, bool = false);
  2439. void MarkNetworkUpdate() const;
  2440. void Remove();
  2441. void RemoveInstanceDefault();
  2442. void ResetToDefault();
  2443. bool Save(File) const;
  2444. bool Save(VectorBuffer&) const;
  2445. bool SaveXML(XMLElement&) const;
  2446. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2447. bool SetAttribute(const String&, const Variant&);
  2448. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2449. void SetAttributeAnimationSpeed(const String&, float);
  2450. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2451. // Properties:
  2452. bool animationEnabled;
  2453. /* readonly */
  2454. Array<Variant> attributeDefaults;
  2455. /* readonly */
  2456. Array<AttributeInfo> attributeInfos;
  2457. Array<Variant> attributes;
  2458. /* readonly */
  2459. StringHash baseType;
  2460. /* readonly */
  2461. String category;
  2462. bool collideConnected;
  2463. float dampingRatio;
  2464. bool enabled;
  2465. /* readonly */
  2466. bool enabledEffective;
  2467. float frequencyHz;
  2468. /* readonly */
  2469. uint id;
  2470. float maxForce;
  2471. /* readonly */
  2472. Node node;
  2473. /* readonly */
  2474. uint numAttributes;
  2475. ObjectAnimation objectAnimation;
  2476. RigidBody2D otherBody;
  2477. /* readonly */
  2478. RigidBody2D ownerBody;
  2479. /* readonly */
  2480. int refs;
  2481. Vector2 target;
  2482. bool temporary;
  2483. /* readonly */
  2484. StringHash type;
  2485. /* readonly */
  2486. String typeName;
  2487. /* readonly */
  2488. int weakRefs;
  2489. };
  2490. class ConstraintPrismatic2D
  2491. {
  2492. // Methods:
  2493. void ApplyAttributes();
  2494. void DrawDebugGeometry(DebugRenderer, bool);
  2495. Variant GetAttribute(const String&) const;
  2496. ValueAnimation GetAttributeAnimation(const String&) const;
  2497. float GetAttributeAnimationSpeed(const String&) const;
  2498. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2499. Variant GetAttributeDefault(const String&) const;
  2500. bool Load(File, bool = false);
  2501. bool Load(VectorBuffer&, bool = false);
  2502. bool LoadXML(const XMLElement&, bool = false);
  2503. void MarkNetworkUpdate() const;
  2504. void Remove();
  2505. void RemoveInstanceDefault();
  2506. void ResetToDefault();
  2507. bool Save(File) const;
  2508. bool Save(VectorBuffer&) const;
  2509. bool SaveXML(XMLElement&) const;
  2510. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2511. bool SetAttribute(const String&, const Variant&);
  2512. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2513. void SetAttributeAnimationSpeed(const String&, float);
  2514. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2515. // Properties:
  2516. Vector2 anchor;
  2517. bool animationEnabled;
  2518. /* readonly */
  2519. Array<Variant> attributeDefaults;
  2520. /* readonly */
  2521. Array<AttributeInfo> attributeInfos;
  2522. Array<Variant> attributes;
  2523. Vector2 axis;
  2524. /* readonly */
  2525. StringHash baseType;
  2526. /* readonly */
  2527. String category;
  2528. bool collideConnected;
  2529. bool enableLimit;
  2530. bool enableMotor;
  2531. bool enabled;
  2532. /* readonly */
  2533. bool enabledEffective;
  2534. /* readonly */
  2535. uint id;
  2536. float lowerTranslation;
  2537. float maxMotorForce;
  2538. float motorSpeed;
  2539. /* readonly */
  2540. Node node;
  2541. /* readonly */
  2542. uint numAttributes;
  2543. ObjectAnimation objectAnimation;
  2544. RigidBody2D otherBody;
  2545. /* readonly */
  2546. RigidBody2D ownerBody;
  2547. /* readonly */
  2548. int refs;
  2549. bool temporary;
  2550. /* readonly */
  2551. StringHash type;
  2552. /* readonly */
  2553. String typeName;
  2554. float upperTranslation;
  2555. /* readonly */
  2556. int weakRefs;
  2557. };
  2558. class ConstraintPulley2D
  2559. {
  2560. // Methods:
  2561. void ApplyAttributes();
  2562. void DrawDebugGeometry(DebugRenderer, bool);
  2563. Variant GetAttribute(const String&) const;
  2564. ValueAnimation GetAttributeAnimation(const String&) const;
  2565. float GetAttributeAnimationSpeed(const String&) const;
  2566. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2567. Variant GetAttributeDefault(const String&) const;
  2568. bool Load(File, bool = false);
  2569. bool Load(VectorBuffer&, bool = false);
  2570. bool LoadXML(const XMLElement&, bool = false);
  2571. void MarkNetworkUpdate() const;
  2572. void Remove();
  2573. void RemoveInstanceDefault();
  2574. void ResetToDefault();
  2575. bool Save(File) const;
  2576. bool Save(VectorBuffer&) const;
  2577. bool SaveXML(XMLElement&) const;
  2578. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2579. bool SetAttribute(const String&, const Variant&);
  2580. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2581. void SetAttributeAnimationSpeed(const String&, float);
  2582. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2583. // Properties:
  2584. bool animationEnabled;
  2585. /* readonly */
  2586. Array<Variant> attributeDefaults;
  2587. /* readonly */
  2588. Array<AttributeInfo> attributeInfos;
  2589. Array<Variant> attributes;
  2590. /* readonly */
  2591. StringHash baseType;
  2592. /* readonly */
  2593. String category;
  2594. bool collideConnected;
  2595. bool enabled;
  2596. /* readonly */
  2597. bool enabledEffective;
  2598. /* readonly */
  2599. uint id;
  2600. /* readonly */
  2601. Node node;
  2602. /* readonly */
  2603. uint numAttributes;
  2604. ObjectAnimation objectAnimation;
  2605. RigidBody2D otherBody;
  2606. Vector2 otherBodyAnchor;
  2607. Vector2 otherBodyGroundAnchor;
  2608. /* readonly */
  2609. RigidBody2D ownerBody;
  2610. Vector2 ownerBodyAnchor;
  2611. Vector2 ownerBodyGroundAnchor;
  2612. float ratio;
  2613. /* readonly */
  2614. int refs;
  2615. bool temporary;
  2616. /* readonly */
  2617. StringHash type;
  2618. /* readonly */
  2619. String typeName;
  2620. /* readonly */
  2621. int weakRefs;
  2622. };
  2623. class ConstraintRevolute2D
  2624. {
  2625. // Methods:
  2626. void ApplyAttributes();
  2627. void DrawDebugGeometry(DebugRenderer, bool);
  2628. Variant GetAttribute(const String&) const;
  2629. ValueAnimation GetAttributeAnimation(const String&) const;
  2630. float GetAttributeAnimationSpeed(const String&) const;
  2631. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2632. Variant GetAttributeDefault(const String&) const;
  2633. bool Load(File, bool = false);
  2634. bool Load(VectorBuffer&, bool = false);
  2635. bool LoadXML(const XMLElement&, bool = false);
  2636. void MarkNetworkUpdate() const;
  2637. void Remove();
  2638. void RemoveInstanceDefault();
  2639. void ResetToDefault();
  2640. bool Save(File) const;
  2641. bool Save(VectorBuffer&) const;
  2642. bool SaveXML(XMLElement&) const;
  2643. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2644. bool SetAttribute(const String&, const Variant&);
  2645. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2646. void SetAttributeAnimationSpeed(const String&, float);
  2647. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2648. // Properties:
  2649. Vector2 anchor;
  2650. bool animationEnabled;
  2651. /* readonly */
  2652. Array<Variant> attributeDefaults;
  2653. /* readonly */
  2654. Array<AttributeInfo> attributeInfos;
  2655. Array<Variant> attributes;
  2656. /* readonly */
  2657. StringHash baseType;
  2658. /* readonly */
  2659. String category;
  2660. bool collideConnected;
  2661. bool enableLimit;
  2662. bool enableMotor;
  2663. bool enabled;
  2664. /* readonly */
  2665. bool enabledEffective;
  2666. /* readonly */
  2667. uint id;
  2668. float lowerAngle;
  2669. float maxMotorTorque;
  2670. float motorSpeed;
  2671. /* readonly */
  2672. Node node;
  2673. /* readonly */
  2674. uint numAttributes;
  2675. ObjectAnimation objectAnimation;
  2676. RigidBody2D otherBody;
  2677. /* readonly */
  2678. RigidBody2D ownerBody;
  2679. /* readonly */
  2680. int refs;
  2681. bool temporary;
  2682. /* readonly */
  2683. StringHash type;
  2684. /* readonly */
  2685. String typeName;
  2686. float upperAngle;
  2687. /* readonly */
  2688. int weakRefs;
  2689. };
  2690. class ConstraintRope2D
  2691. {
  2692. // Methods:
  2693. void ApplyAttributes();
  2694. void DrawDebugGeometry(DebugRenderer, bool);
  2695. Variant GetAttribute(const String&) const;
  2696. ValueAnimation GetAttributeAnimation(const String&) const;
  2697. float GetAttributeAnimationSpeed(const String&) const;
  2698. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2699. Variant GetAttributeDefault(const String&) const;
  2700. bool Load(File, bool = false);
  2701. bool Load(VectorBuffer&, bool = false);
  2702. bool LoadXML(const XMLElement&, bool = false);
  2703. void MarkNetworkUpdate() const;
  2704. void Remove();
  2705. void RemoveInstanceDefault();
  2706. void ResetToDefault();
  2707. bool Save(File) const;
  2708. bool Save(VectorBuffer&) const;
  2709. bool SaveXML(XMLElement&) const;
  2710. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2711. bool SetAttribute(const String&, const Variant&);
  2712. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2713. void SetAttributeAnimationSpeed(const String&, float);
  2714. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2715. // Properties:
  2716. bool animationEnabled;
  2717. /* readonly */
  2718. Array<Variant> attributeDefaults;
  2719. /* readonly */
  2720. Array<AttributeInfo> attributeInfos;
  2721. Array<Variant> attributes;
  2722. /* readonly */
  2723. StringHash baseType;
  2724. /* readonly */
  2725. String category;
  2726. bool collideConnected;
  2727. bool enabled;
  2728. /* readonly */
  2729. bool enabledEffective;
  2730. /* readonly */
  2731. uint id;
  2732. float maxLength;
  2733. /* readonly */
  2734. Node node;
  2735. /* readonly */
  2736. uint numAttributes;
  2737. ObjectAnimation objectAnimation;
  2738. RigidBody2D otherBody;
  2739. Vector2 otherBodyAnchor;
  2740. /* readonly */
  2741. RigidBody2D ownerBody;
  2742. Vector2 ownerBodyAnchor;
  2743. /* readonly */
  2744. int refs;
  2745. bool temporary;
  2746. /* readonly */
  2747. StringHash type;
  2748. /* readonly */
  2749. String typeName;
  2750. /* readonly */
  2751. int weakRefs;
  2752. };
  2753. class ConstraintWeld2D
  2754. {
  2755. // Methods:
  2756. void ApplyAttributes();
  2757. void DrawDebugGeometry(DebugRenderer, bool);
  2758. Variant GetAttribute(const String&) const;
  2759. ValueAnimation GetAttributeAnimation(const String&) const;
  2760. float GetAttributeAnimationSpeed(const String&) const;
  2761. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2762. Variant GetAttributeDefault(const String&) const;
  2763. bool Load(File, bool = false);
  2764. bool Load(VectorBuffer&, bool = false);
  2765. bool LoadXML(const XMLElement&, bool = false);
  2766. void MarkNetworkUpdate() const;
  2767. void Remove();
  2768. void RemoveInstanceDefault();
  2769. void ResetToDefault();
  2770. bool Save(File) const;
  2771. bool Save(VectorBuffer&) const;
  2772. bool SaveXML(XMLElement&) const;
  2773. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2774. bool SetAttribute(const String&, const Variant&);
  2775. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2776. void SetAttributeAnimationSpeed(const String&, float);
  2777. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2778. // Properties:
  2779. Vector2 anchor;
  2780. bool animationEnabled;
  2781. /* readonly */
  2782. Array<Variant> attributeDefaults;
  2783. /* readonly */
  2784. Array<AttributeInfo> attributeInfos;
  2785. Array<Variant> attributes;
  2786. /* readonly */
  2787. StringHash baseType;
  2788. /* readonly */
  2789. String category;
  2790. bool collideConnected;
  2791. float dampingRatio;
  2792. bool enabled;
  2793. /* readonly */
  2794. bool enabledEffective;
  2795. float frequencyHz;
  2796. /* readonly */
  2797. uint id;
  2798. /* readonly */
  2799. Node node;
  2800. /* readonly */
  2801. uint numAttributes;
  2802. ObjectAnimation objectAnimation;
  2803. RigidBody2D otherBody;
  2804. /* readonly */
  2805. RigidBody2D ownerBody;
  2806. /* readonly */
  2807. int refs;
  2808. bool temporary;
  2809. /* readonly */
  2810. StringHash type;
  2811. /* readonly */
  2812. String typeName;
  2813. /* readonly */
  2814. int weakRefs;
  2815. };
  2816. class ConstraintWheel2D
  2817. {
  2818. // Methods:
  2819. void ApplyAttributes();
  2820. void DrawDebugGeometry(DebugRenderer, bool);
  2821. Variant GetAttribute(const String&) const;
  2822. ValueAnimation GetAttributeAnimation(const String&) const;
  2823. float GetAttributeAnimationSpeed(const String&) const;
  2824. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2825. Variant GetAttributeDefault(const String&) const;
  2826. bool Load(File, bool = false);
  2827. bool Load(VectorBuffer&, bool = false);
  2828. bool LoadXML(const XMLElement&, bool = false);
  2829. void MarkNetworkUpdate() const;
  2830. void Remove();
  2831. void RemoveInstanceDefault();
  2832. void ResetToDefault();
  2833. bool Save(File) const;
  2834. bool Save(VectorBuffer&) const;
  2835. bool SaveXML(XMLElement&) const;
  2836. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2837. bool SetAttribute(const String&, const Variant&);
  2838. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2839. void SetAttributeAnimationSpeed(const String&, float);
  2840. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2841. // Properties:
  2842. Vector2 anchor;
  2843. bool animationEnabled;
  2844. /* readonly */
  2845. Array<Variant> attributeDefaults;
  2846. /* readonly */
  2847. Array<AttributeInfo> attributeInfos;
  2848. Array<Variant> attributes;
  2849. Vector2 axis;
  2850. /* readonly */
  2851. StringHash baseType;
  2852. /* readonly */
  2853. String category;
  2854. bool collideConnected;
  2855. float dampingRatio;
  2856. bool enableMotor;
  2857. bool enabled;
  2858. /* readonly */
  2859. bool enabledEffective;
  2860. float frequencyHz;
  2861. /* readonly */
  2862. uint id;
  2863. float maxMotorTorque;
  2864. float motorSpeed;
  2865. /* readonly */
  2866. Node node;
  2867. /* readonly */
  2868. uint numAttributes;
  2869. ObjectAnimation objectAnimation;
  2870. RigidBody2D otherBody;
  2871. /* readonly */
  2872. RigidBody2D ownerBody;
  2873. /* readonly */
  2874. int refs;
  2875. bool temporary;
  2876. /* readonly */
  2877. StringHash type;
  2878. /* readonly */
  2879. String typeName;
  2880. /* readonly */
  2881. int weakRefs;
  2882. };
  2883. class Controls
  2884. {
  2885. // Methods:
  2886. bool IsDown(uint) const;
  2887. bool IsPressed(uint, const Controls&) const;
  2888. void Reset();
  2889. void Set(uint, bool);
  2890. // Properties:
  2891. uint buttons;
  2892. VariantMap extraData;
  2893. float pitch;
  2894. float yaw;
  2895. };
  2896. class Cursor
  2897. {
  2898. // Methods:
  2899. void AddChild(UIElement);
  2900. void ApplyAttributes();
  2901. void BringToFront();
  2902. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  2903. void DefineShape(CursorShape, Texture, const IntRect&, const IntVector2&);
  2904. void DisableLayoutUpdate();
  2905. IntVector2 ElementToScreen(const IntVector2&);
  2906. void EnableLayoutUpdate();
  2907. uint FindChild(UIElement) const;
  2908. Variant GetAttribute(const String&) const;
  2909. ValueAnimation GetAttributeAnimation(const String&) const;
  2910. float GetAttributeAnimationSpeed(const String&) const;
  2911. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  2912. Variant GetAttributeDefault(const String&) const;
  2913. UIElement GetChild(const String&, bool = false) const;
  2914. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  2915. Array<UIElement> GetChildren(bool = false) const;
  2916. UIElement GetElementEventSender() const;
  2917. uint GetNumChildren(bool) const;
  2918. void InsertChild(uint, UIElement);
  2919. bool IsInside(IntVector2, bool);
  2920. bool IsInsideCombined(IntVector2, bool);
  2921. bool Load(File, bool = false);
  2922. bool Load(VectorBuffer&, bool = false);
  2923. bool LoadChildXML(XMLFile, XMLFile = null);
  2924. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  2925. bool LoadXML(File);
  2926. bool LoadXML(VectorBuffer&);
  2927. bool LoadXML(XMLFile, XMLFile);
  2928. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  2929. bool LoadXML(const XMLElement&, bool = false);
  2930. void MarkNetworkUpdate() const;
  2931. void Remove();
  2932. void RemoveAllChildren();
  2933. void RemoveChild(UIElement, uint = 0);
  2934. void RemoveChild(uint);
  2935. void RemoveInstanceDefault();
  2936. void ResetDeepEnabled();
  2937. void ResetToDefault();
  2938. bool Save(File) const;
  2939. bool Save(VectorBuffer&) const;
  2940. bool SaveXML(File);
  2941. bool SaveXML(VectorBuffer&);
  2942. bool SaveXML(XMLElement&) const;
  2943. IntVector2 ScreenToElement(const IntVector2&);
  2944. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2945. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  2946. bool SetAttribute(const String&, const Variant&);
  2947. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  2948. void SetAttributeAnimationSpeed(const String&, float);
  2949. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  2950. void SetDeepEnabled(bool);
  2951. void SetEnabledRecursive(bool);
  2952. void SetFixedHeight(int);
  2953. void SetFixedSize(int, int);
  2954. void SetFixedWidth(int);
  2955. void SetFullImageRect();
  2956. void SetHoverOffset(int, int);
  2957. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  2958. void SetMaxSize(int, int);
  2959. void SetMinSize(int, int);
  2960. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  2961. void SetPosition(int, int);
  2962. void SetSize(int, int);
  2963. bool SetStyle(const String&, XMLFile = null);
  2964. bool SetStyle(const XMLElement&);
  2965. bool SetStyleAuto(XMLFile = null);
  2966. void UpdateLayout();
  2967. const Variant& GetVar(const StringHash&);
  2968. // Properties:
  2969. bool animationEnabled;
  2970. /* readonly */
  2971. Array<Variant> attributeDefaults;
  2972. /* readonly */
  2973. Array<AttributeInfo> attributeInfos;
  2974. Array<Variant> attributes;
  2975. /* readonly */
  2976. StringHash baseType;
  2977. BlendMode blendMode;
  2978. IntRect border;
  2979. bool bringToBack;
  2980. bool bringToFront;
  2981. /* readonly */
  2982. String category;
  2983. /* readonly */
  2984. IntVector2 childOffset;
  2985. /* readonly */
  2986. Array<UIElement> children;
  2987. IntRect clipBorder;
  2988. bool clipChildren;
  2989. /* writeonly */
  2990. Color color;
  2991. /* readonly */
  2992. bool colorGradient;
  2993. Array<Color> colors;
  2994. /* readonly */
  2995. IntRect combinedScreenRect;
  2996. XMLFile defaultStyle;
  2997. /* readonly */
  2998. float derivedOpacity;
  2999. /* readonly */
  3000. uint dragButtonCombo;
  3001. /* readonly */
  3002. int dragButtonCount;
  3003. uint dragDropMode;
  3004. bool editable;
  3005. bool elementEventSender;
  3006. bool enabled;
  3007. /* readonly */
  3008. bool enabledSelf;
  3009. /* readonly */
  3010. bool fixedHeight;
  3011. /* readonly */
  3012. bool fixedSize;
  3013. /* readonly */
  3014. bool fixedWidth;
  3015. bool focus;
  3016. FocusMode focusMode;
  3017. int height;
  3018. HorizontalAlignment horizontalAlignment;
  3019. IntVector2 hoverOffset;
  3020. /* readonly */
  3021. bool hovering;
  3022. IntRect imageBorder;
  3023. IntRect imageRect;
  3024. int indent;
  3025. int indentSpacing;
  3026. /* readonly */
  3027. int indentWidth;
  3028. bool internal;
  3029. IntRect layoutBorder;
  3030. Vector2 layoutFlexScale;
  3031. LayoutMode layoutMode;
  3032. int layoutSpacing;
  3033. int maxHeight;
  3034. IntVector2 maxSize;
  3035. int maxWidth;
  3036. int minHeight;
  3037. IntVector2 minSize;
  3038. int minWidth;
  3039. String name;
  3040. /* readonly */
  3041. uint numAllChildren;
  3042. /* readonly */
  3043. uint numAttributes;
  3044. /* readonly */
  3045. uint numChildren;
  3046. ObjectAnimation objectAnimation;
  3047. float opacity;
  3048. UIElement parent;
  3049. IntVector2 position;
  3050. int priority;
  3051. /* readonly */
  3052. int refs;
  3053. /* readonly */
  3054. UIElement root;
  3055. /* readonly */
  3056. IntVector2 screenPosition;
  3057. bool selected;
  3058. CursorShape shape;
  3059. IntVector2 size;
  3060. bool sortChildren;
  3061. String style;
  3062. bool temporary;
  3063. Texture texture;
  3064. bool tiled;
  3065. TraversalMode traversalMode;
  3066. /* readonly */
  3067. StringHash type;
  3068. /* readonly */
  3069. String typeName;
  3070. bool useDerivedOpacity;
  3071. bool useSystemShapes;
  3072. /* readonly */
  3073. VariantMap vars;
  3074. VerticalAlignment verticalAlignment;
  3075. bool visible;
  3076. /* readonly */
  3077. int weakRefs;
  3078. int width;
  3079. };
  3080. class CustomGeometry
  3081. {
  3082. // Methods:
  3083. void ApplyAttributes();
  3084. void BeginGeometry(uint, PrimitiveType);
  3085. void Clear();
  3086. void Commit();
  3087. void DefineColor(const Color&);
  3088. void DefineGeometry(uint, PrimitiveType, uint, bool, bool, bool, bool);
  3089. void DefineNormal(const Vector3&);
  3090. void DefineTangent(const Vector4&);
  3091. void DefineTexCoord(const Vector2&);
  3092. void DefineVertex(const Vector3&);
  3093. void DrawDebugGeometry(DebugRenderer, bool);
  3094. Variant GetAttribute(const String&) const;
  3095. ValueAnimation GetAttributeAnimation(const String&) const;
  3096. float GetAttributeAnimationSpeed(const String&) const;
  3097. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  3098. Variant GetAttributeDefault(const String&) const;
  3099. CustomGeometryVertex GetVertex(uint, uint);
  3100. bool IsInView(Camera) const;
  3101. bool Load(File, bool = false);
  3102. bool Load(VectorBuffer&, bool = false);
  3103. bool LoadXML(const XMLElement&, bool = false);
  3104. void MarkNetworkUpdate() const;
  3105. void Remove();
  3106. void RemoveInstanceDefault();
  3107. void ResetToDefault();
  3108. bool Save(File) const;
  3109. bool Save(VectorBuffer&) const;
  3110. bool SaveXML(XMLElement&) const;
  3111. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3112. bool SetAttribute(const String&, const Variant&);
  3113. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  3114. void SetAttributeAnimationSpeed(const String&, float);
  3115. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  3116. // Properties:
  3117. bool animationEnabled;
  3118. /* readonly */
  3119. Array<Variant> attributeDefaults;
  3120. /* readonly */
  3121. Array<AttributeInfo> attributeInfos;
  3122. Array<Variant> attributes;
  3123. /* readonly */
  3124. StringHash baseType;
  3125. /* readonly */
  3126. BoundingBox boundingBox;
  3127. bool castShadows;
  3128. /* readonly */
  3129. String category;
  3130. float drawDistance;
  3131. bool dynamic;
  3132. bool enabled;
  3133. /* readonly */
  3134. bool enabledEffective;
  3135. /* readonly */
  3136. uint id;
  3137. /* readonly */
  3138. bool inView;
  3139. uint lightMask;
  3140. float lodBias;
  3141. /* writeonly */
  3142. Material material;
  3143. Array<Material> materials;
  3144. uint maxLights;
  3145. /* readonly */
  3146. Node node;
  3147. /* readonly */
  3148. uint numAttributes;
  3149. uint numGeometries;
  3150. /* readonly */
  3151. Array<uint> numVertices;
  3152. ObjectAnimation objectAnimation;
  3153. bool occludee;
  3154. bool occluder;
  3155. /* readonly */
  3156. int refs;
  3157. float shadowDistance;
  3158. uint shadowMask;
  3159. bool temporary;
  3160. /* readonly */
  3161. StringHash type;
  3162. /* readonly */
  3163. String typeName;
  3164. uint viewMask;
  3165. /* readonly */
  3166. int weakRefs;
  3167. /* readonly */
  3168. BoundingBox worldBoundingBox;
  3169. /* readonly */
  3170. Zone zone;
  3171. uint zoneMask;
  3172. };
  3173. class CustomGeometryVertex
  3174. {
  3175. // Properties:
  3176. uint color;
  3177. Vector3 normal;
  3178. Vector3 position;
  3179. Vector4 tangent;
  3180. Vector2 texCoord;
  3181. };
  3182. class DebugHud
  3183. {
  3184. // Methods:
  3185. void ClearAppStats();
  3186. void ResetAppStats(const String&);
  3187. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3188. void SetAppStats(const String&, const String&);
  3189. void SetAppStats(const String&, const Variant&);
  3190. void Toggle(uint);
  3191. void ToggleAll();
  3192. void Update();
  3193. // Properties:
  3194. /* readonly */
  3195. StringHash baseType;
  3196. /* readonly */
  3197. String category;
  3198. XMLFile defaultStyle;
  3199. uint mode;
  3200. /* readonly */
  3201. Text modeText;
  3202. float profilerInterval;
  3203. uint profilerMaxDepth;
  3204. /* readonly */
  3205. Text profilerText;
  3206. /* readonly */
  3207. int refs;
  3208. /* readonly */
  3209. Text statsText;
  3210. /* readonly */
  3211. StringHash type;
  3212. /* readonly */
  3213. String typeName;
  3214. bool useRendererStats;
  3215. /* readonly */
  3216. int weakRefs;
  3217. };
  3218. class DebugRenderer
  3219. {
  3220. // Methods:
  3221. void AddBoundingBox(const BoundingBox&, const Color&, bool = true);
  3222. void AddFrustum(const Frustum&, const Color&, bool = true);
  3223. void AddLine(const Vector3&, const Vector3&, const Color&, bool = true);
  3224. void AddNode(Node, float = 1.0, bool = true);
  3225. void AddPolyhedron(const Polyhedron&, const Color&, bool = true);
  3226. void AddSkeleton(Skeleton, const Color&, bool = true);
  3227. void AddSphere(const Sphere&, const Color&, bool = true);
  3228. void AddTriangle(const Vector3&, const Vector3&, const Vector3&, const Color&, bool = true);
  3229. void ApplyAttributes();
  3230. void DrawDebugGeometry(DebugRenderer, bool);
  3231. Variant GetAttribute(const String&) const;
  3232. ValueAnimation GetAttributeAnimation(const String&) const;
  3233. float GetAttributeAnimationSpeed(const String&) const;
  3234. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  3235. Variant GetAttributeDefault(const String&) const;
  3236. bool Load(File, bool = false);
  3237. bool Load(VectorBuffer&, bool = false);
  3238. bool LoadXML(const XMLElement&, bool = false);
  3239. void MarkNetworkUpdate() const;
  3240. void Remove();
  3241. void RemoveInstanceDefault();
  3242. void ResetToDefault();
  3243. bool Save(File) const;
  3244. bool Save(VectorBuffer&) const;
  3245. bool SaveXML(XMLElement&) const;
  3246. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3247. bool SetAttribute(const String&, const Variant&);
  3248. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  3249. void SetAttributeAnimationSpeed(const String&, float);
  3250. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  3251. // Properties:
  3252. bool animationEnabled;
  3253. /* readonly */
  3254. Array<Variant> attributeDefaults;
  3255. /* readonly */
  3256. Array<AttributeInfo> attributeInfos;
  3257. Array<Variant> attributes;
  3258. /* readonly */
  3259. StringHash baseType;
  3260. /* readonly */
  3261. String category;
  3262. bool enabled;
  3263. /* readonly */
  3264. bool enabledEffective;
  3265. /* readonly */
  3266. uint id;
  3267. /* readonly */
  3268. Node node;
  3269. /* readonly */
  3270. uint numAttributes;
  3271. ObjectAnimation objectAnimation;
  3272. /* readonly */
  3273. int refs;
  3274. bool temporary;
  3275. /* readonly */
  3276. StringHash type;
  3277. /* readonly */
  3278. String typeName;
  3279. /* readonly */
  3280. int weakRefs;
  3281. };
  3282. class DecalSet
  3283. {
  3284. // Methods:
  3285. bool AddDecal(Drawable, const Vector3&, const Quaternion&, float, float, float, const Vector2&, const Vector2&, float = 0.0, float = 0.1, uint = 0xffffffff);
  3286. void ApplyAttributes();
  3287. void DrawDebugGeometry(DebugRenderer, bool);
  3288. Variant GetAttribute(const String&) const;
  3289. ValueAnimation GetAttributeAnimation(const String&) const;
  3290. float GetAttributeAnimationSpeed(const String&) const;
  3291. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  3292. Variant GetAttributeDefault(const String&) const;
  3293. bool IsInView(Camera) const;
  3294. bool Load(File, bool = false);
  3295. bool Load(VectorBuffer&, bool = false);
  3296. bool LoadXML(const XMLElement&, bool = false);
  3297. void MarkNetworkUpdate() const;
  3298. void Remove();
  3299. void RemoveAllDecals();
  3300. void RemoveDecals(uint);
  3301. void RemoveInstanceDefault();
  3302. void ResetToDefault();
  3303. bool Save(File) const;
  3304. bool Save(VectorBuffer&) const;
  3305. bool SaveXML(XMLElement&) const;
  3306. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3307. bool SetAttribute(const String&, const Variant&);
  3308. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  3309. void SetAttributeAnimationSpeed(const String&, float);
  3310. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  3311. // Properties:
  3312. bool animationEnabled;
  3313. /* readonly */
  3314. Array<Variant> attributeDefaults;
  3315. /* readonly */
  3316. Array<AttributeInfo> attributeInfos;
  3317. Array<Variant> attributes;
  3318. /* readonly */
  3319. StringHash baseType;
  3320. /* readonly */
  3321. BoundingBox boundingBox;
  3322. bool castShadows;
  3323. /* readonly */
  3324. String category;
  3325. float drawDistance;
  3326. bool enabled;
  3327. /* readonly */
  3328. bool enabledEffective;
  3329. /* readonly */
  3330. uint id;
  3331. /* readonly */
  3332. bool inView;
  3333. uint lightMask;
  3334. float lodBias;
  3335. Material material;
  3336. uint maxIndices;
  3337. uint maxLights;
  3338. uint maxVertices;
  3339. /* readonly */
  3340. Node node;
  3341. /* readonly */
  3342. uint numAttributes;
  3343. /* readonly */
  3344. uint numDecals;
  3345. /* readonly */
  3346. uint numIndices;
  3347. /* readonly */
  3348. uint numVertices;
  3349. ObjectAnimation objectAnimation;
  3350. bool occludee;
  3351. bool occluder;
  3352. /* readonly */
  3353. int refs;
  3354. float shadowDistance;
  3355. uint shadowMask;
  3356. bool temporary;
  3357. /* readonly */
  3358. StringHash type;
  3359. /* readonly */
  3360. String typeName;
  3361. uint viewMask;
  3362. /* readonly */
  3363. int weakRefs;
  3364. /* readonly */
  3365. BoundingBox worldBoundingBox;
  3366. /* readonly */
  3367. Zone zone;
  3368. uint zoneMask;
  3369. };
  3370. class Deserializer
  3371. {
  3372. // Methods:
  3373. Array<uint8> Read(uint);
  3374. bool ReadBool();
  3375. BoundingBox ReadBoundingBox();
  3376. int8 ReadByte();
  3377. Color ReadColor();
  3378. String ReadFileID();
  3379. float ReadFloat();
  3380. int ReadInt();
  3381. IntRect ReadIntRect();
  3382. IntVector2 ReadIntVector2();
  3383. String ReadLine();
  3384. Matrix3 ReadMatrix3();
  3385. Matrix3x4 ReadMatrix3x4();
  3386. Matrix4 ReadMatrix4();
  3387. uint ReadNetID();
  3388. Quaternion ReadPackedQuaternion();
  3389. Vector3 ReadPackedVector3(float);
  3390. Quaternion ReadQuaternion();
  3391. int16 ReadShort();
  3392. String ReadString();
  3393. StringHash ReadStringHash();
  3394. uint8 ReadUByte();
  3395. uint ReadUInt();
  3396. uint16 ReadUShort();
  3397. uint ReadVLE();
  3398. Variant ReadVariant();
  3399. VariantMap ReadVariantMap();
  3400. Vector2 ReadVector2();
  3401. Vector3 ReadVector3();
  3402. Vector4 ReadVector4();
  3403. uint Seek(uint);
  3404. // Properties:
  3405. /* readonly */
  3406. uint checksum;
  3407. /* readonly */
  3408. bool eof;
  3409. /* readonly */
  3410. String name;
  3411. /* readonly */
  3412. uint position;
  3413. /* readonly */
  3414. uint size;
  3415. };
  3416. class Dictionary
  3417. {
  3418. // Methods:
  3419. void Clear();
  3420. void Erase(const String&);
  3421. bool Exists(const String&) const;
  3422. bool Get(const String&, void*) const;
  3423. bool Get(const String&, double&) const;
  3424. bool Get(const String&, int64&) const;
  3425. void Set(const String&, const void*);
  3426. void Set(const String&, const double&);
  3427. void Set(const String&, const int64&);
  3428. // Properties:
  3429. /* readonly */
  3430. bool empty;
  3431. /* readonly */
  3432. Array<String> keys;
  3433. /* readonly */
  3434. uint length;
  3435. };
  3436. class DictionaryValue
  3437. {
  3438. };
  3439. class Drawable
  3440. {
  3441. // Methods:
  3442. void ApplyAttributes();
  3443. void DrawDebugGeometry(DebugRenderer, bool);
  3444. Variant GetAttribute(const String&) const;
  3445. ValueAnimation GetAttributeAnimation(const String&) const;
  3446. float GetAttributeAnimationSpeed(const String&) const;
  3447. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  3448. Variant GetAttributeDefault(const String&) const;
  3449. bool IsInView(Camera) const;
  3450. bool Load(File, bool = false);
  3451. bool Load(VectorBuffer&, bool = false);
  3452. bool LoadXML(const XMLElement&, bool = false);
  3453. void MarkNetworkUpdate() const;
  3454. void Remove();
  3455. void RemoveInstanceDefault();
  3456. void ResetToDefault();
  3457. bool Save(File) const;
  3458. bool Save(VectorBuffer&) const;
  3459. bool SaveXML(XMLElement&) const;
  3460. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3461. bool SetAttribute(const String&, const Variant&);
  3462. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  3463. void SetAttributeAnimationSpeed(const String&, float);
  3464. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  3465. // Properties:
  3466. bool animationEnabled;
  3467. /* readonly */
  3468. Array<Variant> attributeDefaults;
  3469. /* readonly */
  3470. Array<AttributeInfo> attributeInfos;
  3471. Array<Variant> attributes;
  3472. /* readonly */
  3473. StringHash baseType;
  3474. /* readonly */
  3475. BoundingBox boundingBox;
  3476. bool castShadows;
  3477. /* readonly */
  3478. String category;
  3479. float drawDistance;
  3480. bool enabled;
  3481. /* readonly */
  3482. bool enabledEffective;
  3483. /* readonly */
  3484. uint id;
  3485. /* readonly */
  3486. bool inView;
  3487. uint lightMask;
  3488. float lodBias;
  3489. uint maxLights;
  3490. /* readonly */
  3491. Node node;
  3492. /* readonly */
  3493. uint numAttributes;
  3494. ObjectAnimation objectAnimation;
  3495. bool occludee;
  3496. bool occluder;
  3497. /* readonly */
  3498. int refs;
  3499. float shadowDistance;
  3500. uint shadowMask;
  3501. bool temporary;
  3502. /* readonly */
  3503. StringHash type;
  3504. /* readonly */
  3505. String typeName;
  3506. uint viewMask;
  3507. /* readonly */
  3508. int weakRefs;
  3509. /* readonly */
  3510. BoundingBox worldBoundingBox;
  3511. uint zoneMask;
  3512. };
  3513. class Drawable2D
  3514. {
  3515. // Methods:
  3516. void ApplyAttributes();
  3517. void DrawDebugGeometry(DebugRenderer, bool);
  3518. Variant GetAttribute(const String&) const;
  3519. ValueAnimation GetAttributeAnimation(const String&) const;
  3520. float GetAttributeAnimationSpeed(const String&) const;
  3521. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  3522. Variant GetAttributeDefault(const String&) const;
  3523. bool IsInView(Camera) const;
  3524. bool Load(File, bool = false);
  3525. bool Load(VectorBuffer&, bool = false);
  3526. bool LoadXML(const XMLElement&, bool = false);
  3527. void MarkNetworkUpdate() const;
  3528. void Remove();
  3529. void RemoveInstanceDefault();
  3530. void ResetToDefault();
  3531. bool Save(File) const;
  3532. bool Save(VectorBuffer&) const;
  3533. bool SaveXML(XMLElement&) const;
  3534. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3535. bool SetAttribute(const String&, const Variant&);
  3536. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  3537. void SetAttributeAnimationSpeed(const String&, float);
  3538. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  3539. // Properties:
  3540. bool animationEnabled;
  3541. /* readonly */
  3542. Array<Variant> attributeDefaults;
  3543. /* readonly */
  3544. Array<AttributeInfo> attributeInfos;
  3545. Array<Variant> attributes;
  3546. /* readonly */
  3547. StringHash baseType;
  3548. BlendMode blendMode;
  3549. /* readonly */
  3550. BoundingBox boundingBox;
  3551. bool castShadows;
  3552. /* readonly */
  3553. String category;
  3554. float drawDistance;
  3555. bool enabled;
  3556. /* readonly */
  3557. bool enabledEffective;
  3558. /* readonly */
  3559. uint id;
  3560. /* readonly */
  3561. bool inView;
  3562. int layer;
  3563. uint lightMask;
  3564. float lodBias;
  3565. uint maxLights;
  3566. /* readonly */
  3567. Node node;
  3568. /* readonly */
  3569. uint numAttributes;
  3570. ObjectAnimation objectAnimation;
  3571. bool occludee;
  3572. bool occluder;
  3573. int orderInLayer;
  3574. /* readonly */
  3575. int refs;
  3576. float shadowDistance;
  3577. uint shadowMask;
  3578. bool temporary;
  3579. Texture2D texture;
  3580. /* readonly */
  3581. StringHash type;
  3582. /* readonly */
  3583. String typeName;
  3584. uint viewMask;
  3585. /* readonly */
  3586. int weakRefs;
  3587. /* readonly */
  3588. BoundingBox worldBoundingBox;
  3589. uint zoneMask;
  3590. };
  3591. class DropDownList
  3592. {
  3593. // Methods:
  3594. void AddChild(UIElement);
  3595. void AddItem(UIElement);
  3596. void ApplyAttributes();
  3597. void BringToFront();
  3598. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  3599. void DisableLayoutUpdate();
  3600. IntVector2 ElementToScreen(const IntVector2&);
  3601. void EnableLayoutUpdate();
  3602. uint FindChild(UIElement) const;
  3603. Variant GetAttribute(const String&) const;
  3604. ValueAnimation GetAttributeAnimation(const String&) const;
  3605. float GetAttributeAnimationSpeed(const String&) const;
  3606. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  3607. Variant GetAttributeDefault(const String&) const;
  3608. UIElement GetChild(const String&, bool = false) const;
  3609. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  3610. Array<UIElement> GetChildren(bool = false) const;
  3611. UIElement GetElementEventSender() const;
  3612. Array<UIElement> GetItems() const;
  3613. uint GetNumChildren(bool) const;
  3614. void InsertChild(uint, UIElement);
  3615. void InsertItem(uint, UIElement);
  3616. bool IsInside(IntVector2, bool);
  3617. bool IsInsideCombined(IntVector2, bool);
  3618. bool Load(File, bool = false);
  3619. bool Load(VectorBuffer&, bool = false);
  3620. bool LoadChildXML(XMLFile, XMLFile = null);
  3621. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  3622. bool LoadXML(File);
  3623. bool LoadXML(VectorBuffer&);
  3624. bool LoadXML(XMLFile, XMLFile);
  3625. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  3626. bool LoadXML(const XMLElement&, bool = false);
  3627. void MarkNetworkUpdate() const;
  3628. void Remove();
  3629. void RemoveAllChildren();
  3630. void RemoveAllItems();
  3631. void RemoveChild(UIElement, uint = 0);
  3632. void RemoveChild(uint);
  3633. void RemoveInstanceDefault();
  3634. void RemoveItem(UIElement);
  3635. void RemoveItem(uint);
  3636. void ResetDeepEnabled();
  3637. void ResetToDefault();
  3638. bool Save(File) const;
  3639. bool Save(VectorBuffer&) const;
  3640. bool SaveXML(File);
  3641. bool SaveXML(VectorBuffer&);
  3642. bool SaveXML(XMLElement&) const;
  3643. IntVector2 ScreenToElement(const IntVector2&);
  3644. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3645. void SetAccelerator(int, int);
  3646. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  3647. bool SetAttribute(const String&, const Variant&);
  3648. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  3649. void SetAttributeAnimationSpeed(const String&, float);
  3650. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  3651. void SetDeepEnabled(bool);
  3652. void SetEnabledRecursive(bool);
  3653. void SetFixedHeight(int);
  3654. void SetFixedSize(int, int);
  3655. void SetFixedWidth(int);
  3656. void SetFullImageRect();
  3657. void SetHoverOffset(int, int);
  3658. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  3659. void SetMaxSize(int, int);
  3660. void SetMinSize(int, int);
  3661. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  3662. void SetPosition(int, int);
  3663. void SetPressedChildOffset(int, int);
  3664. void SetPressedOffset(int, int);
  3665. void SetRepeat(float, float);
  3666. void SetSize(int, int);
  3667. bool SetStyle(const String&, XMLFile = null);
  3668. bool SetStyle(const XMLElement&);
  3669. bool SetStyleAuto(XMLFile = null);
  3670. void UpdateLayout();
  3671. const Variant& GetVar(const StringHash&);
  3672. UIElement getPopup() const;
  3673. // Properties:
  3674. /* readonly */
  3675. int acceleratorKey;
  3676. /* readonly */
  3677. int acceleratorQualifiers;
  3678. bool animationEnabled;
  3679. /* readonly */
  3680. Array<Variant> attributeDefaults;
  3681. /* readonly */
  3682. Array<AttributeInfo> attributeInfos;
  3683. Array<Variant> attributes;
  3684. /* readonly */
  3685. StringHash baseType;
  3686. BlendMode blendMode;
  3687. IntRect border;
  3688. bool bringToBack;
  3689. bool bringToFront;
  3690. /* readonly */
  3691. String category;
  3692. /* readonly */
  3693. IntVector2 childOffset;
  3694. /* readonly */
  3695. Array<UIElement> children;
  3696. IntRect clipBorder;
  3697. bool clipChildren;
  3698. /* writeonly */
  3699. Color color;
  3700. /* readonly */
  3701. bool colorGradient;
  3702. Array<Color> colors;
  3703. /* readonly */
  3704. IntRect combinedScreenRect;
  3705. XMLFile defaultStyle;
  3706. /* readonly */
  3707. float derivedOpacity;
  3708. /* readonly */
  3709. uint dragButtonCombo;
  3710. /* readonly */
  3711. int dragButtonCount;
  3712. uint dragDropMode;
  3713. bool editable;
  3714. bool elementEventSender;
  3715. bool enabled;
  3716. /* readonly */
  3717. bool enabledSelf;
  3718. /* readonly */
  3719. bool fixedHeight;
  3720. /* readonly */
  3721. bool fixedSize;
  3722. /* readonly */
  3723. bool fixedWidth;
  3724. bool focus;
  3725. FocusMode focusMode;
  3726. int height;
  3727. HorizontalAlignment horizontalAlignment;
  3728. IntVector2 hoverOffset;
  3729. /* readonly */
  3730. bool hovering;
  3731. IntRect imageBorder;
  3732. IntRect imageRect;
  3733. int indent;
  3734. int indentSpacing;
  3735. /* readonly */
  3736. int indentWidth;
  3737. bool internal;
  3738. /* readonly */
  3739. Array<UIElement> items;
  3740. IntRect layoutBorder;
  3741. Vector2 layoutFlexScale;
  3742. LayoutMode layoutMode;
  3743. int layoutSpacing;
  3744. /* readonly */
  3745. ListView listView;
  3746. int maxHeight;
  3747. IntVector2 maxSize;
  3748. int maxWidth;
  3749. int minHeight;
  3750. IntVector2 minSize;
  3751. int minWidth;
  3752. String name;
  3753. /* readonly */
  3754. uint numAllChildren;
  3755. /* readonly */
  3756. uint numAttributes;
  3757. /* readonly */
  3758. uint numChildren;
  3759. /* readonly */
  3760. uint numItems;
  3761. ObjectAnimation objectAnimation;
  3762. float opacity;
  3763. UIElement parent;
  3764. /* readonly */
  3765. UIElement placeholder;
  3766. String placeholderText;
  3767. IntVector2 position;
  3768. /* readonly */
  3769. bool pressed;
  3770. IntVector2 pressedChildOffset;
  3771. IntVector2 pressedOffset;
  3772. int priority;
  3773. /* readonly */
  3774. int refs;
  3775. float repeatDelay;
  3776. float repeatRate;
  3777. bool resizePopup;
  3778. /* readonly */
  3779. UIElement root;
  3780. /* readonly */
  3781. IntVector2 screenPosition;
  3782. bool selected;
  3783. /* readonly */
  3784. UIElement selectedItem;
  3785. uint selection;
  3786. bool showPopup;
  3787. IntVector2 size;
  3788. bool sortChildren;
  3789. String style;
  3790. bool temporary;
  3791. Texture texture;
  3792. bool tiled;
  3793. TraversalMode traversalMode;
  3794. /* readonly */
  3795. StringHash type;
  3796. /* readonly */
  3797. String typeName;
  3798. bool useDerivedOpacity;
  3799. /* readonly */
  3800. VariantMap vars;
  3801. VerticalAlignment verticalAlignment;
  3802. bool visible;
  3803. /* readonly */
  3804. int weakRefs;
  3805. int width;
  3806. };
  3807. class Engine
  3808. {
  3809. // Methods:
  3810. Console CreateConsole();
  3811. DebugHud CreateDebugHud();
  3812. void DumpMemory();
  3813. void DumpProfiler();
  3814. void DumpResources(bool = false);
  3815. void Exit();
  3816. void RunFrame();
  3817. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3818. // Properties:
  3819. bool autoExit;
  3820. /* readonly */
  3821. StringHash baseType;
  3822. /* readonly */
  3823. String category;
  3824. /* readonly */
  3825. bool exiting;
  3826. /* readonly */
  3827. bool headless;
  3828. /* readonly */
  3829. bool initialized;
  3830. int maxFps;
  3831. int maxInactiveFps;
  3832. int minFps;
  3833. bool pauseMinimized;
  3834. /* readonly */
  3835. int refs;
  3836. int timeStepSmoothing;
  3837. /* readonly */
  3838. StringHash type;
  3839. /* readonly */
  3840. String typeName;
  3841. /* readonly */
  3842. int weakRefs;
  3843. };
  3844. class File
  3845. {
  3846. // Methods:
  3847. void Close();
  3848. bool Open(const String&, FileMode = FILE_READ);
  3849. Array<uint8> Read(uint);
  3850. bool ReadBool();
  3851. BoundingBox ReadBoundingBox();
  3852. int8 ReadByte();
  3853. Color ReadColor();
  3854. String ReadFileID();
  3855. float ReadFloat();
  3856. int ReadInt();
  3857. IntRect ReadIntRect();
  3858. IntVector2 ReadIntVector2();
  3859. String ReadLine();
  3860. Matrix3 ReadMatrix3();
  3861. Matrix3x4 ReadMatrix3x4();
  3862. Matrix4 ReadMatrix4();
  3863. uint ReadNetID();
  3864. Quaternion ReadPackedQuaternion();
  3865. Vector3 ReadPackedVector3(float);
  3866. Quaternion ReadQuaternion();
  3867. int16 ReadShort();
  3868. String ReadString();
  3869. StringHash ReadStringHash();
  3870. uint8 ReadUByte();
  3871. uint ReadUInt();
  3872. uint16 ReadUShort();
  3873. uint ReadVLE();
  3874. Variant ReadVariant();
  3875. VariantMap ReadVariantMap();
  3876. Vector2 ReadVector2();
  3877. Vector3 ReadVector3();
  3878. Vector4 ReadVector4();
  3879. uint Seek(uint);
  3880. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3881. uint Write(Array<uint8>);
  3882. bool WriteBool(bool);
  3883. bool WriteBoundingBox(const BoundingBox&);
  3884. bool WriteByte(int8);
  3885. bool WriteColor(const Color&);
  3886. bool WriteFileID(const String&);
  3887. bool WriteFloat(float);
  3888. bool WriteInt(int);
  3889. bool WriteIntRect(const IntRect&);
  3890. bool WriteIntVector2(const IntVector2&);
  3891. bool WriteLine(const String&);
  3892. bool WriteMatrix3(const Matrix3&);
  3893. bool WriteMatrix3x4(const Matrix3x4&);
  3894. bool WriteMatrix4(const Matrix4&);
  3895. bool WriteNetID(uint);
  3896. bool WritePackedQuaternion(const Quaternion&);
  3897. bool WritePackedVector3(const Vector3&, float);
  3898. bool WriteQuaternion(const Quaternion&);
  3899. bool WriteShort(int16);
  3900. bool WriteString(const String&);
  3901. bool WriteStringHash(const StringHash&);
  3902. bool WriteUByte(uint8);
  3903. bool WriteUInt(uint);
  3904. bool WriteUShort(uint16);
  3905. bool WriteVLE(uint);
  3906. bool WriteVariant(const Variant&);
  3907. bool WriteVariantMap(const VariantMap&);
  3908. bool WriteVector2(const Vector2&);
  3909. bool WriteVector3(const Vector3&);
  3910. bool WriteVector4(const Vector4&);
  3911. // Properties:
  3912. /* readonly */
  3913. StringHash baseType;
  3914. /* readonly */
  3915. String category;
  3916. /* readonly */
  3917. uint checksum;
  3918. /* readonly */
  3919. bool eof;
  3920. /* readonly */
  3921. FileMode mode;
  3922. /* readonly */
  3923. String name;
  3924. /* readonly */
  3925. bool open;
  3926. /* readonly */
  3927. bool packaged;
  3928. /* readonly */
  3929. uint position;
  3930. /* readonly */
  3931. int refs;
  3932. /* readonly */
  3933. uint size;
  3934. /* readonly */
  3935. StringHash type;
  3936. /* readonly */
  3937. String typeName;
  3938. /* readonly */
  3939. int weakRefs;
  3940. };
  3941. class FileSelector
  3942. {
  3943. // Methods:
  3944. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3945. void SetButtonTexts(const String&, const String&);
  3946. void SetFilters(Array<String>, uint);
  3947. void UpdateElements();
  3948. // Properties:
  3949. /* readonly */
  3950. StringHash baseType;
  3951. /* readonly */
  3952. Button cancelButton;
  3953. /* readonly */
  3954. String category;
  3955. XMLFile defaultStyle;
  3956. bool directoryMode;
  3957. /* readonly */
  3958. ListView fileList;
  3959. String fileName;
  3960. /* readonly */
  3961. LineEdit fileNameEdit;
  3962. /* readonly */
  3963. String filter;
  3964. /* readonly */
  3965. uint filterIndex;
  3966. /* readonly */
  3967. DropDownList filterList;
  3968. /* readonly */
  3969. Button okButton;
  3970. String path;
  3971. /* readonly */
  3972. LineEdit pathEdit;
  3973. /* readonly */
  3974. int refs;
  3975. String title;
  3976. /* readonly */
  3977. Text titleText;
  3978. /* readonly */
  3979. StringHash type;
  3980. /* readonly */
  3981. String typeName;
  3982. /* readonly */
  3983. int weakRefs;
  3984. /* readonly */
  3985. Window window;
  3986. };
  3987. class FileSystem
  3988. {
  3989. // Methods:
  3990. bool Copy(const String&, const String&);
  3991. bool CreateDir(const String&);
  3992. bool Delete(const String&);
  3993. bool DirExists(const String&) const;
  3994. bool FileExists(const String&) const;
  3995. String GetAppPreferencesDir(const String&, const String&) const;
  3996. uint GetLastModifiedTime(const String&) const;
  3997. bool Rename(const String&, const String&);
  3998. Array<String> ScanDir(const String&, const String&, uint, bool) const;
  3999. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4000. bool SetLastModifiedTime(const String&, uint);
  4001. int SystemCommand(const String&, bool = false);
  4002. uint SystemCommandAsync(const String&);
  4003. bool SystemOpen(const String&, const String&);
  4004. int SystemRun(const String&, Array<String>);
  4005. uint SystemRunAsync(const String&, Array<String>);
  4006. // Properties:
  4007. /* readonly */
  4008. StringHash baseType;
  4009. /* readonly */
  4010. String category;
  4011. String currentDir;
  4012. bool executeConsoleCommands;
  4013. /* readonly */
  4014. String programDir;
  4015. /* readonly */
  4016. int refs;
  4017. /* readonly */
  4018. StringHash type;
  4019. /* readonly */
  4020. String typeName;
  4021. /* readonly */
  4022. String userDocumentsDir;
  4023. /* readonly */
  4024. int weakRefs;
  4025. };
  4026. class FocusParameters
  4027. {
  4028. // Properties:
  4029. bool autoSize;
  4030. bool focus;
  4031. float minView;
  4032. bool nonUniform;
  4033. float quantize;
  4034. };
  4035. class Font
  4036. {
  4037. // Methods:
  4038. IntVector2 GetTotalGlyphOffset(int) const;
  4039. bool Load(File);
  4040. bool Load(VectorBuffer&);
  4041. bool Save(File) const;
  4042. bool Save(VectorBuffer&) const;
  4043. bool SaveXML(File, int, bool = false);
  4044. bool SaveXML(VectorBuffer&, int, bool = false);
  4045. bool SaveXML(const String&, int, bool = false);
  4046. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4047. // Properties:
  4048. IntVector2 absoluteGlyphOffset;
  4049. /* readonly */
  4050. StringHash baseType;
  4051. /* readonly */
  4052. String category;
  4053. /* readonly */
  4054. uint memoryUse;
  4055. String name;
  4056. /* readonly */
  4057. int refs;
  4058. Vector2 scaledGlyphOffset;
  4059. /* readonly */
  4060. StringHash type;
  4061. /* readonly */
  4062. String typeName;
  4063. /* readonly */
  4064. uint useTimer;
  4065. /* readonly */
  4066. int weakRefs;
  4067. };
  4068. class Frustum
  4069. {
  4070. // Methods:
  4071. void Define(const BoundingBox&, const Matrix3x4&);
  4072. void Define(const Vector3&, const Vector3&, const Matrix3x4&);
  4073. void Define(float, float, float, float, float, const Matrix3x4&);
  4074. void DefineOrtho(float, float, float, float, float, const Matrix3x4&);
  4075. float Distance(const Vector3&) const;
  4076. Intersection IsInside(const BoundingBox&);
  4077. Intersection IsInside(const Sphere&);
  4078. Intersection IsInside(const Vector3&);
  4079. void Transform(const Matrix3&);
  4080. void Transform(const Matrix3x4&);
  4081. Frustum Transformed(const Matrix3&) const;
  4082. Frustum Transformed(const Matrix3x4&) const;
  4083. // Properties:
  4084. /* readonly */
  4085. Array<Vector3> vertices;
  4086. };
  4087. class Graphics
  4088. {
  4089. // Methods:
  4090. void BeginDumpShaders(const String&);
  4091. void Close();
  4092. void EndDumpShaders();
  4093. void Maximize();
  4094. void Minimize();
  4095. void PrecacheShaders(File);
  4096. void PrecacheShaders(VectorBuffer&);
  4097. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4098. bool SetMode(int, int);
  4099. bool SetMode(int, int, bool, bool, bool, bool, bool, int);
  4100. void SetWindowPosition(int, int);
  4101. bool TakeScreenShot(Image);
  4102. bool ToggleFullscreen();
  4103. // Properties:
  4104. /* readonly */
  4105. StringHash baseType;
  4106. /* readonly */
  4107. bool borderless;
  4108. /* readonly */
  4109. String category;
  4110. /* readonly */
  4111. bool deferredSupport;
  4112. /* readonly */
  4113. IntVector2 desktopResolution;
  4114. /* readonly */
  4115. bool deviceLost;
  4116. bool flushGPU;
  4117. bool forceSM2;
  4118. /* readonly */
  4119. bool fullscreen;
  4120. /* readonly */
  4121. bool hardwareShadowSupport;
  4122. /* readonly */
  4123. int height;
  4124. /* readonly */
  4125. bool initialized;
  4126. /* readonly */
  4127. bool instancingSupport;
  4128. /* readonly */
  4129. bool lightPrepassSupport;
  4130. /* readonly */
  4131. int multiSample;
  4132. /* readonly */
  4133. Array<int> multiSampleLevels;
  4134. /* readonly */
  4135. uint numBatches;
  4136. /* readonly */
  4137. uint numPrimitives;
  4138. String orientations;
  4139. /* readonly */
  4140. int refs;
  4141. /* readonly */
  4142. bool resizable;
  4143. /* readonly */
  4144. Array<IntVector2> resolutions;
  4145. bool sRGB;
  4146. /* readonly */
  4147. bool sRGBSupport;
  4148. /* readonly */
  4149. bool sRGBWriteSupport;
  4150. /* readonly */
  4151. bool sm3Support;
  4152. /* readonly */
  4153. bool tripleBuffer;
  4154. /* readonly */
  4155. StringHash type;
  4156. /* readonly */
  4157. String typeName;
  4158. /* readonly */
  4159. bool vsync;
  4160. /* readonly */
  4161. int weakRefs;
  4162. /* readonly */
  4163. int width;
  4164. /* writeonly */
  4165. Image windowIcon;
  4166. IntVector2 windowPosition;
  4167. String windowTitle;
  4168. };
  4169. class HttpRequest
  4170. {
  4171. // Methods:
  4172. Array<uint8> Read(uint);
  4173. bool ReadBool();
  4174. BoundingBox ReadBoundingBox();
  4175. int8 ReadByte();
  4176. Color ReadColor();
  4177. String ReadFileID();
  4178. float ReadFloat();
  4179. int ReadInt();
  4180. IntRect ReadIntRect();
  4181. IntVector2 ReadIntVector2();
  4182. String ReadLine();
  4183. Matrix3 ReadMatrix3();
  4184. Matrix3x4 ReadMatrix3x4();
  4185. Matrix4 ReadMatrix4();
  4186. uint ReadNetID();
  4187. Quaternion ReadPackedQuaternion();
  4188. Vector3 ReadPackedVector3(float);
  4189. Quaternion ReadQuaternion();
  4190. int16 ReadShort();
  4191. String ReadString();
  4192. StringHash ReadStringHash();
  4193. uint8 ReadUByte();
  4194. uint ReadUInt();
  4195. uint16 ReadUShort();
  4196. uint ReadVLE();
  4197. Variant ReadVariant();
  4198. VariantMap ReadVariantMap();
  4199. Vector2 ReadVector2();
  4200. Vector3 ReadVector3();
  4201. Vector4 ReadVector4();
  4202. uint Seek(uint);
  4203. // Properties:
  4204. /* readonly */
  4205. uint availableSize;
  4206. /* readonly */
  4207. uint checksum;
  4208. /* readonly */
  4209. bool eof;
  4210. /* readonly */
  4211. String error;
  4212. /* readonly */
  4213. String name;
  4214. /* readonly */
  4215. bool open;
  4216. /* readonly */
  4217. uint position;
  4218. /* readonly */
  4219. int refs;
  4220. /* readonly */
  4221. uint size;
  4222. /* readonly */
  4223. HttpRequestState state;
  4224. /* readonly */
  4225. String url;
  4226. /* readonly */
  4227. String verb;
  4228. /* readonly */
  4229. int weakRefs;
  4230. };
  4231. class Image
  4232. {
  4233. // Methods:
  4234. void Clear(const Color&);
  4235. void ClearInt(uint);
  4236. bool FlipHorizontal();
  4237. bool FlipVertical();
  4238. Color GetPixel(int, int) const;
  4239. Color GetPixel(int, int, int) const;
  4240. Color GetPixelBilinear(float, float) const;
  4241. uint GetPixelInt(int, int) const;
  4242. uint GetPixelInt(int, int, int) const;
  4243. Color GetPixelTrilinear(float, float, float) const;
  4244. Image GetSubimage(const IntRect&) const;
  4245. bool Load(File);
  4246. bool Load(VectorBuffer&);
  4247. bool LoadColorLUT(File);
  4248. bool LoadColorLUT(VectorBuffer&);
  4249. bool Resize(int, int);
  4250. bool Save(File) const;
  4251. bool Save(VectorBuffer&) const;
  4252. void SaveBMP(const String&) const;
  4253. void SaveJPG(const String&, int) const;
  4254. void SavePNG(const String&) const;
  4255. void SaveTGA(const String&) const;
  4256. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4257. void SetPixel(int, int, const Color&);
  4258. void SetPixel(int, int, int, const Color&);
  4259. void SetPixelInt(int, int, int, uint);
  4260. void SetPixelInt(int, int, uint);
  4261. bool SetSize(int, int, int, uint);
  4262. bool SetSize(int, int, uint);
  4263. // Properties:
  4264. /* readonly */
  4265. StringHash baseType;
  4266. /* readonly */
  4267. String category;
  4268. /* readonly */
  4269. uint components;
  4270. /* readonly */
  4271. bool compressed;
  4272. /* readonly */
  4273. int depth;
  4274. /* readonly */
  4275. int height;
  4276. /* readonly */
  4277. uint memoryUse;
  4278. String name;
  4279. /* readonly */
  4280. int refs;
  4281. /* readonly */
  4282. StringHash type;
  4283. /* readonly */
  4284. String typeName;
  4285. /* readonly */
  4286. uint useTimer;
  4287. /* readonly */
  4288. int weakRefs;
  4289. /* readonly */
  4290. int width;
  4291. };
  4292. class Input
  4293. {
  4294. // Methods:
  4295. int AddScreenJoystick(XMLFile = null, XMLFile = null);
  4296. int GetKeyFromName(const String&) const;
  4297. int GetKeyFromScancode(int) const;
  4298. String GetKeyName(int) const;
  4299. int GetScancodeFromKey(int) const;
  4300. int GetScancodeFromName(const String&) const;
  4301. String GetScancodeName(int) const;
  4302. uint LoadGestures(File);
  4303. uint LoadGestures(VectorBuffer&);
  4304. bool RecordGesture();
  4305. void RemoveAllGestures();
  4306. bool RemoveGesture(uint);
  4307. bool RemoveScreenJoystick(int);
  4308. void ResetMouseVisible();
  4309. bool SaveGesture(File, uint);
  4310. bool SaveGesture(VectorBuffer&, uint);
  4311. bool SaveGestures(File);
  4312. bool SaveGestures(VectorBuffer&);
  4313. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4314. void SetMouseVisible(bool, bool = false);
  4315. // Properties:
  4316. /* readonly */
  4317. StringHash baseType;
  4318. /* readonly */
  4319. String category;
  4320. /* readonly */
  4321. bool focus;
  4322. /* readonly */
  4323. Array<JoystickState> joysticks;
  4324. /* readonly */
  4325. Array<JoystickState> joysticksByIndex;
  4326. /* readonly */
  4327. Array<bool> keyDown;
  4328. /* readonly */
  4329. Array<bool> keyPress;
  4330. /* readonly */
  4331. bool minimized;
  4332. /* readonly */
  4333. Array<bool> mouseButtonDown;
  4334. /* readonly */
  4335. Array<bool> mouseButtonPress;
  4336. bool mouseGrabbed;
  4337. MouseMode mouseMode;
  4338. /* readonly */
  4339. IntVector2 mouseMove;
  4340. /* readonly */
  4341. int mouseMoveWheel;
  4342. /* readonly */
  4343. int mouseMoveX;
  4344. /* readonly */
  4345. int mouseMoveY;
  4346. /* readonly */
  4347. IntVector2 mousePosition;
  4348. bool mouseVisible;
  4349. /* readonly */
  4350. uint numJoysticks;
  4351. /* readonly */
  4352. uint numTouches;
  4353. /* readonly */
  4354. Array<bool> qualifierDown;
  4355. /* readonly */
  4356. Array<bool> qualifierPress;
  4357. /* readonly */
  4358. int qualifiers;
  4359. /* readonly */
  4360. int refs;
  4361. /* readonly */
  4362. Array<bool> scancodeDown;
  4363. /* readonly */
  4364. Array<bool> scancodePress;
  4365. Array<bool> screenJoystickVisible;
  4366. /* readonly */
  4367. bool screenKeyboardSupport;
  4368. bool screenKeyboardVisible;
  4369. bool toggleFullscreen;
  4370. bool touchEmulation;
  4371. /* readonly */
  4372. Array<TouchState> touches;
  4373. /* readonly */
  4374. StringHash type;
  4375. /* readonly */
  4376. String typeName;
  4377. /* readonly */
  4378. int weakRefs;
  4379. };
  4380. class IntRect
  4381. {
  4382. // Methods:
  4383. Intersection IsInside(const IntVector2&) const;
  4384. // Properties:
  4385. int bottom;
  4386. /* readonly */
  4387. Array<int> data;
  4388. /* readonly */
  4389. int height;
  4390. int left;
  4391. int right;
  4392. /* readonly */
  4393. IntVector2 size;
  4394. int top;
  4395. /* readonly */
  4396. int width;
  4397. };
  4398. class IntVector2
  4399. {
  4400. // Methods:
  4401. String ToString() const;
  4402. // Properties:
  4403. /* readonly */
  4404. Array<int> data;
  4405. int x;
  4406. int y;
  4407. };
  4408. class JSONFile
  4409. {
  4410. // Methods:
  4411. JSONValue CreateRoot(JSONValueType = JSON_ANY);
  4412. JSONValue GetRoot(JSONValueType = JSON_ANY);
  4413. bool Load(File);
  4414. bool Load(VectorBuffer&);
  4415. bool Save(File) const;
  4416. bool Save(VectorBuffer&) const;
  4417. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4418. // Properties:
  4419. /* readonly */
  4420. StringHash baseType;
  4421. /* readonly */
  4422. String category;
  4423. /* readonly */
  4424. uint memoryUse;
  4425. String name;
  4426. /* readonly */
  4427. int refs;
  4428. /* readonly */
  4429. StringHash type;
  4430. /* readonly */
  4431. String typeName;
  4432. /* readonly */
  4433. uint useTimer;
  4434. /* readonly */
  4435. int weakRefs;
  4436. };
  4437. class JSONValue
  4438. {
  4439. // Methods:
  4440. void AddBool(bool);
  4441. void AddColor(const Color&);
  4442. void AddFloat(float);
  4443. void AddInt(int);
  4444. void AddIntRect(const IntRect&);
  4445. void AddIntVector2(const IntVector2&);
  4446. void AddMatrix3(const Matrix3&);
  4447. void AddMatrix3x4(const Matrix3x4&);
  4448. void AddMatrix4(const Matrix4&);
  4449. void AddQuaternion(const Quaternion&);
  4450. void AddResourceRef(const ResourceRef&);
  4451. void AddResourceRefList(const ResourceRefList&);
  4452. void AddString(const String);
  4453. void AddVariant(const Variant&);
  4454. void AddVariantValue(const Variant&);
  4455. void AddVector2(const Vector2&);
  4456. void AddVector3(const Vector3&);
  4457. void AddVector4(const Vector4&);
  4458. void AddVectorVariant(const Variant&);
  4459. JSONValue CreateChild(JSONValueType = JSON_OBJECT);
  4460. JSONValue CreateChild(const String&, JSONValueType = JSON_OBJECT);
  4461. bool GetBool(const String&) const;
  4462. bool GetBool(uint) const;
  4463. JSONValue GetChild(const String&, JSONValueType = JSON_ANY) const;
  4464. JSONValue GetChild(uint, JSONValueType = JSON_ANY) const;
  4465. Array<String> GetChildNames() const;
  4466. Color GetColor(const String&) const;
  4467. Color GetColor(uint) const;
  4468. float GetFloat(const String&) const;
  4469. float GetFloat(uint) const;
  4470. int GetInt(const String&) const;
  4471. int GetInt(uint) const;
  4472. IntRect GetIntRect(const String&) const;
  4473. IntRect GetIntRect(uint) const;
  4474. IntVector2 GetIntVector2(const String&) const;
  4475. IntVector2 GetIntVector2(uint) const;
  4476. Matrix3 GetMatrix3(const String&) const;
  4477. Matrix3 GetMatrix3(uint) const;
  4478. Matrix3x4 GetMatrix3x4(const String&) const;
  4479. Matrix3x4 GetMatrix3x4(uint) const;
  4480. Matrix4 GetMatrix4(const String&) const;
  4481. Matrix4 GetMatrix4(uint) const;
  4482. Quaternion GetQuaternion(const String&) const;
  4483. Quaternion GetQuaternion(uint) const;
  4484. ResourceRef GetResourceRef(const String&) const;
  4485. ResourceRef GetResourceRef(uint) const;
  4486. ResourceRefList GetResourceRefList(const String&) const;
  4487. ResourceRefList GetResourceRefList(uint) const;
  4488. String GetString(const String&) const;
  4489. String GetString(uint) const;
  4490. Array<String> GetValueNames() const;
  4491. Variant GetVariant(const String&) const;
  4492. Variant GetVariant(uint) const;
  4493. Variant GetVariantValue(const String&, VariantType) const;
  4494. Variant GetVariantValue(uint, VariantType) const;
  4495. Vector2 GetVector2(const String&) const;
  4496. Vector2 GetVector2(uint) const;
  4497. Vector3 GetVector3(const String&) const;
  4498. Vector3 GetVector3(uint) const;
  4499. Vector4 GetVector4(const String&) const;
  4500. Vector4 GetVector4(uint) const;
  4501. Variant GetVectorVariant(const String&) const;
  4502. Variant GetVectorVariant(uint) const;
  4503. void SetBool(const String&, bool);
  4504. void SetColor(const String&, const Color&);
  4505. void SetFloat(const String&, float);
  4506. void SetInt(const String&, int);
  4507. void SetIntRect(const String&, const IntRect&);
  4508. void SetIntVector2(const String&, const IntVector2&);
  4509. void SetMatrix3(const String&, const Matrix3&);
  4510. void SetMatrix3x4(const String&, const Matrix3x4&);
  4511. void SetMatrix4(const String&, const Matrix4&);
  4512. void SetQuaternion(const String&, const Quaternion&);
  4513. void SetResourceRef(const String&, const ResourceRef&);
  4514. void SetResourceRefList(const String&, const ResourceRefList&);
  4515. void SetString(const String&, const String);
  4516. void SetVariant(const String&, const Variant&);
  4517. void SetVariantValue(const String&, const Variant&);
  4518. void SetVector2(const String&, const Vector2&);
  4519. void SetVector3(const String&, const Vector3&);
  4520. void SetVector4(const String&, const Vector4&);
  4521. void SetVectorVariant(const String&, const Variant&);
  4522. // Properties:
  4523. /* readonly */
  4524. bool isArray;
  4525. /* readonly */
  4526. bool isNull;
  4527. /* readonly */
  4528. bool isObject;
  4529. /* readonly */
  4530. bool notNull;
  4531. /* readonly */
  4532. uint size;
  4533. };
  4534. class JoystickState
  4535. {
  4536. // Properties:
  4537. /* readonly */
  4538. Array<float> axisPosition;
  4539. /* readonly */
  4540. Array<bool> buttonDown;
  4541. /* readonly */
  4542. Array<bool> buttonPress;
  4543. /* readonly */
  4544. bool controller;
  4545. /* readonly */
  4546. Array<int> hatPosition;
  4547. int joystickID;
  4548. String name;
  4549. /* readonly */
  4550. uint numAxes;
  4551. /* readonly */
  4552. uint numButtons;
  4553. /* readonly */
  4554. uint numHats;
  4555. };
  4556. class Light
  4557. {
  4558. // Methods:
  4559. void ApplyAttributes();
  4560. void DrawDebugGeometry(DebugRenderer, bool);
  4561. Variant GetAttribute(const String&) const;
  4562. ValueAnimation GetAttributeAnimation(const String&) const;
  4563. float GetAttributeAnimationSpeed(const String&) const;
  4564. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  4565. Variant GetAttributeDefault(const String&) const;
  4566. bool IsInView(Camera) const;
  4567. bool Load(File, bool = false);
  4568. bool Load(VectorBuffer&, bool = false);
  4569. bool LoadXML(const XMLElement&, bool = false);
  4570. void MarkNetworkUpdate() const;
  4571. void Remove();
  4572. void RemoveInstanceDefault();
  4573. void ResetToDefault();
  4574. bool Save(File) const;
  4575. bool Save(VectorBuffer&) const;
  4576. bool SaveXML(XMLElement&) const;
  4577. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4578. bool SetAttribute(const String&, const Variant&);
  4579. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  4580. void SetAttributeAnimationSpeed(const String&, float);
  4581. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  4582. // Properties:
  4583. bool animationEnabled;
  4584. float aspectRatio;
  4585. /* readonly */
  4586. Array<Variant> attributeDefaults;
  4587. /* readonly */
  4588. Array<AttributeInfo> attributeInfos;
  4589. Array<Variant> attributes;
  4590. /* readonly */
  4591. StringHash baseType;
  4592. /* readonly */
  4593. BoundingBox boundingBox;
  4594. float brightness;
  4595. bool castShadows;
  4596. /* readonly */
  4597. String category;
  4598. Color color;
  4599. float drawDistance;
  4600. /* readonly */
  4601. Color effectiveColor;
  4602. /* readonly */
  4603. float effectiveSpecularIntensity;
  4604. bool enabled;
  4605. /* readonly */
  4606. bool enabledEffective;
  4607. float fadeDistance;
  4608. float fov;
  4609. /* readonly */
  4610. Frustum frustum;
  4611. /* readonly */
  4612. uint id;
  4613. /* readonly */
  4614. bool inView;
  4615. uint lightMask;
  4616. LightType lightType;
  4617. float lodBias;
  4618. uint maxLights;
  4619. /* readonly */
  4620. bool negative;
  4621. /* readonly */
  4622. Node node;
  4623. /* readonly */
  4624. uint numAttributes;
  4625. /* readonly */
  4626. int numShadowSplits;
  4627. ObjectAnimation objectAnimation;
  4628. bool occludee;
  4629. bool occluder;
  4630. bool perVertex;
  4631. Texture rampTexture;
  4632. float range;
  4633. /* readonly */
  4634. int refs;
  4635. BiasParameters shadowBias;
  4636. CascadeParameters shadowCascade;
  4637. float shadowDistance;
  4638. float shadowFadeDistance;
  4639. FocusParameters shadowFocus;
  4640. float shadowIntensity;
  4641. uint shadowMask;
  4642. float shadowNearFarRatio;
  4643. float shadowResolution;
  4644. Texture shapeTexture;
  4645. float specularIntensity;
  4646. bool temporary;
  4647. /* readonly */
  4648. StringHash type;
  4649. /* readonly */
  4650. String typeName;
  4651. uint viewMask;
  4652. /* readonly */
  4653. int weakRefs;
  4654. /* readonly */
  4655. BoundingBox worldBoundingBox;
  4656. uint zoneMask;
  4657. };
  4658. class LineEdit
  4659. {
  4660. // Methods:
  4661. void AddChild(UIElement);
  4662. void ApplyAttributes();
  4663. void BringToFront();
  4664. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  4665. void DisableLayoutUpdate();
  4666. IntVector2 ElementToScreen(const IntVector2&);
  4667. void EnableLayoutUpdate();
  4668. uint FindChild(UIElement) const;
  4669. Variant GetAttribute(const String&) const;
  4670. ValueAnimation GetAttributeAnimation(const String&) const;
  4671. float GetAttributeAnimationSpeed(const String&) const;
  4672. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  4673. Variant GetAttributeDefault(const String&) const;
  4674. UIElement GetChild(const String&, bool = false) const;
  4675. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  4676. Array<UIElement> GetChildren(bool = false) const;
  4677. UIElement GetElementEventSender() const;
  4678. uint GetNumChildren(bool) const;
  4679. void InsertChild(uint, UIElement);
  4680. bool IsInside(IntVector2, bool);
  4681. bool IsInsideCombined(IntVector2, bool);
  4682. bool Load(File, bool = false);
  4683. bool Load(VectorBuffer&, bool = false);
  4684. bool LoadChildXML(XMLFile, XMLFile = null);
  4685. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  4686. bool LoadXML(File);
  4687. bool LoadXML(VectorBuffer&);
  4688. bool LoadXML(XMLFile, XMLFile);
  4689. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  4690. bool LoadXML(const XMLElement&, bool = false);
  4691. void MarkNetworkUpdate() const;
  4692. void Remove();
  4693. void RemoveAllChildren();
  4694. void RemoveChild(UIElement, uint = 0);
  4695. void RemoveChild(uint);
  4696. void RemoveInstanceDefault();
  4697. void ResetDeepEnabled();
  4698. void ResetToDefault();
  4699. bool Save(File) const;
  4700. bool Save(VectorBuffer&) const;
  4701. bool SaveXML(File);
  4702. bool SaveXML(VectorBuffer&);
  4703. bool SaveXML(XMLElement&) const;
  4704. IntVector2 ScreenToElement(const IntVector2&);
  4705. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4706. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  4707. bool SetAttribute(const String&, const Variant&);
  4708. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  4709. void SetAttributeAnimationSpeed(const String&, float);
  4710. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  4711. void SetDeepEnabled(bool);
  4712. void SetEnabledRecursive(bool);
  4713. void SetFixedHeight(int);
  4714. void SetFixedSize(int, int);
  4715. void SetFixedWidth(int);
  4716. void SetFullImageRect();
  4717. void SetHoverOffset(int, int);
  4718. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  4719. void SetMaxSize(int, int);
  4720. void SetMinSize(int, int);
  4721. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  4722. void SetPosition(int, int);
  4723. void SetSize(int, int);
  4724. bool SetStyle(const String&, XMLFile = null);
  4725. bool SetStyle(const XMLElement&);
  4726. bool SetStyleAuto(XMLFile = null);
  4727. void UpdateLayout();
  4728. const Variant& GetVar(const StringHash&);
  4729. // Properties:
  4730. bool animationEnabled;
  4731. /* readonly */
  4732. Array<Variant> attributeDefaults;
  4733. /* readonly */
  4734. Array<AttributeInfo> attributeInfos;
  4735. Array<Variant> attributes;
  4736. /* readonly */
  4737. StringHash baseType;
  4738. BlendMode blendMode;
  4739. IntRect border;
  4740. bool bringToBack;
  4741. bool bringToFront;
  4742. /* readonly */
  4743. String category;
  4744. /* readonly */
  4745. IntVector2 childOffset;
  4746. /* readonly */
  4747. Array<UIElement> children;
  4748. IntRect clipBorder;
  4749. bool clipChildren;
  4750. /* writeonly */
  4751. Color color;
  4752. /* readonly */
  4753. bool colorGradient;
  4754. Array<Color> colors;
  4755. /* readonly */
  4756. IntRect combinedScreenRect;
  4757. /* readonly */
  4758. BorderImage cursor;
  4759. float cursorBlinkRate;
  4760. bool cursorMovable;
  4761. uint cursorPosition;
  4762. XMLFile defaultStyle;
  4763. /* readonly */
  4764. float derivedOpacity;
  4765. /* readonly */
  4766. uint dragButtonCombo;
  4767. /* readonly */
  4768. int dragButtonCount;
  4769. uint dragDropMode;
  4770. uint echoCharacter;
  4771. bool editable;
  4772. bool elementEventSender;
  4773. bool enabled;
  4774. /* readonly */
  4775. bool enabledSelf;
  4776. /* readonly */
  4777. bool fixedHeight;
  4778. /* readonly */
  4779. bool fixedSize;
  4780. /* readonly */
  4781. bool fixedWidth;
  4782. bool focus;
  4783. FocusMode focusMode;
  4784. int height;
  4785. HorizontalAlignment horizontalAlignment;
  4786. IntVector2 hoverOffset;
  4787. /* readonly */
  4788. bool hovering;
  4789. IntRect imageBorder;
  4790. IntRect imageRect;
  4791. int indent;
  4792. int indentSpacing;
  4793. /* readonly */
  4794. int indentWidth;
  4795. bool internal;
  4796. IntRect layoutBorder;
  4797. Vector2 layoutFlexScale;
  4798. LayoutMode layoutMode;
  4799. int layoutSpacing;
  4800. int maxHeight;
  4801. uint maxLength;
  4802. IntVector2 maxSize;
  4803. int maxWidth;
  4804. int minHeight;
  4805. IntVector2 minSize;
  4806. int minWidth;
  4807. String name;
  4808. /* readonly */
  4809. uint numAllChildren;
  4810. /* readonly */
  4811. uint numAttributes;
  4812. /* readonly */
  4813. uint numChildren;
  4814. ObjectAnimation objectAnimation;
  4815. float opacity;
  4816. UIElement parent;
  4817. IntVector2 position;
  4818. int priority;
  4819. /* readonly */
  4820. int refs;
  4821. /* readonly */
  4822. UIElement root;
  4823. /* readonly */
  4824. IntVector2 screenPosition;
  4825. bool selected;
  4826. IntVector2 size;
  4827. bool sortChildren;
  4828. String style;
  4829. bool temporary;
  4830. String text;
  4831. bool textCopyable;
  4832. /* readonly */
  4833. Text textElement;
  4834. bool textSelectable;
  4835. Texture texture;
  4836. bool tiled;
  4837. TraversalMode traversalMode;
  4838. /* readonly */
  4839. StringHash type;
  4840. /* readonly */
  4841. String typeName;
  4842. bool useDerivedOpacity;
  4843. /* readonly */
  4844. VariantMap vars;
  4845. VerticalAlignment verticalAlignment;
  4846. bool visible;
  4847. /* readonly */
  4848. int weakRefs;
  4849. int width;
  4850. };
  4851. class ListView
  4852. {
  4853. // Methods:
  4854. void AddChild(UIElement);
  4855. void AddItem(UIElement);
  4856. void AddSelection(uint);
  4857. void ApplyAttributes();
  4858. void BringToFront();
  4859. void ChangeSelection(int, bool);
  4860. void ClearSelection();
  4861. void CopySelectedItemsToClipboard();
  4862. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  4863. void DisableLayoutUpdate();
  4864. IntVector2 ElementToScreen(const IntVector2&);
  4865. void EnableLayoutUpdate();
  4866. void Expand(uint, bool, bool = false);
  4867. uint FindChild(UIElement) const;
  4868. uint FindItem(UIElement);
  4869. Variant GetAttribute(const String&) const;
  4870. ValueAnimation GetAttributeAnimation(const String&) const;
  4871. float GetAttributeAnimationSpeed(const String&) const;
  4872. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  4873. Variant GetAttributeDefault(const String&) const;
  4874. UIElement GetChild(const String&, bool = false) const;
  4875. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  4876. Array<UIElement> GetChildren(bool = false) const;
  4877. UIElement GetElementEventSender() const;
  4878. Array<UIElement> GetItems() const;
  4879. uint GetNumChildren(bool) const;
  4880. void InsertChild(uint, UIElement);
  4881. void InsertItem(uint, UIElement, UIElement = null);
  4882. bool IsExpanded(uint) const;
  4883. bool IsInside(IntVector2, bool);
  4884. bool IsInsideCombined(IntVector2, bool);
  4885. bool IsSelected(uint) const;
  4886. bool Load(File, bool = false);
  4887. bool Load(VectorBuffer&, bool = false);
  4888. bool LoadChildXML(XMLFile, XMLFile = null);
  4889. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  4890. bool LoadXML(File);
  4891. bool LoadXML(VectorBuffer&);
  4892. bool LoadXML(XMLFile, XMLFile);
  4893. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  4894. bool LoadXML(const XMLElement&, bool = false);
  4895. void MarkNetworkUpdate() const;
  4896. void Remove();
  4897. void RemoveAllChildren();
  4898. void RemoveAllItems();
  4899. void RemoveChild(UIElement, uint = 0);
  4900. void RemoveChild(uint);
  4901. void RemoveInstanceDefault();
  4902. void RemoveItem(UIElement, uint = 0);
  4903. void RemoveItem(uint);
  4904. void RemoveSelection(uint);
  4905. void ResetDeepEnabled();
  4906. void ResetToDefault();
  4907. bool Save(File) const;
  4908. bool Save(VectorBuffer&) const;
  4909. bool SaveXML(File);
  4910. bool SaveXML(VectorBuffer&);
  4911. bool SaveXML(XMLElement&) const;
  4912. IntVector2 ScreenToElement(const IntVector2&);
  4913. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4914. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  4915. bool SetAttribute(const String&, const Variant&);
  4916. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  4917. void SetAttributeAnimationSpeed(const String&, float);
  4918. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  4919. void SetDeepEnabled(bool);
  4920. void SetEnabledRecursive(bool);
  4921. void SetFixedHeight(int);
  4922. void SetFixedSize(int, int);
  4923. void SetFixedWidth(int);
  4924. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  4925. void SetMaxSize(int, int);
  4926. void SetMinSize(int, int);
  4927. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  4928. void SetPosition(int, int);
  4929. void SetScrollBarsVisible(bool, bool);
  4930. void SetSelections(Array<uint>);
  4931. void SetSize(int, int);
  4932. bool SetStyle(const String&, XMLFile = null);
  4933. bool SetStyle(const XMLElement&);
  4934. bool SetStyleAuto(XMLFile = null);
  4935. void SetViewPosition(int, int);
  4936. void ToggleExpand(uint, bool = false);
  4937. void ToggleSelection(uint);
  4938. void UpdateLayout();
  4939. const Variant& GetVar(const StringHash&);
  4940. // Properties:
  4941. bool animationEnabled;
  4942. /* readonly */
  4943. Array<Variant> attributeDefaults;
  4944. /* readonly */
  4945. Array<AttributeInfo> attributeInfos;
  4946. Array<Variant> attributes;
  4947. int baseIndent;
  4948. /* readonly */
  4949. StringHash baseType;
  4950. bool bringToBack;
  4951. bool bringToFront;
  4952. /* readonly */
  4953. String category;
  4954. /* readonly */
  4955. IntVector2 childOffset;
  4956. /* readonly */
  4957. Array<UIElement> children;
  4958. bool clearSelectionOnDefocus;
  4959. IntRect clipBorder;
  4960. bool clipChildren;
  4961. /* writeonly */
  4962. Color color;
  4963. /* readonly */
  4964. bool colorGradient;
  4965. Array<Color> colors;
  4966. /* readonly */
  4967. IntRect combinedScreenRect;
  4968. /* readonly */
  4969. UIElement contentElement;
  4970. XMLFile defaultStyle;
  4971. /* readonly */
  4972. float derivedOpacity;
  4973. /* readonly */
  4974. uint dragButtonCombo;
  4975. /* readonly */
  4976. int dragButtonCount;
  4977. uint dragDropMode;
  4978. bool editable;
  4979. bool elementEventSender;
  4980. bool enabled;
  4981. /* readonly */
  4982. bool enabledSelf;
  4983. /* readonly */
  4984. bool fixedHeight;
  4985. /* readonly */
  4986. bool fixedSize;
  4987. /* readonly */
  4988. bool fixedWidth;
  4989. bool focus;
  4990. FocusMode focusMode;
  4991. int height;
  4992. bool hierarchyMode;
  4993. HighlightMode highlightMode;
  4994. HorizontalAlignment horizontalAlignment;
  4995. /* readonly */
  4996. ScrollBar horizontalScrollBar;
  4997. /* readonly */
  4998. bool hovering;
  4999. int indent;
  5000. int indentSpacing;
  5001. /* readonly */
  5002. int indentWidth;
  5003. bool internal;
  5004. /* readonly */
  5005. Array<UIElement> items;
  5006. IntRect layoutBorder;
  5007. Vector2 layoutFlexScale;
  5008. LayoutMode layoutMode;
  5009. int layoutSpacing;
  5010. int maxHeight;
  5011. IntVector2 maxSize;
  5012. int maxWidth;
  5013. int minHeight;
  5014. IntVector2 minSize;
  5015. int minWidth;
  5016. bool multiselect;
  5017. String name;
  5018. /* readonly */
  5019. uint numAllChildren;
  5020. /* readonly */
  5021. uint numAttributes;
  5022. /* readonly */
  5023. uint numChildren;
  5024. /* readonly */
  5025. uint numItems;
  5026. ObjectAnimation objectAnimation;
  5027. float opacity;
  5028. float pageStep;
  5029. UIElement parent;
  5030. IntVector2 position;
  5031. int priority;
  5032. /* readonly */
  5033. int refs;
  5034. /* readonly */
  5035. UIElement root;
  5036. /* readonly */
  5037. IntVector2 screenPosition;
  5038. bool scrollBarsAutoVisible;
  5039. float scrollDeceleration;
  5040. /* readonly */
  5041. BorderImage scrollPanel;
  5042. float scrollSnapEpsilon;
  5043. float scrollStep;
  5044. bool selectOnClickEnd;
  5045. bool selected;
  5046. /* readonly */
  5047. UIElement selectedItem;
  5048. /* readonly */
  5049. Array<UIElement> selectedItems;
  5050. uint selection;
  5051. /* readonly */
  5052. Array<uint> selections;
  5053. IntVector2 size;
  5054. bool sortChildren;
  5055. String style;
  5056. bool temporary;
  5057. TraversalMode traversalMode;
  5058. /* readonly */
  5059. StringHash type;
  5060. /* readonly */
  5061. String typeName;
  5062. bool useDerivedOpacity;
  5063. /* readonly */
  5064. VariantMap vars;
  5065. VerticalAlignment verticalAlignment;
  5066. /* readonly */
  5067. ScrollBar verticalScrollBar;
  5068. IntVector2 viewPosition;
  5069. bool visible;
  5070. /* readonly */
  5071. int weakRefs;
  5072. int width;
  5073. };
  5074. class Log
  5075. {
  5076. // Methods:
  5077. void Close();
  5078. void Debug(const String&);
  5079. void Error(const String&);
  5080. void Info(const String&);
  5081. void Open(const String&);
  5082. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5083. void Warning(const String&);
  5084. void Write(const String&, bool = false);
  5085. // Properties:
  5086. /* readonly */
  5087. StringHash baseType;
  5088. /* readonly */
  5089. String category;
  5090. /* readonly */
  5091. String lastMessage;
  5092. int level;
  5093. bool quiet;
  5094. /* readonly */
  5095. int refs;
  5096. bool timeStamp;
  5097. /* readonly */
  5098. StringHash type;
  5099. /* readonly */
  5100. String typeName;
  5101. /* readonly */
  5102. int weakRefs;
  5103. };
  5104. class Material
  5105. {
  5106. // Methods:
  5107. Material Clone(const String& = String ( )) const;
  5108. ValueAnimation GetShaderParameterAnimation(const String&) const;
  5109. float GetShaderParameterAnimationSpeed(const String&) const;
  5110. WrapMode GetShaderParameterAnimationWrapMode(const String&) const;
  5111. bool Load(File);
  5112. bool Load(VectorBuffer&);
  5113. bool Load(const XMLElement&);
  5114. void RemoveShaderParameter(const String&);
  5115. bool Save(File) const;
  5116. bool Save(VectorBuffer&) const;
  5117. bool Save(XMLElement&) const;
  5118. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5119. void SetShaderParameterAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  5120. void SetShaderParameterAnimationSpeed(const String&, float);
  5121. void SetShaderParameterAnimationWrapMode(const String&, WrapMode);
  5122. void SetTechnique(uint, Technique, uint = 0, float = 0.0);
  5123. void SetUVTransform(const Vector2&, float, const Vector2&);
  5124. void SetUVTransform(const Vector2&, float, float);
  5125. void SortTechniques();
  5126. // Properties:
  5127. /* readonly */
  5128. StringHash baseType;
  5129. /* readonly */
  5130. String category;
  5131. CullMode cullMode;
  5132. BiasParameters depthBias;
  5133. /* readonly */
  5134. uint memoryUse;
  5135. String name;
  5136. uint numTechniques;
  5137. /* readonly */
  5138. bool occlusion;
  5139. /* readonly */
  5140. int refs;
  5141. Scene scene;
  5142. /* readonly */
  5143. Array<String> shaderParameterNames;
  5144. Array<Variant> shaderParameters;
  5145. CullMode shadowCullMode;
  5146. /* readonly */
  5147. Array<TechniqueEntry> techniqueEntries;
  5148. /* readonly */
  5149. Array<Technique> techniques;
  5150. Array<Texture> textures;
  5151. /* readonly */
  5152. StringHash type;
  5153. /* readonly */
  5154. String typeName;
  5155. /* readonly */
  5156. uint useTimer;
  5157. /* readonly */
  5158. int weakRefs;
  5159. };
  5160. class Matrix3
  5161. {
  5162. // Methods:
  5163. bool Equals(const Matrix3&) const;
  5164. Matrix3 Inverse() const;
  5165. Vector3 Scale() const;
  5166. Matrix3 Scaled(const Vector3&) const;
  5167. void SetScale(const Vector3&);
  5168. void SetScale(float);
  5169. String ToString() const;
  5170. Matrix3 Transpose() const;
  5171. // Properties:
  5172. float m00;
  5173. float m01;
  5174. float m02;
  5175. float m10;
  5176. float m11;
  5177. float m12;
  5178. float m20;
  5179. float m21;
  5180. float m22;
  5181. };
  5182. class Matrix3x4
  5183. {
  5184. // Methods:
  5185. void Decompose(Vector3&, Quaternion&, Vector3&) const;
  5186. bool Equals(const Matrix3x4&) const;
  5187. Matrix3x4 Inverse() const;
  5188. Quaternion Rotation() const;
  5189. Matrix3 RotationMatrix() const;
  5190. Vector3 Scale() const;
  5191. void SetRotation(const Matrix3&);
  5192. void SetScale(const Vector3&);
  5193. void SetScale(float);
  5194. void SetTranslation(const Vector3&);
  5195. Matrix3 ToMatrix3() const;
  5196. Matrix4 ToMatrix4() const;
  5197. String ToString() const;
  5198. Vector3 Translation() const;
  5199. // Properties:
  5200. float m00;
  5201. float m01;
  5202. float m02;
  5203. float m03;
  5204. float m10;
  5205. float m11;
  5206. float m12;
  5207. float m13;
  5208. float m20;
  5209. float m21;
  5210. float m22;
  5211. float m23;
  5212. };
  5213. class Matrix4
  5214. {
  5215. // Methods:
  5216. void Decompose(Vector3&, Quaternion&, Vector3&) const;
  5217. bool Equals(const Matrix4&) const;
  5218. Matrix4 Inverse() const;
  5219. Quaternion Rotation() const;
  5220. Matrix3 RotationMatrix() const;
  5221. Vector3 Scale() const;
  5222. void SetRotation(const Matrix3&);
  5223. void SetScale(const Vector3&);
  5224. void SetScale(float);
  5225. void SetTranslation(const Vector3&);
  5226. Matrix3 ToMatrix3() const;
  5227. String ToString() const;
  5228. Vector3 Translation() const;
  5229. Matrix4 Transpose() const;
  5230. // Properties:
  5231. float m00;
  5232. float m01;
  5233. float m02;
  5234. float m03;
  5235. float m10;
  5236. float m11;
  5237. float m12;
  5238. float m13;
  5239. float m20;
  5240. float m21;
  5241. float m22;
  5242. float m23;
  5243. float m30;
  5244. float m31;
  5245. float m32;
  5246. float m33;
  5247. };
  5248. class Menu
  5249. {
  5250. // Methods:
  5251. void AddChild(UIElement);
  5252. void ApplyAttributes();
  5253. void BringToFront();
  5254. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  5255. void DisableLayoutUpdate();
  5256. IntVector2 ElementToScreen(const IntVector2&);
  5257. void EnableLayoutUpdate();
  5258. uint FindChild(UIElement) const;
  5259. Variant GetAttribute(const String&) const;
  5260. ValueAnimation GetAttributeAnimation(const String&) const;
  5261. float GetAttributeAnimationSpeed(const String&) const;
  5262. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  5263. Variant GetAttributeDefault(const String&) const;
  5264. UIElement GetChild(const String&, bool = false) const;
  5265. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  5266. Array<UIElement> GetChildren(bool = false) const;
  5267. UIElement GetElementEventSender() const;
  5268. uint GetNumChildren(bool) const;
  5269. void InsertChild(uint, UIElement);
  5270. bool IsInside(IntVector2, bool);
  5271. bool IsInsideCombined(IntVector2, bool);
  5272. bool Load(File, bool = false);
  5273. bool Load(VectorBuffer&, bool = false);
  5274. bool LoadChildXML(XMLFile, XMLFile = null);
  5275. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  5276. bool LoadXML(File);
  5277. bool LoadXML(VectorBuffer&);
  5278. bool LoadXML(XMLFile, XMLFile);
  5279. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  5280. bool LoadXML(const XMLElement&, bool = false);
  5281. void MarkNetworkUpdate() const;
  5282. void Remove();
  5283. void RemoveAllChildren();
  5284. void RemoveChild(UIElement, uint = 0);
  5285. void RemoveChild(uint);
  5286. void RemoveInstanceDefault();
  5287. void ResetDeepEnabled();
  5288. void ResetToDefault();
  5289. bool Save(File) const;
  5290. bool Save(VectorBuffer&) const;
  5291. bool SaveXML(File);
  5292. bool SaveXML(VectorBuffer&);
  5293. bool SaveXML(XMLElement&) const;
  5294. IntVector2 ScreenToElement(const IntVector2&);
  5295. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5296. void SetAccelerator(int, int);
  5297. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  5298. bool SetAttribute(const String&, const Variant&);
  5299. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  5300. void SetAttributeAnimationSpeed(const String&, float);
  5301. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  5302. void SetDeepEnabled(bool);
  5303. void SetEnabledRecursive(bool);
  5304. void SetFixedHeight(int);
  5305. void SetFixedSize(int, int);
  5306. void SetFixedWidth(int);
  5307. void SetFullImageRect();
  5308. void SetHoverOffset(int, int);
  5309. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  5310. void SetMaxSize(int, int);
  5311. void SetMinSize(int, int);
  5312. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  5313. void SetPopupOffset(int, int);
  5314. void SetPosition(int, int);
  5315. void SetPressedChildOffset(int, int);
  5316. void SetPressedOffset(int, int);
  5317. void SetRepeat(float, float);
  5318. void SetSize(int, int);
  5319. bool SetStyle(const String&, XMLFile = null);
  5320. bool SetStyle(const XMLElement&);
  5321. bool SetStyleAuto(XMLFile = null);
  5322. void UpdateLayout();
  5323. const Variant& GetVar(const StringHash&);
  5324. // Properties:
  5325. /* readonly */
  5326. int acceleratorKey;
  5327. /* readonly */
  5328. int acceleratorQualifiers;
  5329. bool animationEnabled;
  5330. /* readonly */
  5331. Array<Variant> attributeDefaults;
  5332. /* readonly */
  5333. Array<AttributeInfo> attributeInfos;
  5334. Array<Variant> attributes;
  5335. /* readonly */
  5336. StringHash baseType;
  5337. BlendMode blendMode;
  5338. IntRect border;
  5339. bool bringToBack;
  5340. bool bringToFront;
  5341. /* readonly */
  5342. String category;
  5343. /* readonly */
  5344. IntVector2 childOffset;
  5345. /* readonly */
  5346. Array<UIElement> children;
  5347. IntRect clipBorder;
  5348. bool clipChildren;
  5349. /* writeonly */
  5350. Color color;
  5351. /* readonly */
  5352. bool colorGradient;
  5353. Array<Color> colors;
  5354. /* readonly */
  5355. IntRect combinedScreenRect;
  5356. XMLFile defaultStyle;
  5357. /* readonly */
  5358. float derivedOpacity;
  5359. /* readonly */
  5360. uint dragButtonCombo;
  5361. /* readonly */
  5362. int dragButtonCount;
  5363. uint dragDropMode;
  5364. bool editable;
  5365. bool elementEventSender;
  5366. bool enabled;
  5367. /* readonly */
  5368. bool enabledSelf;
  5369. /* readonly */
  5370. bool fixedHeight;
  5371. /* readonly */
  5372. bool fixedSize;
  5373. /* readonly */
  5374. bool fixedWidth;
  5375. bool focus;
  5376. FocusMode focusMode;
  5377. int height;
  5378. HorizontalAlignment horizontalAlignment;
  5379. IntVector2 hoverOffset;
  5380. /* readonly */
  5381. bool hovering;
  5382. IntRect imageBorder;
  5383. IntRect imageRect;
  5384. int indent;
  5385. int indentSpacing;
  5386. /* readonly */
  5387. int indentWidth;
  5388. bool internal;
  5389. IntRect layoutBorder;
  5390. Vector2 layoutFlexScale;
  5391. LayoutMode layoutMode;
  5392. int layoutSpacing;
  5393. int maxHeight;
  5394. IntVector2 maxSize;
  5395. int maxWidth;
  5396. int minHeight;
  5397. IntVector2 minSize;
  5398. int minWidth;
  5399. String name;
  5400. /* readonly */
  5401. uint numAllChildren;
  5402. /* readonly */
  5403. uint numAttributes;
  5404. /* readonly */
  5405. uint numChildren;
  5406. ObjectAnimation objectAnimation;
  5407. float opacity;
  5408. UIElement parent;
  5409. UIElement popup;
  5410. IntVector2 popupOffset;
  5411. IntVector2 position;
  5412. /* readonly */
  5413. bool pressed;
  5414. IntVector2 pressedChildOffset;
  5415. IntVector2 pressedOffset;
  5416. int priority;
  5417. /* readonly */
  5418. int refs;
  5419. float repeatDelay;
  5420. float repeatRate;
  5421. /* readonly */
  5422. UIElement root;
  5423. /* readonly */
  5424. IntVector2 screenPosition;
  5425. bool selected;
  5426. bool showPopup;
  5427. IntVector2 size;
  5428. bool sortChildren;
  5429. String style;
  5430. bool temporary;
  5431. Texture texture;
  5432. bool tiled;
  5433. TraversalMode traversalMode;
  5434. /* readonly */
  5435. StringHash type;
  5436. /* readonly */
  5437. String typeName;
  5438. bool useDerivedOpacity;
  5439. /* readonly */
  5440. VariantMap vars;
  5441. VerticalAlignment verticalAlignment;
  5442. bool visible;
  5443. /* readonly */
  5444. int weakRefs;
  5445. int width;
  5446. };
  5447. class MessageBox
  5448. {
  5449. // Methods:
  5450. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5451. // Properties:
  5452. /* readonly */
  5453. StringHash baseType;
  5454. /* readonly */
  5455. String category;
  5456. String message;
  5457. /* readonly */
  5458. int refs;
  5459. String title;
  5460. /* readonly */
  5461. StringHash type;
  5462. /* readonly */
  5463. String typeName;
  5464. /* readonly */
  5465. int weakRefs;
  5466. /* readonly */
  5467. UIElement window;
  5468. };
  5469. class Model
  5470. {
  5471. // Methods:
  5472. Model Clone(const String& = String ( )) const;
  5473. bool Load(File);
  5474. bool Load(VectorBuffer&);
  5475. bool Save(File) const;
  5476. bool Save(VectorBuffer&) const;
  5477. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5478. // Properties:
  5479. /* readonly */
  5480. StringHash baseType;
  5481. /* readonly */
  5482. BoundingBox boundingBox;
  5483. /* readonly */
  5484. String category;
  5485. /* readonly */
  5486. uint memoryUse;
  5487. String name;
  5488. /* readonly */
  5489. uint numGeometries;
  5490. /* readonly */
  5491. Array<uint> numGeometryLodLevels;
  5492. /* readonly */
  5493. uint numMorphs;
  5494. /* readonly */
  5495. int refs;
  5496. /* readonly */
  5497. Skeleton skeleton;
  5498. /* readonly */
  5499. StringHash type;
  5500. /* readonly */
  5501. String typeName;
  5502. /* readonly */
  5503. uint useTimer;
  5504. /* readonly */
  5505. int weakRefs;
  5506. };
  5507. class Navigable
  5508. {
  5509. // Methods:
  5510. void ApplyAttributes();
  5511. void DrawDebugGeometry(DebugRenderer, bool);
  5512. Variant GetAttribute(const String&) const;
  5513. ValueAnimation GetAttributeAnimation(const String&) const;
  5514. float GetAttributeAnimationSpeed(const String&) const;
  5515. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  5516. Variant GetAttributeDefault(const String&) const;
  5517. bool Load(File, bool = false);
  5518. bool Load(VectorBuffer&, bool = false);
  5519. bool LoadXML(const XMLElement&, bool = false);
  5520. void MarkNetworkUpdate() const;
  5521. void Remove();
  5522. void RemoveInstanceDefault();
  5523. void ResetToDefault();
  5524. bool Save(File) const;
  5525. bool Save(VectorBuffer&) const;
  5526. bool SaveXML(XMLElement&) const;
  5527. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5528. bool SetAttribute(const String&, const Variant&);
  5529. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  5530. void SetAttributeAnimationSpeed(const String&, float);
  5531. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  5532. // Properties:
  5533. bool animationEnabled;
  5534. /* readonly */
  5535. Array<Variant> attributeDefaults;
  5536. /* readonly */
  5537. Array<AttributeInfo> attributeInfos;
  5538. Array<Variant> attributes;
  5539. /* readonly */
  5540. StringHash baseType;
  5541. /* readonly */
  5542. String category;
  5543. bool enabled;
  5544. /* readonly */
  5545. bool enabledEffective;
  5546. /* readonly */
  5547. uint id;
  5548. /* readonly */
  5549. Node node;
  5550. /* readonly */
  5551. uint numAttributes;
  5552. ObjectAnimation objectAnimation;
  5553. bool recursive;
  5554. /* readonly */
  5555. int refs;
  5556. bool temporary;
  5557. /* readonly */
  5558. StringHash type;
  5559. /* readonly */
  5560. String typeName;
  5561. /* readonly */
  5562. int weakRefs;
  5563. };
  5564. class NavigationMesh
  5565. {
  5566. // Methods:
  5567. void ApplyAttributes();
  5568. bool Build();
  5569. bool Build(const BoundingBox&);
  5570. void DrawDebugGeometry(DebugRenderer, bool);
  5571. void DrawDebugGeometry(bool);
  5572. Vector3 FindNearestPoint(const Vector3&, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ));
  5573. Array<Vector3> FindPath(const Vector3&, const Vector3&, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ));
  5574. Variant GetAttribute(const String&) const;
  5575. ValueAnimation GetAttributeAnimation(const String&) const;
  5576. float GetAttributeAnimationSpeed(const String&) const;
  5577. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  5578. Variant GetAttributeDefault(const String&) const;
  5579. float GetDistanceToWall(const Vector3&, float, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ));
  5580. Vector3 GetRandomPoint();
  5581. Vector3 GetRandomPointInCircle(const Vector3&, float, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ));
  5582. bool Load(File, bool = false);
  5583. bool Load(VectorBuffer&, bool = false);
  5584. bool LoadXML(const XMLElement&, bool = false);
  5585. void MarkNetworkUpdate() const;
  5586. Vector3 MoveAlongSurface(const Vector3&, const Vector3&, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ), uint = 3);
  5587. Vector3 Raycast(const Vector3&, const Vector3&, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ));
  5588. void Remove();
  5589. void RemoveInstanceDefault();
  5590. void ResetToDefault();
  5591. bool Save(File) const;
  5592. bool Save(VectorBuffer&) const;
  5593. bool SaveXML(XMLElement&) const;
  5594. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5595. bool SetAttribute(const String&, const Variant&);
  5596. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  5597. void SetAttributeAnimationSpeed(const String&, float);
  5598. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  5599. // Properties:
  5600. float agentHeight;
  5601. float agentMaxClimb;
  5602. float agentMaxSlope;
  5603. float agentRadius;
  5604. bool animationEnabled;
  5605. /* readonly */
  5606. Array<Variant> attributeDefaults;
  5607. /* readonly */
  5608. Array<AttributeInfo> attributeInfos;
  5609. Array<Variant> attributes;
  5610. /* readonly */
  5611. StringHash baseType;
  5612. /* readonly */
  5613. BoundingBox boundingBox;
  5614. /* readonly */
  5615. String category;
  5616. float cellHeight;
  5617. float cellSize;
  5618. float detailSampleDistance;
  5619. float detailSampleMaxError;
  5620. float edgeMaxError;
  5621. float edgeMaxLength;
  5622. bool enabled;
  5623. /* readonly */
  5624. bool enabledEffective;
  5625. /* readonly */
  5626. uint id;
  5627. /* readonly */
  5628. bool initialized;
  5629. /* readonly */
  5630. Node node;
  5631. /* readonly */
  5632. uint numAttributes;
  5633. /* readonly */
  5634. IntVector2 numTiles;
  5635. ObjectAnimation objectAnimation;
  5636. Vector3 padding;
  5637. /* readonly */
  5638. int refs;
  5639. float regionMergeSize;
  5640. float regionMinSize;
  5641. bool temporary;
  5642. int tileSize;
  5643. /* readonly */
  5644. StringHash type;
  5645. /* readonly */
  5646. String typeName;
  5647. /* readonly */
  5648. int weakRefs;
  5649. /* readonly */
  5650. BoundingBox worldBoundingBox;
  5651. };
  5652. class Network
  5653. {
  5654. // Methods:
  5655. void BroadcastMessage(int, bool, bool, const VectorBuffer&, uint = 0);
  5656. void BroadcastRemoteEvent(Node, const String&, bool, const VariantMap& = VariantMap ( ));
  5657. void BroadcastRemoteEvent(Scene, const String&, bool, const VariantMap& = VariantMap ( ));
  5658. void BroadcastRemoteEvent(const String&, bool, const VariantMap& = VariantMap ( ));
  5659. bool CheckRemoteEvent(const String&) const;
  5660. bool Connect(const String&, uint16, Scene, const VariantMap& = VariantMap ( ));
  5661. void Disconnect(int = 0);
  5662. HttpRequest MakeHttpRequest(const String&, const String& = String ( ), Array<String> = null, const String& = String ( ));
  5663. void RegisterRemoteEvent(const String&) const;
  5664. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5665. void SendPackageToClients(Scene, PackageFile);
  5666. bool StartServer(uint16);
  5667. void StopServer();
  5668. void UnregisterAllRemoteEvents();
  5669. void UnregisterRemoteEvent(const String&) const;
  5670. // Properties:
  5671. /* readonly */
  5672. StringHash baseType;
  5673. /* readonly */
  5674. String category;
  5675. /* readonly */
  5676. Array<Connection> clientConnections;
  5677. String packageCacheDir;
  5678. /* readonly */
  5679. int refs;
  5680. /* readonly */
  5681. Connection serverConnection;
  5682. /* readonly */
  5683. bool serverRunning;
  5684. /* readonly */
  5685. StringHash type;
  5686. /* readonly */
  5687. String typeName;
  5688. int updateFps;
  5689. /* readonly */
  5690. int weakRefs;
  5691. };
  5692. class NetworkPriority
  5693. {
  5694. // Methods:
  5695. void ApplyAttributes();
  5696. void DrawDebugGeometry(DebugRenderer, bool);
  5697. Variant GetAttribute(const String&) const;
  5698. ValueAnimation GetAttributeAnimation(const String&) const;
  5699. float GetAttributeAnimationSpeed(const String&) const;
  5700. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  5701. Variant GetAttributeDefault(const String&) const;
  5702. bool Load(File, bool = false);
  5703. bool Load(VectorBuffer&, bool = false);
  5704. bool LoadXML(const XMLElement&, bool = false);
  5705. void MarkNetworkUpdate() const;
  5706. void Remove();
  5707. void RemoveInstanceDefault();
  5708. void ResetToDefault();
  5709. bool Save(File) const;
  5710. bool Save(VectorBuffer&) const;
  5711. bool SaveXML(XMLElement&) const;
  5712. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5713. bool SetAttribute(const String&, const Variant&);
  5714. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  5715. void SetAttributeAnimationSpeed(const String&, float);
  5716. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  5717. // Properties:
  5718. bool alwaysUpdateOwner;
  5719. bool animationEnabled;
  5720. /* readonly */
  5721. Array<Variant> attributeDefaults;
  5722. /* readonly */
  5723. Array<AttributeInfo> attributeInfos;
  5724. Array<Variant> attributes;
  5725. float basePriority;
  5726. /* readonly */
  5727. StringHash baseType;
  5728. /* readonly */
  5729. String category;
  5730. float distanceFactor;
  5731. bool enabled;
  5732. /* readonly */
  5733. bool enabledEffective;
  5734. /* readonly */
  5735. uint id;
  5736. float minPriority;
  5737. /* readonly */
  5738. Node node;
  5739. /* readonly */
  5740. uint numAttributes;
  5741. ObjectAnimation objectAnimation;
  5742. /* readonly */
  5743. int refs;
  5744. bool temporary;
  5745. /* readonly */
  5746. StringHash type;
  5747. /* readonly */
  5748. String typeName;
  5749. /* readonly */
  5750. int weakRefs;
  5751. };
  5752. class Node
  5753. {
  5754. // Methods:
  5755. void AddChild(Node, uint = M_MAX_UNSIGNED);
  5756. void ApplyAttributes();
  5757. Node Clone(CreateMode = REPLICATED);
  5758. Component CloneComponent(Component, CreateMode, uint = 0);
  5759. Component CloneComponent(Component, uint = 0);
  5760. Node CreateChild(const String& = String ( ), CreateMode = REPLICATED, uint = 0);
  5761. Component CreateComponent(const String&, CreateMode = REPLICATED, uint = 0);
  5762. ScriptObject CreateScriptObject(ScriptFile, const String&, CreateMode = REPLICATED);
  5763. ScriptObject CreateScriptObject(const String&, const String&, CreateMode = REPLICATED);
  5764. Variant GetAttribute(const String&) const;
  5765. ValueAnimation GetAttributeAnimation(const String&) const;
  5766. float GetAttributeAnimationSpeed(const String&) const;
  5767. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  5768. Variant GetAttributeDefault(const String&) const;
  5769. Node GetChild(const String&, bool = false) const;
  5770. Array<Node> GetChildren(bool = false) const;
  5771. Array<Node> GetChildrenWithComponent(const String&, bool = false) const;
  5772. Array<Node> GetChildrenWithScript(bool = false) const;
  5773. Array<Node> GetChildrenWithScript(const String&, bool = false) const;
  5774. Component GetComponent(const String&) const;
  5775. Array<Component> GetComponents() const;
  5776. Array<Component> GetComponents(const String&, bool = false) const;
  5777. Component GetOrCreateComponent(const String&, CreateMode = REPLICATED, uint = 0);
  5778. ScriptObject GetScriptObject() const;
  5779. ScriptObject GetScriptObject(const String&) const;
  5780. bool HasComponent(const String&) const;
  5781. bool Load(File, bool = false);
  5782. bool Load(VectorBuffer&, bool = false);
  5783. bool LoadXML(const XMLElement&, bool = false);
  5784. Vector3 LocalToWorld(const Vector3&) const;
  5785. Vector3 LocalToWorld(const Vector4&) const;
  5786. Vector2 LocalToWorld2D(const Vector2&) const;
  5787. bool LookAt(const Vector3&, const Vector3& = Vector3 ( 0 , 1 , 0 ), TransformSpace = TS_WORLD);
  5788. void MarkNetworkUpdate() const;
  5789. void Pitch(float, TransformSpace = TS_LOCAL);
  5790. void Remove();
  5791. void RemoveAllChildren();
  5792. void RemoveAllComponents();
  5793. void RemoveChild(Node);
  5794. void RemoveChildren(bool, bool, bool);
  5795. void RemoveComponent(Component);
  5796. void RemoveComponent(const String&);
  5797. void RemoveComponents(bool, bool);
  5798. void RemoveInstanceDefault();
  5799. void ResetDeepEnabled();
  5800. void ResetToDefault();
  5801. void Roll(float, TransformSpace = TS_LOCAL);
  5802. void Rotate(const Quaternion&, TransformSpace = TS_LOCAL);
  5803. void Rotate2D(float, TransformSpace = TS_LOCAL);
  5804. void RotateAround(const Vector3&, const Quaternion&, TransformSpace = TS_LOCAL);
  5805. void RotateAround2D(const Vector2&, float, TransformSpace = TS_LOCAL);
  5806. bool Save(File) const;
  5807. bool Save(VectorBuffer&) const;
  5808. bool SaveXML(File);
  5809. bool SaveXML(VectorBuffer&);
  5810. bool SaveXML(XMLElement&) const;
  5811. void Scale(const Vector3&);
  5812. void Scale(float);
  5813. void Scale2D(const Vector2&);
  5814. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5815. bool SetAttribute(const String&, const Variant&);
  5816. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  5817. void SetAttributeAnimationSpeed(const String&, float);
  5818. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  5819. void SetDeepEnabled(bool);
  5820. void SetEnabledRecursive(bool);
  5821. void SetPosition2D(float, float);
  5822. void SetScale(float);
  5823. void SetScale2D(float, float);
  5824. void SetTransform(const Vector3&, const Quaternion&);
  5825. void SetTransform(const Vector3&, const Quaternion&, const Vector3&);
  5826. void SetTransform(const Vector3&, const Quaternion&, float);
  5827. void SetTransform2D(const Vector2&, float);
  5828. void SetTransform2D(const Vector2&, float, const Vector2&);
  5829. void SetTransform2D(const Vector2&, float, float);
  5830. void SetWorldTransform(const Vector3&, const Quaternion&);
  5831. void SetWorldTransform(const Vector3&, const Quaternion&, const Vector3&);
  5832. void SetWorldTransform(const Vector3&, const Quaternion&, float);
  5833. void SetWorldTransform2D(const Vector2&, float);
  5834. void SetWorldTransform2D(const Vector2&, float, const Vector2&);
  5835. void SetWorldTransform2D(const Vector2&, float, float);
  5836. void Translate(const Vector3&, TransformSpace = TS_LOCAL);
  5837. void Translate2D(const Vector2&, TransformSpace = TS_LOCAL);
  5838. Vector3 WorldToLocal(const Vector3&) const;
  5839. Vector3 WorldToLocal(const Vector4&) const;
  5840. Vector2 WorldToLocal2D(const Vector2&) const;
  5841. void Yaw(float, TransformSpace = TS_LOCAL);
  5842. // Properties:
  5843. bool animationEnabled;
  5844. /* readonly */
  5845. Array<Variant> attributeDefaults;
  5846. /* readonly */
  5847. Array<AttributeInfo> attributeInfos;
  5848. Array<Variant> attributes;
  5849. /* readonly */
  5850. StringHash baseType;
  5851. /* readonly */
  5852. String category;
  5853. /* readonly */
  5854. Array<Node> children;
  5855. /* readonly */
  5856. Array<Component> components;
  5857. Vector3 direction;
  5858. bool enabled;
  5859. /* readonly */
  5860. bool enabledSelf;
  5861. /* readonly */
  5862. uint id;
  5863. String name;
  5864. /* readonly */
  5865. uint numAllChildren;
  5866. /* readonly */
  5867. uint numAttributes;
  5868. /* readonly */
  5869. uint numChildren;
  5870. /* readonly */
  5871. uint numComponents;
  5872. ObjectAnimation objectAnimation;
  5873. Connection owner;
  5874. Node parent;
  5875. Vector3 position;
  5876. Vector2 position2D;
  5877. /* readonly */
  5878. int refs;
  5879. /* readonly */
  5880. Vector3 right;
  5881. Quaternion rotation;
  5882. float rotation2D;
  5883. Vector3 scale;
  5884. Vector2 scale2D;
  5885. /* readonly */
  5886. Scene scene;
  5887. /* readonly */
  5888. ScriptObject scriptObject;
  5889. bool temporary;
  5890. /* readonly */
  5891. Matrix3x4 transform;
  5892. /* readonly */
  5893. StringHash type;
  5894. /* readonly */
  5895. String typeName;
  5896. /* readonly */
  5897. Vector3 up;
  5898. /* readonly */
  5899. VariantMap vars;
  5900. /* readonly */
  5901. int weakRefs;
  5902. Vector3 worldDirection;
  5903. Vector3 worldPosition;
  5904. Vector2 worldPosition2D;
  5905. /* readonly */
  5906. Vector3 worldRight;
  5907. Quaternion worldRotation;
  5908. float worldRotation2D;
  5909. Vector3 worldScale;
  5910. Vector2 worldScale2D;
  5911. /* readonly */
  5912. Matrix3x4 worldTransform;
  5913. /* readonly */
  5914. Vector3 worldUp;
  5915. };
  5916. class Object
  5917. {
  5918. // Methods:
  5919. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5920. // Properties:
  5921. /* readonly */
  5922. StringHash baseType;
  5923. /* readonly */
  5924. String category;
  5925. /* readonly */
  5926. int refs;
  5927. /* readonly */
  5928. StringHash type;
  5929. /* readonly */
  5930. String typeName;
  5931. /* readonly */
  5932. int weakRefs;
  5933. };
  5934. class ObjectAnimation
  5935. {
  5936. // Methods:
  5937. void AddAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  5938. ValueAnimation GetAttributeAnimation(const String&) const;
  5939. float GetAttributeAnimationSpeed(const String&) const;
  5940. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  5941. bool Load(File);
  5942. bool Load(VectorBuffer&);
  5943. void RemoveAttributeAnimation(ValueAnimation);
  5944. void RemoveAttributeAnimation(const String&);
  5945. bool Save(File) const;
  5946. bool Save(VectorBuffer&) const;
  5947. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5948. // Properties:
  5949. /* readonly */
  5950. Array<Variant> attributeAnimations;
  5951. /* readonly */
  5952. StringHash baseType;
  5953. /* readonly */
  5954. String category;
  5955. /* readonly */
  5956. uint memoryUse;
  5957. String name;
  5958. /* readonly */
  5959. int refs;
  5960. /* readonly */
  5961. Array<Variant> speeds;
  5962. /* readonly */
  5963. StringHash type;
  5964. /* readonly */
  5965. String typeName;
  5966. /* readonly */
  5967. uint useTimer;
  5968. /* readonly */
  5969. int weakRefs;
  5970. /* readonly */
  5971. Array<Variant> wrapModes;
  5972. };
  5973. class Octree
  5974. {
  5975. // Methods:
  5976. void AddManualDrawable(Drawable);
  5977. void ApplyAttributes();
  5978. void DrawDebugGeometry(DebugRenderer, bool);
  5979. void DrawDebugGeometry(bool) const;
  5980. Variant GetAttribute(const String&) const;
  5981. ValueAnimation GetAttributeAnimation(const String&) const;
  5982. float GetAttributeAnimationSpeed(const String&) const;
  5983. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  5984. Variant GetAttributeDefault(const String&) const;
  5985. Array<Node> GetDrawables(const BoundingBox&, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK);
  5986. Array<Node> GetDrawables(const Frustum&, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK);
  5987. Array<Node> GetDrawables(const Sphere&, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK);
  5988. Array<Node> GetDrawables(const Vector3&, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK);
  5989. bool Load(File, bool = false);
  5990. bool Load(VectorBuffer&, bool = false);
  5991. bool LoadXML(const XMLElement&, bool = false);
  5992. void MarkNetworkUpdate() const;
  5993. Array<RayQueryResult> Raycast(const Ray&, RayQueryLevel = RAY_TRIANGLE, float = M_INFINITY, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK) const;
  5994. RayQueryResult RaycastSingle(const Ray&, RayQueryLevel = RAY_TRIANGLE, float = M_INFINITY, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK) const;
  5995. void Remove();
  5996. void RemoveInstanceDefault();
  5997. void RemoveManualDrawable(Drawable);
  5998. void ResetToDefault();
  5999. bool Save(File) const;
  6000. bool Save(VectorBuffer&) const;
  6001. bool SaveXML(XMLElement&) const;
  6002. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6003. bool SetAttribute(const String&, const Variant&);
  6004. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  6005. void SetAttributeAnimationSpeed(const String&, float);
  6006. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  6007. void SetSize(const BoundingBox&, uint);
  6008. // Properties:
  6009. bool animationEnabled;
  6010. /* readonly */
  6011. Array<Variant> attributeDefaults;
  6012. /* readonly */
  6013. Array<AttributeInfo> attributeInfos;
  6014. Array<Variant> attributes;
  6015. /* readonly */
  6016. StringHash baseType;
  6017. /* readonly */
  6018. String category;
  6019. bool enabled;
  6020. /* readonly */
  6021. bool enabledEffective;
  6022. /* readonly */
  6023. uint id;
  6024. /* readonly */
  6025. Node node;
  6026. /* readonly */
  6027. uint numAttributes;
  6028. /* readonly */
  6029. uint numLevels;
  6030. ObjectAnimation objectAnimation;
  6031. /* readonly */
  6032. int refs;
  6033. bool temporary;
  6034. /* readonly */
  6035. StringHash type;
  6036. /* readonly */
  6037. String typeName;
  6038. /* readonly */
  6039. int weakRefs;
  6040. /* readonly */
  6041. BoundingBox worldBoundingBox;
  6042. };
  6043. class OffMeshConnection
  6044. {
  6045. // Methods:
  6046. void ApplyAttributes();
  6047. void DrawDebugGeometry(DebugRenderer, bool);
  6048. Variant GetAttribute(const String&) const;
  6049. ValueAnimation GetAttributeAnimation(const String&) const;
  6050. float GetAttributeAnimationSpeed(const String&) const;
  6051. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  6052. Variant GetAttributeDefault(const String&) const;
  6053. bool Load(File, bool = false);
  6054. bool Load(VectorBuffer&, bool = false);
  6055. bool LoadXML(const XMLElement&, bool = false);
  6056. void MarkNetworkUpdate() const;
  6057. void Remove();
  6058. void RemoveInstanceDefault();
  6059. void ResetToDefault();
  6060. bool Save(File) const;
  6061. bool Save(VectorBuffer&) const;
  6062. bool SaveXML(XMLElement&) const;
  6063. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6064. bool SetAttribute(const String&, const Variant&);
  6065. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  6066. void SetAttributeAnimationSpeed(const String&, float);
  6067. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  6068. // Properties:
  6069. bool animationEnabled;
  6070. /* readonly */
  6071. Array<Variant> attributeDefaults;
  6072. /* readonly */
  6073. Array<AttributeInfo> attributeInfos;
  6074. Array<Variant> attributes;
  6075. /* readonly */
  6076. StringHash baseType;
  6077. bool bidirectional;
  6078. /* readonly */
  6079. String category;
  6080. bool enabled;
  6081. /* readonly */
  6082. bool enabledEffective;
  6083. Node endPoint;
  6084. /* readonly */
  6085. uint id;
  6086. /* readonly */
  6087. Node node;
  6088. /* readonly */
  6089. uint numAttributes;
  6090. ObjectAnimation objectAnimation;
  6091. float radius;
  6092. /* readonly */
  6093. int refs;
  6094. bool temporary;
  6095. /* readonly */
  6096. StringHash type;
  6097. /* readonly */
  6098. String typeName;
  6099. /* readonly */
  6100. int weakRefs;
  6101. };
  6102. class PackageFile
  6103. {
  6104. // Methods:
  6105. bool Exists(const String&) const;
  6106. Array<String> GetEntryNames() const;
  6107. bool Open(const String&, uint = 0) const;
  6108. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6109. bool compressed() const;
  6110. // Properties:
  6111. /* readonly */
  6112. StringHash baseType;
  6113. /* readonly */
  6114. String category;
  6115. /* readonly */
  6116. uint checksum;
  6117. /* readonly */
  6118. String name;
  6119. /* readonly */
  6120. uint numFiles;
  6121. /* readonly */
  6122. int refs;
  6123. /* readonly */
  6124. uint totalSize;
  6125. /* readonly */
  6126. StringHash type;
  6127. /* readonly */
  6128. String typeName;
  6129. /* readonly */
  6130. int weakRefs;
  6131. };
  6132. class ParticleEffect
  6133. {
  6134. // Methods:
  6135. ColorFrame GetColorFrame(uint) const;
  6136. TextureFrame GetTextureFrame(uint) const;
  6137. bool Load(File);
  6138. bool Load(VectorBuffer&);
  6139. bool Save(File) const;
  6140. bool Save(VectorBuffer&) const;
  6141. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6142. void SetColorFrame(uint, ColorFrame) const;
  6143. void SetTextureFrame(uint, TextureFrame) const;
  6144. // Properties:
  6145. float activeTime;
  6146. float animationLodBias;
  6147. /* readonly */
  6148. StringHash baseType;
  6149. /* readonly */
  6150. String category;
  6151. Vector3 constantForce;
  6152. float dampingForce;
  6153. Vector3 emitterSize;
  6154. EmitterType emitterType;
  6155. float inactiveTime;
  6156. Material material;
  6157. Vector3 maxDirection;
  6158. float maxEmissionRate;
  6159. Vector3 maxParticleSize;
  6160. float maxRotation;
  6161. float maxRotationSpeed;
  6162. float maxTimeToLive;
  6163. float maxVelocity;
  6164. /* readonly */
  6165. uint memoryUse;
  6166. Vector3 minDirection;
  6167. float minEmissionRate;
  6168. Vector2 minParticleSize;
  6169. float minRotation;
  6170. float minRotationSpeed;
  6171. float minTimeToLive;
  6172. float minVelocity;
  6173. String name;
  6174. /* readonly */
  6175. uint numColorFrames;
  6176. uint numParticles;
  6177. /* readonly */
  6178. uint numTextureFrames;
  6179. /* readonly */
  6180. int refs;
  6181. bool relative;
  6182. bool scaled;
  6183. float sizeAdd;
  6184. float sizeMul;
  6185. bool sorted;
  6186. /* readonly */
  6187. StringHash type;
  6188. /* readonly */
  6189. String typeName;
  6190. bool updateInvisible;
  6191. /* readonly */
  6192. uint useTimer;
  6193. /* readonly */
  6194. int weakRefs;
  6195. };
  6196. class ParticleEffect2D
  6197. {
  6198. // Methods:
  6199. bool Load(File);
  6200. bool Load(VectorBuffer&);
  6201. bool Save(File) const;
  6202. bool Save(VectorBuffer&) const;
  6203. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6204. // Properties:
  6205. /* readonly */
  6206. StringHash baseType;
  6207. /* readonly */
  6208. String category;
  6209. /* readonly */
  6210. uint memoryUse;
  6211. String name;
  6212. /* readonly */
  6213. int refs;
  6214. /* readonly */
  6215. StringHash type;
  6216. /* readonly */
  6217. String typeName;
  6218. /* readonly */
  6219. uint useTimer;
  6220. /* readonly */
  6221. int weakRefs;
  6222. };
  6223. class ParticleEmitter
  6224. {
  6225. // Methods:
  6226. void ApplyAttributes();
  6227. void ApplyEffect();
  6228. void Commit();
  6229. void DrawDebugGeometry(DebugRenderer, bool);
  6230. Variant GetAttribute(const String&) const;
  6231. ValueAnimation GetAttributeAnimation(const String&) const;
  6232. float GetAttributeAnimationSpeed(const String&) const;
  6233. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  6234. Variant GetAttributeDefault(const String&) const;
  6235. bool IsInView(Camera) const;
  6236. bool Load(File, bool = false);
  6237. bool Load(VectorBuffer&, bool = false);
  6238. bool LoadXML(const XMLElement&, bool = false);
  6239. void MarkNetworkUpdate() const;
  6240. void Remove();
  6241. void RemoveAllParticles();
  6242. void RemoveInstanceDefault();
  6243. void Reset();
  6244. void ResetEmissionTimer();
  6245. void ResetToDefault();
  6246. bool Save(File) const;
  6247. bool Save(VectorBuffer&) const;
  6248. bool SaveXML(XMLElement&) const;
  6249. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6250. bool SetAttribute(const String&, const Variant&);
  6251. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  6252. void SetAttributeAnimationSpeed(const String&, float);
  6253. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  6254. // Properties:
  6255. bool animationEnabled;
  6256. float animationLodBias;
  6257. /* readonly */
  6258. Array<Variant> attributeDefaults;
  6259. /* readonly */
  6260. Array<AttributeInfo> attributeInfos;
  6261. Array<Variant> attributes;
  6262. /* readonly */
  6263. StringHash baseType;
  6264. /* readonly */
  6265. Array<Billboard> billboards;
  6266. /* readonly */
  6267. BoundingBox boundingBox;
  6268. bool castShadows;
  6269. /* readonly */
  6270. String category;
  6271. float drawDistance;
  6272. ParticleEffect effect;
  6273. bool emitting;
  6274. bool enabled;
  6275. /* readonly */
  6276. bool enabledEffective;
  6277. FaceCameraMode faceCameraMode;
  6278. /* readonly */
  6279. uint id;
  6280. /* readonly */
  6281. bool inView;
  6282. uint lightMask;
  6283. float lodBias;
  6284. Material material;
  6285. uint maxLights;
  6286. /* readonly */
  6287. Node node;
  6288. /* readonly */
  6289. uint numAttributes;
  6290. uint numBillboards;
  6291. uint numParticles;
  6292. ObjectAnimation objectAnimation;
  6293. bool occludee;
  6294. bool occluder;
  6295. /* readonly */
  6296. int refs;
  6297. bool relative;
  6298. bool scaled;
  6299. bool serializeParticles;
  6300. float shadowDistance;
  6301. uint shadowMask;
  6302. bool sorted;
  6303. bool temporary;
  6304. /* readonly */
  6305. StringHash type;
  6306. /* readonly */
  6307. String typeName;
  6308. uint viewMask;
  6309. /* readonly */
  6310. int weakRefs;
  6311. /* readonly */
  6312. BoundingBox worldBoundingBox;
  6313. /* readonly */
  6314. Zone zone;
  6315. uint zoneMask;
  6316. };
  6317. class ParticleEmitter2D
  6318. {
  6319. // Methods:
  6320. void ApplyAttributes();
  6321. void DrawDebugGeometry(DebugRenderer, bool);
  6322. Variant GetAttribute(const String&) const;
  6323. ValueAnimation GetAttributeAnimation(const String&) const;
  6324. float GetAttributeAnimationSpeed(const String&) const;
  6325. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  6326. Variant GetAttributeDefault(const String&) const;
  6327. bool IsInView(Camera) const;
  6328. bool Load(File, bool = false);
  6329. bool Load(VectorBuffer&, bool = false);
  6330. bool LoadXML(const XMLElement&, bool = false);
  6331. void MarkNetworkUpdate() const;
  6332. void Remove();
  6333. void RemoveInstanceDefault();
  6334. void ResetToDefault();
  6335. bool Save(File) const;
  6336. bool Save(VectorBuffer&) const;
  6337. bool SaveXML(XMLElement&) const;
  6338. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6339. bool SetAttribute(const String&, const Variant&);
  6340. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  6341. void SetAttributeAnimationSpeed(const String&, float);
  6342. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  6343. // Properties:
  6344. bool animationEnabled;
  6345. /* readonly */
  6346. Array<Variant> attributeDefaults;
  6347. /* readonly */
  6348. Array<AttributeInfo> attributeInfos;
  6349. Array<Variant> attributes;
  6350. /* readonly */
  6351. StringHash baseType;
  6352. BlendMode blendMode;
  6353. /* readonly */
  6354. BoundingBox boundingBox;
  6355. bool castShadows;
  6356. /* readonly */
  6357. String category;
  6358. float drawDistance;
  6359. ParticleEffect2D effect;
  6360. bool enabled;
  6361. /* readonly */
  6362. bool enabledEffective;
  6363. /* readonly */
  6364. uint id;
  6365. /* readonly */
  6366. bool inView;
  6367. int layer;
  6368. uint lightMask;
  6369. float lodBias;
  6370. uint maxLights;
  6371. /* readonly */
  6372. Node node;
  6373. /* readonly */
  6374. uint numAttributes;
  6375. ObjectAnimation objectAnimation;
  6376. bool occludee;
  6377. bool occluder;
  6378. int orderInLayer;
  6379. /* readonly */
  6380. int refs;
  6381. float shadowDistance;
  6382. uint shadowMask;
  6383. Sprite2D sprite;
  6384. bool temporary;
  6385. Texture2D texture;
  6386. /* readonly */
  6387. StringHash type;
  6388. /* readonly */
  6389. String typeName;
  6390. uint viewMask;
  6391. /* readonly */
  6392. int weakRefs;
  6393. /* readonly */
  6394. BoundingBox worldBoundingBox;
  6395. uint zoneMask;
  6396. };
  6397. class Pass
  6398. {
  6399. // Properties:
  6400. bool alphaMask;
  6401. BlendMode blendMode;
  6402. CompareMode depthTestMode;
  6403. bool depthWrite;
  6404. bool desktop;
  6405. PassLightingMode lightingMode;
  6406. String pixelShader;
  6407. String pixelShaderDefines;
  6408. /* readonly */
  6409. int refs;
  6410. bool sm3;
  6411. String vertexShader;
  6412. String vertexShaderDefines;
  6413. /* readonly */
  6414. int weakRefs;
  6415. };
  6416. class PhysicsRaycastResult
  6417. {
  6418. // Properties:
  6419. /* readonly */
  6420. RigidBody body;
  6421. float distance;
  6422. Vector3 normal;
  6423. Vector3 position;
  6424. };
  6425. class PhysicsRaycastResult2D
  6426. {
  6427. // Properties:
  6428. /* readonly */
  6429. RigidBody2D body;
  6430. float distance;
  6431. Vector2 normal;
  6432. Vector2 position;
  6433. };
  6434. class PhysicsWorld
  6435. {
  6436. // Methods:
  6437. void ApplyAttributes();
  6438. PhysicsRaycastResult ConvexCast(CollisionShape, const Vector3&, const Quaternion&, const Vector3&, const Quaternion&, uint = 0xffff);
  6439. void DrawDebugGeometry(DebugRenderer, bool);
  6440. void DrawDebugGeometry(bool);
  6441. Variant GetAttribute(const String&) const;
  6442. ValueAnimation GetAttributeAnimation(const String&) const;
  6443. float GetAttributeAnimationSpeed(const String&) const;
  6444. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  6445. Variant GetAttributeDefault(const String&) const;
  6446. Array<RigidBody> GetRigidBodies(RigidBody);
  6447. Array<RigidBody> GetRigidBodies(const BoundingBox&, uint = 0xffff);
  6448. Array<RigidBody> GetRigidBodies(const Sphere&, uint = 0xffff);
  6449. bool Load(File, bool = false);
  6450. bool Load(VectorBuffer&, bool = false);
  6451. bool LoadXML(const XMLElement&, bool = false);
  6452. void MarkNetworkUpdate() const;
  6453. Array<PhysicsRaycastResult> Raycast(const Ray&, float = M_INFINITY, uint = 0xffff);
  6454. PhysicsRaycastResult RaycastSingle(const Ray&, float = M_INFINITY, uint = 0xffff);
  6455. void Remove();
  6456. void RemoveCachedGeometry(Model);
  6457. void RemoveInstanceDefault();
  6458. void ResetToDefault();
  6459. bool Save(File) const;
  6460. bool Save(VectorBuffer&) const;
  6461. bool SaveXML(XMLElement&) const;
  6462. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6463. bool SetAttribute(const String&, const Variant&);
  6464. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  6465. void SetAttributeAnimationSpeed(const String&, float);
  6466. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  6467. PhysicsRaycastResult SphereCast(const Ray&, float, float = M_INFINITY, uint = 0xffff);
  6468. void Update(float);
  6469. void UpdateCollisions();
  6470. // Properties:
  6471. bool animationEnabled;
  6472. /* readonly */
  6473. Array<Variant> attributeDefaults;
  6474. /* readonly */
  6475. Array<AttributeInfo> attributeInfos;
  6476. Array<Variant> attributes;
  6477. /* readonly */
  6478. StringHash baseType;
  6479. /* readonly */
  6480. String category;
  6481. bool enabled;
  6482. /* readonly */
  6483. bool enabledEffective;
  6484. int fps;
  6485. Vector3 gravity;
  6486. /* readonly */
  6487. uint id;
  6488. bool internalEdge;
  6489. bool interpolation;
  6490. int maxSubSteps;
  6491. /* readonly */
  6492. Node node;
  6493. /* readonly */
  6494. uint numAttributes;
  6495. int numIterations;
  6496. ObjectAnimation objectAnimation;
  6497. /* readonly */
  6498. int refs;
  6499. bool splitImpulse;
  6500. bool temporary;
  6501. /* readonly */
  6502. StringHash type;
  6503. /* readonly */
  6504. String typeName;
  6505. /* readonly */
  6506. int weakRefs;
  6507. };
  6508. class PhysicsWorld2D
  6509. {
  6510. // Methods:
  6511. void ApplyAttributes();
  6512. void DrawDebugGeometry() const;
  6513. void DrawDebugGeometry(DebugRenderer, bool);
  6514. Variant GetAttribute(const String&) const;
  6515. ValueAnimation GetAttributeAnimation(const String&) const;
  6516. float GetAttributeAnimationSpeed(const String&) const;
  6517. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  6518. Variant GetAttributeDefault(const String&) const;
  6519. Array<RigidBody2D> GetRigidBodies(const Rect&, uint = 0xffff);
  6520. RigidBody2D GetRigidBody(const Vector2&, uint = 0xffff);
  6521. RigidBody2D GetRigidBody(int, int, uint = 0xffff);
  6522. bool Load(File, bool = false);
  6523. bool Load(VectorBuffer&, bool = false);
  6524. bool LoadXML(const XMLElement&, bool = false);
  6525. void MarkNetworkUpdate() const;
  6526. Array<PhysicsRaycastResult2D> Raycast(const Vector2&, const Vector2&, uint = 0xffff);
  6527. PhysicsRaycastResult2D RaycastSingle(const Vector2&, const Vector2&, uint = 0xffff);
  6528. void Remove();
  6529. void RemoveInstanceDefault();
  6530. void ResetToDefault();
  6531. bool Save(File) const;
  6532. bool Save(VectorBuffer&) const;
  6533. bool SaveXML(XMLElement&) const;
  6534. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6535. bool SetAttribute(const String&, const Variant&);
  6536. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  6537. void SetAttributeAnimationSpeed(const String&, float);
  6538. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  6539. // Properties:
  6540. bool allowSleeping;
  6541. bool animationEnabled;
  6542. /* readonly */
  6543. Array<Variant> attributeDefaults;
  6544. /* readonly */
  6545. Array<AttributeInfo> attributeInfos;
  6546. Array<Variant> attributes;
  6547. bool autoClearForces;
  6548. /* readonly */
  6549. StringHash baseType;
  6550. /* readonly */
  6551. String category;
  6552. bool continuousPhysics;
  6553. bool drawAabb;
  6554. bool drawCenterOfMass;
  6555. bool drawJoint;
  6556. bool drawPair;
  6557. bool drawShape;
  6558. bool enabled;
  6559. /* readonly */
  6560. bool enabledEffective;
  6561. Vector2 gravity;
  6562. /* readonly */
  6563. uint id;
  6564. /* readonly */
  6565. Node node;
  6566. /* readonly */
  6567. uint numAttributes;
  6568. ObjectAnimation objectAnimation;
  6569. uint positionIterations;
  6570. /* readonly */
  6571. int refs;
  6572. bool subStepping;
  6573. bool temporary;
  6574. /* readonly */
  6575. StringHash type;
  6576. /* readonly */
  6577. String typeName;
  6578. uint velocityIterations;
  6579. bool warmStarting;
  6580. /* readonly */
  6581. int weakRefs;
  6582. };
  6583. class Plane
  6584. {
  6585. // Methods:
  6586. void Define(const Vector3&, const Vector3&);
  6587. void Define(const Vector3&, const Vector3&, const Vector3&);
  6588. void Define(const Vector4&);
  6589. float Distance(const Vector3&) const;
  6590. Vector3 Project(const Vector3&) const;
  6591. Vector3 Reflect(const Vector3&) const;
  6592. Vector4 ToVector4() const;
  6593. void Transform(const Matrix3&);
  6594. void Transform(const Matrix3x4&);
  6595. void Transform(const Matrix4&);
  6596. Plane Transformed(const Matrix3&) const;
  6597. Plane Transformed(const Matrix3x4&) const;
  6598. Plane Transformed(const Matrix4&) const;
  6599. // Properties:
  6600. Vector3 absNormal;
  6601. float d;
  6602. Vector3 normal;
  6603. /* readonly */
  6604. Matrix3x4 reflectionMatrix;
  6605. };
  6606. class Polyhedron
  6607. {
  6608. // Methods:
  6609. void AddFace(const Vector3&, const Vector3&, const Vector3&);
  6610. void AddFace(const Vector3&, const Vector3&, const Vector3&, const Vector3&);
  6611. void AddFace(const Array<Vector3>);
  6612. void Clear();
  6613. void Clip(const BoundingBox&);
  6614. void Clip(const Frustum&);
  6615. void Define(const BoundingBox&);
  6616. void Define(const Frustum&);
  6617. void Transform(const Matrix3&);
  6618. void Transform(const Matrix3x4&);
  6619. Polyhedron Transformed(const Matrix3&) const;
  6620. Polyhedron Transformed(const Matrix3x4&) const;
  6621. // Properties:
  6622. /* readonly */
  6623. Array<Array<Vector3>> face;
  6624. /* readonly */
  6625. uint numFaces;
  6626. };
  6627. class PropertySet2D
  6628. {
  6629. // Methods:
  6630. bool HasProperty(const String&) const;
  6631. const String& GetProperty(const String&) const;
  6632. // Properties:
  6633. /* readonly */
  6634. int refs;
  6635. /* readonly */
  6636. int weakRefs;
  6637. };
  6638. class Quaternion
  6639. {
  6640. // Methods:
  6641. float DotProduct(const Quaternion&) const;
  6642. bool Equals(const Quaternion&) const;
  6643. void FromAngleAxis(float, const Vector3&);
  6644. void FromAxes(const Vector3&, const Vector3&, const Vector3&);
  6645. void FromEulerAngles(float, float, float);
  6646. bool FromLookRotation(const Vector3&, const Vector3&);
  6647. void FromRotationTo(const Vector3&, const Vector3&);
  6648. Quaternion Inverse() const;
  6649. bool IsNaN() const;
  6650. Quaternion Nlerp(Quaternion, float, bool) const;
  6651. void Normalize();
  6652. Quaternion Normalized() const;
  6653. Quaternion Slerp(Quaternion, float) const;
  6654. String ToString() const;
  6655. // Properties:
  6656. /* readonly */
  6657. Vector3 eulerAngles;
  6658. /* readonly */
  6659. float pitch;
  6660. /* readonly */
  6661. float roll;
  6662. float w;
  6663. float x;
  6664. float y;
  6665. /* readonly */
  6666. float yaw;
  6667. float z;
  6668. };
  6669. class Ray
  6670. {
  6671. // Methods:
  6672. Vector3 ClosestPoint(const Ray&) const;
  6673. void Define(const Vector3&, const Vector3&);
  6674. float Distance(const Vector3&) const;
  6675. float HitDistance(const BoundingBox&) const;
  6676. float HitDistance(const Frustum&, bool = true) const;
  6677. float HitDistance(const Sphere&) const;
  6678. float HitDistance(const Vector3&, const Vector3&, const Vector3&) const;
  6679. Vector3 Project(const Vector3&) const;
  6680. Ray Transformed(const Matrix3x4&) const;
  6681. // Properties:
  6682. Vector3 direction;
  6683. Vector3 origin;
  6684. };
  6685. class RayQueryResult
  6686. {
  6687. // Properties:
  6688. float distance;
  6689. /* readonly */
  6690. Drawable drawable;
  6691. /* readonly */
  6692. Node node;
  6693. Vector3 normal;
  6694. Vector3 position;
  6695. uint subObject;
  6696. };
  6697. class Rect
  6698. {
  6699. // Methods:
  6700. void Clear();
  6701. void Clip(const Rect&);
  6702. void Define(const Vector2&);
  6703. void Define(const Vector2&, const Vector2&);
  6704. bool Equals(const Rect&) const;
  6705. Intersection IsInside(const Vector2&) const;
  6706. void Merge(const Rect&);
  6707. void Merge(const Vector2&);
  6708. Vector4 ToVector4() const;
  6709. // Properties:
  6710. float bottom;
  6711. /* readonly */
  6712. Vector2 center;
  6713. bool defined;
  6714. /* readonly */
  6715. Vector2 halfSize;
  6716. float left;
  6717. Vector2 max;
  6718. Vector2 min;
  6719. float right;
  6720. /* readonly */
  6721. Vector2 size;
  6722. float top;
  6723. };
  6724. class RefCounted
  6725. {
  6726. // Properties:
  6727. /* readonly */
  6728. int refs;
  6729. /* readonly */
  6730. int weakRefs;
  6731. };
  6732. class RenderPath
  6733. {
  6734. // Methods:
  6735. void AddCommand(const RenderPathCommand&);
  6736. void AddRenderTarget(const RenderTargetInfo&);
  6737. bool Append(XMLFile);
  6738. RenderPath Clone();
  6739. void InsertCommand(uint, const RenderPathCommand&);
  6740. bool Load(XMLFile);
  6741. void RemoveCommand(uint);
  6742. void RemoveCommands(const String&);
  6743. void RemoveRenderTarget(const String&);
  6744. void RemoveRenderTarget(uint);
  6745. void RemoveRenderTargts(const String&);
  6746. void SetEnabled(const String&, bool);
  6747. void ToggleEnabled(const String&);
  6748. // Properties:
  6749. Array<RenderPathCommand> commands;
  6750. /* readonly */
  6751. uint numCommands;
  6752. /* readonly */
  6753. uint numRenderTargets;
  6754. /* readonly */
  6755. int refs;
  6756. Array<RenderTargetInfo> renderTargets;
  6757. Array<Variant> shaderParameters;
  6758. /* readonly */
  6759. int weakRefs;
  6760. };
  6761. class RenderPathCommand
  6762. {
  6763. // Methods:
  6764. void RemoveShaderParameter(const String&);
  6765. // Properties:
  6766. Color clearColor;
  6767. float clearDepth;
  6768. uint clearFlags;
  6769. uint clearStencil;
  6770. bool enabled;
  6771. bool markToStencil;
  6772. String metadata;
  6773. uint numOutputs;
  6774. Array<String> outputNames;
  6775. String pass;
  6776. String pixelShaderDefines;
  6777. String pixelShaderName;
  6778. Array<Variant> shaderParameters;
  6779. RenderCommandSortMode sortMode;
  6780. String tag;
  6781. Array<String> textureNames;
  6782. RenderCommandType type;
  6783. bool useFogColor;
  6784. bool useLitBase;
  6785. bool vertexLights;
  6786. String vertexShaderDefines;
  6787. String vertexShaderName;
  6788. };
  6789. class RenderSurface
  6790. {
  6791. // Methods:
  6792. void QueueUpdate();
  6793. // Properties:
  6794. /* readonly */
  6795. int height;
  6796. RenderSurface linkedDepthStencil;
  6797. RenderSurface linkedRenderTarget;
  6798. uint numViewports;
  6799. /* readonly */
  6800. Texture parentTexture;
  6801. RenderSurfaceUpdateMode updateMode;
  6802. /* readonly */
  6803. TextureUsage usage;
  6804. Array<Viewport> viewports;
  6805. /* readonly */
  6806. int width;
  6807. };
  6808. class RenderTargetInfo
  6809. {
  6810. // Properties:
  6811. bool enabled;
  6812. bool filtered;
  6813. uint format;
  6814. String name;
  6815. bool persistent;
  6816. bool sRGB;
  6817. Vector2 size;
  6818. RenderTargetSizeMode sizeMode;
  6819. String tag;
  6820. };
  6821. class Renderer
  6822. {
  6823. // Methods:
  6824. void DrawDebugGeometry(bool) const;
  6825. void ReloadShaders() const;
  6826. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6827. void SetDefaultRenderPath(XMLFile);
  6828. // Properties:
  6829. /* readonly */
  6830. StringHash baseType;
  6831. /* readonly */
  6832. String category;
  6833. /* readonly */
  6834. Material defaultLightRamp;
  6835. /* readonly */
  6836. Material defaultLightSpot;
  6837. /* readonly */
  6838. Material defaultMaterial;
  6839. RenderPath defaultRenderPath;
  6840. /* readonly */
  6841. Zone defaultZone;
  6842. bool drawShadows;
  6843. bool dynamicInstancing;
  6844. bool hdrRendering;
  6845. int materialQuality;
  6846. int maxInstanceTriangles;
  6847. int maxOccluderTriangles;
  6848. int maxShadowMaps;
  6849. int maxSortedInstances;
  6850. int minInstances;
  6851. float mobileShadowBiasAdd;
  6852. float mobileShadowBiasMul;
  6853. /* readonly */
  6854. uint numBatches;
  6855. /* readonly */
  6856. Array<uint> numGeometries;
  6857. /* readonly */
  6858. Array<uint> numLights;
  6859. /* readonly */
  6860. Array<uint> numOccluders;
  6861. /* readonly */
  6862. uint numPrimitives;
  6863. /* readonly */
  6864. Array<uint> numShadowMaps;
  6865. uint numViewports;
  6866. /* readonly */
  6867. uint numViews;
  6868. float occluderSizeThreshold;
  6869. int occlusionBufferSize;
  6870. /* readonly */
  6871. int refs;
  6872. bool reuseShadowMaps;
  6873. int shadowMapSize;
  6874. int shadowQuality;
  6875. bool specularLighting;
  6876. int textureAnisotropy;
  6877. TextureFilterMode textureFilterMode;
  6878. int textureQuality;
  6879. /* readonly */
  6880. StringHash type;
  6881. /* readonly */
  6882. String typeName;
  6883. Array<Viewport> viewports;
  6884. /* readonly */
  6885. int weakRefs;
  6886. };
  6887. class Resource
  6888. {
  6889. // Methods:
  6890. bool Load(File);
  6891. bool Load(VectorBuffer&);
  6892. bool Save(File) const;
  6893. bool Save(VectorBuffer&) const;
  6894. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6895. // Properties:
  6896. /* readonly */
  6897. StringHash baseType;
  6898. /* readonly */
  6899. String category;
  6900. /* readonly */
  6901. uint memoryUse;
  6902. String name;
  6903. /* readonly */
  6904. int refs;
  6905. /* readonly */
  6906. StringHash type;
  6907. /* readonly */
  6908. String typeName;
  6909. /* readonly */
  6910. uint useTimer;
  6911. /* readonly */
  6912. int weakRefs;
  6913. };
  6914. class ResourceCache
  6915. {
  6916. // Methods:
  6917. bool AddManualResource(Resource);
  6918. void AddPackageFile(PackageFile, uint = M_MAX_UNSIGNED);
  6919. bool AddResourceDir(const String&, uint = M_MAX_UNSIGNED);
  6920. bool BackgroundLoadResource(const String&, const String&, bool = true);
  6921. bool Exists(const String&) const;
  6922. File GetFile(const String&);
  6923. String GetPreferredResourceDir(const String&) const;
  6924. Resource GetResource(StringHash, const String&, bool = true);
  6925. Resource GetResource(const String&, const String&, bool = true);
  6926. String GetResourceFileName(const String&) const;
  6927. void ReleaseAllResources(bool = false);
  6928. void ReleaseResource(const String&, const String&, bool = false);
  6929. void ReleaseResources(StringHash, bool = false);
  6930. void ReleaseResources(const String&, bool = false);
  6931. void ReleaseResources(const String&, const String&, bool = false);
  6932. bool ReloadResource(Resource);
  6933. void ReloadResourceWithDependencies(const String&);
  6934. void RemovePackageFile(PackageFile, bool = true, bool = false);
  6935. void RemovePackageFile(const String&, bool = true, bool = false);
  6936. void RemoveResourceDir(const String&);
  6937. String SanitateResourceDirName(const String&) const;
  6938. String SanitateResourceName(const String&) const;
  6939. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6940. // Properties:
  6941. bool autoReloadResources;
  6942. /* readonly */
  6943. StringHash baseType;
  6944. /* readonly */
  6945. String category;
  6946. int finishBackgroundResourcesMs;
  6947. Array<uint> memoryBudget;
  6948. /* readonly */
  6949. Array<uint> memoryUse;
  6950. /* readonly */
  6951. uint numBackgroundLoadResources;
  6952. /* readonly */
  6953. Array<PackageFile> packageFiles;
  6954. /* readonly */
  6955. int refs;
  6956. /* readonly */
  6957. Array<String> resourceDirs;
  6958. bool returnFailedResources;
  6959. /* readonly */
  6960. bool seachPackagesFirst;
  6961. /* writeonly */
  6962. bool searchPackagesFirst;
  6963. /* readonly */
  6964. uint totalMemoryUse;
  6965. /* readonly */
  6966. StringHash type;
  6967. /* readonly */
  6968. String typeName;
  6969. /* readonly */
  6970. int weakRefs;
  6971. };
  6972. class ResourceRef
  6973. {
  6974. // Properties:
  6975. String name;
  6976. StringHash type;
  6977. };
  6978. class ResourceRefList
  6979. {
  6980. // Methods:
  6981. void Resize(uint);
  6982. // Properties:
  6983. /* readonly */
  6984. bool empty;
  6985. /* readonly */
  6986. uint length;
  6987. Array<String> names;
  6988. StringHash type;
  6989. };
  6990. class RigidBody
  6991. {
  6992. // Methods:
  6993. void Activate();
  6994. void ApplyAttributes();
  6995. void ApplyForce(const Vector3&);
  6996. void ApplyForce(const Vector3&, const Vector3&);
  6997. void ApplyImpulse(const Vector3&);
  6998. void ApplyImpulse(const Vector3&, const Vector3&);
  6999. void ApplyTorque(const Vector3&);
  7000. void ApplyTorqueImpulse(const Vector3&);
  7001. void DisableMassUpdate();
  7002. void DrawDebugGeometry(DebugRenderer, bool);
  7003. void EnableMassUpdate();
  7004. Variant GetAttribute(const String&) const;
  7005. ValueAnimation GetAttributeAnimation(const String&) const;
  7006. float GetAttributeAnimationSpeed(const String&) const;
  7007. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  7008. Variant GetAttributeDefault(const String&) const;
  7009. Vector3 GetVelocityAtPoint(const Vector3&) const;
  7010. bool Load(File, bool = false);
  7011. bool Load(VectorBuffer&, bool = false);
  7012. bool LoadXML(const XMLElement&, bool = false);
  7013. void MarkNetworkUpdate() const;
  7014. void ReAddBodyToWorld();
  7015. void Remove();
  7016. void RemoveInstanceDefault();
  7017. void ResetForces();
  7018. void ResetToDefault();
  7019. bool Save(File) const;
  7020. bool Save(VectorBuffer&) const;
  7021. bool SaveXML(XMLElement&) const;
  7022. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7023. bool SetAttribute(const String&, const Variant&);
  7024. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  7025. void SetAttributeAnimationSpeed(const String&, float);
  7026. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  7027. void SetCollisionLayerAndMask(uint, uint);
  7028. void SetTransform(const Vector3&, const Quaternion&);
  7029. // Properties:
  7030. /* readonly */
  7031. bool active;
  7032. float angularDamping;
  7033. Vector3 angularFactor;
  7034. float angularRestThreshold;
  7035. Vector3 angularVelocity;
  7036. bool animationEnabled;
  7037. Vector3 anisotropicFriction;
  7038. /* readonly */
  7039. Array<Variant> attributeDefaults;
  7040. /* readonly */
  7041. Array<AttributeInfo> attributeInfos;
  7042. Array<Variant> attributes;
  7043. /* readonly */
  7044. StringHash baseType;
  7045. /* readonly */
  7046. String category;
  7047. float ccdMotionThreshold;
  7048. float ccdRadius;
  7049. /* readonly */
  7050. Vector3 centerOfMass;
  7051. /* readonly */
  7052. Array<RigidBody> collidingBodies;
  7053. CollisionEventMode collisionEventMode;
  7054. uint collisionLayer;
  7055. uint collisionMask;
  7056. float contactProcessingThreshold;
  7057. bool enabled;
  7058. /* readonly */
  7059. bool enabledEffective;
  7060. float friction;
  7061. Vector3 gravityOverride;
  7062. /* readonly */
  7063. uint id;
  7064. bool kinematic;
  7065. float linearDamping;
  7066. Vector3 linearFactor;
  7067. float linearRestThreshold;
  7068. Vector3 linearVelocity;
  7069. float mass;
  7070. /* readonly */
  7071. Node node;
  7072. /* readonly */
  7073. uint numAttributes;
  7074. ObjectAnimation objectAnimation;
  7075. Vector3 position;
  7076. /* readonly */
  7077. int refs;
  7078. float restitution;
  7079. float rollingFriction;
  7080. Quaternion rotation;
  7081. bool temporary;
  7082. bool trigger;
  7083. /* readonly */
  7084. StringHash type;
  7085. /* readonly */
  7086. String typeName;
  7087. bool useGravity;
  7088. /* readonly */
  7089. int weakRefs;
  7090. };
  7091. class RigidBody2D
  7092. {
  7093. // Methods:
  7094. void ApplyAngularImpulse(float, bool);
  7095. void ApplyAttributes();
  7096. void ApplyForce(const Vector2&, const Vector2&, bool);
  7097. void ApplyForceToCenter(const Vector2&, bool);
  7098. void ApplyLinearImpulse(const Vector2&, const Vector2&, bool);
  7099. void ApplyTorque(float, bool);
  7100. void DrawDebugGeometry(DebugRenderer, bool);
  7101. Variant GetAttribute(const String&) const;
  7102. ValueAnimation GetAttributeAnimation(const String&) const;
  7103. float GetAttributeAnimationSpeed(const String&) const;
  7104. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  7105. Variant GetAttributeDefault(const String&) const;
  7106. bool Load(File, bool = false);
  7107. bool Load(VectorBuffer&, bool = false);
  7108. bool LoadXML(const XMLElement&, bool = false);
  7109. void MarkNetworkUpdate() const;
  7110. void Remove();
  7111. void RemoveInstanceDefault();
  7112. void ResetToDefault();
  7113. bool Save(File) const;
  7114. bool Save(VectorBuffer&) const;
  7115. bool SaveXML(XMLElement&) const;
  7116. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7117. bool SetAttribute(const String&, const Variant&);
  7118. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  7119. void SetAttributeAnimationSpeed(const String&, float);
  7120. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  7121. // Properties:
  7122. bool allowSleep;
  7123. float angularDamping;
  7124. bool animationEnabled;
  7125. /* readonly */
  7126. Array<Variant> attributeDefaults;
  7127. /* readonly */
  7128. Array<AttributeInfo> attributeInfos;
  7129. Array<Variant> attributes;
  7130. bool awake;
  7131. /* readonly */
  7132. StringHash baseType;
  7133. BodyType2D bodyType;
  7134. bool bullet;
  7135. /* readonly */
  7136. String category;
  7137. bool enabled;
  7138. /* readonly */
  7139. bool enabledEffective;
  7140. bool fixedRotation;
  7141. float gravityScale;
  7142. /* readonly */
  7143. uint id;
  7144. float inertia;
  7145. float linearDamping;
  7146. Vector2 linearVelocity;
  7147. float mass;
  7148. Vector2 massCenter;
  7149. /* readonly */
  7150. Node node;
  7151. /* readonly */
  7152. uint numAttributes;
  7153. ObjectAnimation objectAnimation;
  7154. /* readonly */
  7155. int refs;
  7156. bool temporary;
  7157. /* readonly */
  7158. StringHash type;
  7159. /* readonly */
  7160. String typeName;
  7161. bool useFixtureMass;
  7162. /* readonly */
  7163. int weakRefs;
  7164. };
  7165. class Scene
  7166. {
  7167. // Methods:
  7168. void AddChild(Node, uint = M_MAX_UNSIGNED);
  7169. void AddRequiredPackageFile(PackageFile);
  7170. void ApplyAttributes();
  7171. void Clear(bool = true, bool = true);
  7172. void ClearRequiredPackageFiles();
  7173. Component CloneComponent(Component, CreateMode, uint = 0);
  7174. Component CloneComponent(Component, uint = 0);
  7175. Node CreateChild(const String& = String ( ), CreateMode = REPLICATED, uint = 0);
  7176. Component CreateComponent(const String&, CreateMode = REPLICATED, uint = 0);
  7177. ScriptObject CreateScriptObject(ScriptFile, const String&, CreateMode = REPLICATED);
  7178. ScriptObject CreateScriptObject(const String&, const String&, CreateMode = REPLICATED);
  7179. Variant GetAttribute(const String&) const;
  7180. ValueAnimation GetAttributeAnimation(const String&) const;
  7181. float GetAttributeAnimationSpeed(const String&) const;
  7182. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  7183. Variant GetAttributeDefault(const String&) const;
  7184. Node GetChild(const String&, bool = false) const;
  7185. Array<Node> GetChildren(bool = false) const;
  7186. Array<Node> GetChildrenWithComponent(const String&, bool = false) const;
  7187. Array<Node> GetChildrenWithScript(bool = false) const;
  7188. Array<Node> GetChildrenWithScript(const String&, bool = false) const;
  7189. Component GetComponent(const String&) const;
  7190. Component GetComponent(uint);
  7191. Array<Component> GetComponents() const;
  7192. Array<Component> GetComponents(const String&, bool = false) const;
  7193. Node GetNode(uint);
  7194. Component GetOrCreateComponent(const String&, CreateMode = REPLICATED, uint = 0);
  7195. ScriptObject GetScriptObject() const;
  7196. ScriptObject GetScriptObject(const String&) const;
  7197. bool HasComponent(const String&) const;
  7198. Node Instantiate(File, const Vector3&, const Quaternion&, CreateMode = REPLICATED);
  7199. Node Instantiate(VectorBuffer&, const Vector3&, const Quaternion&, CreateMode = REPLICATED);
  7200. Node InstantiateXML(File, const Vector3&, const Quaternion&, CreateMode = REPLICATED);
  7201. Node InstantiateXML(VectorBuffer&, const Vector3&, const Quaternion&, CreateMode = REPLICATED);
  7202. Node InstantiateXML(XMLFile, const Vector3&, const Quaternion&, CreateMode = REPLICATED);
  7203. Node InstantiateXML(const XMLElement&, const Vector3&, const Quaternion&, CreateMode = REPLICATED);
  7204. bool Load(File, bool = false);
  7205. bool Load(VectorBuffer&, bool = false);
  7206. bool LoadAsync(File, LoadMode = LOAD_SCENE_AND_RESOURCES);
  7207. bool LoadAsyncXML(File, LoadMode = LOAD_SCENE_AND_RESOURCES);
  7208. bool LoadXML(File);
  7209. bool LoadXML(VectorBuffer&);
  7210. bool LoadXML(const XMLElement&, bool = false);
  7211. Vector3 LocalToWorld(const Vector3&) const;
  7212. Vector3 LocalToWorld(const Vector4&) const;
  7213. Vector2 LocalToWorld2D(const Vector2&) const;
  7214. bool LookAt(const Vector3&, const Vector3& = Vector3 ( 0 , 1 , 0 ), TransformSpace = TS_WORLD);
  7215. void MarkNetworkUpdate() const;
  7216. void Pitch(float, TransformSpace = TS_LOCAL);
  7217. void RegisterVar(const String&);
  7218. void Remove();
  7219. void RemoveAllChildren();
  7220. void RemoveAllComponents();
  7221. void RemoveChild(Node);
  7222. void RemoveChildren(bool, bool, bool);
  7223. void RemoveComponent(Component);
  7224. void RemoveComponent(const String&);
  7225. void RemoveComponents(bool, bool);
  7226. void RemoveInstanceDefault();
  7227. void ResetToDefault();
  7228. void Roll(float, TransformSpace = TS_LOCAL);
  7229. void Rotate(const Quaternion&, TransformSpace = TS_LOCAL);
  7230. void Rotate2D(float, TransformSpace = TS_LOCAL);
  7231. void RotateAround(const Vector3&, const Quaternion&, TransformSpace = TS_LOCAL);
  7232. void RotateAround2D(const Vector2&, float, TransformSpace = TS_LOCAL);
  7233. bool Save(File) const;
  7234. bool Save(VectorBuffer&) const;
  7235. bool SaveXML(File);
  7236. bool SaveXML(VectorBuffer&);
  7237. bool SaveXML(XMLElement&) const;
  7238. void Scale(const Vector3&);
  7239. void Scale(float);
  7240. void Scale2D(const Vector2&);
  7241. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7242. bool SetAttribute(const String&, const Variant&);
  7243. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  7244. void SetAttributeAnimationSpeed(const String&, float);
  7245. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  7246. void SetPosition2D(float, float);
  7247. void SetScale(float);
  7248. void SetScale2D(float, float);
  7249. void SetTransform(const Vector3&, const Quaternion&);
  7250. void SetTransform(const Vector3&, const Quaternion&, const Vector3&);
  7251. void SetTransform(const Vector3&, const Quaternion&, float);
  7252. void SetTransform2D(const Vector2&, float);
  7253. void SetTransform2D(const Vector2&, float, const Vector2&);
  7254. void SetTransform2D(const Vector2&, float, float);
  7255. void SetWorldTransform(const Vector3&, const Quaternion&);
  7256. void SetWorldTransform(const Vector3&, const Quaternion&, const Vector3&);
  7257. void SetWorldTransform(const Vector3&, const Quaternion&, float);
  7258. void SetWorldTransform2D(const Vector2&, float);
  7259. void SetWorldTransform2D(const Vector2&, float, const Vector2&);
  7260. void SetWorldTransform2D(const Vector2&, float, float);
  7261. void StopAsyncLoading();
  7262. const String& GetVarName(StringHash) const;
  7263. void Translate(const Vector3&, TransformSpace = TS_LOCAL);
  7264. void Translate2D(const Vector2&, TransformSpace = TS_LOCAL);
  7265. void UnregisterAllVars(const String&);
  7266. void UnregisterVar(const String&);
  7267. void Update(float);
  7268. Vector3 WorldToLocal(const Vector3&) const;
  7269. Vector3 WorldToLocal(const Vector4&) const;
  7270. Vector2 WorldToLocal2D(const Vector2&) const;
  7271. void Yaw(float, TransformSpace = TS_LOCAL);
  7272. // Properties:
  7273. bool animationEnabled;
  7274. /* readonly */
  7275. LoadMode asyncLoadMode;
  7276. /* readonly */
  7277. bool asyncLoading;
  7278. int asyncLoadingMs;
  7279. /* readonly */
  7280. float asyncProgress;
  7281. /* readonly */
  7282. Array<Variant> attributeDefaults;
  7283. /* readonly */
  7284. Array<AttributeInfo> attributeInfos;
  7285. Array<Variant> attributes;
  7286. /* readonly */
  7287. StringHash baseType;
  7288. /* readonly */
  7289. String category;
  7290. /* readonly */
  7291. uint checksum;
  7292. /* readonly */
  7293. Array<Node> children;
  7294. /* readonly */
  7295. Array<Component> components;
  7296. /* readonly */
  7297. DebugRenderer debugRenderer;
  7298. Vector3 direction;
  7299. float elapsedTime;
  7300. /* readonly */
  7301. String fileName;
  7302. /* readonly */
  7303. uint id;
  7304. String name;
  7305. /* readonly */
  7306. uint numAllChildren;
  7307. /* readonly */
  7308. uint numAttributes;
  7309. /* readonly */
  7310. uint numChildren;
  7311. /* readonly */
  7312. uint numComponents;
  7313. ObjectAnimation objectAnimation;
  7314. /* readonly */
  7315. Octree octree;
  7316. Node parent;
  7317. /* readonly */
  7318. PhysicsWorld physicsWorld;
  7319. /* readonly */
  7320. PhysicsWorld2D physicsWorld2D;
  7321. Vector3 position;
  7322. Vector2 position2D;
  7323. /* readonly */
  7324. int refs;
  7325. /* readonly */
  7326. Array<PackageFile> requiredPackageFiles;
  7327. /* readonly */
  7328. Vector3 right;
  7329. Quaternion rotation;
  7330. float rotation2D;
  7331. Vector3 scale;
  7332. Vector2 scale2D;
  7333. /* readonly */
  7334. ScriptObject scriptObject;
  7335. float smoothingConstant;
  7336. float snapThreshold;
  7337. bool temporary;
  7338. float timeScale;
  7339. /* readonly */
  7340. Matrix3x4 transform;
  7341. /* readonly */
  7342. StringHash type;
  7343. /* readonly */
  7344. String typeName;
  7345. /* readonly */
  7346. Vector3 up;
  7347. bool updateEnabled;
  7348. /* readonly */
  7349. VariantMap vars;
  7350. /* readonly */
  7351. int weakRefs;
  7352. Vector3 worldDirection;
  7353. Vector3 worldPosition;
  7354. Vector2 worldPosition2D;
  7355. /* readonly */
  7356. Vector3 worldRight;
  7357. Quaternion worldRotation;
  7358. float worldRotation2D;
  7359. Vector3 worldScale;
  7360. Vector2 worldScale2D;
  7361. /* readonly */
  7362. Matrix3x4 worldTransform;
  7363. /* readonly */
  7364. Vector3 worldUp;
  7365. };
  7366. class Script
  7367. {
  7368. // Methods:
  7369. void DumpAPI(DumpMode = DOXYGEN);
  7370. bool Execute(const String&);
  7371. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7372. // Properties:
  7373. /* readonly */
  7374. StringHash baseType;
  7375. /* readonly */
  7376. String category;
  7377. Scene defaultScene;
  7378. ScriptFile defaultScriptFile;
  7379. bool executeConsoleCommands;
  7380. /* readonly */
  7381. int refs;
  7382. /* readonly */
  7383. StringHash type;
  7384. /* readonly */
  7385. String typeName;
  7386. /* readonly */
  7387. int weakRefs;
  7388. };
  7389. class ScriptFile
  7390. {
  7391. // Methods:
  7392. void ClearDelayedExecute(const String& = String ( ));
  7393. void DelayedExecute(float, bool, const String&);
  7394. void DelayedExecute(float, bool, const String&, const Array<Variant>);
  7395. bool Execute(const String&, const Array<Variant>);
  7396. bool Load(File);
  7397. bool Load(VectorBuffer&);
  7398. bool Save(File) const;
  7399. bool Save(VectorBuffer&) const;
  7400. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7401. // Properties:
  7402. /* readonly */
  7403. StringHash baseType;
  7404. /* readonly */
  7405. String category;
  7406. /* readonly */
  7407. bool compiled;
  7408. /* readonly */
  7409. uint memoryUse;
  7410. String name;
  7411. /* readonly */
  7412. int refs;
  7413. /* readonly */
  7414. StringHash type;
  7415. /* readonly */
  7416. String typeName;
  7417. /* readonly */
  7418. uint useTimer;
  7419. /* readonly */
  7420. int weakRefs;
  7421. };
  7422. class ScriptInstance
  7423. {
  7424. // Methods:
  7425. void ApplyAttributes();
  7426. void ClearDelayedExecute(const String& = String ( ));
  7427. bool CreateObject(ScriptFile, const String&);
  7428. void DelayedExecute(float, bool, const String&);
  7429. void DelayedExecute(float, bool, const String&, const Array<Variant>);
  7430. void DrawDebugGeometry(DebugRenderer, bool);
  7431. bool Execute(const String&);
  7432. bool Execute(const String&, const Array<Variant>);
  7433. Variant GetAttribute(const String&) const;
  7434. ValueAnimation GetAttributeAnimation(const String&) const;
  7435. float GetAttributeAnimationSpeed(const String&) const;
  7436. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  7437. Variant GetAttributeDefault(const String&) const;
  7438. bool Load(File, bool = false);
  7439. bool Load(VectorBuffer&, bool = false);
  7440. bool LoadXML(const XMLElement&, bool = false);
  7441. void MarkNetworkUpdate() const;
  7442. void Remove();
  7443. void RemoveInstanceDefault();
  7444. void ResetToDefault();
  7445. bool Save(File) const;
  7446. bool Save(VectorBuffer&) const;
  7447. bool SaveXML(XMLElement&) const;
  7448. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7449. bool SetAttribute(const String&, const Variant&);
  7450. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  7451. void SetAttributeAnimationSpeed(const String&, float);
  7452. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  7453. // Properties:
  7454. bool animationEnabled;
  7455. /* readonly */
  7456. Array<Variant> attributeDefaults;
  7457. /* readonly */
  7458. Array<AttributeInfo> attributeInfos;
  7459. Array<Variant> attributes;
  7460. /* readonly */
  7461. StringHash baseType;
  7462. /* readonly */
  7463. String category;
  7464. String className;
  7465. bool enabled;
  7466. /* readonly */
  7467. bool enabledEffective;
  7468. /* readonly */
  7469. uint id;
  7470. /* readonly */
  7471. Node node;
  7472. /* readonly */
  7473. uint numAttributes;
  7474. ObjectAnimation objectAnimation;
  7475. /* readonly */
  7476. int refs;
  7477. ScriptFile scriptFile;
  7478. /* readonly */
  7479. ScriptObject scriptObject;
  7480. bool temporary;
  7481. /* readonly */
  7482. StringHash type;
  7483. /* readonly */
  7484. String typeName;
  7485. /* readonly */
  7486. int weakRefs;
  7487. };
  7488. class ScriptObject
  7489. {
  7490. };
  7491. class ScrollBar
  7492. {
  7493. // Methods:
  7494. void AddChild(UIElement);
  7495. void ApplyAttributes();
  7496. void BringToFront();
  7497. void ChangeValue(float);
  7498. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  7499. void DisableLayoutUpdate();
  7500. IntVector2 ElementToScreen(const IntVector2&);
  7501. void EnableLayoutUpdate();
  7502. uint FindChild(UIElement) const;
  7503. Variant GetAttribute(const String&) const;
  7504. ValueAnimation GetAttributeAnimation(const String&) const;
  7505. float GetAttributeAnimationSpeed(const String&) const;
  7506. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  7507. Variant GetAttributeDefault(const String&) const;
  7508. UIElement GetChild(const String&, bool = false) const;
  7509. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  7510. Array<UIElement> GetChildren(bool = false) const;
  7511. UIElement GetElementEventSender() const;
  7512. uint GetNumChildren(bool) const;
  7513. void InsertChild(uint, UIElement);
  7514. bool IsInside(IntVector2, bool);
  7515. bool IsInsideCombined(IntVector2, bool);
  7516. bool Load(File, bool = false);
  7517. bool Load(VectorBuffer&, bool = false);
  7518. bool LoadChildXML(XMLFile, XMLFile = null);
  7519. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  7520. bool LoadXML(File);
  7521. bool LoadXML(VectorBuffer&);
  7522. bool LoadXML(XMLFile, XMLFile);
  7523. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  7524. bool LoadXML(const XMLElement&, bool = false);
  7525. void MarkNetworkUpdate() const;
  7526. void Remove();
  7527. void RemoveAllChildren();
  7528. void RemoveChild(UIElement, uint = 0);
  7529. void RemoveChild(uint);
  7530. void RemoveInstanceDefault();
  7531. void ResetDeepEnabled();
  7532. void ResetToDefault();
  7533. bool Save(File) const;
  7534. bool Save(VectorBuffer&) const;
  7535. bool SaveXML(File);
  7536. bool SaveXML(VectorBuffer&);
  7537. bool SaveXML(XMLElement&) const;
  7538. IntVector2 ScreenToElement(const IntVector2&);
  7539. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7540. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  7541. bool SetAttribute(const String&, const Variant&);
  7542. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  7543. void SetAttributeAnimationSpeed(const String&, float);
  7544. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  7545. void SetDeepEnabled(bool);
  7546. void SetEnabledRecursive(bool);
  7547. void SetFixedHeight(int);
  7548. void SetFixedSize(int, int);
  7549. void SetFixedWidth(int);
  7550. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  7551. void SetMaxSize(int, int);
  7552. void SetMinSize(int, int);
  7553. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  7554. void SetPosition(int, int);
  7555. void SetSize(int, int);
  7556. bool SetStyle(const String&, XMLFile = null);
  7557. bool SetStyle(const XMLElement&);
  7558. bool SetStyleAuto(XMLFile = null);
  7559. void StepBack();
  7560. void StepForward();
  7561. void UpdateLayout();
  7562. const Variant& GetVar(const StringHash&);
  7563. // Properties:
  7564. bool animationEnabled;
  7565. /* readonly */
  7566. Array<Variant> attributeDefaults;
  7567. /* readonly */
  7568. Array<AttributeInfo> attributeInfos;
  7569. Array<Variant> attributes;
  7570. /* readonly */
  7571. Button backButton;
  7572. /* readonly */
  7573. StringHash baseType;
  7574. bool bringToBack;
  7575. bool bringToFront;
  7576. /* readonly */
  7577. String category;
  7578. /* readonly */
  7579. IntVector2 childOffset;
  7580. /* readonly */
  7581. Array<UIElement> children;
  7582. IntRect clipBorder;
  7583. bool clipChildren;
  7584. /* writeonly */
  7585. Color color;
  7586. /* readonly */
  7587. bool colorGradient;
  7588. Array<Color> colors;
  7589. /* readonly */
  7590. IntRect combinedScreenRect;
  7591. XMLFile defaultStyle;
  7592. /* readonly */
  7593. float derivedOpacity;
  7594. /* readonly */
  7595. uint dragButtonCombo;
  7596. /* readonly */
  7597. int dragButtonCount;
  7598. uint dragDropMode;
  7599. bool editable;
  7600. /* readonly */
  7601. float effectiveScrollStep;
  7602. bool elementEventSender;
  7603. bool enabled;
  7604. /* readonly */
  7605. bool enabledSelf;
  7606. /* readonly */
  7607. bool fixedHeight;
  7608. /* readonly */
  7609. bool fixedSize;
  7610. /* readonly */
  7611. bool fixedWidth;
  7612. bool focus;
  7613. FocusMode focusMode;
  7614. /* readonly */
  7615. Button forwardButton;
  7616. int height;
  7617. HorizontalAlignment horizontalAlignment;
  7618. /* readonly */
  7619. bool hovering;
  7620. int indent;
  7621. int indentSpacing;
  7622. /* readonly */
  7623. int indentWidth;
  7624. bool internal;
  7625. IntRect layoutBorder;
  7626. Vector2 layoutFlexScale;
  7627. LayoutMode layoutMode;
  7628. int layoutSpacing;
  7629. int maxHeight;
  7630. IntVector2 maxSize;
  7631. int maxWidth;
  7632. int minHeight;
  7633. IntVector2 minSize;
  7634. int minWidth;
  7635. String name;
  7636. /* readonly */
  7637. uint numAllChildren;
  7638. /* readonly */
  7639. uint numAttributes;
  7640. /* readonly */
  7641. uint numChildren;
  7642. ObjectAnimation objectAnimation;
  7643. float opacity;
  7644. Orientation orientation;
  7645. UIElement parent;
  7646. IntVector2 position;
  7647. int priority;
  7648. float range;
  7649. /* readonly */
  7650. int refs;
  7651. /* readonly */
  7652. UIElement root;
  7653. /* readonly */
  7654. IntVector2 screenPosition;
  7655. float scrollStep;
  7656. bool selected;
  7657. IntVector2 size;
  7658. /* readonly */
  7659. Slider slider;
  7660. bool sortChildren;
  7661. float stepFactor;
  7662. String style;
  7663. bool temporary;
  7664. TraversalMode traversalMode;
  7665. /* readonly */
  7666. StringHash type;
  7667. /* readonly */
  7668. String typeName;
  7669. bool useDerivedOpacity;
  7670. float value;
  7671. /* readonly */
  7672. VariantMap vars;
  7673. VerticalAlignment verticalAlignment;
  7674. bool visible;
  7675. /* readonly */
  7676. int weakRefs;
  7677. int width;
  7678. };
  7679. class ScrollView
  7680. {
  7681. // Methods:
  7682. void AddChild(UIElement);
  7683. void ApplyAttributes();
  7684. void BringToFront();
  7685. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  7686. void DisableLayoutUpdate();
  7687. IntVector2 ElementToScreen(const IntVector2&);
  7688. void EnableLayoutUpdate();
  7689. uint FindChild(UIElement) const;
  7690. Variant GetAttribute(const String&) const;
  7691. ValueAnimation GetAttributeAnimation(const String&) const;
  7692. float GetAttributeAnimationSpeed(const String&) const;
  7693. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  7694. Variant GetAttributeDefault(const String&) const;
  7695. UIElement GetChild(const String&, bool = false) const;
  7696. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  7697. Array<UIElement> GetChildren(bool = false) const;
  7698. UIElement GetElementEventSender() const;
  7699. uint GetNumChildren(bool) const;
  7700. void InsertChild(uint, UIElement);
  7701. bool IsInside(IntVector2, bool);
  7702. bool IsInsideCombined(IntVector2, bool);
  7703. bool Load(File, bool = false);
  7704. bool Load(VectorBuffer&, bool = false);
  7705. bool LoadChildXML(XMLFile, XMLFile = null);
  7706. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  7707. bool LoadXML(File);
  7708. bool LoadXML(VectorBuffer&);
  7709. bool LoadXML(XMLFile, XMLFile);
  7710. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  7711. bool LoadXML(const XMLElement&, bool = false);
  7712. void MarkNetworkUpdate() const;
  7713. void Remove();
  7714. void RemoveAllChildren();
  7715. void RemoveChild(UIElement, uint = 0);
  7716. void RemoveChild(uint);
  7717. void RemoveInstanceDefault();
  7718. void ResetDeepEnabled();
  7719. void ResetToDefault();
  7720. bool Save(File) const;
  7721. bool Save(VectorBuffer&) const;
  7722. bool SaveXML(File);
  7723. bool SaveXML(VectorBuffer&);
  7724. bool SaveXML(XMLElement&) const;
  7725. IntVector2 ScreenToElement(const IntVector2&);
  7726. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7727. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  7728. bool SetAttribute(const String&, const Variant&);
  7729. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  7730. void SetAttributeAnimationSpeed(const String&, float);
  7731. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  7732. void SetDeepEnabled(bool);
  7733. void SetEnabledRecursive(bool);
  7734. void SetFixedHeight(int);
  7735. void SetFixedSize(int, int);
  7736. void SetFixedWidth(int);
  7737. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  7738. void SetMaxSize(int, int);
  7739. void SetMinSize(int, int);
  7740. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  7741. void SetPosition(int, int);
  7742. void SetScrollBarsVisible(bool, bool);
  7743. void SetSize(int, int);
  7744. bool SetStyle(const String&, XMLFile = null);
  7745. bool SetStyle(const XMLElement&);
  7746. bool SetStyleAuto(XMLFile = null);
  7747. void SetViewPosition(int, int);
  7748. void UpdateLayout();
  7749. const Variant& GetVar(const StringHash&);
  7750. // Properties:
  7751. bool animationEnabled;
  7752. /* readonly */
  7753. Array<Variant> attributeDefaults;
  7754. /* readonly */
  7755. Array<AttributeInfo> attributeInfos;
  7756. Array<Variant> attributes;
  7757. bool autoDisableChildren;
  7758. float autoDisableThreshold;
  7759. /* readonly */
  7760. StringHash baseType;
  7761. bool bringToBack;
  7762. bool bringToFront;
  7763. /* readonly */
  7764. String category;
  7765. /* readonly */
  7766. IntVector2 childOffset;
  7767. /* readonly */
  7768. Array<UIElement> children;
  7769. IntRect clipBorder;
  7770. bool clipChildren;
  7771. /* writeonly */
  7772. Color color;
  7773. /* readonly */
  7774. bool colorGradient;
  7775. Array<Color> colors;
  7776. /* readonly */
  7777. IntRect combinedScreenRect;
  7778. UIElement contentElement;
  7779. XMLFile defaultStyle;
  7780. /* readonly */
  7781. float derivedOpacity;
  7782. /* readonly */
  7783. uint dragButtonCombo;
  7784. /* readonly */
  7785. int dragButtonCount;
  7786. uint dragDropMode;
  7787. bool editable;
  7788. bool elementEventSender;
  7789. bool enabled;
  7790. /* readonly */
  7791. bool enabledSelf;
  7792. /* readonly */
  7793. bool fixedHeight;
  7794. /* readonly */
  7795. bool fixedSize;
  7796. /* readonly */
  7797. bool fixedWidth;
  7798. bool focus;
  7799. FocusMode focusMode;
  7800. int height;
  7801. HorizontalAlignment horizontalAlignment;
  7802. /* readonly */
  7803. ScrollBar horizontalScrollBar;
  7804. /* readonly */
  7805. bool hovering;
  7806. int indent;
  7807. int indentSpacing;
  7808. /* readonly */
  7809. int indentWidth;
  7810. bool internal;
  7811. IntRect layoutBorder;
  7812. Vector2 layoutFlexScale;
  7813. LayoutMode layoutMode;
  7814. int layoutSpacing;
  7815. int maxHeight;
  7816. IntVector2 maxSize;
  7817. int maxWidth;
  7818. int minHeight;
  7819. IntVector2 minSize;
  7820. int minWidth;
  7821. String name;
  7822. /* readonly */
  7823. uint numAllChildren;
  7824. /* readonly */
  7825. uint numAttributes;
  7826. /* readonly */
  7827. uint numChildren;
  7828. ObjectAnimation objectAnimation;
  7829. float opacity;
  7830. float pageStep;
  7831. UIElement parent;
  7832. IntVector2 position;
  7833. int priority;
  7834. /* readonly */
  7835. int refs;
  7836. /* readonly */
  7837. UIElement root;
  7838. /* readonly */
  7839. IntVector2 screenPosition;
  7840. bool scrollBarsAutoVisible;
  7841. float scrollDeceleration;
  7842. /* readonly */
  7843. BorderImage scrollPanel;
  7844. float scrollSnapEpsilon;
  7845. float scrollStep;
  7846. bool selected;
  7847. IntVector2 size;
  7848. bool sortChildren;
  7849. String style;
  7850. bool temporary;
  7851. TraversalMode traversalMode;
  7852. /* readonly */
  7853. StringHash type;
  7854. /* readonly */
  7855. String typeName;
  7856. bool useDerivedOpacity;
  7857. /* readonly */
  7858. VariantMap vars;
  7859. VerticalAlignment verticalAlignment;
  7860. /* readonly */
  7861. ScrollBar verticalScrollBar;
  7862. IntVector2 viewPosition;
  7863. bool visible;
  7864. /* readonly */
  7865. int weakRefs;
  7866. int width;
  7867. };
  7868. class Serializable
  7869. {
  7870. // Methods:
  7871. void ApplyAttributes();
  7872. Variant GetAttribute(const String&) const;
  7873. Variant GetAttributeDefault(const String&) const;
  7874. bool Load(File, bool = false);
  7875. bool Load(VectorBuffer&, bool = false);
  7876. bool LoadXML(const XMLElement&, bool = false);
  7877. void MarkNetworkUpdate() const;
  7878. void RemoveInstanceDefault();
  7879. void ResetToDefault();
  7880. bool Save(File) const;
  7881. bool Save(VectorBuffer&) const;
  7882. bool SaveXML(XMLElement&) const;
  7883. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7884. bool SetAttribute(const String&, const Variant&);
  7885. // Properties:
  7886. /* readonly */
  7887. Array<Variant> attributeDefaults;
  7888. /* readonly */
  7889. Array<AttributeInfo> attributeInfos;
  7890. Array<Variant> attributes;
  7891. /* readonly */
  7892. StringHash baseType;
  7893. /* readonly */
  7894. String category;
  7895. /* readonly */
  7896. uint numAttributes;
  7897. /* readonly */
  7898. int refs;
  7899. bool temporary;
  7900. /* readonly */
  7901. StringHash type;
  7902. /* readonly */
  7903. String typeName;
  7904. /* readonly */
  7905. int weakRefs;
  7906. };
  7907. class Serializer
  7908. {
  7909. // Methods:
  7910. uint Write(Array<uint8>);
  7911. bool WriteBool(bool);
  7912. bool WriteBoundingBox(const BoundingBox&);
  7913. bool WriteByte(int8);
  7914. bool WriteColor(const Color&);
  7915. bool WriteFileID(const String&);
  7916. bool WriteFloat(float);
  7917. bool WriteInt(int);
  7918. bool WriteIntRect(const IntRect&);
  7919. bool WriteIntVector2(const IntVector2&);
  7920. bool WriteLine(const String&);
  7921. bool WriteMatrix3(const Matrix3&);
  7922. bool WriteMatrix3x4(const Matrix3x4&);
  7923. bool WriteMatrix4(const Matrix4&);
  7924. bool WriteNetID(uint);
  7925. bool WritePackedQuaternion(const Quaternion&);
  7926. bool WritePackedVector3(const Vector3&, float);
  7927. bool WriteQuaternion(const Quaternion&);
  7928. bool WriteShort(int16);
  7929. bool WriteString(const String&);
  7930. bool WriteStringHash(const StringHash&);
  7931. bool WriteUByte(uint8);
  7932. bool WriteUInt(uint);
  7933. bool WriteUShort(uint16);
  7934. bool WriteVLE(uint);
  7935. bool WriteVariant(const Variant&);
  7936. bool WriteVariantMap(const VariantMap&);
  7937. bool WriteVector2(const Vector2&);
  7938. bool WriteVector3(const Vector3&);
  7939. bool WriteVector4(const Vector4&);
  7940. };
  7941. class Skeleton
  7942. {
  7943. // Methods:
  7944. Bone GetBone(const String&) const;
  7945. void Reset();
  7946. // Properties:
  7947. /* readonly */
  7948. Array<Bone> bones;
  7949. /* readonly */
  7950. uint numBones;
  7951. /* readonly */
  7952. Bone rootBone;
  7953. };
  7954. class Skybox
  7955. {
  7956. // Methods:
  7957. void ApplyAttributes();
  7958. void ApplyMaterialList(const String& = String ( ));
  7959. void DrawDebugGeometry(DebugRenderer, bool);
  7960. Variant GetAttribute(const String&) const;
  7961. ValueAnimation GetAttributeAnimation(const String&) const;
  7962. float GetAttributeAnimationSpeed(const String&) const;
  7963. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  7964. Variant GetAttributeDefault(const String&) const;
  7965. bool IsInView(Camera) const;
  7966. bool Load(File, bool = false);
  7967. bool Load(VectorBuffer&, bool = false);
  7968. bool LoadXML(const XMLElement&, bool = false);
  7969. void MarkNetworkUpdate() const;
  7970. void Remove();
  7971. void RemoveInstanceDefault();
  7972. void ResetToDefault();
  7973. bool Save(File) const;
  7974. bool Save(VectorBuffer&) const;
  7975. bool SaveXML(XMLElement&) const;
  7976. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7977. bool SetAttribute(const String&, const Variant&);
  7978. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  7979. void SetAttributeAnimationSpeed(const String&, float);
  7980. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  7981. // Properties:
  7982. bool animationEnabled;
  7983. /* readonly */
  7984. Array<Variant> attributeDefaults;
  7985. /* readonly */
  7986. Array<AttributeInfo> attributeInfos;
  7987. Array<Variant> attributes;
  7988. /* readonly */
  7989. StringHash baseType;
  7990. /* readonly */
  7991. BoundingBox boundingBox;
  7992. bool castShadows;
  7993. /* readonly */
  7994. String category;
  7995. float drawDistance;
  7996. bool enabled;
  7997. /* readonly */
  7998. bool enabledEffective;
  7999. /* readonly */
  8000. uint id;
  8001. /* readonly */
  8002. bool inView;
  8003. uint lightMask;
  8004. float lodBias;
  8005. /* writeonly */
  8006. Material material;
  8007. Array<Material> materials;
  8008. uint maxLights;
  8009. Model model;
  8010. /* readonly */
  8011. Node node;
  8012. /* readonly */
  8013. uint numAttributes;
  8014. /* readonly */
  8015. uint numGeometries;
  8016. ObjectAnimation objectAnimation;
  8017. bool occludee;
  8018. bool occluder;
  8019. /* readonly */
  8020. int refs;
  8021. float shadowDistance;
  8022. uint shadowMask;
  8023. bool temporary;
  8024. /* readonly */
  8025. StringHash type;
  8026. /* readonly */
  8027. String typeName;
  8028. uint viewMask;
  8029. /* readonly */
  8030. int weakRefs;
  8031. /* readonly */
  8032. BoundingBox worldBoundingBox;
  8033. /* readonly */
  8034. Zone zone;
  8035. uint zoneMask;
  8036. };
  8037. class Slider
  8038. {
  8039. // Methods:
  8040. void AddChild(UIElement);
  8041. void ApplyAttributes();
  8042. void BringToFront();
  8043. void ChangeValue(float);
  8044. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  8045. void DisableLayoutUpdate();
  8046. IntVector2 ElementToScreen(const IntVector2&);
  8047. void EnableLayoutUpdate();
  8048. uint FindChild(UIElement) const;
  8049. Variant GetAttribute(const String&) const;
  8050. ValueAnimation GetAttributeAnimation(const String&) const;
  8051. float GetAttributeAnimationSpeed(const String&) const;
  8052. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  8053. Variant GetAttributeDefault(const String&) const;
  8054. UIElement GetChild(const String&, bool = false) const;
  8055. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  8056. Array<UIElement> GetChildren(bool = false) const;
  8057. UIElement GetElementEventSender() const;
  8058. uint GetNumChildren(bool) const;
  8059. void InsertChild(uint, UIElement);
  8060. bool IsInside(IntVector2, bool);
  8061. bool IsInsideCombined(IntVector2, bool);
  8062. bool Load(File, bool = false);
  8063. bool Load(VectorBuffer&, bool = false);
  8064. bool LoadChildXML(XMLFile, XMLFile = null);
  8065. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  8066. bool LoadXML(File);
  8067. bool LoadXML(VectorBuffer&);
  8068. bool LoadXML(XMLFile, XMLFile);
  8069. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  8070. bool LoadXML(const XMLElement&, bool = false);
  8071. void MarkNetworkUpdate() const;
  8072. void Remove();
  8073. void RemoveAllChildren();
  8074. void RemoveChild(UIElement, uint = 0);
  8075. void RemoveChild(uint);
  8076. void RemoveInstanceDefault();
  8077. void ResetDeepEnabled();
  8078. void ResetToDefault();
  8079. bool Save(File) const;
  8080. bool Save(VectorBuffer&) const;
  8081. bool SaveXML(File);
  8082. bool SaveXML(VectorBuffer&);
  8083. bool SaveXML(XMLElement&) const;
  8084. IntVector2 ScreenToElement(const IntVector2&);
  8085. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8086. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  8087. bool SetAttribute(const String&, const Variant&);
  8088. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  8089. void SetAttributeAnimationSpeed(const String&, float);
  8090. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  8091. void SetDeepEnabled(bool);
  8092. void SetEnabledRecursive(bool);
  8093. void SetFixedHeight(int);
  8094. void SetFixedSize(int, int);
  8095. void SetFixedWidth(int);
  8096. void SetFullImageRect();
  8097. void SetHoverOffset(int, int);
  8098. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  8099. void SetMaxSize(int, int);
  8100. void SetMinSize(int, int);
  8101. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  8102. void SetPosition(int, int);
  8103. void SetSize(int, int);
  8104. bool SetStyle(const String&, XMLFile = null);
  8105. bool SetStyle(const XMLElement&);
  8106. bool SetStyleAuto(XMLFile = null);
  8107. void UpdateLayout();
  8108. const Variant& GetVar(const StringHash&);
  8109. // Properties:
  8110. bool animationEnabled;
  8111. /* readonly */
  8112. Array<Variant> attributeDefaults;
  8113. /* readonly */
  8114. Array<AttributeInfo> attributeInfos;
  8115. Array<Variant> attributes;
  8116. /* readonly */
  8117. StringHash baseType;
  8118. BlendMode blendMode;
  8119. IntRect border;
  8120. bool bringToBack;
  8121. bool bringToFront;
  8122. /* readonly */
  8123. String category;
  8124. /* readonly */
  8125. IntVector2 childOffset;
  8126. /* readonly */
  8127. Array<UIElement> children;
  8128. IntRect clipBorder;
  8129. bool clipChildren;
  8130. /* writeonly */
  8131. Color color;
  8132. /* readonly */
  8133. bool colorGradient;
  8134. Array<Color> colors;
  8135. /* readonly */
  8136. IntRect combinedScreenRect;
  8137. XMLFile defaultStyle;
  8138. /* readonly */
  8139. float derivedOpacity;
  8140. /* readonly */
  8141. uint dragButtonCombo;
  8142. /* readonly */
  8143. int dragButtonCount;
  8144. uint dragDropMode;
  8145. bool editable;
  8146. bool elementEventSender;
  8147. bool enabled;
  8148. /* readonly */
  8149. bool enabledSelf;
  8150. /* readonly */
  8151. bool fixedHeight;
  8152. /* readonly */
  8153. bool fixedSize;
  8154. /* readonly */
  8155. bool fixedWidth;
  8156. bool focus;
  8157. FocusMode focusMode;
  8158. int height;
  8159. HorizontalAlignment horizontalAlignment;
  8160. IntVector2 hoverOffset;
  8161. /* readonly */
  8162. bool hovering;
  8163. IntRect imageBorder;
  8164. IntRect imageRect;
  8165. int indent;
  8166. int indentSpacing;
  8167. /* readonly */
  8168. int indentWidth;
  8169. bool internal;
  8170. /* readonly */
  8171. BorderImage knob;
  8172. IntRect layoutBorder;
  8173. Vector2 layoutFlexScale;
  8174. LayoutMode layoutMode;
  8175. int layoutSpacing;
  8176. int maxHeight;
  8177. IntVector2 maxSize;
  8178. int maxWidth;
  8179. int minHeight;
  8180. IntVector2 minSize;
  8181. int minWidth;
  8182. String name;
  8183. /* readonly */
  8184. uint numAllChildren;
  8185. /* readonly */
  8186. uint numAttributes;
  8187. /* readonly */
  8188. uint numChildren;
  8189. ObjectAnimation objectAnimation;
  8190. float opacity;
  8191. Orientation orientation;
  8192. UIElement parent;
  8193. IntVector2 position;
  8194. int priority;
  8195. float range;
  8196. /* readonly */
  8197. int refs;
  8198. float repeatRate;
  8199. /* readonly */
  8200. UIElement root;
  8201. /* readonly */
  8202. IntVector2 screenPosition;
  8203. bool selected;
  8204. IntVector2 size;
  8205. bool sortChildren;
  8206. String style;
  8207. bool temporary;
  8208. Texture texture;
  8209. bool tiled;
  8210. TraversalMode traversalMode;
  8211. /* readonly */
  8212. StringHash type;
  8213. /* readonly */
  8214. String typeName;
  8215. bool useDerivedOpacity;
  8216. float value;
  8217. /* readonly */
  8218. VariantMap vars;
  8219. VerticalAlignment verticalAlignment;
  8220. bool visible;
  8221. /* readonly */
  8222. int weakRefs;
  8223. int width;
  8224. };
  8225. class SmoothedTransform
  8226. {
  8227. // Methods:
  8228. void ApplyAttributes();
  8229. void DrawDebugGeometry(DebugRenderer, bool);
  8230. Variant GetAttribute(const String&) const;
  8231. ValueAnimation GetAttributeAnimation(const String&) const;
  8232. float GetAttributeAnimationSpeed(const String&) const;
  8233. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  8234. Variant GetAttributeDefault(const String&) const;
  8235. bool Load(File, bool = false);
  8236. bool Load(VectorBuffer&, bool = false);
  8237. bool LoadXML(const XMLElement&, bool = false);
  8238. void MarkNetworkUpdate() const;
  8239. void Remove();
  8240. void RemoveInstanceDefault();
  8241. void ResetToDefault();
  8242. bool Save(File) const;
  8243. bool Save(VectorBuffer&) const;
  8244. bool SaveXML(XMLElement&) const;
  8245. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8246. bool SetAttribute(const String&, const Variant&);
  8247. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  8248. void SetAttributeAnimationSpeed(const String&, float);
  8249. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  8250. void Update(float, float);
  8251. // Properties:
  8252. bool animationEnabled;
  8253. /* readonly */
  8254. Array<Variant> attributeDefaults;
  8255. /* readonly */
  8256. Array<AttributeInfo> attributeInfos;
  8257. Array<Variant> attributes;
  8258. /* readonly */
  8259. StringHash baseType;
  8260. /* readonly */
  8261. String category;
  8262. bool enabled;
  8263. /* readonly */
  8264. bool enabledEffective;
  8265. /* readonly */
  8266. uint id;
  8267. /* readonly */
  8268. bool inProgress;
  8269. /* readonly */
  8270. Node node;
  8271. /* readonly */
  8272. uint numAttributes;
  8273. ObjectAnimation objectAnimation;
  8274. /* readonly */
  8275. int refs;
  8276. Vector3 targetPosition;
  8277. Quaternion targetRotation;
  8278. Vector3 targetWorldPosition;
  8279. Quaternion targetWorldRotation;
  8280. bool temporary;
  8281. /* readonly */
  8282. StringHash type;
  8283. /* readonly */
  8284. String typeName;
  8285. /* readonly */
  8286. int weakRefs;
  8287. };
  8288. class Sound
  8289. {
  8290. // Methods:
  8291. bool Load(File);
  8292. bool Load(VectorBuffer&);
  8293. bool Save(File) const;
  8294. bool Save(VectorBuffer&) const;
  8295. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8296. // Properties:
  8297. /* readonly */
  8298. StringHash baseType;
  8299. /* readonly */
  8300. String category;
  8301. /* readonly */
  8302. bool compressed;
  8303. /* readonly */
  8304. float frequency;
  8305. /* readonly */
  8306. float length;
  8307. bool looped;
  8308. /* readonly */
  8309. uint memoryUse;
  8310. String name;
  8311. /* readonly */
  8312. int refs;
  8313. /* readonly */
  8314. uint sampleSize;
  8315. /* readonly */
  8316. bool sixteenBit;
  8317. /* readonly */
  8318. bool stereo;
  8319. /* readonly */
  8320. StringHash type;
  8321. /* readonly */
  8322. String typeName;
  8323. /* readonly */
  8324. uint useTimer;
  8325. /* readonly */
  8326. int weakRefs;
  8327. };
  8328. class SoundListener
  8329. {
  8330. // Methods:
  8331. void ApplyAttributes();
  8332. void DrawDebugGeometry(DebugRenderer, bool);
  8333. Variant GetAttribute(const String&) const;
  8334. ValueAnimation GetAttributeAnimation(const String&) const;
  8335. float GetAttributeAnimationSpeed(const String&) const;
  8336. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  8337. Variant GetAttributeDefault(const String&) const;
  8338. bool Load(File, bool = false);
  8339. bool Load(VectorBuffer&, bool = false);
  8340. bool LoadXML(const XMLElement&, bool = false);
  8341. void MarkNetworkUpdate() const;
  8342. void Remove();
  8343. void RemoveInstanceDefault();
  8344. void ResetToDefault();
  8345. bool Save(File) const;
  8346. bool Save(VectorBuffer&) const;
  8347. bool SaveXML(XMLElement&) const;
  8348. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8349. bool SetAttribute(const String&, const Variant&);
  8350. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  8351. void SetAttributeAnimationSpeed(const String&, float);
  8352. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  8353. // Properties:
  8354. bool animationEnabled;
  8355. /* readonly */
  8356. Array<Variant> attributeDefaults;
  8357. /* readonly */
  8358. Array<AttributeInfo> attributeInfos;
  8359. Array<Variant> attributes;
  8360. /* readonly */
  8361. StringHash baseType;
  8362. /* readonly */
  8363. String category;
  8364. bool enabled;
  8365. /* readonly */
  8366. bool enabledEffective;
  8367. /* readonly */
  8368. uint id;
  8369. /* readonly */
  8370. Node node;
  8371. /* readonly */
  8372. uint numAttributes;
  8373. ObjectAnimation objectAnimation;
  8374. /* readonly */
  8375. int refs;
  8376. bool temporary;
  8377. /* readonly */
  8378. StringHash type;
  8379. /* readonly */
  8380. String typeName;
  8381. /* readonly */
  8382. int weakRefs;
  8383. };
  8384. class SoundSource
  8385. {
  8386. // Methods:
  8387. void ApplyAttributes();
  8388. void DrawDebugGeometry(DebugRenderer, bool);
  8389. Variant GetAttribute(const String&) const;
  8390. ValueAnimation GetAttributeAnimation(const String&) const;
  8391. float GetAttributeAnimationSpeed(const String&) const;
  8392. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  8393. Variant GetAttributeDefault(const String&) const;
  8394. bool Load(File, bool = false);
  8395. bool Load(VectorBuffer&, bool = false);
  8396. bool LoadXML(const XMLElement&, bool = false);
  8397. void MarkNetworkUpdate() const;
  8398. void Play(Sound);
  8399. void Play(Sound, float);
  8400. void Play(Sound, float, float);
  8401. void Play(Sound, float, float, float);
  8402. void Remove();
  8403. void RemoveInstanceDefault();
  8404. void ResetToDefault();
  8405. bool Save(File) const;
  8406. bool Save(VectorBuffer&) const;
  8407. bool SaveXML(XMLElement&) const;
  8408. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8409. bool SetAttribute(const String&, const Variant&);
  8410. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  8411. void SetAttributeAnimationSpeed(const String&, float);
  8412. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  8413. void Stop();
  8414. // Properties:
  8415. bool animationEnabled;
  8416. /* readonly */
  8417. float attenuation;
  8418. /* readonly */
  8419. Array<Variant> attributeDefaults;
  8420. /* readonly */
  8421. Array<AttributeInfo> attributeInfos;
  8422. Array<Variant> attributes;
  8423. bool autoRemove;
  8424. /* readonly */
  8425. StringHash baseType;
  8426. /* readonly */
  8427. String category;
  8428. bool enabled;
  8429. /* readonly */
  8430. bool enabledEffective;
  8431. float frequency;
  8432. float gain;
  8433. /* readonly */
  8434. uint id;
  8435. /* readonly */
  8436. Node node;
  8437. /* readonly */
  8438. uint numAttributes;
  8439. ObjectAnimation objectAnimation;
  8440. float panning;
  8441. /* readonly */
  8442. bool playing;
  8443. /* readonly */
  8444. int refs;
  8445. /* readonly */
  8446. Sound sound;
  8447. SoundType soundType;
  8448. bool temporary;
  8449. /* readonly */
  8450. float timePosition;
  8451. /* readonly */
  8452. StringHash type;
  8453. /* readonly */
  8454. String typeName;
  8455. /* readonly */
  8456. int weakRefs;
  8457. };
  8458. class SoundSource3D
  8459. {
  8460. // Methods:
  8461. void ApplyAttributes();
  8462. void DrawDebugGeometry(DebugRenderer, bool);
  8463. Variant GetAttribute(const String&) const;
  8464. ValueAnimation GetAttributeAnimation(const String&) const;
  8465. float GetAttributeAnimationSpeed(const String&) const;
  8466. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  8467. Variant GetAttributeDefault(const String&) const;
  8468. bool Load(File, bool = false);
  8469. bool Load(VectorBuffer&, bool = false);
  8470. bool LoadXML(const XMLElement&, bool = false);
  8471. void MarkNetworkUpdate() const;
  8472. void Play(Sound);
  8473. void Play(Sound, float);
  8474. void Play(Sound, float, float);
  8475. void Play(Sound, float, float, float);
  8476. void Remove();
  8477. void RemoveInstanceDefault();
  8478. void ResetToDefault();
  8479. bool Save(File) const;
  8480. bool Save(VectorBuffer&) const;
  8481. bool SaveXML(XMLElement&) const;
  8482. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8483. void SetAngleAttenuation(float, float);
  8484. bool SetAttribute(const String&, const Variant&);
  8485. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  8486. void SetAttributeAnimationSpeed(const String&, float);
  8487. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  8488. void SetDistanceAttenuation(float, float, float);
  8489. void Stop();
  8490. // Properties:
  8491. bool animationEnabled;
  8492. /* readonly */
  8493. float attenuation;
  8494. /* readonly */
  8495. Array<Variant> attributeDefaults;
  8496. /* readonly */
  8497. Array<AttributeInfo> attributeInfos;
  8498. Array<Variant> attributes;
  8499. bool autoRemove;
  8500. /* readonly */
  8501. StringHash baseType;
  8502. /* readonly */
  8503. String category;
  8504. bool enabled;
  8505. /* readonly */
  8506. bool enabledEffective;
  8507. float farDistance;
  8508. float frequency;
  8509. float gain;
  8510. /* readonly */
  8511. uint id;
  8512. float innerAngle;
  8513. float nearDistance;
  8514. /* readonly */
  8515. Node node;
  8516. /* readonly */
  8517. uint numAttributes;
  8518. ObjectAnimation objectAnimation;
  8519. float outerAngle;
  8520. float panning;
  8521. /* readonly */
  8522. bool playing;
  8523. /* readonly */
  8524. int refs;
  8525. float rolloffFactor;
  8526. /* readonly */
  8527. Sound sound;
  8528. SoundType soundType;
  8529. bool temporary;
  8530. /* readonly */
  8531. float timePosition;
  8532. /* readonly */
  8533. StringHash type;
  8534. /* readonly */
  8535. String typeName;
  8536. /* readonly */
  8537. int weakRefs;
  8538. };
  8539. class Sphere
  8540. {
  8541. // Methods:
  8542. void Clear();
  8543. void Define(const BoundingBox&);
  8544. void Define(const Frustum&);
  8545. void Define(const Polyhedron&);
  8546. void Define(const Sphere&);
  8547. void Define(const Vector3&, float);
  8548. float Distance(const Vector3&) const;
  8549. Intersection IsInside(const BoundingBox&) const;
  8550. Intersection IsInside(const Sphere&) const;
  8551. Intersection IsInside(const Vector3&) const;
  8552. void Merge(const BoundingBox&);
  8553. void Merge(const Frustum&);
  8554. void Merge(const Sphere&);
  8555. void Merge(const Vector3&);
  8556. // Properties:
  8557. Vector3 center;
  8558. bool defined;
  8559. float radius;
  8560. };
  8561. class Spline
  8562. {
  8563. // Methods:
  8564. void AddKnot(const Variant&);
  8565. void AddKnot(const Variant&, uint);
  8566. void Clear();
  8567. Variant GetPoint(float);
  8568. void RemoveKnot();
  8569. void RemoveKnot(uint);
  8570. // Properties:
  8571. InterpolationMode interpolationMode;
  8572. Array<Variant> knot;
  8573. Array<Variant> knots;
  8574. };
  8575. class SplinePath
  8576. {
  8577. // Methods:
  8578. void AddControlPoint(Node, uint = M_MAX_UNSIGNED);
  8579. void ApplyAttributes();
  8580. void ClearControlPoints();
  8581. void DrawDebugGeometry(DebugRenderer, bool);
  8582. Variant GetAttribute(const String&) const;
  8583. ValueAnimation GetAttributeAnimation(const String&) const;
  8584. float GetAttributeAnimationSpeed(const String&) const;
  8585. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  8586. Variant GetAttributeDefault(const String&) const;
  8587. Vector3 GetPoint(float) const;
  8588. bool Load(File, bool = false);
  8589. bool Load(VectorBuffer&, bool = false);
  8590. bool LoadXML(const XMLElement&, bool = false);
  8591. void MarkNetworkUpdate() const;
  8592. void Move(float);
  8593. void Remove();
  8594. void RemoveControlPoint(Node);
  8595. void RemoveInstanceDefault();
  8596. void Reset();
  8597. void ResetToDefault();
  8598. bool Save(File) const;
  8599. bool Save(VectorBuffer&) const;
  8600. bool SaveXML(XMLElement&) const;
  8601. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8602. bool SetAttribute(const String&, const Variant&);
  8603. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  8604. void SetAttributeAnimationSpeed(const String&, float);
  8605. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  8606. // Properties:
  8607. bool animationEnabled;
  8608. /* readonly */
  8609. Array<Variant> attributeDefaults;
  8610. /* readonly */
  8611. Array<AttributeInfo> attributeInfos;
  8612. Array<Variant> attributes;
  8613. /* readonly */
  8614. StringHash baseType;
  8615. /* readonly */
  8616. String category;
  8617. Node controlledNode;
  8618. bool enabled;
  8619. /* readonly */
  8620. bool enabledEffective;
  8621. /* readonly */
  8622. uint id;
  8623. InterpolationMode interpolationMode;
  8624. /* readonly */
  8625. bool isFinished;
  8626. /* readonly */
  8627. Node node;
  8628. /* readonly */
  8629. uint numAttributes;
  8630. ObjectAnimation objectAnimation;
  8631. Vector3 position;
  8632. /* readonly */
  8633. int refs;
  8634. float speed;
  8635. bool temporary;
  8636. /* readonly */
  8637. StringHash type;
  8638. /* readonly */
  8639. String typeName;
  8640. /* readonly */
  8641. int weakRefs;
  8642. };
  8643. class Sprite
  8644. {
  8645. // Methods:
  8646. void AddChild(UIElement);
  8647. void ApplyAttributes();
  8648. void BringToFront();
  8649. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  8650. uint FindChild(UIElement) const;
  8651. Variant GetAttribute(const String&) const;
  8652. ValueAnimation GetAttributeAnimation(const String&) const;
  8653. float GetAttributeAnimationSpeed(const String&) const;
  8654. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  8655. Variant GetAttributeDefault(const String&) const;
  8656. UIElement GetChild(const String&, bool = false) const;
  8657. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  8658. Array<UIElement> GetChildren(bool = false) const;
  8659. UIElement GetElementEventSender() const;
  8660. uint GetNumChildren(bool) const;
  8661. void InsertChild(uint, UIElement);
  8662. bool Load(File, bool = false);
  8663. bool Load(VectorBuffer&, bool = false);
  8664. bool LoadChildXML(XMLFile, XMLFile = null);
  8665. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  8666. bool LoadXML(File);
  8667. bool LoadXML(VectorBuffer&);
  8668. bool LoadXML(XMLFile, XMLFile);
  8669. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  8670. bool LoadXML(const XMLElement&, bool = false);
  8671. void MarkNetworkUpdate() const;
  8672. void Remove();
  8673. void RemoveAllChildren();
  8674. void RemoveChild(UIElement, uint = 0);
  8675. void RemoveChild(uint);
  8676. void RemoveInstanceDefault();
  8677. void ResetToDefault();
  8678. bool Save(File) const;
  8679. bool Save(VectorBuffer&) const;
  8680. bool SaveXML(File);
  8681. bool SaveXML(VectorBuffer&);
  8682. bool SaveXML(XMLElement&) const;
  8683. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8684. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  8685. bool SetAttribute(const String&, const Variant&);
  8686. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  8687. void SetAttributeAnimationSpeed(const String&, float);
  8688. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  8689. void SetFixedHeight(int);
  8690. void SetFixedSize(int, int);
  8691. void SetFixedWidth(int);
  8692. void SetFullImageRect();
  8693. void SetHotSpot(int, int);
  8694. void SetMaxSize(int, int);
  8695. void SetMinSize(int, int);
  8696. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  8697. void SetPosition(float, float);
  8698. void SetScale(float);
  8699. void SetScale(float, float);
  8700. void SetSize(int, int);
  8701. bool SetStyle(const String&, XMLFile = null);
  8702. bool SetStyle(const XMLElement&);
  8703. bool SetStyleAuto(XMLFile = null);
  8704. const Variant& GetVar(const StringHash&);
  8705. // Properties:
  8706. bool animationEnabled;
  8707. /* readonly */
  8708. Array<Variant> attributeDefaults;
  8709. /* readonly */
  8710. Array<AttributeInfo> attributeInfos;
  8711. Array<Variant> attributes;
  8712. /* readonly */
  8713. StringHash baseType;
  8714. BlendMode blendMode;
  8715. bool bringToBack;
  8716. bool bringToFront;
  8717. /* readonly */
  8718. String category;
  8719. /* readonly */
  8720. Array<UIElement> children;
  8721. /* writeonly */
  8722. Color color;
  8723. /* readonly */
  8724. bool colorGradient;
  8725. Array<Color> colors;
  8726. XMLFile defaultStyle;
  8727. /* readonly */
  8728. float derivedOpacity;
  8729. /* readonly */
  8730. uint dragButtonCombo;
  8731. /* readonly */
  8732. int dragButtonCount;
  8733. bool elementEventSender;
  8734. int height;
  8735. HorizontalAlignment horizontalAlignment;
  8736. IntVector2 hotSpot;
  8737. IntRect imageRect;
  8738. String name;
  8739. /* readonly */
  8740. uint numAllChildren;
  8741. /* readonly */
  8742. uint numAttributes;
  8743. /* readonly */
  8744. uint numChildren;
  8745. ObjectAnimation objectAnimation;
  8746. float opacity;
  8747. UIElement parent;
  8748. Vector2 position;
  8749. int priority;
  8750. /* readonly */
  8751. int refs;
  8752. /* readonly */
  8753. UIElement root;
  8754. float rotation;
  8755. Vector2 scale;
  8756. IntVector2 size;
  8757. bool sortChildren;
  8758. String style;
  8759. bool temporary;
  8760. Texture texture;
  8761. /* readonly */
  8762. StringHash type;
  8763. /* readonly */
  8764. String typeName;
  8765. bool useDerivedOpacity;
  8766. /* readonly */
  8767. VariantMap vars;
  8768. VerticalAlignment verticalAlignment;
  8769. bool visible;
  8770. /* readonly */
  8771. int weakRefs;
  8772. int width;
  8773. };
  8774. class Sprite2D
  8775. {
  8776. // Methods:
  8777. bool Load(File);
  8778. bool Load(VectorBuffer&);
  8779. bool Save(File) const;
  8780. bool Save(VectorBuffer&) const;
  8781. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8782. // Properties:
  8783. /* readonly */
  8784. StringHash baseType;
  8785. /* readonly */
  8786. String category;
  8787. Vector2 hotSpot;
  8788. /* readonly */
  8789. uint memoryUse;
  8790. String name;
  8791. IntVector2 offset;
  8792. IntRect rectangle;
  8793. /* readonly */
  8794. int refs;
  8795. Texture2D texture;
  8796. /* readonly */
  8797. StringHash type;
  8798. /* readonly */
  8799. String typeName;
  8800. /* readonly */
  8801. uint useTimer;
  8802. /* readonly */
  8803. int weakRefs;
  8804. };
  8805. class SpriteSheet2D
  8806. {
  8807. // Methods:
  8808. void DefineSprite(const String&, const IntRect&, const Vector2& = Vector2 ( 0.5f , 0.5f ), const IntVector2& = IntVector2 :: ZERO);
  8809. Sprite2D GetSprite(const String&);
  8810. bool Load(File);
  8811. bool Load(VectorBuffer&);
  8812. bool Save(File) const;
  8813. bool Save(VectorBuffer&) const;
  8814. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8815. // Properties:
  8816. /* readonly */
  8817. StringHash baseType;
  8818. /* readonly */
  8819. String category;
  8820. /* readonly */
  8821. uint memoryUse;
  8822. String name;
  8823. /* readonly */
  8824. int refs;
  8825. /* readonly */
  8826. Texture2D texture;
  8827. /* readonly */
  8828. StringHash type;
  8829. /* readonly */
  8830. String typeName;
  8831. /* readonly */
  8832. uint useTimer;
  8833. /* readonly */
  8834. int weakRefs;
  8835. };
  8836. class StaticModel
  8837. {
  8838. // Methods:
  8839. void ApplyAttributes();
  8840. void ApplyMaterialList(const String& = String ( ));
  8841. void DrawDebugGeometry(DebugRenderer, bool);
  8842. Variant GetAttribute(const String&) const;
  8843. ValueAnimation GetAttributeAnimation(const String&) const;
  8844. float GetAttributeAnimationSpeed(const String&) const;
  8845. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  8846. Variant GetAttributeDefault(const String&) const;
  8847. bool IsInView(Camera) const;
  8848. bool IsInside(const Vector3&) const;
  8849. bool IsInsideLocal(const Vector3&) const;
  8850. bool Load(File, bool = false);
  8851. bool Load(VectorBuffer&, bool = false);
  8852. bool LoadXML(const XMLElement&, bool = false);
  8853. void MarkNetworkUpdate() const;
  8854. void Remove();
  8855. void RemoveInstanceDefault();
  8856. void ResetToDefault();
  8857. bool Save(File) const;
  8858. bool Save(VectorBuffer&) const;
  8859. bool SaveXML(XMLElement&) const;
  8860. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8861. bool SetAttribute(const String&, const Variant&);
  8862. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  8863. void SetAttributeAnimationSpeed(const String&, float);
  8864. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  8865. // Properties:
  8866. bool animationEnabled;
  8867. /* readonly */
  8868. Array<Variant> attributeDefaults;
  8869. /* readonly */
  8870. Array<AttributeInfo> attributeInfos;
  8871. Array<Variant> attributes;
  8872. /* readonly */
  8873. StringHash baseType;
  8874. /* readonly */
  8875. BoundingBox boundingBox;
  8876. bool castShadows;
  8877. /* readonly */
  8878. String category;
  8879. float drawDistance;
  8880. bool enabled;
  8881. /* readonly */
  8882. bool enabledEffective;
  8883. /* readonly */
  8884. uint id;
  8885. /* readonly */
  8886. bool inView;
  8887. uint lightMask;
  8888. float lodBias;
  8889. /* writeonly */
  8890. Material material;
  8891. Array<Material> materials;
  8892. uint maxLights;
  8893. Model model;
  8894. /* readonly */
  8895. Node node;
  8896. /* readonly */
  8897. uint numAttributes;
  8898. /* readonly */
  8899. uint numGeometries;
  8900. ObjectAnimation objectAnimation;
  8901. bool occludee;
  8902. bool occluder;
  8903. uint occlusionLodLevel;
  8904. /* readonly */
  8905. int refs;
  8906. float shadowDistance;
  8907. uint shadowMask;
  8908. bool temporary;
  8909. /* readonly */
  8910. StringHash type;
  8911. /* readonly */
  8912. String typeName;
  8913. uint viewMask;
  8914. /* readonly */
  8915. int weakRefs;
  8916. /* readonly */
  8917. BoundingBox worldBoundingBox;
  8918. uint zoneMask;
  8919. };
  8920. class StaticModelGroup
  8921. {
  8922. // Methods:
  8923. void AddInstanceNode(Node);
  8924. void ApplyAttributes();
  8925. void ApplyMaterialList(const String& = String ( ));
  8926. void DrawDebugGeometry(DebugRenderer, bool);
  8927. Variant GetAttribute(const String&) const;
  8928. ValueAnimation GetAttributeAnimation(const String&) const;
  8929. float GetAttributeAnimationSpeed(const String&) const;
  8930. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  8931. Variant GetAttributeDefault(const String&) const;
  8932. bool IsInView(Camera) const;
  8933. bool Load(File, bool = false);
  8934. bool Load(VectorBuffer&, bool = false);
  8935. bool LoadXML(const XMLElement&, bool = false);
  8936. void MarkNetworkUpdate() const;
  8937. void Remove();
  8938. void RemoveAllInstanceNodes();
  8939. void RemoveInstanceDefault();
  8940. void RemoveInstanceNode(Node);
  8941. void ResetToDefault();
  8942. bool Save(File) const;
  8943. bool Save(VectorBuffer&) const;
  8944. bool SaveXML(XMLElement&) const;
  8945. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8946. bool SetAttribute(const String&, const Variant&);
  8947. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  8948. void SetAttributeAnimationSpeed(const String&, float);
  8949. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  8950. // Properties:
  8951. bool animationEnabled;
  8952. /* readonly */
  8953. Array<Variant> attributeDefaults;
  8954. /* readonly */
  8955. Array<AttributeInfo> attributeInfos;
  8956. Array<Variant> attributes;
  8957. /* readonly */
  8958. StringHash baseType;
  8959. /* readonly */
  8960. BoundingBox boundingBox;
  8961. bool castShadows;
  8962. /* readonly */
  8963. String category;
  8964. float drawDistance;
  8965. bool enabled;
  8966. /* readonly */
  8967. bool enabledEffective;
  8968. /* readonly */
  8969. uint id;
  8970. /* readonly */
  8971. bool inView;
  8972. /* readonly */
  8973. Array<Node> instanceNodes;
  8974. uint lightMask;
  8975. float lodBias;
  8976. /* writeonly */
  8977. Material material;
  8978. Array<Material> materials;
  8979. uint maxLights;
  8980. Model model;
  8981. /* readonly */
  8982. Node node;
  8983. /* readonly */
  8984. uint numAttributes;
  8985. /* readonly */
  8986. uint numGeometries;
  8987. /* readonly */
  8988. uint numInstanceNodes;
  8989. ObjectAnimation objectAnimation;
  8990. bool occludee;
  8991. bool occluder;
  8992. uint occlusionLodLevel;
  8993. /* readonly */
  8994. int refs;
  8995. float shadowDistance;
  8996. uint shadowMask;
  8997. bool temporary;
  8998. /* readonly */
  8999. StringHash type;
  9000. /* readonly */
  9001. String typeName;
  9002. uint viewMask;
  9003. /* readonly */
  9004. int weakRefs;
  9005. /* readonly */
  9006. BoundingBox worldBoundingBox;
  9007. /* readonly */
  9008. Zone zone;
  9009. uint zoneMask;
  9010. };
  9011. class StaticSprite2D
  9012. {
  9013. // Methods:
  9014. void ApplyAttributes();
  9015. void DrawDebugGeometry(DebugRenderer, bool);
  9016. Variant GetAttribute(const String&) const;
  9017. ValueAnimation GetAttributeAnimation(const String&) const;
  9018. float GetAttributeAnimationSpeed(const String&) const;
  9019. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  9020. Variant GetAttributeDefault(const String&) const;
  9021. bool IsInView(Camera) const;
  9022. bool Load(File, bool = false);
  9023. bool Load(VectorBuffer&, bool = false);
  9024. bool LoadXML(const XMLElement&, bool = false);
  9025. void MarkNetworkUpdate() const;
  9026. void Remove();
  9027. void RemoveInstanceDefault();
  9028. void ResetToDefault();
  9029. bool Save(File) const;
  9030. bool Save(VectorBuffer&) const;
  9031. bool SaveXML(XMLElement&) const;
  9032. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9033. bool SetAttribute(const String&, const Variant&);
  9034. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  9035. void SetAttributeAnimationSpeed(const String&, float);
  9036. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  9037. void SetFlip(bool, bool);
  9038. // Properties:
  9039. bool animationEnabled;
  9040. /* readonly */
  9041. Array<Variant> attributeDefaults;
  9042. /* readonly */
  9043. Array<AttributeInfo> attributeInfos;
  9044. Array<Variant> attributes;
  9045. /* readonly */
  9046. StringHash baseType;
  9047. BlendMode blendMode;
  9048. /* readonly */
  9049. BoundingBox boundingBox;
  9050. bool castShadows;
  9051. /* readonly */
  9052. String category;
  9053. Color color;
  9054. float drawDistance;
  9055. bool enabled;
  9056. /* readonly */
  9057. bool enabledEffective;
  9058. bool flipX;
  9059. bool flipY;
  9060. /* readonly */
  9061. uint id;
  9062. /* readonly */
  9063. bool inView;
  9064. int layer;
  9065. uint lightMask;
  9066. float lodBias;
  9067. uint maxLights;
  9068. /* readonly */
  9069. Node node;
  9070. /* readonly */
  9071. uint numAttributes;
  9072. ObjectAnimation objectAnimation;
  9073. bool occludee;
  9074. bool occluder;
  9075. int orderInLayer;
  9076. /* readonly */
  9077. int refs;
  9078. float shadowDistance;
  9079. uint shadowMask;
  9080. Sprite2D sprite;
  9081. bool temporary;
  9082. Texture2D texture;
  9083. /* readonly */
  9084. StringHash type;
  9085. /* readonly */
  9086. String typeName;
  9087. uint viewMask;
  9088. /* readonly */
  9089. int weakRefs;
  9090. /* readonly */
  9091. BoundingBox worldBoundingBox;
  9092. uint zoneMask;
  9093. };
  9094. class String
  9095. {
  9096. // Methods:
  9097. void AppendUTF8(uint);
  9098. uint AtUTF8(uint) const;
  9099. uint ByteOffsetUTF8(uint) const;
  9100. void Clear();
  9101. int Compare(const String&, bool = true) const;
  9102. bool Contains(const String&, bool = true) const;
  9103. bool Contains(uint8, bool = true) const;
  9104. bool EndsWith(const String&, bool = true) const;
  9105. uint Find(const String&, uint = 0, bool = true) const;
  9106. uint Find(uint8, uint = 0, bool = true) const;
  9107. uint FindLast(const String&, uint = 0xffffffff, bool = true) const;
  9108. uint FindLast(uint8, uint = 0xffffffff, bool = true) const;
  9109. void Join(Array<String>&, const String&);
  9110. uint NextUTF8Char(uint&) const;
  9111. void Replace(const String&, const String&, bool = true);
  9112. void Replace(uint8, uint8, bool = true);
  9113. void ReplaceUTF8(uint, uint);
  9114. String Replaced(const String&, const String&, bool = true) const;
  9115. String Replaced(uint8, uint8, bool = true) const;
  9116. void Resize(uint);
  9117. void SetUTF8FromLatin1(const String&);
  9118. Array<String> Split(uint8) const;
  9119. bool StartsWith(const String&, bool = true) const;
  9120. String Substring(uint) const;
  9121. String Substring(uint, uint) const;
  9122. String SubstringUTF8(uint) const;
  9123. String SubstringUTF8(uint, uint) const;
  9124. bool ToBool() const;
  9125. Color ToColor() const;
  9126. float ToFloat() const;
  9127. int ToInt() const;
  9128. IntRect ToIntRect() const;
  9129. IntVector2 ToIntVector2() const;
  9130. String ToLower() const;
  9131. Matrix3 ToMatrix3() const;
  9132. Matrix3x4 ToMatrix3x4() const;
  9133. Matrix4 ToMatrix4() const;
  9134. Quaternion ToQuaternion() const;
  9135. uint ToUInt() const;
  9136. String ToUpper() const;
  9137. Vector2 ToVector2() const;
  9138. Vector3 ToVector3() const;
  9139. Vector4 ToVector4(bool = false) const;
  9140. Variant ToVectorVariant() const;
  9141. String Trimmed() const;
  9142. // Properties:
  9143. /* readonly */
  9144. bool empty;
  9145. /* readonly */
  9146. uint length;
  9147. /* readonly */
  9148. uint utf8Length;
  9149. };
  9150. class StringHash
  9151. {
  9152. // Methods:
  9153. String ToString() const;
  9154. // Properties:
  9155. /* readonly */
  9156. uint value;
  9157. };
  9158. class Technique
  9159. {
  9160. // Methods:
  9161. Pass CreatePass(StringHash);
  9162. Pass GetPass(StringHash);
  9163. Pass GetSupportedPass(StringHash);
  9164. bool HasPass(StringHash) const;
  9165. bool Load(File);
  9166. bool Load(VectorBuffer&);
  9167. void RemovePass(StringHash);
  9168. bool Save(File) const;
  9169. bool Save(VectorBuffer&) const;
  9170. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9171. // Properties:
  9172. /* readonly */
  9173. StringHash baseType;
  9174. /* readonly */
  9175. String category;
  9176. bool desktop;
  9177. /* readonly */
  9178. uint memoryUse;
  9179. String name;
  9180. /* readonly */
  9181. uint numPasses;
  9182. /* readonly */
  9183. Array<StringHash> passTypes;
  9184. /* readonly */
  9185. Array<Pass> passes;
  9186. /* readonly */
  9187. int refs;
  9188. bool sm3;
  9189. /* readonly */
  9190. bool supported;
  9191. /* readonly */
  9192. StringHash type;
  9193. /* readonly */
  9194. String typeName;
  9195. /* readonly */
  9196. uint useTimer;
  9197. /* readonly */
  9198. int weakRefs;
  9199. };
  9200. class TechniqueEntry
  9201. {
  9202. // Properties:
  9203. float lodDistance;
  9204. int qualityLevel;
  9205. Technique technique;
  9206. };
  9207. class Terrain
  9208. {
  9209. // Methods:
  9210. void ApplyAttributes();
  9211. void ApplyHeightMap();
  9212. void DrawDebugGeometry(DebugRenderer, bool);
  9213. Variant GetAttribute(const String&) const;
  9214. ValueAnimation GetAttributeAnimation(const String&) const;
  9215. float GetAttributeAnimationSpeed(const String&) const;
  9216. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  9217. Variant GetAttributeDefault(const String&) const;
  9218. float GetHeight(const Vector3&) const;
  9219. Vector3 GetNormal(const Vector3&) const;
  9220. TerrainPatch GetPatch(int, int) const;
  9221. bool Load(File, bool = false);
  9222. bool Load(VectorBuffer&, bool = false);
  9223. bool LoadXML(const XMLElement&, bool = false);
  9224. void MarkNetworkUpdate() const;
  9225. void Remove();
  9226. void RemoveInstanceDefault();
  9227. void ResetToDefault();
  9228. bool Save(File) const;
  9229. bool Save(VectorBuffer&) const;
  9230. bool SaveXML(XMLElement&) const;
  9231. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9232. bool SetAttribute(const String&, const Variant&);
  9233. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  9234. void SetAttributeAnimationSpeed(const String&, float);
  9235. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  9236. IntVector2 WorldToHeightMap(const Vector3&) const;
  9237. // Properties:
  9238. bool animationEnabled;
  9239. /* readonly */
  9240. Array<Variant> attributeDefaults;
  9241. /* readonly */
  9242. Array<AttributeInfo> attributeInfos;
  9243. Array<Variant> attributes;
  9244. /* readonly */
  9245. StringHash baseType;
  9246. bool castShadows;
  9247. /* readonly */
  9248. String category;
  9249. float drawDistance;
  9250. bool enabled;
  9251. /* readonly */
  9252. bool enabledEffective;
  9253. Image heightMap;
  9254. /* readonly */
  9255. uint id;
  9256. uint lightMask;
  9257. float lodBias;
  9258. Material material;
  9259. uint maxLights;
  9260. /* readonly */
  9261. Node node;
  9262. /* readonly */
  9263. uint numAttributes;
  9264. /* readonly */
  9265. IntVector2 numPatches;
  9266. /* readonly */
  9267. IntVector2 numVertices;
  9268. ObjectAnimation objectAnimation;
  9269. bool occludee;
  9270. bool occluder;
  9271. int patchSize;
  9272. /* readonly */
  9273. Array<TerrainPatch> patches;
  9274. /* readonly */
  9275. int refs;
  9276. float shadowDistance;
  9277. uint shadowMask;
  9278. bool smoothing;
  9279. Vector3 spacing;
  9280. bool temporary;
  9281. /* readonly */
  9282. StringHash type;
  9283. /* readonly */
  9284. String typeName;
  9285. uint viewMask;
  9286. /* readonly */
  9287. int weakRefs;
  9288. uint zoneMask;
  9289. };
  9290. class TerrainPatch
  9291. {
  9292. // Methods:
  9293. void ApplyAttributes();
  9294. void DrawDebugGeometry(DebugRenderer, bool);
  9295. Variant GetAttribute(const String&) const;
  9296. ValueAnimation GetAttributeAnimation(const String&) const;
  9297. float GetAttributeAnimationSpeed(const String&) const;
  9298. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  9299. Variant GetAttributeDefault(const String&) const;
  9300. bool IsInView(Camera) const;
  9301. bool Load(File, bool = false);
  9302. bool Load(VectorBuffer&, bool = false);
  9303. bool LoadXML(const XMLElement&, bool = false);
  9304. void MarkNetworkUpdate() const;
  9305. void Remove();
  9306. void RemoveInstanceDefault();
  9307. void ResetToDefault();
  9308. bool Save(File) const;
  9309. bool Save(VectorBuffer&) const;
  9310. bool SaveXML(XMLElement&) const;
  9311. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9312. bool SetAttribute(const String&, const Variant&);
  9313. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  9314. void SetAttributeAnimationSpeed(const String&, float);
  9315. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  9316. // Properties:
  9317. bool animationEnabled;
  9318. /* readonly */
  9319. Array<Variant> attributeDefaults;
  9320. /* readonly */
  9321. Array<AttributeInfo> attributeInfos;
  9322. Array<Variant> attributes;
  9323. /* readonly */
  9324. StringHash baseType;
  9325. /* readonly */
  9326. BoundingBox boundingBox;
  9327. bool castShadows;
  9328. /* readonly */
  9329. String category;
  9330. float drawDistance;
  9331. bool enabled;
  9332. /* readonly */
  9333. bool enabledEffective;
  9334. /* readonly */
  9335. uint id;
  9336. /* readonly */
  9337. bool inView;
  9338. uint lightMask;
  9339. float lodBias;
  9340. uint maxLights;
  9341. /* readonly */
  9342. Node node;
  9343. /* readonly */
  9344. uint numAttributes;
  9345. ObjectAnimation objectAnimation;
  9346. bool occludee;
  9347. bool occluder;
  9348. /* readonly */
  9349. int refs;
  9350. float shadowDistance;
  9351. uint shadowMask;
  9352. bool temporary;
  9353. /* readonly */
  9354. StringHash type;
  9355. /* readonly */
  9356. String typeName;
  9357. uint viewMask;
  9358. /* readonly */
  9359. int weakRefs;
  9360. /* readonly */
  9361. BoundingBox worldBoundingBox;
  9362. uint zoneMask;
  9363. };
  9364. class Text
  9365. {
  9366. // Methods:
  9367. void AddChild(UIElement);
  9368. void ApplyAttributes();
  9369. void BringToFront();
  9370. void ClearSelection();
  9371. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  9372. void DisableLayoutUpdate();
  9373. IntVector2 ElementToScreen(const IntVector2&);
  9374. void EnableLayoutUpdate();
  9375. uint FindChild(UIElement) const;
  9376. Variant GetAttribute(const String&) const;
  9377. ValueAnimation GetAttributeAnimation(const String&) const;
  9378. float GetAttributeAnimationSpeed(const String&) const;
  9379. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  9380. Variant GetAttributeDefault(const String&) const;
  9381. UIElement GetChild(const String&, bool = false) const;
  9382. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  9383. Array<UIElement> GetChildren(bool = false) const;
  9384. UIElement GetElementEventSender() const;
  9385. uint GetNumChildren(bool) const;
  9386. void InsertChild(uint, UIElement);
  9387. bool IsInside(IntVector2, bool);
  9388. bool IsInsideCombined(IntVector2, bool);
  9389. bool Load(File, bool = false);
  9390. bool Load(VectorBuffer&, bool = false);
  9391. bool LoadChildXML(XMLFile, XMLFile = null);
  9392. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  9393. bool LoadXML(File);
  9394. bool LoadXML(VectorBuffer&);
  9395. bool LoadXML(XMLFile, XMLFile);
  9396. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  9397. bool LoadXML(const XMLElement&, bool = false);
  9398. void MarkNetworkUpdate() const;
  9399. void Remove();
  9400. void RemoveAllChildren();
  9401. void RemoveChild(UIElement, uint = 0);
  9402. void RemoveChild(uint);
  9403. void RemoveInstanceDefault();
  9404. void ResetDeepEnabled();
  9405. void ResetToDefault();
  9406. bool Save(File) const;
  9407. bool Save(VectorBuffer&) const;
  9408. bool SaveXML(File);
  9409. bool SaveXML(VectorBuffer&);
  9410. bool SaveXML(XMLElement&) const;
  9411. IntVector2 ScreenToElement(const IntVector2&);
  9412. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9413. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  9414. bool SetAttribute(const String&, const Variant&);
  9415. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  9416. void SetAttributeAnimationSpeed(const String&, float);
  9417. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  9418. void SetDeepEnabled(bool);
  9419. void SetEnabledRecursive(bool);
  9420. void SetFixedHeight(int);
  9421. void SetFixedSize(int, int);
  9422. void SetFixedWidth(int);
  9423. bool SetFont(Font, int);
  9424. bool SetFont(const String&, int);
  9425. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  9426. void SetMaxSize(int, int);
  9427. void SetMinSize(int, int);
  9428. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  9429. void SetPosition(int, int);
  9430. void SetSelection(uint, uint = M_MAX_UNSIGNED);
  9431. void SetSize(int, int);
  9432. bool SetStyle(const String&, XMLFile = null);
  9433. bool SetStyle(const XMLElement&);
  9434. bool SetStyleAuto(XMLFile = null);
  9435. void UpdateLayout();
  9436. const Variant& GetVar(const StringHash&);
  9437. // Properties:
  9438. bool animationEnabled;
  9439. /* readonly */
  9440. Array<Variant> attributeDefaults;
  9441. /* readonly */
  9442. Array<AttributeInfo> attributeInfos;
  9443. Array<Variant> attributes;
  9444. /* readonly */
  9445. StringHash baseType;
  9446. bool bringToBack;
  9447. bool bringToFront;
  9448. /* readonly */
  9449. String category;
  9450. /* readonly */
  9451. Array<IntVector2> charPositions;
  9452. /* readonly */
  9453. Array<IntVector2> charSizes;
  9454. /* readonly */
  9455. IntVector2 childOffset;
  9456. /* readonly */
  9457. Array<UIElement> children;
  9458. IntRect clipBorder;
  9459. bool clipChildren;
  9460. /* writeonly */
  9461. Color color;
  9462. /* readonly */
  9463. bool colorGradient;
  9464. Array<Color> colors;
  9465. /* readonly */
  9466. IntRect combinedScreenRect;
  9467. XMLFile defaultStyle;
  9468. /* readonly */
  9469. float derivedOpacity;
  9470. /* readonly */
  9471. uint dragButtonCombo;
  9472. /* readonly */
  9473. int dragButtonCount;
  9474. uint dragDropMode;
  9475. bool editable;
  9476. Color effectColor;
  9477. bool elementEventSender;
  9478. bool enabled;
  9479. /* readonly */
  9480. bool enabledSelf;
  9481. /* readonly */
  9482. bool fixedHeight;
  9483. /* readonly */
  9484. bool fixedSize;
  9485. /* readonly */
  9486. bool fixedWidth;
  9487. bool focus;
  9488. FocusMode focusMode;
  9489. /* readonly */
  9490. Font font;
  9491. /* readonly */
  9492. int fontSize;
  9493. int height;
  9494. HorizontalAlignment horizontalAlignment;
  9495. Color hoverColor;
  9496. /* readonly */
  9497. bool hovering;
  9498. int indent;
  9499. int indentSpacing;
  9500. /* readonly */
  9501. int indentWidth;
  9502. bool internal;
  9503. IntRect layoutBorder;
  9504. Vector2 layoutFlexScale;
  9505. LayoutMode layoutMode;
  9506. int layoutSpacing;
  9507. int maxHeight;
  9508. IntVector2 maxSize;
  9509. int maxWidth;
  9510. int minHeight;
  9511. IntVector2 minSize;
  9512. int minWidth;
  9513. String name;
  9514. /* readonly */
  9515. uint numAllChildren;
  9516. /* readonly */
  9517. uint numAttributes;
  9518. /* readonly */
  9519. uint numChars;
  9520. /* readonly */
  9521. uint numChildren;
  9522. /* readonly */
  9523. uint numRows;
  9524. ObjectAnimation objectAnimation;
  9525. float opacity;
  9526. UIElement parent;
  9527. IntVector2 position;
  9528. int priority;
  9529. /* readonly */
  9530. int refs;
  9531. /* readonly */
  9532. UIElement root;
  9533. /* readonly */
  9534. int rowHeight;
  9535. float rowSpacing;
  9536. /* readonly */
  9537. Array<int> rowWidths;
  9538. /* readonly */
  9539. IntVector2 screenPosition;
  9540. bool selected;
  9541. Color selectionColor;
  9542. /* readonly */
  9543. uint selectionLength;
  9544. /* readonly */
  9545. uint selectionStart;
  9546. IntVector2 size;
  9547. bool sortChildren;
  9548. String style;
  9549. bool temporary;
  9550. String text;
  9551. HorizontalAlignment textAlignment;
  9552. TextEffect textEffect;
  9553. TraversalMode traversalMode;
  9554. /* readonly */
  9555. StringHash type;
  9556. /* readonly */
  9557. String typeName;
  9558. bool useDerivedOpacity;
  9559. /* readonly */
  9560. VariantMap vars;
  9561. VerticalAlignment verticalAlignment;
  9562. bool visible;
  9563. /* readonly */
  9564. int weakRefs;
  9565. int width;
  9566. bool wordwrap;
  9567. };
  9568. class Text3D
  9569. {
  9570. // Methods:
  9571. void ApplyAttributes();
  9572. void DrawDebugGeometry(DebugRenderer, bool);
  9573. Variant GetAttribute(const String&) const;
  9574. ValueAnimation GetAttributeAnimation(const String&) const;
  9575. float GetAttributeAnimationSpeed(const String&) const;
  9576. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  9577. Variant GetAttributeDefault(const String&) const;
  9578. bool IsInView(Camera) const;
  9579. bool Load(File, bool = false);
  9580. bool Load(VectorBuffer&, bool = false);
  9581. bool LoadXML(const XMLElement&, bool = false);
  9582. void MarkNetworkUpdate() const;
  9583. void Remove();
  9584. void RemoveInstanceDefault();
  9585. void ResetToDefault();
  9586. bool Save(File) const;
  9587. bool Save(VectorBuffer&) const;
  9588. bool SaveXML(XMLElement&) const;
  9589. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9590. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  9591. bool SetAttribute(const String&, const Variant&);
  9592. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  9593. void SetAttributeAnimationSpeed(const String&, float);
  9594. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  9595. bool SetFont(Font, int);
  9596. bool SetFont(const String&, int);
  9597. // Properties:
  9598. bool animationEnabled;
  9599. /* readonly */
  9600. Array<Variant> attributeDefaults;
  9601. /* readonly */
  9602. Array<AttributeInfo> attributeInfos;
  9603. Array<Variant> attributes;
  9604. /* readonly */
  9605. StringHash baseType;
  9606. /* readonly */
  9607. BoundingBox boundingBox;
  9608. bool castShadows;
  9609. /* readonly */
  9610. String category;
  9611. /* readonly */
  9612. Array<IntVector2> charPositions;
  9613. /* readonly */
  9614. Array<IntVector2> charSizes;
  9615. /* writeonly */
  9616. Color color;
  9617. Array<Color> colors;
  9618. float drawDistance;
  9619. Color effectColor;
  9620. float effectDepthBias;
  9621. bool enabled;
  9622. /* readonly */
  9623. bool enabledEffective;
  9624. FaceCameraMode faceCameraMode;
  9625. /* readonly */
  9626. Font font;
  9627. /* readonly */
  9628. int fontSize;
  9629. HorizontalAlignment horizontalAlignment;
  9630. /* readonly */
  9631. uint id;
  9632. /* readonly */
  9633. bool inView;
  9634. uint lightMask;
  9635. float lodBias;
  9636. Material material;
  9637. uint maxLights;
  9638. /* readonly */
  9639. Node node;
  9640. /* readonly */
  9641. uint numAttributes;
  9642. /* readonly */
  9643. uint numChars;
  9644. /* readonly */
  9645. uint numRows;
  9646. ObjectAnimation objectAnimation;
  9647. bool occludee;
  9648. bool occluder;
  9649. float opacity;
  9650. /* readonly */
  9651. int refs;
  9652. /* readonly */
  9653. int rowHeight;
  9654. float rowSpacing;
  9655. /* readonly */
  9656. Array<int> rowWidths;
  9657. float shadowDistance;
  9658. uint shadowMask;
  9659. bool temporary;
  9660. String text;
  9661. HorizontalAlignment textAlignment;
  9662. TextEffect textEffect;
  9663. /* readonly */
  9664. StringHash type;
  9665. /* readonly */
  9666. String typeName;
  9667. VerticalAlignment verticalAlignment;
  9668. uint viewMask;
  9669. /* readonly */
  9670. int weakRefs;
  9671. int width;
  9672. bool wordwrap;
  9673. /* readonly */
  9674. BoundingBox worldBoundingBox;
  9675. uint zoneMask;
  9676. };
  9677. class Texture
  9678. {
  9679. // Methods:
  9680. void ClearDataLost();
  9681. bool Load(File);
  9682. bool Load(VectorBuffer&);
  9683. bool Save(File) const;
  9684. bool Save(VectorBuffer&) const;
  9685. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9686. void SetNumLevels(uint);
  9687. // Properties:
  9688. Array<TextureAddressMode> addressMode;
  9689. Texture backupTexture;
  9690. /* readonly */
  9691. StringHash baseType;
  9692. Color borderColor;
  9693. /* readonly */
  9694. String category;
  9695. /* readonly */
  9696. bool compressed;
  9697. /* readonly */
  9698. bool dataLost;
  9699. TextureFilterMode filterMode;
  9700. /* readonly */
  9701. uint format;
  9702. /* readonly */
  9703. int height;
  9704. /* readonly */
  9705. Array<int> levelHeight;
  9706. /* readonly */
  9707. Array<int> levelWidth;
  9708. /* readonly */
  9709. uint levels;
  9710. /* readonly */
  9711. uint memoryUse;
  9712. Array<int> mipsToSkip;
  9713. String name;
  9714. /* readonly */
  9715. int refs;
  9716. bool sRGB;
  9717. /* readonly */
  9718. StringHash type;
  9719. /* readonly */
  9720. String typeName;
  9721. /* readonly */
  9722. TextureUsage usage;
  9723. /* readonly */
  9724. uint useTimer;
  9725. /* readonly */
  9726. int weakRefs;
  9727. /* readonly */
  9728. int width;
  9729. };
  9730. class Texture2D
  9731. {
  9732. // Methods:
  9733. void ClearDataLost();
  9734. bool Load(File);
  9735. bool Load(VectorBuffer&);
  9736. bool Save(File) const;
  9737. bool Save(VectorBuffer&) const;
  9738. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9739. bool SetData(Image, bool = false);
  9740. void SetNumLevels(uint);
  9741. bool SetSize(int, int, uint, TextureUsage = TEXTURE_STATIC);
  9742. // Properties:
  9743. Array<TextureAddressMode> addressMode;
  9744. Texture backupTexture;
  9745. /* readonly */
  9746. StringHash baseType;
  9747. Color borderColor;
  9748. /* readonly */
  9749. String category;
  9750. /* readonly */
  9751. bool compressed;
  9752. /* readonly */
  9753. bool dataLost;
  9754. TextureFilterMode filterMode;
  9755. /* readonly */
  9756. uint format;
  9757. /* readonly */
  9758. int height;
  9759. /* readonly */
  9760. Array<int> levelHeight;
  9761. /* readonly */
  9762. Array<int> levelWidth;
  9763. /* readonly */
  9764. uint levels;
  9765. /* readonly */
  9766. uint memoryUse;
  9767. Array<int> mipsToSkip;
  9768. String name;
  9769. /* readonly */
  9770. int refs;
  9771. /* readonly */
  9772. RenderSurface renderSurface;
  9773. bool sRGB;
  9774. /* readonly */
  9775. StringHash type;
  9776. /* readonly */
  9777. String typeName;
  9778. /* readonly */
  9779. TextureUsage usage;
  9780. /* readonly */
  9781. uint useTimer;
  9782. /* readonly */
  9783. int weakRefs;
  9784. /* readonly */
  9785. int width;
  9786. };
  9787. class Texture3D
  9788. {
  9789. // Methods:
  9790. void ClearDataLost();
  9791. bool Load(File);
  9792. bool Load(VectorBuffer&);
  9793. bool Save(File) const;
  9794. bool Save(VectorBuffer&) const;
  9795. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9796. bool SetData(Image, bool = false);
  9797. void SetNumLevels(uint);
  9798. bool SetSize(int, int, uint, TextureUsage = TEXTURE_STATIC);
  9799. // Properties:
  9800. Array<TextureAddressMode> addressMode;
  9801. Texture backupTexture;
  9802. /* readonly */
  9803. StringHash baseType;
  9804. Color borderColor;
  9805. /* readonly */
  9806. String category;
  9807. /* readonly */
  9808. bool compressed;
  9809. /* readonly */
  9810. bool dataLost;
  9811. TextureFilterMode filterMode;
  9812. /* readonly */
  9813. uint format;
  9814. /* readonly */
  9815. int height;
  9816. /* readonly */
  9817. Array<int> levelHeight;
  9818. /* readonly */
  9819. Array<int> levelWidth;
  9820. /* readonly */
  9821. uint levels;
  9822. /* readonly */
  9823. uint memoryUse;
  9824. Array<int> mipsToSkip;
  9825. String name;
  9826. /* readonly */
  9827. int refs;
  9828. /* readonly */
  9829. RenderSurface renderSurface;
  9830. bool sRGB;
  9831. /* readonly */
  9832. StringHash type;
  9833. /* readonly */
  9834. String typeName;
  9835. /* readonly */
  9836. TextureUsage usage;
  9837. /* readonly */
  9838. uint useTimer;
  9839. /* readonly */
  9840. int weakRefs;
  9841. /* readonly */
  9842. int width;
  9843. };
  9844. class TextureCube
  9845. {
  9846. // Methods:
  9847. void ClearDataLost();
  9848. bool Load(File);
  9849. bool Load(VectorBuffer&);
  9850. bool Save(File) const;
  9851. bool Save(VectorBuffer&) const;
  9852. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9853. bool SetData(CubeMapFace, Image, bool = false);
  9854. void SetNumLevels(uint);
  9855. bool SetSize(int, uint, TextureUsage = TEXTURE_STATIC);
  9856. // Properties:
  9857. Array<TextureAddressMode> addressMode;
  9858. Texture backupTexture;
  9859. /* readonly */
  9860. StringHash baseType;
  9861. Color borderColor;
  9862. /* readonly */
  9863. String category;
  9864. /* readonly */
  9865. bool compressed;
  9866. /* readonly */
  9867. bool dataLost;
  9868. TextureFilterMode filterMode;
  9869. /* readonly */
  9870. uint format;
  9871. /* readonly */
  9872. int height;
  9873. /* readonly */
  9874. Array<int> levelHeight;
  9875. /* readonly */
  9876. Array<int> levelWidth;
  9877. /* readonly */
  9878. uint levels;
  9879. /* readonly */
  9880. uint memoryUse;
  9881. Array<int> mipsToSkip;
  9882. String name;
  9883. /* readonly */
  9884. int refs;
  9885. /* readonly */
  9886. Array<RenderSurface> renderSurfaces;
  9887. bool sRGB;
  9888. /* readonly */
  9889. StringHash type;
  9890. /* readonly */
  9891. String typeName;
  9892. /* readonly */
  9893. TextureUsage usage;
  9894. /* readonly */
  9895. uint useTimer;
  9896. /* readonly */
  9897. int weakRefs;
  9898. /* readonly */
  9899. int width;
  9900. };
  9901. class TextureFrame
  9902. {
  9903. // Properties:
  9904. float time;
  9905. Rect uv;
  9906. };
  9907. class Tile2D
  9908. {
  9909. // Methods:
  9910. bool HasProperty(const String&) const;
  9911. const String& GetProperty(const String&) const;
  9912. // Properties:
  9913. /* readonly */
  9914. int gid;
  9915. /* readonly */
  9916. int refs;
  9917. /* readonly */
  9918. Sprite2D sprite;
  9919. /* readonly */
  9920. int weakRefs;
  9921. };
  9922. class TileMap2D
  9923. {
  9924. // Methods:
  9925. void ApplyAttributes();
  9926. void DrawDebugGeometry(DebugRenderer, bool);
  9927. Variant GetAttribute(const String&) const;
  9928. ValueAnimation GetAttributeAnimation(const String&) const;
  9929. float GetAttributeAnimationSpeed(const String&) const;
  9930. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  9931. Variant GetAttributeDefault(const String&) const;
  9932. TileMapLayer2D GetLayer(uint) const;
  9933. bool Load(File, bool = false);
  9934. bool Load(VectorBuffer&, bool = false);
  9935. bool LoadXML(const XMLElement&, bool = false);
  9936. void MarkNetworkUpdate() const;
  9937. bool PositionToTileIndex(int&, int&, const Vector2&) const;
  9938. void Remove();
  9939. void RemoveInstanceDefault();
  9940. void ResetToDefault();
  9941. bool Save(File) const;
  9942. bool Save(VectorBuffer&) const;
  9943. bool SaveXML(XMLElement&) const;
  9944. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  9945. bool SetAttribute(const String&, const Variant&);
  9946. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  9947. void SetAttributeAnimationSpeed(const String&, float);
  9948. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  9949. Vector2 TileIndexToPosition(int, int) const;
  9950. // Properties:
  9951. bool animationEnabled;
  9952. /* readonly */
  9953. Array<Variant> attributeDefaults;
  9954. /* readonly */
  9955. Array<AttributeInfo> attributeInfos;
  9956. Array<Variant> attributes;
  9957. /* readonly */
  9958. StringHash baseType;
  9959. /* readonly */
  9960. String category;
  9961. bool enabled;
  9962. /* readonly */
  9963. bool enabledEffective;
  9964. /* readonly */
  9965. uint id;
  9966. /* readonly */
  9967. TileMapInfo2D info;
  9968. /* readonly */
  9969. Node node;
  9970. /* readonly */
  9971. uint numAttributes;
  9972. /* readonly */
  9973. uint numLayers;
  9974. ObjectAnimation objectAnimation;
  9975. /* readonly */
  9976. int refs;
  9977. bool temporary;
  9978. TmxFile2D tmxFile;
  9979. /* readonly */
  9980. StringHash type;
  9981. /* readonly */
  9982. String typeName;
  9983. /* readonly */
  9984. int weakRefs;
  9985. };
  9986. class TileMapInfo2D
  9987. {
  9988. // Properties:
  9989. int height;
  9990. /* readonly */
  9991. float mapHeight;
  9992. /* readonly */
  9993. float mapWidth;
  9994. Orientation2D orientation;
  9995. float tileHeight;
  9996. float tileWidth;
  9997. int width;
  9998. };
  9999. class TileMapLayer2D
  10000. {
  10001. // Methods:
  10002. void ApplyAttributes();
  10003. void DrawDebugGeometry(DebugRenderer, bool);
  10004. Variant GetAttribute(const String&) const;
  10005. ValueAnimation GetAttributeAnimation(const String&) const;
  10006. float GetAttributeAnimationSpeed(const String&) const;
  10007. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  10008. Variant GetAttributeDefault(const String&) const;
  10009. TileMapObject2D GetObject(uint) const;
  10010. Node GetObjectNode(uint) const;
  10011. Tile2D GetTile(int, int) const;
  10012. Node GetTileNode(int, int) const;
  10013. bool HasProperty(const String&) const;
  10014. bool Load(File, bool = false);
  10015. bool Load(VectorBuffer&, bool = false);
  10016. bool LoadXML(const XMLElement&, bool = false);
  10017. void MarkNetworkUpdate() const;
  10018. void Remove();
  10019. void RemoveInstanceDefault();
  10020. void ResetToDefault();
  10021. bool Save(File) const;
  10022. bool Save(VectorBuffer&) const;
  10023. bool SaveXML(XMLElement&) const;
  10024. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  10025. bool SetAttribute(const String&, const Variant&);
  10026. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  10027. void SetAttributeAnimationSpeed(const String&, float);
  10028. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  10029. const String& GetProperty(const String&) const;
  10030. // Properties:
  10031. bool animationEnabled;
  10032. /* readonly */
  10033. Array<Variant> attributeDefaults;
  10034. /* readonly */
  10035. Array<AttributeInfo> attributeInfos;
  10036. Array<Variant> attributes;
  10037. /* readonly */
  10038. StringHash baseType;
  10039. /* readonly */
  10040. String category;
  10041. /* writeonly */
  10042. int drawOrder;
  10043. bool enabled;
  10044. /* readonly */
  10045. bool enabledEffective;
  10046. /* readonly */
  10047. int height;
  10048. /* readonly */
  10049. uint id;
  10050. /* readonly */
  10051. Node imageNode;
  10052. /* readonly */
  10053. TileMapLayerType2D layerType;
  10054. /* readonly */
  10055. Node node;
  10056. /* readonly */
  10057. uint numAttributes;
  10058. /* readonly */
  10059. uint numObjects;
  10060. ObjectAnimation objectAnimation;
  10061. /* readonly */
  10062. int refs;
  10063. /* readonly */
  10064. int rrawOrder;
  10065. bool temporary;
  10066. /* readonly */
  10067. StringHash type;
  10068. /* readonly */
  10069. String typeName;
  10070. bool visible;
  10071. /* readonly */
  10072. int weakRefs;
  10073. /* readonly */
  10074. int width;
  10075. };
  10076. class TileMapObject2D
  10077. {
  10078. // Methods:
  10079. bool HasProperty(const String&) const;
  10080. const String& GetProperty(const String&) const;
  10081. const Vector2& GetPoint(uint) const;
  10082. // Properties:
  10083. /* readonly */
  10084. String name;
  10085. /* readonly */
  10086. uint numPoints;
  10087. /* readonly */
  10088. TileObjectType2D objectType;
  10089. /* readonly */
  10090. Vector2 position;
  10091. /* readonly */
  10092. int refs;
  10093. /* readonly */
  10094. Vector2 size;
  10095. /* readonly */
  10096. int tileGid;
  10097. /* readonly */
  10098. Sprite2D tileSprite;
  10099. /* readonly */
  10100. String type;
  10101. /* readonly */
  10102. int weakRefs;
  10103. };
  10104. class Time
  10105. {
  10106. // Methods:
  10107. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  10108. // Properties:
  10109. /* readonly */
  10110. StringHash baseType;
  10111. /* readonly */
  10112. String category;
  10113. /* readonly */
  10114. float elapsedTime;
  10115. /* readonly */
  10116. uint frameNumber;
  10117. /* readonly */
  10118. int refs;
  10119. /* readonly */
  10120. uint systemTime;
  10121. /* readonly */
  10122. uint timeSinceEpoch;
  10123. /* readonly */
  10124. String timeStamp;
  10125. /* readonly */
  10126. float timeStep;
  10127. /* readonly */
  10128. StringHash type;
  10129. /* readonly */
  10130. String typeName;
  10131. /* readonly */
  10132. int weakRefs;
  10133. };
  10134. class Timer
  10135. {
  10136. // Methods:
  10137. uint GetMSec(bool);
  10138. void Reset();
  10139. };
  10140. class TmxFile2D
  10141. {
  10142. // Methods:
  10143. bool Load(File);
  10144. bool Load(VectorBuffer&);
  10145. bool Save(File) const;
  10146. bool Save(VectorBuffer&) const;
  10147. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  10148. // Properties:
  10149. /* readonly */
  10150. StringHash baseType;
  10151. /* readonly */
  10152. String category;
  10153. /* readonly */
  10154. uint memoryUse;
  10155. String name;
  10156. /* readonly */
  10157. int refs;
  10158. /* readonly */
  10159. StringHash type;
  10160. /* readonly */
  10161. String typeName;
  10162. /* readonly */
  10163. uint useTimer;
  10164. /* readonly */
  10165. int weakRefs;
  10166. };
  10167. class ToolTip
  10168. {
  10169. // Methods:
  10170. void AddChild(UIElement);
  10171. void ApplyAttributes();
  10172. void BringToFront();
  10173. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  10174. void DisableLayoutUpdate();
  10175. IntVector2 ElementToScreen(const IntVector2&);
  10176. void EnableLayoutUpdate();
  10177. uint FindChild(UIElement) const;
  10178. Variant GetAttribute(const String&) const;
  10179. ValueAnimation GetAttributeAnimation(const String&) const;
  10180. float GetAttributeAnimationSpeed(const String&) const;
  10181. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  10182. Variant GetAttributeDefault(const String&) const;
  10183. UIElement GetChild(const String&, bool = false) const;
  10184. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  10185. Array<UIElement> GetChildren(bool = false) const;
  10186. UIElement GetElementEventSender() const;
  10187. uint GetNumChildren(bool) const;
  10188. void InsertChild(uint, UIElement);
  10189. bool IsInside(IntVector2, bool);
  10190. bool IsInsideCombined(IntVector2, bool);
  10191. bool Load(File, bool = false);
  10192. bool Load(VectorBuffer&, bool = false);
  10193. bool LoadChildXML(XMLFile, XMLFile = null);
  10194. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  10195. bool LoadXML(File);
  10196. bool LoadXML(VectorBuffer&);
  10197. bool LoadXML(XMLFile, XMLFile);
  10198. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  10199. bool LoadXML(const XMLElement&, bool = false);
  10200. void MarkNetworkUpdate() const;
  10201. void Remove();
  10202. void RemoveAllChildren();
  10203. void RemoveChild(UIElement, uint = 0);
  10204. void RemoveChild(uint);
  10205. void RemoveInstanceDefault();
  10206. void ResetDeepEnabled();
  10207. void ResetToDefault();
  10208. bool Save(File) const;
  10209. bool Save(VectorBuffer&) const;
  10210. bool SaveXML(File);
  10211. bool SaveXML(VectorBuffer&);
  10212. bool SaveXML(XMLElement&) const;
  10213. IntVector2 ScreenToElement(const IntVector2&);
  10214. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  10215. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  10216. bool SetAttribute(const String&, const Variant&);
  10217. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  10218. void SetAttributeAnimationSpeed(const String&, float);
  10219. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  10220. void SetDeepEnabled(bool);
  10221. void SetEnabledRecursive(bool);
  10222. void SetFixedHeight(int);
  10223. void SetFixedSize(int, int);
  10224. void SetFixedWidth(int);
  10225. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  10226. void SetMaxSize(int, int);
  10227. void SetMinSize(int, int);
  10228. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  10229. void SetPosition(int, int);
  10230. void SetSize(int, int);
  10231. bool SetStyle(const String&, XMLFile = null);
  10232. bool SetStyle(const XMLElement&);
  10233. bool SetStyleAuto(XMLFile = null);
  10234. void UpdateLayout();
  10235. const Variant& GetVar(const StringHash&);
  10236. // Properties:
  10237. bool animationEnabled;
  10238. /* readonly */
  10239. Array<Variant> attributeDefaults;
  10240. /* readonly */
  10241. Array<AttributeInfo> attributeInfos;
  10242. Array<Variant> attributes;
  10243. /* readonly */
  10244. StringHash baseType;
  10245. bool bringToBack;
  10246. bool bringToFront;
  10247. /* readonly */
  10248. String category;
  10249. /* readonly */
  10250. IntVector2 childOffset;
  10251. /* readonly */
  10252. Array<UIElement> children;
  10253. IntRect clipBorder;
  10254. bool clipChildren;
  10255. /* writeonly */
  10256. Color color;
  10257. /* readonly */
  10258. bool colorGradient;
  10259. Array<Color> colors;
  10260. /* readonly */
  10261. IntRect combinedScreenRect;
  10262. XMLFile defaultStyle;
  10263. float delay;
  10264. /* readonly */
  10265. float derivedOpacity;
  10266. /* readonly */
  10267. uint dragButtonCombo;
  10268. /* readonly */
  10269. int dragButtonCount;
  10270. uint dragDropMode;
  10271. bool editable;
  10272. bool elementEventSender;
  10273. bool enabled;
  10274. /* readonly */
  10275. bool enabledSelf;
  10276. /* readonly */
  10277. bool fixedHeight;
  10278. /* readonly */
  10279. bool fixedSize;
  10280. /* readonly */
  10281. bool fixedWidth;
  10282. bool focus;
  10283. FocusMode focusMode;
  10284. int height;
  10285. HorizontalAlignment horizontalAlignment;
  10286. /* readonly */
  10287. bool hovering;
  10288. int indent;
  10289. int indentSpacing;
  10290. /* readonly */
  10291. int indentWidth;
  10292. bool internal;
  10293. IntRect layoutBorder;
  10294. Vector2 layoutFlexScale;
  10295. LayoutMode layoutMode;
  10296. int layoutSpacing;
  10297. int maxHeight;
  10298. IntVector2 maxSize;
  10299. int maxWidth;
  10300. int minHeight;
  10301. IntVector2 minSize;
  10302. int minWidth;
  10303. String name;
  10304. /* readonly */
  10305. uint numAllChildren;
  10306. /* readonly */
  10307. uint numAttributes;
  10308. /* readonly */
  10309. uint numChildren;
  10310. ObjectAnimation objectAnimation;
  10311. float opacity;
  10312. UIElement parent;
  10313. IntVector2 position;
  10314. int priority;
  10315. /* readonly */
  10316. int refs;
  10317. /* readonly */
  10318. UIElement root;
  10319. /* readonly */
  10320. IntVector2 screenPosition;
  10321. bool selected;
  10322. IntVector2 size;
  10323. bool sortChildren;
  10324. String style;
  10325. bool temporary;
  10326. TraversalMode traversalMode;
  10327. /* readonly */
  10328. StringHash type;
  10329. /* readonly */
  10330. String typeName;
  10331. bool useDerivedOpacity;
  10332. /* readonly */
  10333. VariantMap vars;
  10334. VerticalAlignment verticalAlignment;
  10335. bool visible;
  10336. /* readonly */
  10337. int weakRefs;
  10338. int width;
  10339. };
  10340. class TouchState
  10341. {
  10342. // Properties:
  10343. IntVector2 delta;
  10344. IntVector2 lastPosition;
  10345. IntVector2 position;
  10346. float pressure;
  10347. int touchID;
  10348. /* readonly */
  10349. UIElement touchedElement;
  10350. };
  10351. class UI
  10352. {
  10353. // Methods:
  10354. void Clear();
  10355. void DebugDraw(UIElement);
  10356. UIElement GetElementAt(const IntVector2&, bool = true);
  10357. UIElement GetElementAt(int, int, bool = true);
  10358. bool HasModalElement() const;
  10359. bool IsDragging() const;
  10360. UIElement LoadLayout(File);
  10361. UIElement LoadLayout(File, XMLFile);
  10362. UIElement LoadLayout(VectorBuffer&);
  10363. UIElement LoadLayout(VectorBuffer&, XMLFile);
  10364. UIElement LoadLayout(XMLFile);
  10365. UIElement LoadLayout(XMLFile, XMLFile);
  10366. bool SaveLayout(File, UIElement);
  10367. bool SaveLayout(VectorBuffer&, UIElement);
  10368. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  10369. void SetFocusElement(UIElement, bool = false);
  10370. const Array<UIElement> GetDragElements();
  10371. // Properties:
  10372. /* readonly */
  10373. StringHash baseType;
  10374. /* readonly */
  10375. String category;
  10376. String clipBoardText;
  10377. Cursor cursor;
  10378. /* readonly */
  10379. IntVector2 cursorPosition;
  10380. float defaultToolTipDelay;
  10381. float doubleClickInterval;
  10382. int dragBeginDistance;
  10383. float dragBeginInterval;
  10384. UIElement focusElement;
  10385. bool forceAutoHint;
  10386. /* readonly */
  10387. UIElement frontElement;
  10388. int maxFontTextureSize;
  10389. /* readonly */
  10390. UIElement modalRoot;
  10391. bool nonFocusedMouseWheel;
  10392. /* readonly */
  10393. int refs;
  10394. /* readonly */
  10395. UIElement root;
  10396. /* readonly */
  10397. StringHash type;
  10398. /* readonly */
  10399. String typeName;
  10400. bool useMutableGlyphs;
  10401. bool useScreenKeyboard;
  10402. bool useSystemClipboard;
  10403. /* readonly */
  10404. int weakRefs;
  10405. };
  10406. class UIElement
  10407. {
  10408. // Methods:
  10409. void AddChild(UIElement);
  10410. void ApplyAttributes();
  10411. void BringToFront();
  10412. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  10413. void DisableLayoutUpdate();
  10414. IntVector2 ElementToScreen(const IntVector2&);
  10415. void EnableLayoutUpdate();
  10416. uint FindChild(UIElement) const;
  10417. Variant GetAttribute(const String&) const;
  10418. ValueAnimation GetAttributeAnimation(const String&) const;
  10419. float GetAttributeAnimationSpeed(const String&) const;
  10420. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  10421. Variant GetAttributeDefault(const String&) const;
  10422. UIElement GetChild(const String&, bool = false) const;
  10423. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  10424. Array<UIElement> GetChildren(bool = false) const;
  10425. UIElement GetElementEventSender() const;
  10426. uint GetNumChildren(bool) const;
  10427. void InsertChild(uint, UIElement);
  10428. bool IsInside(IntVector2, bool);
  10429. bool IsInsideCombined(IntVector2, bool);
  10430. bool Load(File, bool = false);
  10431. bool Load(VectorBuffer&, bool = false);
  10432. bool LoadChildXML(XMLFile, XMLFile = null);
  10433. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  10434. bool LoadXML(File);
  10435. bool LoadXML(VectorBuffer&);
  10436. bool LoadXML(XMLFile, XMLFile);
  10437. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  10438. bool LoadXML(const XMLElement&, bool = false);
  10439. void MarkNetworkUpdate() const;
  10440. void Remove();
  10441. void RemoveAllChildren();
  10442. void RemoveChild(UIElement, uint = 0);
  10443. void RemoveChild(uint);
  10444. void RemoveInstanceDefault();
  10445. void ResetDeepEnabled();
  10446. void ResetToDefault();
  10447. bool Save(File) const;
  10448. bool Save(VectorBuffer&) const;
  10449. bool SaveXML(File);
  10450. bool SaveXML(VectorBuffer&);
  10451. bool SaveXML(XMLElement&) const;
  10452. IntVector2 ScreenToElement(const IntVector2&);
  10453. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  10454. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  10455. bool SetAttribute(const String&, const Variant&);
  10456. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  10457. void SetAttributeAnimationSpeed(const String&, float);
  10458. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  10459. void SetDeepEnabled(bool);
  10460. void SetEnabledRecursive(bool);
  10461. void SetFixedHeight(int);
  10462. void SetFixedSize(int, int);
  10463. void SetFixedWidth(int);
  10464. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  10465. void SetMaxSize(int, int);
  10466. void SetMinSize(int, int);
  10467. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  10468. void SetPosition(int, int);
  10469. void SetSize(int, int);
  10470. bool SetStyle(const String&, XMLFile = null);
  10471. bool SetStyle(const XMLElement&);
  10472. bool SetStyleAuto(XMLFile = null);
  10473. void UpdateLayout();
  10474. const Variant& GetVar(const StringHash&);
  10475. // Properties:
  10476. bool animationEnabled;
  10477. /* readonly */
  10478. Array<Variant> attributeDefaults;
  10479. /* readonly */
  10480. Array<AttributeInfo> attributeInfos;
  10481. Array<Variant> attributes;
  10482. /* readonly */
  10483. StringHash baseType;
  10484. bool bringToBack;
  10485. bool bringToFront;
  10486. /* readonly */
  10487. String category;
  10488. /* readonly */
  10489. IntVector2 childOffset;
  10490. /* readonly */
  10491. Array<UIElement> children;
  10492. IntRect clipBorder;
  10493. bool clipChildren;
  10494. /* writeonly */
  10495. Color color;
  10496. /* readonly */
  10497. bool colorGradient;
  10498. Array<Color> colors;
  10499. /* readonly */
  10500. IntRect combinedScreenRect;
  10501. XMLFile defaultStyle;
  10502. /* readonly */
  10503. float derivedOpacity;
  10504. /* readonly */
  10505. uint dragButtonCombo;
  10506. /* readonly */
  10507. int dragButtonCount;
  10508. uint dragDropMode;
  10509. bool editable;
  10510. bool elementEventSender;
  10511. bool enabled;
  10512. /* readonly */
  10513. bool enabledSelf;
  10514. /* readonly */
  10515. bool fixedHeight;
  10516. /* readonly */
  10517. bool fixedSize;
  10518. /* readonly */
  10519. bool fixedWidth;
  10520. bool focus;
  10521. FocusMode focusMode;
  10522. int height;
  10523. HorizontalAlignment horizontalAlignment;
  10524. /* readonly */
  10525. bool hovering;
  10526. int indent;
  10527. int indentSpacing;
  10528. /* readonly */
  10529. int indentWidth;
  10530. bool internal;
  10531. IntRect layoutBorder;
  10532. Vector2 layoutFlexScale;
  10533. LayoutMode layoutMode;
  10534. int layoutSpacing;
  10535. int maxHeight;
  10536. IntVector2 maxSize;
  10537. int maxWidth;
  10538. int minHeight;
  10539. IntVector2 minSize;
  10540. int minWidth;
  10541. String name;
  10542. /* readonly */
  10543. uint numAllChildren;
  10544. /* readonly */
  10545. uint numAttributes;
  10546. /* readonly */
  10547. uint numChildren;
  10548. ObjectAnimation objectAnimation;
  10549. float opacity;
  10550. UIElement parent;
  10551. IntVector2 position;
  10552. int priority;
  10553. /* readonly */
  10554. int refs;
  10555. /* readonly */
  10556. UIElement root;
  10557. /* readonly */
  10558. IntVector2 screenPosition;
  10559. bool selected;
  10560. IntVector2 size;
  10561. bool sortChildren;
  10562. String style;
  10563. bool temporary;
  10564. TraversalMode traversalMode;
  10565. /* readonly */
  10566. StringHash type;
  10567. /* readonly */
  10568. String typeName;
  10569. bool useDerivedOpacity;
  10570. /* readonly */
  10571. VariantMap vars;
  10572. VerticalAlignment verticalAlignment;
  10573. bool visible;
  10574. /* readonly */
  10575. int weakRefs;
  10576. int width;
  10577. };
  10578. class ValueAnimation
  10579. {
  10580. // Methods:
  10581. bool Load(File);
  10582. bool Load(VectorBuffer&);
  10583. bool Save(File) const;
  10584. bool Save(VectorBuffer&) const;
  10585. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  10586. void SetEventFrame(float, const String&, const VariantMap& = VariantMap ( ));
  10587. void SetKeyFrame(float, const Variant&);
  10588. // Properties:
  10589. /* readonly */
  10590. StringHash baseType;
  10591. /* readonly */
  10592. String category;
  10593. InterpMethod interpolationMethod;
  10594. /* readonly */
  10595. uint memoryUse;
  10596. String name;
  10597. /* readonly */
  10598. int refs;
  10599. float splineTension;
  10600. /* readonly */
  10601. StringHash type;
  10602. /* readonly */
  10603. String typeName;
  10604. /* readonly */
  10605. uint useTimer;
  10606. VariantType valueType;
  10607. /* readonly */
  10608. int weakRefs;
  10609. };
  10610. class Variant
  10611. {
  10612. // Methods:
  10613. void Clear();
  10614. const Color& GetColor() const;
  10615. void FromString(VariantType, const String&);
  10616. void FromString(const String&, const String&);
  10617. bool GetBool() const;
  10618. VectorBuffer GetBuffer() const;
  10619. float GetFloat() const;
  10620. int GetInt() const;
  10621. RefCounted GetPtr() const;
  10622. StringHash GetStringHash() const;
  10623. uint GetUInt() const;
  10624. Array<Variant> GetVariantVector() const;
  10625. const IntRect& GetIntRect() const;
  10626. const IntVector2& GetIntVector2() const;
  10627. const Matrix3& GetMatrix3() const;
  10628. const Matrix3x4& GetMatrix3x4() const;
  10629. const Matrix4& GetMatrix4() const;
  10630. const Quaternion& GetQuaternion() const;
  10631. const ResourceRef& GetResourceRef() const;
  10632. const ResourceRefList& GetResourceRefList() const;
  10633. const String& GetString() const;
  10634. String ToString() const;
  10635. const VariantMap& GetVariantMap() const;
  10636. const Vector2& GetVector2() const;
  10637. const Vector3& GetVector3() const;
  10638. const Vector4& GetVector4() const;
  10639. // Properties:
  10640. /* readonly */
  10641. bool empty;
  10642. /* readonly */
  10643. VariantType type;
  10644. /* readonly */
  10645. String typeName;
  10646. /* readonly */
  10647. bool zero;
  10648. };
  10649. class VariantMap
  10650. {
  10651. // Methods:
  10652. void Clear();
  10653. bool Contains(StringHash) const;
  10654. bool Contains(const String&) const;
  10655. bool Erase(StringHash);
  10656. bool Erase(const String&);
  10657. // Properties:
  10658. /* readonly */
  10659. Array<StringHash> keys;
  10660. /* readonly */
  10661. uint length;
  10662. /* readonly */
  10663. Array<Variant> values;
  10664. };
  10665. class Vector2
  10666. {
  10667. // Methods:
  10668. float AbsDotProduct(const Vector2&) const;
  10669. float DotProduct(const Vector2&) const;
  10670. bool Equals(const Vector2&) const;
  10671. bool IsNaN() const;
  10672. Vector2 Lerp(const Vector2&, float) const;
  10673. void Normalize();
  10674. Vector2 Normalized() const;
  10675. String ToString() const;
  10676. // Properties:
  10677. /* readonly */
  10678. Array<float> data;
  10679. /* readonly */
  10680. float length;
  10681. /* readonly */
  10682. float lengthSquared;
  10683. float x;
  10684. float y;
  10685. };
  10686. class Vector3
  10687. {
  10688. // Methods:
  10689. float AbsDotProduct(const Vector3&) const;
  10690. float Angle(const Vector3&) const;
  10691. Vector3 CrossProduct(const Vector3&) const;
  10692. float DotProduct(const Vector3&) const;
  10693. bool Equals(const Vector3&) const;
  10694. bool IsNaN() const;
  10695. Vector3 Lerp(const Vector3&, float) const;
  10696. void Normalize();
  10697. Vector3 Normalized() const;
  10698. String ToString() const;
  10699. // Properties:
  10700. /* readonly */
  10701. Array<float> data;
  10702. /* readonly */
  10703. float length;
  10704. /* readonly */
  10705. float lengthSquared;
  10706. float x;
  10707. float y;
  10708. float z;
  10709. };
  10710. class Vector4
  10711. {
  10712. // Methods:
  10713. float AbsDotProduct(const Vector4&) const;
  10714. float DotProduct(const Vector4&) const;
  10715. bool Equals(const Vector4&) const;
  10716. bool IsNaN() const;
  10717. Vector4 Lerp(const Vector4&, float) const;
  10718. String ToString() const;
  10719. // Properties:
  10720. /* readonly */
  10721. Array<float> data;
  10722. float w;
  10723. float x;
  10724. float y;
  10725. float z;
  10726. };
  10727. class VectorBuffer
  10728. {
  10729. // Methods:
  10730. void Clear();
  10731. Array<uint8> Read(uint);
  10732. bool ReadBool();
  10733. BoundingBox ReadBoundingBox();
  10734. int8 ReadByte();
  10735. Color ReadColor();
  10736. String ReadFileID();
  10737. float ReadFloat();
  10738. int ReadInt();
  10739. IntRect ReadIntRect();
  10740. IntVector2 ReadIntVector2();
  10741. String ReadLine();
  10742. Matrix3 ReadMatrix3();
  10743. Matrix3x4 ReadMatrix3x4();
  10744. Matrix4 ReadMatrix4();
  10745. uint ReadNetID();
  10746. Quaternion ReadPackedQuaternion();
  10747. Vector3 ReadPackedVector3(float);
  10748. Quaternion ReadQuaternion();
  10749. int16 ReadShort();
  10750. String ReadString();
  10751. StringHash ReadStringHash();
  10752. uint8 ReadUByte();
  10753. uint ReadUInt();
  10754. uint16 ReadUShort();
  10755. uint ReadVLE();
  10756. Variant ReadVariant();
  10757. VariantMap ReadVariantMap();
  10758. Vector2 ReadVector2();
  10759. Vector3 ReadVector3();
  10760. Vector4 ReadVector4();
  10761. void Resize(uint);
  10762. uint Seek(uint);
  10763. void SetData(Deserializer, uint);
  10764. uint Write(Array<uint8>);
  10765. bool WriteBool(bool);
  10766. bool WriteBoundingBox(const BoundingBox&);
  10767. bool WriteByte(int8);
  10768. bool WriteColor(const Color&);
  10769. bool WriteFileID(const String&);
  10770. bool WriteFloat(float);
  10771. bool WriteInt(int);
  10772. bool WriteIntRect(const IntRect&);
  10773. bool WriteIntVector2(const IntVector2&);
  10774. bool WriteLine(const String&);
  10775. bool WriteMatrix3(const Matrix3&);
  10776. bool WriteMatrix3x4(const Matrix3x4&);
  10777. bool WriteMatrix4(const Matrix4&);
  10778. bool WriteNetID(uint);
  10779. bool WritePackedQuaternion(const Quaternion&);
  10780. bool WritePackedVector3(const Vector3&, float);
  10781. bool WriteQuaternion(const Quaternion&);
  10782. bool WriteShort(int16);
  10783. bool WriteString(const String&);
  10784. bool WriteStringHash(const StringHash&);
  10785. bool WriteUByte(uint8);
  10786. bool WriteUInt(uint);
  10787. bool WriteUShort(uint16);
  10788. bool WriteVLE(uint);
  10789. bool WriteVariant(const Variant&);
  10790. bool WriteVariantMap(const VariantMap&);
  10791. bool WriteVector2(const Vector2&);
  10792. bool WriteVector3(const Vector3&);
  10793. bool WriteVector4(const Vector4&);
  10794. // Properties:
  10795. /* readonly */
  10796. uint checksum;
  10797. /* readonly */
  10798. bool eof;
  10799. /* readonly */
  10800. String name;
  10801. /* readonly */
  10802. uint position;
  10803. /* readonly */
  10804. uint size;
  10805. };
  10806. class View3D
  10807. {
  10808. // Methods:
  10809. void AddChild(UIElement);
  10810. void ApplyAttributes();
  10811. void BringToFront();
  10812. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  10813. void DisableLayoutUpdate();
  10814. IntVector2 ElementToScreen(const IntVector2&);
  10815. void EnableLayoutUpdate();
  10816. uint FindChild(UIElement) const;
  10817. Variant GetAttribute(const String&) const;
  10818. ValueAnimation GetAttributeAnimation(const String&) const;
  10819. float GetAttributeAnimationSpeed(const String&) const;
  10820. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  10821. Variant GetAttributeDefault(const String&) const;
  10822. UIElement GetChild(const String&, bool = false) const;
  10823. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  10824. Array<UIElement> GetChildren(bool = false) const;
  10825. UIElement GetElementEventSender() const;
  10826. uint GetNumChildren(bool) const;
  10827. void InsertChild(uint, UIElement);
  10828. bool IsInside(IntVector2, bool);
  10829. bool IsInsideCombined(IntVector2, bool);
  10830. bool Load(File, bool = false);
  10831. bool Load(VectorBuffer&, bool = false);
  10832. bool LoadChildXML(XMLFile, XMLFile = null);
  10833. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  10834. bool LoadXML(File);
  10835. bool LoadXML(VectorBuffer&);
  10836. bool LoadXML(XMLFile, XMLFile);
  10837. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  10838. bool LoadXML(const XMLElement&, bool = false);
  10839. void MarkNetworkUpdate() const;
  10840. void QueueUpdate();
  10841. void Remove();
  10842. void RemoveAllChildren();
  10843. void RemoveChild(UIElement, uint = 0);
  10844. void RemoveChild(uint);
  10845. void RemoveInstanceDefault();
  10846. void ResetDeepEnabled();
  10847. void ResetToDefault();
  10848. bool Save(File) const;
  10849. bool Save(VectorBuffer&) const;
  10850. bool SaveXML(File);
  10851. bool SaveXML(VectorBuffer&);
  10852. bool SaveXML(XMLElement&) const;
  10853. IntVector2 ScreenToElement(const IntVector2&);
  10854. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  10855. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  10856. bool SetAttribute(const String&, const Variant&);
  10857. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  10858. void SetAttributeAnimationSpeed(const String&, float);
  10859. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  10860. void SetDeepEnabled(bool);
  10861. void SetEnabledRecursive(bool);
  10862. void SetFixedHeight(int);
  10863. void SetFixedSize(int, int);
  10864. void SetFixedWidth(int);
  10865. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  10866. void SetMaxSize(int, int);
  10867. void SetMinSize(int, int);
  10868. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  10869. void SetPosition(int, int);
  10870. void SetSize(int, int);
  10871. bool SetStyle(const String&, XMLFile = null);
  10872. bool SetStyle(const XMLElement&);
  10873. bool SetStyleAuto(XMLFile = null);
  10874. void SetView(Scene, Camera);
  10875. void UpdateLayout();
  10876. const Variant& GetVar(const StringHash&);
  10877. // Properties:
  10878. bool animationEnabled;
  10879. /* readonly */
  10880. Array<Variant> attributeDefaults;
  10881. /* readonly */
  10882. Array<AttributeInfo> attributeInfos;
  10883. Array<Variant> attributes;
  10884. bool autoUpdate;
  10885. /* readonly */
  10886. StringHash baseType;
  10887. bool bringToBack;
  10888. bool bringToFront;
  10889. /* readonly */
  10890. Node cameraNode;
  10891. /* readonly */
  10892. String category;
  10893. /* readonly */
  10894. IntVector2 childOffset;
  10895. /* readonly */
  10896. Array<UIElement> children;
  10897. IntRect clipBorder;
  10898. bool clipChildren;
  10899. /* writeonly */
  10900. Color color;
  10901. /* readonly */
  10902. bool colorGradient;
  10903. Array<Color> colors;
  10904. /* readonly */
  10905. IntRect combinedScreenRect;
  10906. XMLFile defaultStyle;
  10907. /* readonly */
  10908. Texture2D depthTexture;
  10909. /* readonly */
  10910. float derivedOpacity;
  10911. /* readonly */
  10912. uint dragButtonCombo;
  10913. /* readonly */
  10914. int dragButtonCount;
  10915. uint dragDropMode;
  10916. bool editable;
  10917. bool elementEventSender;
  10918. bool enabled;
  10919. /* readonly */
  10920. bool enabledSelf;
  10921. /* readonly */
  10922. bool fixedHeight;
  10923. bool fixedHeightResizing;
  10924. /* readonly */
  10925. bool fixedSize;
  10926. /* readonly */
  10927. bool fixedWidth;
  10928. bool fixedWidthResizing;
  10929. bool focus;
  10930. FocusMode focusMode;
  10931. uint format;
  10932. int height;
  10933. HorizontalAlignment horizontalAlignment;
  10934. /* readonly */
  10935. bool hovering;
  10936. int indent;
  10937. int indentSpacing;
  10938. /* readonly */
  10939. int indentWidth;
  10940. bool internal;
  10941. IntRect layoutBorder;
  10942. Vector2 layoutFlexScale;
  10943. LayoutMode layoutMode;
  10944. int layoutSpacing;
  10945. int maxHeight;
  10946. IntVector2 maxSize;
  10947. int maxWidth;
  10948. int minHeight;
  10949. IntVector2 minSize;
  10950. int minWidth;
  10951. bool modal;
  10952. bool modalAutoDismiss;
  10953. Color modalFrameColor;
  10954. IntVector2 modalFrameSize;
  10955. Color modalShadeColor;
  10956. bool movable;
  10957. String name;
  10958. /* readonly */
  10959. uint numAllChildren;
  10960. /* readonly */
  10961. uint numAttributes;
  10962. /* readonly */
  10963. uint numChildren;
  10964. ObjectAnimation objectAnimation;
  10965. float opacity;
  10966. UIElement parent;
  10967. IntVector2 position;
  10968. int priority;
  10969. /* readonly */
  10970. int refs;
  10971. /* readonly */
  10972. Texture2D renderTexture;
  10973. bool resizable;
  10974. IntRect resizeBorder;
  10975. /* readonly */
  10976. UIElement root;
  10977. /* readonly */
  10978. Scene scene;
  10979. /* readonly */
  10980. IntVector2 screenPosition;
  10981. bool selected;
  10982. IntVector2 size;
  10983. bool sortChildren;
  10984. String style;
  10985. bool temporary;
  10986. TraversalMode traversalMode;
  10987. /* readonly */
  10988. StringHash type;
  10989. /* readonly */
  10990. String typeName;
  10991. bool useDerivedOpacity;
  10992. /* readonly */
  10993. VariantMap vars;
  10994. VerticalAlignment verticalAlignment;
  10995. /* readonly */
  10996. Viewport viewport;
  10997. bool visible;
  10998. /* readonly */
  10999. int weakRefs;
  11000. int width;
  11001. };
  11002. class Viewport
  11003. {
  11004. // Methods:
  11005. Ray GetScreenRay(int, int) const;
  11006. Vector3 ScreenToWorldPoint(int, int, float) const;
  11007. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  11008. void SetRenderPath(XMLFile);
  11009. Vector2 WorldToScreenPoint(const Vector3&) const;
  11010. // Properties:
  11011. /* readonly */
  11012. StringHash baseType;
  11013. Camera camera;
  11014. /* readonly */
  11015. String category;
  11016. bool drawDebug;
  11017. IntRect rect;
  11018. /* readonly */
  11019. int refs;
  11020. RenderPath renderPath;
  11021. Scene scene;
  11022. /* readonly */
  11023. StringHash type;
  11024. /* readonly */
  11025. String typeName;
  11026. /* readonly */
  11027. int weakRefs;
  11028. };
  11029. class WeakHandle
  11030. {
  11031. // Methods:
  11032. RefCounted Get() const;
  11033. // Properties:
  11034. /* readonly */
  11035. bool expired;
  11036. /* readonly */
  11037. int refs;
  11038. /* readonly */
  11039. int weakRefs;
  11040. };
  11041. class Window
  11042. {
  11043. // Methods:
  11044. void AddChild(UIElement);
  11045. void ApplyAttributes();
  11046. void BringToFront();
  11047. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  11048. void DisableLayoutUpdate();
  11049. IntVector2 ElementToScreen(const IntVector2&);
  11050. void EnableLayoutUpdate();
  11051. uint FindChild(UIElement) const;
  11052. Variant GetAttribute(const String&) const;
  11053. ValueAnimation GetAttributeAnimation(const String&) const;
  11054. float GetAttributeAnimationSpeed(const String&) const;
  11055. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  11056. Variant GetAttributeDefault(const String&) const;
  11057. UIElement GetChild(const String&, bool = false) const;
  11058. UIElement GetChild(const StringHash&, const Variant& = Variant ( ), bool = false) const;
  11059. Array<UIElement> GetChildren(bool = false) const;
  11060. UIElement GetElementEventSender() const;
  11061. uint GetNumChildren(bool) const;
  11062. void InsertChild(uint, UIElement);
  11063. bool IsInside(IntVector2, bool);
  11064. bool IsInsideCombined(IntVector2, bool);
  11065. bool Load(File, bool = false);
  11066. bool Load(VectorBuffer&, bool = false);
  11067. bool LoadChildXML(XMLFile, XMLFile = null);
  11068. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  11069. bool LoadXML(File);
  11070. bool LoadXML(VectorBuffer&);
  11071. bool LoadXML(XMLFile, XMLFile);
  11072. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  11073. bool LoadXML(const XMLElement&, bool = false);
  11074. void MarkNetworkUpdate() const;
  11075. void Remove();
  11076. void RemoveAllChildren();
  11077. void RemoveChild(UIElement, uint = 0);
  11078. void RemoveChild(uint);
  11079. void RemoveInstanceDefault();
  11080. void ResetDeepEnabled();
  11081. void ResetToDefault();
  11082. bool Save(File) const;
  11083. bool Save(VectorBuffer&) const;
  11084. bool SaveXML(File);
  11085. bool SaveXML(VectorBuffer&);
  11086. bool SaveXML(XMLElement&) const;
  11087. IntVector2 ScreenToElement(const IntVector2&);
  11088. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  11089. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  11090. bool SetAttribute(const String&, const Variant&);
  11091. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  11092. void SetAttributeAnimationSpeed(const String&, float);
  11093. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  11094. void SetDeepEnabled(bool);
  11095. void SetEnabledRecursive(bool);
  11096. void SetFixedHeight(int);
  11097. void SetFixedSize(int, int);
  11098. void SetFixedWidth(int);
  11099. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  11100. void SetMaxSize(int, int);
  11101. void SetMinSize(int, int);
  11102. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  11103. void SetPosition(int, int);
  11104. void SetSize(int, int);
  11105. bool SetStyle(const String&, XMLFile = null);
  11106. bool SetStyle(const XMLElement&);
  11107. bool SetStyleAuto(XMLFile = null);
  11108. void UpdateLayout();
  11109. const Variant& GetVar(const StringHash&);
  11110. // Properties:
  11111. bool animationEnabled;
  11112. /* readonly */
  11113. Array<Variant> attributeDefaults;
  11114. /* readonly */
  11115. Array<AttributeInfo> attributeInfos;
  11116. Array<Variant> attributes;
  11117. /* readonly */
  11118. StringHash baseType;
  11119. bool bringToBack;
  11120. bool bringToFront;
  11121. /* readonly */
  11122. String category;
  11123. /* readonly */
  11124. IntVector2 childOffset;
  11125. /* readonly */
  11126. Array<UIElement> children;
  11127. IntRect clipBorder;
  11128. bool clipChildren;
  11129. /* writeonly */
  11130. Color color;
  11131. /* readonly */
  11132. bool colorGradient;
  11133. Array<Color> colors;
  11134. /* readonly */
  11135. IntRect combinedScreenRect;
  11136. XMLFile defaultStyle;
  11137. /* readonly */
  11138. float derivedOpacity;
  11139. /* readonly */
  11140. uint dragButtonCombo;
  11141. /* readonly */
  11142. int dragButtonCount;
  11143. uint dragDropMode;
  11144. bool editable;
  11145. bool elementEventSender;
  11146. bool enabled;
  11147. /* readonly */
  11148. bool enabledSelf;
  11149. /* readonly */
  11150. bool fixedHeight;
  11151. bool fixedHeightResizing;
  11152. /* readonly */
  11153. bool fixedSize;
  11154. /* readonly */
  11155. bool fixedWidth;
  11156. bool fixedWidthResizing;
  11157. bool focus;
  11158. FocusMode focusMode;
  11159. int height;
  11160. HorizontalAlignment horizontalAlignment;
  11161. /* readonly */
  11162. bool hovering;
  11163. int indent;
  11164. int indentSpacing;
  11165. /* readonly */
  11166. int indentWidth;
  11167. bool internal;
  11168. IntRect layoutBorder;
  11169. Vector2 layoutFlexScale;
  11170. LayoutMode layoutMode;
  11171. int layoutSpacing;
  11172. int maxHeight;
  11173. IntVector2 maxSize;
  11174. int maxWidth;
  11175. int minHeight;
  11176. IntVector2 minSize;
  11177. int minWidth;
  11178. bool modal;
  11179. bool modalAutoDismiss;
  11180. Color modalFrameColor;
  11181. IntVector2 modalFrameSize;
  11182. Color modalShadeColor;
  11183. bool movable;
  11184. String name;
  11185. /* readonly */
  11186. uint numAllChildren;
  11187. /* readonly */
  11188. uint numAttributes;
  11189. /* readonly */
  11190. uint numChildren;
  11191. ObjectAnimation objectAnimation;
  11192. float opacity;
  11193. UIElement parent;
  11194. IntVector2 position;
  11195. int priority;
  11196. /* readonly */
  11197. int refs;
  11198. bool resizable;
  11199. IntRect resizeBorder;
  11200. /* readonly */
  11201. UIElement root;
  11202. /* readonly */
  11203. IntVector2 screenPosition;
  11204. bool selected;
  11205. IntVector2 size;
  11206. bool sortChildren;
  11207. String style;
  11208. bool temporary;
  11209. TraversalMode traversalMode;
  11210. /* readonly */
  11211. StringHash type;
  11212. /* readonly */
  11213. String typeName;
  11214. bool useDerivedOpacity;
  11215. /* readonly */
  11216. VariantMap vars;
  11217. VerticalAlignment verticalAlignment;
  11218. bool visible;
  11219. /* readonly */
  11220. int weakRefs;
  11221. int width;
  11222. };
  11223. class XMLElement
  11224. {
  11225. // Methods:
  11226. XMLElement CreateChild(const String&);
  11227. String GetAttribute(const String& = String ( )) const;
  11228. String GetAttributeLower(const String&) const;
  11229. Array<String> GetAttributeNames() const;
  11230. String GetAttributeUpper(const String&) const;
  11231. bool GetBool(const String&) const;
  11232. BoundingBox GetBoundingBox() const;
  11233. XMLElement GetChild(const String& = String ( )) const;
  11234. Color GetColor(const String&) const;
  11235. float GetFloat(const String&) const;
  11236. int GetInt(const String&) const;
  11237. Matrix3 GetMatrix3(const String&) const;
  11238. Matrix3x4 GetMatrix3x4(const String&) const;
  11239. Matrix4 GetMatrix4(const String&) const;
  11240. XMLElement GetNext(const String& = String ( )) const;
  11241. Quaternion GetQuaternion(const String&) const;
  11242. ResourceRef GetResourceRef() const;
  11243. ResourceRefList GetResourceRefList() const;
  11244. uint GetUInt(const String&) const;
  11245. String GetValue() const;
  11246. Variant GetVariant() const;
  11247. VariantMap GetVariantMap() const;
  11248. Array<Variant> GetVariantVector() const;
  11249. Vector2 GetVector2(const String&) const;
  11250. Vector3 GetVector3(const String&) const;
  11251. Vector4 GetVector4(const String&) const;
  11252. Variant GetVectorVariant(const String&) const;
  11253. bool HasAttribute(const String&) const;
  11254. bool HasChild(const String&) const;
  11255. bool RemoveAttribute(const String& = String ( ));
  11256. bool RemoveChild(const String&);
  11257. bool RemoveChild(const XMLElement&);
  11258. bool RemoveChildren(const String& = String ( ));
  11259. XPathResultSet Select(const String&);
  11260. XPathResultSet SelectPrepared(const XPathQuery&);
  11261. XMLElement SelectSingle(const String&);
  11262. XMLElement SelectSinglePrepared(const XPathQuery&);
  11263. bool SetAttribute(const String&);
  11264. bool SetAttribute(const String&, const String&);
  11265. bool SetBool(const String&, bool);
  11266. bool SetBoundingBox(const BoundingBox&);
  11267. bool SetColor(const String&, const Color&);
  11268. bool SetFloat(const String&, float);
  11269. bool SetInt(const String&, int);
  11270. bool SetMatrix3(const String&, const Matrix3&);
  11271. bool SetMatrix3x4(const String&, const Matrix3x4&);
  11272. bool SetMatrix4(const String&, const Matrix4&);
  11273. bool SetQuaternion(const String&, const Quaternion&);
  11274. bool SetResourceRef(const String&, const ResourceRef&);
  11275. bool SetResourceRefList(const String&, const ResourceRefList&);
  11276. bool SetUInt(const String&, uint);
  11277. bool SetValue(const String&);
  11278. bool SetVariant(const Variant&);
  11279. bool SetVariantMap(const VariantMap&);
  11280. bool SetVariantVector(Array<Variant>);
  11281. bool SetVector2(const String&, const Vector2&);
  11282. bool SetVector3(const String&, const Vector3&);
  11283. bool SetVector4(const String&, const Vector4&);
  11284. bool SetVectorVariant(const String&, const Variant&);
  11285. // Properties:
  11286. /* readonly */
  11287. XMLFile file;
  11288. /* readonly */
  11289. bool isNull;
  11290. /* readonly */
  11291. String name;
  11292. /* readonly */
  11293. XMLElement nextResult;
  11294. /* readonly */
  11295. bool notNull;
  11296. /* readonly */
  11297. uint numAttributes;
  11298. /* readonly */
  11299. XMLElement parent;
  11300. String value;
  11301. };
  11302. class XMLFile
  11303. {
  11304. // Methods:
  11305. XMLElement CreateRoot(const String&);
  11306. bool FromString(const String&);
  11307. XMLElement GetRoot(const String& = String ( ));
  11308. bool Load(File);
  11309. bool Load(VectorBuffer&);
  11310. void Patch(XMLElement);
  11311. void Patch(XMLFile);
  11312. bool Save(File) const;
  11313. bool Save(VectorBuffer&) const;
  11314. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  11315. String ToString() const;
  11316. // Properties:
  11317. /* readonly */
  11318. StringHash baseType;
  11319. /* readonly */
  11320. String category;
  11321. /* readonly */
  11322. uint memoryUse;
  11323. String name;
  11324. /* readonly */
  11325. int refs;
  11326. /* readonly */
  11327. XMLElement root;
  11328. /* readonly */
  11329. StringHash type;
  11330. /* readonly */
  11331. String typeName;
  11332. /* readonly */
  11333. uint useTimer;
  11334. /* readonly */
  11335. int weakRefs;
  11336. };
  11337. class XPathQuery
  11338. {
  11339. // Methods:
  11340. void Bind();
  11341. void Clear();
  11342. XPathResultSet Evaluate(XMLElement);
  11343. bool EvaluateToBool(XMLElement);
  11344. float EvaluateToFloat(XMLElement);
  11345. String EvaluateToString(XMLElement);
  11346. bool SetQuery(const String&, const String& = String ( ), bool = true);
  11347. bool SetVariable(const String&, bool);
  11348. bool SetVariable(const String&, const String&);
  11349. bool SetVariable(const String&, const XPathResultSet&);
  11350. bool SetVariable(const String&, float);
  11351. // Properties:
  11352. String query;
  11353. };
  11354. class XPathResultSet
  11355. {
  11356. // Properties:
  11357. /* readonly */
  11358. bool empty;
  11359. /* readonly */
  11360. XMLElement firstResult;
  11361. /* readonly */
  11362. uint size;
  11363. };
  11364. class Zone
  11365. {
  11366. // Methods:
  11367. void ApplyAttributes();
  11368. void DrawDebugGeometry(DebugRenderer, bool);
  11369. Variant GetAttribute(const String&) const;
  11370. ValueAnimation GetAttributeAnimation(const String&) const;
  11371. float GetAttributeAnimationSpeed(const String&) const;
  11372. WrapMode GetAttributeAnimationWrapMode(const String&) const;
  11373. Variant GetAttributeDefault(const String&) const;
  11374. bool IsInView(Camera) const;
  11375. bool Load(File, bool = false);
  11376. bool Load(VectorBuffer&, bool = false);
  11377. bool LoadXML(const XMLElement&, bool = false);
  11378. void MarkNetworkUpdate() const;
  11379. void Remove();
  11380. void RemoveInstanceDefault();
  11381. void ResetToDefault();
  11382. bool Save(File) const;
  11383. bool Save(VectorBuffer&) const;
  11384. bool SaveXML(XMLElement&) const;
  11385. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  11386. bool SetAttribute(const String&, const Variant&);
  11387. void SetAttributeAnimation(const String&, ValueAnimation, WrapMode = WM_LOOP, float = 1.0f);
  11388. void SetAttributeAnimationSpeed(const String&, float);
  11389. void SetAttributeAnimationWrapMode(const String&, WrapMode);
  11390. // Properties:
  11391. Color ambientColor;
  11392. /* readonly */
  11393. Color ambientEndColor;
  11394. bool ambientGradient;
  11395. /* readonly */
  11396. Color ambientStartColor;
  11397. bool animationEnabled;
  11398. /* readonly */
  11399. Array<Variant> attributeDefaults;
  11400. /* readonly */
  11401. Array<AttributeInfo> attributeInfos;
  11402. Array<Variant> attributes;
  11403. /* readonly */
  11404. StringHash baseType;
  11405. BoundingBox boundingBox;
  11406. bool castShadows;
  11407. /* readonly */
  11408. String category;
  11409. float drawDistance;
  11410. bool enabled;
  11411. /* readonly */
  11412. bool enabledEffective;
  11413. Color fogColor;
  11414. float fogEnd;
  11415. float fogHeight;
  11416. float fogHeightScale;
  11417. float fogStart;
  11418. bool heightFog;
  11419. /* readonly */
  11420. uint id;
  11421. /* readonly */
  11422. bool inView;
  11423. /* readonly */
  11424. Matrix3x4 inverseWorldTransform;
  11425. uint lightMask;
  11426. float lodBias;
  11427. uint maxLights;
  11428. /* readonly */
  11429. Node node;
  11430. /* readonly */
  11431. uint numAttributes;
  11432. ObjectAnimation objectAnimation;
  11433. bool occludee;
  11434. bool occluder;
  11435. bool override;
  11436. int priority;
  11437. /* readonly */
  11438. int refs;
  11439. float shadowDistance;
  11440. uint shadowMask;
  11441. bool temporary;
  11442. /* readonly */
  11443. StringHash type;
  11444. /* readonly */
  11445. String typeName;
  11446. uint viewMask;
  11447. /* readonly */
  11448. int weakRefs;
  11449. /* readonly */
  11450. BoundingBox worldBoundingBox;
  11451. uint zoneMask;
  11452. Texture zoneTexture;
  11453. };
  11454. // Enumerations
  11455. enum BlendMode
  11456. {
  11457. BLEND_REPLACE,
  11458. BLEND_ADD,
  11459. BLEND_MULTIPLY,
  11460. BLEND_ALPHA,
  11461. BLEND_ADDALPHA,
  11462. BLEND_PREMULALPHA,
  11463. BLEND_INVDESTALPHA,
  11464. BLEND_SUBTRACT,
  11465. BLEND_SUBTRACTALPHA,
  11466. };
  11467. enum BodyType2D
  11468. {
  11469. BT_STATIC,
  11470. BT_DYNAMIC,
  11471. BT_KINEMATIC,
  11472. };
  11473. enum CollisionEventMode
  11474. {
  11475. COLLISION_NEVER,
  11476. COLLISION_ACTIVE,
  11477. COLLISION_ALWAYS,
  11478. };
  11479. enum CompareMode
  11480. {
  11481. CMP_ALWAYS,
  11482. CMP_EQUAL,
  11483. CMP_NOTEQUAL,
  11484. CMP_LESS,
  11485. CMP_LESSEQUAL,
  11486. CMP_GREATER,
  11487. CMP_GREATEREQUAL,
  11488. };
  11489. enum ConstraintType
  11490. {
  11491. CONSTRAINT_POINT,
  11492. CONSTRAINT_HINGE,
  11493. CONSTRAINT_SLIDER,
  11494. CONSTRAINT_CONETWIST,
  11495. };
  11496. enum Corner
  11497. {
  11498. C_TOPLEFT,
  11499. C_TOPRIGHT,
  11500. C_BOTTOMLEFT,
  11501. C_BOTTOMRIGHT,
  11502. };
  11503. enum CreateMode
  11504. {
  11505. REPLICATED,
  11506. LOCAL,
  11507. };
  11508. enum CubeMapFace
  11509. {
  11510. FACE_POSITIVE_X,
  11511. FACE_NEGATIVE_X,
  11512. FACE_POSITIVE_Y,
  11513. FACE_NEGATIVE_Y,
  11514. FACE_POSITIVE_Z,
  11515. FACE_NEGATIVE_Z,
  11516. };
  11517. enum CullMode
  11518. {
  11519. CULL_NONE,
  11520. CULL_CCW,
  11521. CULL_CW,
  11522. };
  11523. enum CursorShape
  11524. {
  11525. CS_NORMAL,
  11526. CS_RESIZEVERTICAL,
  11527. CS_RESIZEDIAGONAL_TOPRIGHT,
  11528. CS_RESIZEHORIZONTAL,
  11529. CS_RESIZEDIAGONAL_TOPLEFT,
  11530. CS_ACCEPTDROP,
  11531. CS_REJECTDROP,
  11532. CS_BUSY,
  11533. };
  11534. enum DumpMode
  11535. {
  11536. DOXYGEN,
  11537. C_HEADER,
  11538. };
  11539. enum EmitterType
  11540. {
  11541. EMITTER_SPHERE,
  11542. EMITTER_BOX,
  11543. };
  11544. enum EmitterType2D
  11545. {
  11546. EMITTER_TYPE_GRAVITY,
  11547. EMITTER_TYPE_RADIAL,
  11548. };
  11549. enum FaceCameraMode
  11550. {
  11551. FC_NONE,
  11552. FC_ROTATE_XYZ,
  11553. FC_ROTATE_Y,
  11554. FC_LOOKAT_XYZ,
  11555. FC_LOOKAT_Y,
  11556. };
  11557. enum FileMode
  11558. {
  11559. FILE_READ,
  11560. FILE_WRITE,
  11561. FILE_READWRITE,
  11562. };
  11563. enum FillMode
  11564. {
  11565. FILL_SOLID,
  11566. FILL_WIREFRAME,
  11567. FILL_POINT,
  11568. };
  11569. enum FocusMode
  11570. {
  11571. FM_NOTFOCUSABLE,
  11572. FM_RESETFOCUS,
  11573. FM_FOCUSABLE,
  11574. FM_FOCUSABLE_DEFOCUSABLE,
  11575. };
  11576. enum HighlightMode
  11577. {
  11578. HM_NEVER,
  11579. HM_FOCUS,
  11580. HM_ALWAYS,
  11581. };
  11582. enum HorizontalAlignment
  11583. {
  11584. HA_LEFT,
  11585. HA_CENTER,
  11586. HA_RIGHT,
  11587. };
  11588. enum HttpRequestState
  11589. {
  11590. HTTP_INITIALIZING,
  11591. HTTP_ERROR,
  11592. HTTP_OPEN,
  11593. HTTP_CLOSED,
  11594. };
  11595. enum InterpMethod
  11596. {
  11597. IM_LINEAR,
  11598. IM_SPLINE,
  11599. };
  11600. enum InterpolationMode
  11601. {
  11602. BEZIER_CURVE,
  11603. };
  11604. enum Intersection
  11605. {
  11606. OUTSIDE,
  11607. INTERSECTS,
  11608. INSIDE,
  11609. };
  11610. enum JSONValueType
  11611. {
  11612. JSON_ANY,
  11613. JSON_OBJECT,
  11614. JSON_ARRAY,
  11615. };
  11616. enum LayoutMode
  11617. {
  11618. LM_FREE,
  11619. LM_HORIZONTAL,
  11620. LM_VERTICAL,
  11621. };
  11622. enum LightType
  11623. {
  11624. LIGHT_DIRECTIONAL,
  11625. LIGHT_SPOT,
  11626. LIGHT_POINT,
  11627. };
  11628. enum LoadMode
  11629. {
  11630. LOAD_RESOURCES_ONLY,
  11631. LOAD_SCENE,
  11632. LOAD_SCENE_AND_RESOURCES,
  11633. };
  11634. enum LoopMode2D
  11635. {
  11636. LM_DEFAULT,
  11637. LM_FORCE_LOOPED,
  11638. LM_FORCE_CLAMPED,
  11639. };
  11640. enum MouseMode
  11641. {
  11642. MM_ABSOLUTE,
  11643. MM_RELATIVE,
  11644. MM_WRAP,
  11645. };
  11646. enum Orientation
  11647. {
  11648. O_HORIZONTAL,
  11649. O_VERTICAL,
  11650. };
  11651. enum Orientation2D
  11652. {
  11653. O_ORTHOGONAL,
  11654. O_ISOMETRIC,
  11655. O_STAGGERED,
  11656. };
  11657. enum PassLightingMode
  11658. {
  11659. LIGHTING_UNLIT,
  11660. LIGHTING_PERVERTEX,
  11661. LIGHTING_PERPIXEL,
  11662. };
  11663. enum PrimitiveType
  11664. {
  11665. TRIANGLE_LIST,
  11666. LINE_LIST,
  11667. POINT_LIST,
  11668. TRIANGLE_STRIP,
  11669. LINE_STRIP,
  11670. TRIANGLE_FAN,
  11671. };
  11672. enum RayQueryLevel
  11673. {
  11674. RAY_AABB,
  11675. RAY_OBB,
  11676. RAY_TRIANGLE,
  11677. };
  11678. enum RenderCommandSortMode
  11679. {
  11680. SORT_FRONTTOBACK,
  11681. SORT_BACKTOFRONT,
  11682. };
  11683. enum RenderCommandType
  11684. {
  11685. CMD_NONE,
  11686. CMD_CLEAR,
  11687. CMD_SCENEPASS,
  11688. CMD_QUAD,
  11689. CMD_FORWARDLIGHTS,
  11690. CMD_LIGHTVOLUMES,
  11691. };
  11692. enum RenderSurfaceUpdateMode
  11693. {
  11694. SURFACE_MANUALUPDATE,
  11695. SURFACE_UPDATEVISIBLE,
  11696. SURFACE_UPDATEALWAYS,
  11697. };
  11698. enum RenderTargetSizeMode
  11699. {
  11700. SIZE_ABSOLUTE,
  11701. SIZE_VIEWPORTDIVISOR,
  11702. SIZE_VIEWPORTMULTIPLIER,
  11703. };
  11704. enum ShapeType
  11705. {
  11706. SHAPE_BOX,
  11707. SHAPE_SPHERE,
  11708. SHAPE_STATICPLANE,
  11709. SHAPE_CYLINDER,
  11710. SHAPE_CAPSULE,
  11711. SHAPE_CONE,
  11712. SHAPE_TRIANGLEMESH,
  11713. SHAPE_CONVEXHULL,
  11714. SHAPE_TERRAIN,
  11715. };
  11716. enum SoundType
  11717. {
  11718. SOUND_EFFECT,
  11719. SOUND_AMBIENT,
  11720. SOUND_VOICE,
  11721. SOUND_MUSIC,
  11722. SOUND_MASTER,
  11723. };
  11724. enum TextEffect
  11725. {
  11726. TE_NONE,
  11727. TE_SHADOW,
  11728. TE_STROKE,
  11729. };
  11730. enum TextureAddressMode
  11731. {
  11732. ADDRESS_WRAP,
  11733. ADDRESS_MIRROR,
  11734. ADDRESS_CLAMP,
  11735. ADDRESS_BORDER,
  11736. };
  11737. enum TextureCoordinate
  11738. {
  11739. COORD_U,
  11740. COORD_V,
  11741. COORD_W,
  11742. };
  11743. enum TextureFilterMode
  11744. {
  11745. FILTER_NEAREST,
  11746. FILTER_BILINEAR,
  11747. FILTER_TRILINEAR,
  11748. FILTER_ANISOTROPIC,
  11749. FILTER_DEFAULT,
  11750. };
  11751. enum TextureUnit
  11752. {
  11753. TU_DIFFUSE,
  11754. TU_NORMAL,
  11755. TU_SPECULAR,
  11756. TU_EMISSIVE,
  11757. TU_ENVIRONMENT,
  11758. TU_LIGHTRAMP,
  11759. TU_LIGHTSHAPE,
  11760. TU_SHADOWMAP,
  11761. TU_FACESELECT,
  11762. TU_INDIRECTION,
  11763. TU_ALBEDOBUFFER,
  11764. TU_NORMALBUFFER,
  11765. TU_DEPTHBUFFER,
  11766. TU_LIGHTBUFFER,
  11767. TU_VOLUMEMAP,
  11768. TU_ZONE,
  11769. MAX_MATERIAL_TEXTURE_UNITS,
  11770. MAX_TEXTURE_UNITS,
  11771. };
  11772. enum TextureUsage
  11773. {
  11774. TEXTURE_STATIC,
  11775. TEXTURE_DYNAMIC,
  11776. TEXTURE_RENDERTARGET,
  11777. TEXTURE_DEPTHSTENCIL,
  11778. };
  11779. enum TileMapLayerType2D
  11780. {
  11781. LT_TILE_LAYER,
  11782. LT_OBJECT_GROUP,
  11783. LT_IMAGE_LAYER,
  11784. LT_INVALID,
  11785. };
  11786. enum TileObjectType2D
  11787. {
  11788. OT_RECTANGLE,
  11789. OT_ELLIPSE,
  11790. OT_POLYGON,
  11791. OT_POLYLINE,
  11792. OT_TILE,
  11793. OT_INVALID,
  11794. };
  11795. enum TransformSpace
  11796. {
  11797. TS_LOCAL,
  11798. TS_PARENT,
  11799. TS_WORLD,
  11800. };
  11801. enum TraversalMode
  11802. {
  11803. TM_BREADTH_FIRST,
  11804. TM_DEPTH_FIRST,
  11805. };
  11806. enum VariantType
  11807. {
  11808. VAR_NONE,
  11809. VAR_INT,
  11810. VAR_BOOL,
  11811. VAR_FLOAT,
  11812. VAR_VECTOR2,
  11813. VAR_VECTOR3,
  11814. VAR_VECTOR4,
  11815. VAR_QUATERNION,
  11816. VAR_COLOR,
  11817. VAR_STRING,
  11818. VAR_BUFFER,
  11819. VAR_VOIDPTR,
  11820. VAR_RESOURCEREF,
  11821. VAR_RESOURCEREFLIST,
  11822. VAR_VARIANTVECTOR,
  11823. VAR_VARIANTMAP,
  11824. VAR_INTRECT,
  11825. VAR_INTVECTOR2,
  11826. VAR_PTR,
  11827. VAR_MATRIX3,
  11828. VAR_MATRIX3X4,
  11829. VAR_MATRIX4,
  11830. };
  11831. enum VerticalAlignment
  11832. {
  11833. VA_TOP,
  11834. VA_CENTER,
  11835. VA_BOTTOM,
  11836. };
  11837. enum WrapMode
  11838. {
  11839. WM_LOOP,
  11840. WM_ONCE,
  11841. WM_CLAMP,
  11842. };
  11843. // Global functions
  11844. float Abs(float);
  11845. float Acos(float);
  11846. String AddTrailingSlash(const String&);
  11847. float Asin(float);
  11848. float Atan(float);
  11849. float Atan2(float, float);
  11850. float Ceil(float);
  11851. float Clamp(float, float, float);
  11852. int Clamp(int, int, int);
  11853. void ClearDelayedExecute(const String& = String ( ));
  11854. VectorBuffer CompressVectorBuffer(VectorBuffer&);
  11855. float Cos(float);
  11856. uint CountSetBits(uint);
  11857. VectorBuffer DecompressVectorBuffer(VectorBuffer&);
  11858. void DelayedExecute(float, bool, const String&);
  11859. void DelayedExecute(float, bool, const String&, const Array<Variant>);
  11860. bool Equals(float, float);
  11861. void ErrorDialog(const String&, const String&);
  11862. float Floor(float);
  11863. uint GetAlphaFormat();
  11864. Array<String> GetArguments();
  11865. String GetConsoleInput();
  11866. uint GetDepthStencilFormat();
  11867. Object GetEventSender();
  11868. String GetExtension(const String&, bool = true);
  11869. String GetFileName(const String&);
  11870. String GetFileNameAndExtension(const String&, bool = false);
  11871. uint GetFloat16Format();
  11872. uint GetFloat32Format();
  11873. uint GetFormat(const String&);
  11874. String GetInternalPath(const String&);
  11875. uint GetLuminanceAlphaFormat();
  11876. uint GetLuminanceFormat();
  11877. uint GetNumLogicalCPUs();
  11878. uint GetNumPhysicalCPUs();
  11879. Array<String> GetObjectCategories();
  11880. Array<String> GetObjectsByCategory(const String&);
  11881. String GetParentPath(const String&);
  11882. String GetPath(const String&);
  11883. String GetPlatform();
  11884. uint GetRG16Format();
  11885. uint GetRGBA16Format();
  11886. uint GetRGBAFloat16Format();
  11887. uint GetRGBAFloat32Format();
  11888. uint GetRGBAFormat();
  11889. uint GetRGBFormat();
  11890. uint GetRGFloat16Format();
  11891. uint GetRGFloat32Format();
  11892. uint GetRandomSeed();
  11893. String GetTextureUnitName(TextureUnit);
  11894. bool IsAbsolutePath(const String&);
  11895. bool IsAlpha(uint);
  11896. bool IsDigit(uint);
  11897. bool IsNaN(float);
  11898. bool IsPowerOfTwo(uint);
  11899. String Join(Array<String>&, const String&);
  11900. float Lerp(float, float, float);
  11901. void MarkNetworkUpdate();
  11902. float Max(float, float);
  11903. int Max(int, int);
  11904. float Min(float, float);
  11905. int Min(int, int);
  11906. float Mod(float, float);
  11907. uint NextPowerOfTwo(uint);
  11908. void OpenConsoleWindow();
  11909. float Pow(float, float);
  11910. void Print(bool, bool = false);
  11911. void Print(const String&, bool = false);
  11912. void Print(const Variant&, bool = false);
  11913. void Print(float, bool = false);
  11914. void Print(int, bool = false);
  11915. void Print(uint, bool = false);
  11916. void PrintCallStack(bool = false);
  11917. float Random();
  11918. float Random(float);
  11919. float Random(float, float);
  11920. int RandomInt();
  11921. int RandomInt(int);
  11922. int RandomInt(int, int);
  11923. float RandomNormal(float, float);
  11924. void Remove();
  11925. String RemoveTrailingSlash(const String&);
  11926. String ReplaceExtension(const String&, const String&);
  11927. uint SDBMHash(uint, uint8);
  11928. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  11929. void SetRandomSeed(uint);
  11930. float Sign(float);
  11931. float Sin(float);
  11932. float SmoothStep(float, float, float);
  11933. float Sqrt(float);
  11934. const String& GetTypeName(StringHash);
  11935. void SubscribeToEvent(Object, const String&, const String&);
  11936. void SubscribeToEvent(const String&, const String&);
  11937. float Tan(float);
  11938. uint ToLower(uint);
  11939. String ToStringHex(int);
  11940. uint ToUpper(uint);
  11941. void UnsubscribeFromAllEvents();
  11942. void UnsubscribeFromAllEventsExcept(Array<String>);
  11943. void UnsubscribeFromEvent(Object, const String&);
  11944. void UnsubscribeFromEvent(const String&);
  11945. void UnsubscribeFromEvents(Object);
  11946. // Global properties
  11947. Audio audio;
  11948. ResourceCache cache;
  11949. Console console;
  11950. DebugHud debugHud;
  11951. DebugRenderer debugRenderer;
  11952. Engine engine;
  11953. FileSystem fileSystem;
  11954. Graphics graphics;
  11955. Input input;
  11956. Log log;
  11957. Network network;
  11958. Node node;
  11959. Octree octree;
  11960. PhysicsWorld physicsWorld;
  11961. PhysicsWorld2D physicsWorld2D;
  11962. Renderer renderer;
  11963. ResourceCache resourceCache;
  11964. Scene scene;
  11965. Script script;
  11966. ScriptFile scriptFile;
  11967. ScriptInstance self;
  11968. Time time;
  11969. UI ui;
  11970. // Global constants
  11971. uint AM_COMPONENTID;
  11972. uint AM_DEFAULT;
  11973. uint AM_FILE;
  11974. uint AM_LATESTDATA;
  11975. uint AM_NET;
  11976. uint AM_NODEID;
  11977. uint AM_NODEIDVECTOR;
  11978. uint AM_NOEDIT;
  11979. Color BLACK;
  11980. Color BLUE;
  11981. int CONTROLLER_AXIS_LEFTX;
  11982. int CONTROLLER_AXIS_LEFTY;
  11983. int CONTROLLER_AXIS_RIGHTX;
  11984. int CONTROLLER_AXIS_RIGHTY;
  11985. int CONTROLLER_AXIS_TRIGGERLEFT;
  11986. int CONTROLLER_AXIS_TRIGGERRIGHT;
  11987. int CONTROLLER_BUTTON_A;
  11988. int CONTROLLER_BUTTON_B;
  11989. int CONTROLLER_BUTTON_BACK;
  11990. int CONTROLLER_BUTTON_DPAD_DOWN;
  11991. int CONTROLLER_BUTTON_DPAD_LEFT;
  11992. int CONTROLLER_BUTTON_DPAD_RIGHT;
  11993. int CONTROLLER_BUTTON_DPAD_UP;
  11994. int CONTROLLER_BUTTON_GUIDE;
  11995. int CONTROLLER_BUTTON_LEFTSHOULDER;
  11996. int CONTROLLER_BUTTON_LEFTSTICK;
  11997. int CONTROLLER_BUTTON_RIGHTSHOULDER;
  11998. int CONTROLLER_BUTTON_RIGHTSTICK;
  11999. int CONTROLLER_BUTTON_START;
  12000. int CONTROLLER_BUTTON_X;
  12001. int CONTROLLER_BUTTON_Y;
  12002. Color CYAN;
  12003. uint DD_DISABLED;
  12004. uint DD_SOURCE;
  12005. uint DD_SOURCE_AND_TARGET;
  12006. uint DD_TARGET;
  12007. uint DEBUGHUD_SHOW_ALL;
  12008. uint DEBUGHUD_SHOW_MODE;
  12009. uint DEBUGHUD_SHOW_NONE;
  12010. uint DEBUGHUD_SHOW_PROFILER;
  12011. uint DEBUGHUD_SHOW_STATS;
  12012. uint DEFAULT_LIGHTMASK;
  12013. uint DEFAULT_VIEWMASK;
  12014. uint DRAWABLE_ANY;
  12015. uint DRAWABLE_GEOMETRY;
  12016. uint DRAWABLE_LIGHT;
  12017. uint DRAWABLE_PROXYGEOMETRY;
  12018. uint DRAWABLE_ZONE;
  12019. uint FIRST_LOCAL_ID;
  12020. uint FIRST_REPLICATED_ID;
  12021. Color GRAY;
  12022. Color GREEN;
  12023. int HAT_CENTER;
  12024. int HAT_DOWN;
  12025. int HAT_LEFT;
  12026. int HAT_RIGHT;
  12027. int HAT_UP;
  12028. int KEY_0;
  12029. int KEY_1;
  12030. int KEY_2;
  12031. int KEY_3;
  12032. int KEY_4;
  12033. int KEY_5;
  12034. int KEY_6;
  12035. int KEY_7;
  12036. int KEY_8;
  12037. int KEY_9;
  12038. int KEY_A;
  12039. int KEY_ALT;
  12040. int KEY_APPLICATION;
  12041. int KEY_B;
  12042. int KEY_BACKSPACE;
  12043. int KEY_C;
  12044. int KEY_CAPSLOCK;
  12045. int KEY_CTRL;
  12046. int KEY_D;
  12047. int KEY_DELETE;
  12048. int KEY_DOWN;
  12049. int KEY_E;
  12050. int KEY_END;
  12051. int KEY_ESC;
  12052. int KEY_F;
  12053. int KEY_F1;
  12054. int KEY_F10;
  12055. int KEY_F11;
  12056. int KEY_F12;
  12057. int KEY_F13;
  12058. int KEY_F14;
  12059. int KEY_F15;
  12060. int KEY_F16;
  12061. int KEY_F17;
  12062. int KEY_F18;
  12063. int KEY_F19;
  12064. int KEY_F2;
  12065. int KEY_F20;
  12066. int KEY_F21;
  12067. int KEY_F22;
  12068. int KEY_F23;
  12069. int KEY_F24;
  12070. int KEY_F3;
  12071. int KEY_F4;
  12072. int KEY_F5;
  12073. int KEY_F6;
  12074. int KEY_F7;
  12075. int KEY_F8;
  12076. int KEY_F9;
  12077. int KEY_G;
  12078. int KEY_GUI;
  12079. int KEY_H;
  12080. int KEY_HOME;
  12081. int KEY_I;
  12082. int KEY_INSERT;
  12083. int KEY_J;
  12084. int KEY_K;
  12085. int KEY_KP_0;
  12086. int KEY_KP_1;
  12087. int KEY_KP_2;
  12088. int KEY_KP_3;
  12089. int KEY_KP_4;
  12090. int KEY_KP_5;
  12091. int KEY_KP_6;
  12092. int KEY_KP_7;
  12093. int KEY_KP_8;
  12094. int KEY_KP_9;
  12095. int KEY_KP_DIVIDE;
  12096. int KEY_KP_ENTER;
  12097. int KEY_KP_MINUS;
  12098. int KEY_KP_MULTIPLY;
  12099. int KEY_KP_PERIOD;
  12100. int KEY_KP_PLUS;
  12101. int KEY_L;
  12102. int KEY_LALT;
  12103. int KEY_LCTRL;
  12104. int KEY_LEFT;
  12105. int KEY_LGUI;
  12106. int KEY_LSHIFT;
  12107. int KEY_M;
  12108. int KEY_N;
  12109. int KEY_NUMLOCKCLEAR;
  12110. int KEY_O;
  12111. int KEY_P;
  12112. int KEY_PAGEDOWN;
  12113. int KEY_PAGEUP;
  12114. int KEY_PAUSE;
  12115. int KEY_PRINTSCREEN;
  12116. int KEY_Q;
  12117. int KEY_R;
  12118. int KEY_RALT;
  12119. int KEY_RCTRL;
  12120. int KEY_RETURN;
  12121. int KEY_RETURN2;
  12122. int KEY_RGUI;
  12123. int KEY_RIGHT;
  12124. int KEY_RSHIFT;
  12125. int KEY_S;
  12126. int KEY_SCROLLLOCK;
  12127. int KEY_SELECT;
  12128. int KEY_SHIFT;
  12129. int KEY_SPACE;
  12130. int KEY_T;
  12131. int KEY_TAB;
  12132. int KEY_U;
  12133. int KEY_UP;
  12134. int KEY_V;
  12135. int KEY_W;
  12136. int KEY_X;
  12137. int KEY_Y;
  12138. int KEY_Z;
  12139. uint LAST_LOCAL_ID;
  12140. uint LAST_REPLICATED_ID;
  12141. int LOG_DEBUG;
  12142. int LOG_ERROR;
  12143. int LOG_INFO;
  12144. int LOG_NONE;
  12145. int LOG_WARNING;
  12146. Color MAGENTA;
  12147. int MOUSEB_LEFT;
  12148. int MOUSEB_MIDDLE;
  12149. int MOUSEB_RIGHT;
  12150. float M_DEGTORAD;
  12151. float M_DEGTORAD_2;
  12152. float M_EPSILON;
  12153. float M_HALF_PI;
  12154. float M_INFINITY;
  12155. float M_LARGE_EPSILON;
  12156. float M_LARGE_VALUE;
  12157. int M_MAX_INT;
  12158. uint M_MAX_UNSIGNED;
  12159. int M_MIN_INT;
  12160. uint M_MIN_UNSIGNED;
  12161. float M_PI;
  12162. float M_RADTODEG;
  12163. float PIXEL_SIZE;
  12164. int QUALITY_HIGH;
  12165. int QUALITY_LOW;
  12166. int QUALITY_MAX;
  12167. int QUALITY_MEDIUM;
  12168. int QUAL_ALT;
  12169. int QUAL_ANY;
  12170. int QUAL_CTRL;
  12171. int QUAL_SHIFT;
  12172. Color RED;
  12173. int SCANCODE_0;
  12174. int SCANCODE_1;
  12175. int SCANCODE_2;
  12176. int SCANCODE_3;
  12177. int SCANCODE_4;
  12178. int SCANCODE_5;
  12179. int SCANCODE_6;
  12180. int SCANCODE_7;
  12181. int SCANCODE_8;
  12182. int SCANCODE_9;
  12183. int SCANCODE_A;
  12184. int SCANCODE_AC_BACK;
  12185. int SCANCODE_AC_BOOKMARKS;
  12186. int SCANCODE_AC_FORWARD;
  12187. int SCANCODE_AC_HOME;
  12188. int SCANCODE_AC_REFRESH;
  12189. int SCANCODE_AC_SEARCH;
  12190. int SCANCODE_AC_STOP;
  12191. int SCANCODE_AGAIN;
  12192. int SCANCODE_ALT;
  12193. int SCANCODE_ALTERASE;
  12194. int SCANCODE_APOSTROPHE;
  12195. int SCANCODE_APP1;
  12196. int SCANCODE_APP2;
  12197. int SCANCODE_APPLICATION;
  12198. int SCANCODE_AUDIOMUTE;
  12199. int SCANCODE_AUDIONEXT;
  12200. int SCANCODE_AUDIOPLAY;
  12201. int SCANCODE_AUDIOPREV;
  12202. int SCANCODE_AUDIOSTOP;
  12203. int SCANCODE_B;
  12204. int SCANCODE_BACKSLASH;
  12205. int SCANCODE_BACKSPACE;
  12206. int SCANCODE_BRIGHTNESSDOWN;
  12207. int SCANCODE_BRIGHTNESSUP;
  12208. int SCANCODE_C;
  12209. int SCANCODE_CALCULATOR;
  12210. int SCANCODE_CANCEL;
  12211. int SCANCODE_CAPSLOCK;
  12212. int SCANCODE_CLEAR;
  12213. int SCANCODE_CLEARAGAIN;
  12214. int SCANCODE_COMMA;
  12215. int SCANCODE_COMPUTER;
  12216. int SCANCODE_COPY;
  12217. int SCANCODE_CRSEL;
  12218. int SCANCODE_CTRL;
  12219. int SCANCODE_CURRENCYSUBUNIT;
  12220. int SCANCODE_CURRENCYUNIT;
  12221. int SCANCODE_CUT;
  12222. int SCANCODE_D;
  12223. int SCANCODE_DECIMALSEPARATOR;
  12224. int SCANCODE_DELETE;
  12225. int SCANCODE_DISPLAYSWITCH;
  12226. int SCANCODE_DOWN;
  12227. int SCANCODE_E;
  12228. int SCANCODE_EJECT;
  12229. int SCANCODE_END;
  12230. int SCANCODE_EQUALS;
  12231. int SCANCODE_ESCAPE;
  12232. int SCANCODE_EXECUTE;
  12233. int SCANCODE_EXSEL;
  12234. int SCANCODE_F;
  12235. int SCANCODE_F1;
  12236. int SCANCODE_F10;
  12237. int SCANCODE_F11;
  12238. int SCANCODE_F12;
  12239. int SCANCODE_F13;
  12240. int SCANCODE_F14;
  12241. int SCANCODE_F15;
  12242. int SCANCODE_F16;
  12243. int SCANCODE_F17;
  12244. int SCANCODE_F18;
  12245. int SCANCODE_F19;
  12246. int SCANCODE_F2;
  12247. int SCANCODE_F20;
  12248. int SCANCODE_F21;
  12249. int SCANCODE_F22;
  12250. int SCANCODE_F23;
  12251. int SCANCODE_F24;
  12252. int SCANCODE_F3;
  12253. int SCANCODE_F4;
  12254. int SCANCODE_F5;
  12255. int SCANCODE_F6;
  12256. int SCANCODE_F7;
  12257. int SCANCODE_F8;
  12258. int SCANCODE_F9;
  12259. int SCANCODE_FIND;
  12260. int SCANCODE_G;
  12261. int SCANCODE_GRAVE;
  12262. int SCANCODE_GUI;
  12263. int SCANCODE_H;
  12264. int SCANCODE_HELP;
  12265. int SCANCODE_HOME;
  12266. int SCANCODE_I;
  12267. int SCANCODE_INSERT;
  12268. int SCANCODE_INTERNATIONAL1;
  12269. int SCANCODE_INTERNATIONAL2;
  12270. int SCANCODE_INTERNATIONAL3;
  12271. int SCANCODE_INTERNATIONAL4;
  12272. int SCANCODE_INTERNATIONAL5;
  12273. int SCANCODE_INTERNATIONAL6;
  12274. int SCANCODE_INTERNATIONAL7;
  12275. int SCANCODE_INTERNATIONAL8;
  12276. int SCANCODE_INTERNATIONAL9;
  12277. int SCANCODE_J;
  12278. int SCANCODE_K;
  12279. int SCANCODE_KBDILLUMDOWN;
  12280. int SCANCODE_KBDILLUMTOGGLE;
  12281. int SCANCODE_KBDILLUMUP;
  12282. int SCANCODE_KP_0;
  12283. int SCANCODE_KP_00;
  12284. int SCANCODE_KP_000;
  12285. int SCANCODE_KP_1;
  12286. int SCANCODE_KP_2;
  12287. int SCANCODE_KP_3;
  12288. int SCANCODE_KP_4;
  12289. int SCANCODE_KP_5;
  12290. int SCANCODE_KP_6;
  12291. int SCANCODE_KP_7;
  12292. int SCANCODE_KP_8;
  12293. int SCANCODE_KP_9;
  12294. int SCANCODE_KP_A;
  12295. int SCANCODE_KP_AMPERSAND;
  12296. int SCANCODE_KP_AT;
  12297. int SCANCODE_KP_B;
  12298. int SCANCODE_KP_BACKSPACE;
  12299. int SCANCODE_KP_BINARY;
  12300. int SCANCODE_KP_C;
  12301. int SCANCODE_KP_CLEAR;
  12302. int SCANCODE_KP_CLEARENTRY;
  12303. int SCANCODE_KP_COLON;
  12304. int SCANCODE_KP_COMMA;
  12305. int SCANCODE_KP_D;
  12306. int SCANCODE_KP_DBLAMPERSAND;
  12307. int SCANCODE_KP_DBLVERTICALBAR;
  12308. int SCANCODE_KP_DECIMAL;
  12309. int SCANCODE_KP_DIVIDE;
  12310. int SCANCODE_KP_E;
  12311. int SCANCODE_KP_ENTER;
  12312. int SCANCODE_KP_EQUALS;
  12313. int SCANCODE_KP_EQUALSAS400;
  12314. int SCANCODE_KP_EXCLAM;
  12315. int SCANCODE_KP_F;
  12316. int SCANCODE_KP_GREATER;
  12317. int SCANCODE_KP_HASH;
  12318. int SCANCODE_KP_HEXADECIMAL;
  12319. int SCANCODE_KP_LEFTBRACE;
  12320. int SCANCODE_KP_LEFTPAREN;
  12321. int SCANCODE_KP_LESS;
  12322. int SCANCODE_KP_MEMADD;
  12323. int SCANCODE_KP_MEMCLEAR;
  12324. int SCANCODE_KP_MEMDIVIDE;
  12325. int SCANCODE_KP_MEMMULTIPLY;
  12326. int SCANCODE_KP_MEMRECALL;
  12327. int SCANCODE_KP_MEMSTORE;
  12328. int SCANCODE_KP_MEMSUBTRACT;
  12329. int SCANCODE_KP_MINUS;
  12330. int SCANCODE_KP_MULTIPLY;
  12331. int SCANCODE_KP_OCTAL;
  12332. int SCANCODE_KP_PERCENT;
  12333. int SCANCODE_KP_PERIOD;
  12334. int SCANCODE_KP_PLUS;
  12335. int SCANCODE_KP_PLUSMINUS;
  12336. int SCANCODE_KP_POWER;
  12337. int SCANCODE_KP_RIGHTBRACE;
  12338. int SCANCODE_KP_RIGHTPAREN;
  12339. int SCANCODE_KP_SPACE;
  12340. int SCANCODE_KP_TAB;
  12341. int SCANCODE_KP_VERTICALBAR;
  12342. int SCANCODE_KP_XOR;
  12343. int SCANCODE_L;
  12344. int SCANCODE_LALT;
  12345. int SCANCODE_LANG1;
  12346. int SCANCODE_LANG2;
  12347. int SCANCODE_LANG3;
  12348. int SCANCODE_LANG4;
  12349. int SCANCODE_LANG5;
  12350. int SCANCODE_LANG6;
  12351. int SCANCODE_LANG7;
  12352. int SCANCODE_LANG8;
  12353. int SCANCODE_LANG9;
  12354. int SCANCODE_LCTRL;
  12355. int SCANCODE_LEFT;
  12356. int SCANCODE_LEFTBRACKET;
  12357. int SCANCODE_LGUI;
  12358. int SCANCODE_LSHIFT;
  12359. int SCANCODE_M;
  12360. int SCANCODE_MAIL;
  12361. int SCANCODE_MEDIASELECT;
  12362. int SCANCODE_MENU;
  12363. int SCANCODE_MINUS;
  12364. int SCANCODE_MODE;
  12365. int SCANCODE_MUTE;
  12366. int SCANCODE_N;
  12367. int SCANCODE_NONUSBACKSLASH;
  12368. int SCANCODE_NONUSHASH;
  12369. int SCANCODE_NUMLOCKCLEAR;
  12370. int SCANCODE_O;
  12371. int SCANCODE_OPER;
  12372. int SCANCODE_OUT;
  12373. int SCANCODE_P;
  12374. int SCANCODE_PAGEDOWN;
  12375. int SCANCODE_PAGEUP;
  12376. int SCANCODE_PASTE;
  12377. int SCANCODE_PAUSE;
  12378. int SCANCODE_PERIOD;
  12379. int SCANCODE_POWER;
  12380. int SCANCODE_PRINTSCREEN;
  12381. int SCANCODE_PRIOR;
  12382. int SCANCODE_Q;
  12383. int SCANCODE_R;
  12384. int SCANCODE_RALT;
  12385. int SCANCODE_RCTRL;
  12386. int SCANCODE_RETURN;
  12387. int SCANCODE_RETURN2;
  12388. int SCANCODE_RGUI;
  12389. int SCANCODE_RIGHT;
  12390. int SCANCODE_RIGHTBRACKET;
  12391. int SCANCODE_RSHIFT;
  12392. int SCANCODE_S;
  12393. int SCANCODE_SCROLLLOCK;
  12394. int SCANCODE_SELECT;
  12395. int SCANCODE_SEMICOLON;
  12396. int SCANCODE_SEPARATOR;
  12397. int SCANCODE_SHIFT;
  12398. int SCANCODE_SLASH;
  12399. int SCANCODE_SLEEP;
  12400. int SCANCODE_SPACE;
  12401. int SCANCODE_STOP;
  12402. int SCANCODE_SYSREQ;
  12403. int SCANCODE_T;
  12404. int SCANCODE_TAB;
  12405. int SCANCODE_THOUSANDSSEPARATOR;
  12406. int SCANCODE_U;
  12407. int SCANCODE_UNDO;
  12408. int SCANCODE_UNKNOWN;
  12409. int SCANCODE_UP;
  12410. int SCANCODE_V;
  12411. int SCANCODE_VOLUMEDOWN;
  12412. int SCANCODE_VOLUMEUP;
  12413. int SCANCODE_W;
  12414. int SCANCODE_WWW;
  12415. int SCANCODE_X;
  12416. int SCANCODE_Y;
  12417. int SCANCODE_Z;
  12418. uint SCAN_DIRS;
  12419. uint SCAN_FILES;
  12420. uint SCAN_HIDDEN;
  12421. int SHADOWQUALITY_HIGH_16BIT;
  12422. int SHADOWQUALITY_HIGH_24BIT;
  12423. int SHADOWQUALITY_LOW_16BIT;
  12424. int SHADOWQUALITY_LOW_24BIT;
  12425. Color TRANSPARENT;
  12426. uint VO_DISABLE_OCCLUSION;
  12427. uint VO_DISABLE_SHADOWS;
  12428. uint VO_LOW_MATERIAL_QUALITY;
  12429. uint VO_NONE;
  12430. Color WHITE;
  12431. Color YELLOW;