AngelScriptAPI.h 203 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465
  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 AnimatedModel
  11. {
  12. // Methods:
  13. AnimationState AddAnimationState(Animation);
  14. void ApplyAttributes();
  15. void ApplyMaterialList(const String& = String ( ));
  16. void DrawDebugGeometry(DebugRenderer, bool);
  17. AnimationState GetAnimationState(Animation) const;
  18. AnimationState GetAnimationState(uint) const;
  19. Variant GetAttribute(const String&) const;
  20. Variant GetAttributeDefault(const String&) const;
  21. float GetMorphWeight(uint) const;
  22. bool IsInView(Camera) const;
  23. bool Load(File, bool = false);
  24. bool LoadXML(const XMLElement&, bool = false);
  25. void MarkNetworkUpdate() const;
  26. void Remove();
  27. void RemoveAllAnimationStates();
  28. void RemoveAnimationState(Animation);
  29. void RemoveAnimationState(AnimationState);
  30. void RemoveAnimationState(const String&);
  31. void RemoveAnimationState(uint);
  32. void RemoveInstanceDefault();
  33. void ResetMorphWeights();
  34. void ResetToDefault();
  35. bool Save(File) const;
  36. bool SaveXML(XMLElement&) const;
  37. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  38. bool SetAttribute(const String&, const Variant&);
  39. void SetMorphWeight(uint, float);
  40. // Properties:
  41. float animationLodBias;
  42. /* readonly */
  43. Array<AnimationState> animationStates;
  44. /* readonly */
  45. Array<Variant> attributeDefaults;
  46. /* readonly */
  47. Array<AttributeInfo> attributeInfos;
  48. Array<Variant> attributes;
  49. /* readonly */
  50. ShortStringHash baseType;
  51. /* readonly */
  52. BoundingBox boundingBox;
  53. bool castShadows;
  54. /* readonly */
  55. String category;
  56. float drawDistance;
  57. bool enabled;
  58. /* readonly */
  59. bool enabledEffective;
  60. /* readonly */
  61. uint id;
  62. /* readonly */
  63. bool inView;
  64. uint lightMask;
  65. float lodBias;
  66. /* writeonly */
  67. Material material;
  68. Array<Material> materials;
  69. uint maxLights;
  70. Model model;
  71. /* readonly */
  72. Array<String> morphNames;
  73. Array<float> morphWeights;
  74. /* readonly */
  75. Node node;
  76. /* readonly */
  77. uint numAnimationStates;
  78. /* readonly */
  79. uint numAttributes;
  80. /* readonly */
  81. uint numGeometries;
  82. /* readonly */
  83. uint numMorphs;
  84. bool occludee;
  85. bool occluder;
  86. /* readonly */
  87. int refs;
  88. float shadowDistance;
  89. uint shadowMask;
  90. /* readonly */
  91. Skeleton skeleton;
  92. bool temporary;
  93. /* readonly */
  94. ShortStringHash type;
  95. /* readonly */
  96. String typeName;
  97. bool updateInvisible;
  98. uint viewMask;
  99. /* readonly */
  100. int weakRefs;
  101. /* readonly */
  102. BoundingBox worldBoundingBox;
  103. /* readonly */
  104. Zone zone;
  105. uint zoneMask;
  106. };
  107. class AnimatedSprite2D
  108. {
  109. // Methods:
  110. void ApplyAttributes();
  111. void DrawDebugGeometry(DebugRenderer, bool);
  112. Variant GetAttribute(const String&) const;
  113. Variant GetAttributeDefault(const String&) const;
  114. bool IsInView(Camera) const;
  115. bool Load(File, bool = false);
  116. bool LoadXML(const XMLElement&, bool = false);
  117. void MarkNetworkUpdate() const;
  118. void Remove();
  119. void RemoveInstanceDefault();
  120. void ResetToDefault();
  121. bool Save(File) const;
  122. bool SaveXML(XMLElement&) const;
  123. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  124. bool SetAttribute(const String&, const Variant&);
  125. void SetFlip(bool, bool);
  126. // Properties:
  127. Animation2D animation;
  128. /* readonly */
  129. Array<Variant> attributeDefaults;
  130. /* readonly */
  131. Array<AttributeInfo> attributeInfos;
  132. Array<Variant> attributes;
  133. /* readonly */
  134. ShortStringHash baseType;
  135. BlendMode blendMode;
  136. /* readonly */
  137. BoundingBox boundingBox;
  138. bool castShadows;
  139. /* readonly */
  140. String category;
  141. Color color;
  142. CycleMode cycleMode;
  143. float drawDistance;
  144. bool enabled;
  145. /* readonly */
  146. bool enabledEffective;
  147. bool flipX;
  148. bool flipY;
  149. /* readonly */
  150. uint id;
  151. /* readonly */
  152. bool inView;
  153. uint lightMask;
  154. float lodBias;
  155. Material material;
  156. uint maxLights;
  157. /* readonly */
  158. Node node;
  159. /* readonly */
  160. uint numAttributes;
  161. bool occludee;
  162. bool occluder;
  163. /* readonly */
  164. int refs;
  165. float shadowDistance;
  166. uint shadowMask;
  167. float speed;
  168. Sprite2D sprite;
  169. bool temporary;
  170. /* readonly */
  171. ShortStringHash type;
  172. /* readonly */
  173. String typeName;
  174. float unitPerPixel;
  175. uint viewMask;
  176. /* readonly */
  177. int weakRefs;
  178. /* readonly */
  179. BoundingBox worldBoundingBox;
  180. float zValue;
  181. uint zoneMask;
  182. };
  183. class Animation
  184. {
  185. // Methods:
  186. void AddTrigger(float, bool, const Variant&);
  187. bool Load(File);
  188. void RemoveAllTriggers();
  189. void RemoveTrigger(uint);
  190. bool Save(File) const;
  191. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  192. // Properties:
  193. /* readonly */
  194. String animationName;
  195. /* readonly */
  196. ShortStringHash baseType;
  197. /* readonly */
  198. String category;
  199. /* readonly */
  200. float length;
  201. /* readonly */
  202. uint memoryUse;
  203. String name;
  204. /* readonly */
  205. uint numTracks;
  206. uint numTriggers;
  207. /* readonly */
  208. int refs;
  209. /* readonly */
  210. Array<AnimationTriggerPoint> triggers;
  211. /* readonly */
  212. ShortStringHash type;
  213. /* readonly */
  214. String typeName;
  215. /* readonly */
  216. uint useTimer;
  217. /* readonly */
  218. int weakRefs;
  219. };
  220. class Animation2D
  221. {
  222. // Methods:
  223. Sprite GetFrameSprite(uint) const;
  224. Sprite GetFrameSpriteByTime(float) const;
  225. bool Load(File);
  226. bool Save(File) const;
  227. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  228. // Properties:
  229. /* readonly */
  230. ShortStringHash baseType;
  231. /* readonly */
  232. String category;
  233. /* readonly */
  234. uint memoryUse;
  235. String name;
  236. /* readonly */
  237. uint numFrames;
  238. /* readonly */
  239. int refs;
  240. /* readonly */
  241. float totalTime;
  242. /* readonly */
  243. ShortStringHash type;
  244. /* readonly */
  245. String typeName;
  246. /* readonly */
  247. uint useTimer;
  248. /* readonly */
  249. int weakRefs;
  250. };
  251. class AnimationController
  252. {
  253. // Methods:
  254. void ApplyAttributes();
  255. void DrawDebugGeometry(DebugRenderer, bool);
  256. bool Fade(const String&, float, float);
  257. bool FadeOthers(const String&, float, float);
  258. AnimationState GetAnimationState(StringHash) const;
  259. AnimationState GetAnimationState(const String&) const;
  260. Variant GetAttribute(const String&) const;
  261. Variant GetAttributeDefault(const String&) const;
  262. float GetAutoFade(const String&) const;
  263. float GetFadeTarget(const String&) const;
  264. uint8 GetLayer(const String&) const;
  265. float GetLength(const String&) const;
  266. bool GetLooped(const String&) const;
  267. float GetSpeed(const String&) const;
  268. float GetTime(const String&) const;
  269. float GetWeight(const String&) const;
  270. bool IsFadingIn(const String&) const;
  271. bool IsFadingOut(const String&) const;
  272. bool IsPlaying(const String&) const;
  273. bool Load(File, bool = false);
  274. bool LoadXML(const XMLElement&, bool = false);
  275. void MarkNetworkUpdate() const;
  276. bool Play(const String&, uint8, bool, float = 0.0f);
  277. bool PlayExclusive(const String&, uint8, bool, float = 0.0f);
  278. void Remove();
  279. void RemoveInstanceDefault();
  280. void ResetToDefault();
  281. bool Save(File) const;
  282. bool SaveXML(XMLElement&) const;
  283. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  284. bool SetAttribute(const String&, const Variant&);
  285. bool SetAutoFade(const String&, float);
  286. bool SetLayer(const String&, uint8);
  287. bool SetLooped(const String&, bool);
  288. bool SetSpeed(const String&, float);
  289. bool SetStartBone(const String&, const String&);
  290. bool SetTime(const String&, float);
  291. bool SetWeight(const String&, float);
  292. void Stop(const String&, float = 0.0f);
  293. void StopAll(float = 0.0f);
  294. void StopLayer(uint8, float = 0.0f);
  295. const String& GetStartBone(const String&) const;
  296. // Properties:
  297. /* readonly */
  298. Array<Variant> attributeDefaults;
  299. /* readonly */
  300. Array<AttributeInfo> attributeInfos;
  301. Array<Variant> attributes;
  302. /* readonly */
  303. ShortStringHash baseType;
  304. /* readonly */
  305. String category;
  306. bool enabled;
  307. /* readonly */
  308. bool enabledEffective;
  309. /* readonly */
  310. uint id;
  311. /* readonly */
  312. Node node;
  313. /* readonly */
  314. uint numAttributes;
  315. /* readonly */
  316. int refs;
  317. bool temporary;
  318. /* readonly */
  319. ShortStringHash type;
  320. /* readonly */
  321. String typeName;
  322. /* readonly */
  323. int weakRefs;
  324. };
  325. class AnimationState
  326. {
  327. // Methods:
  328. void AddTime(float);
  329. void AddWeight(float);
  330. void Apply();
  331. float GetBoneWeight(StringHash) const;
  332. float GetBoneWeight(uint) const;
  333. uint GetTrackIndex(StringHash) const;
  334. uint GetTrackIndex(const String&) const;
  335. void SetBoneWeight(StringHash, float, bool = false);
  336. void SetBoneWeight(const String&, float, bool = false);
  337. void SetBoneWeight(uint, float, bool = false);
  338. // Properties:
  339. /* readonly */
  340. Animation animation;
  341. Array<float> boneWeights;
  342. /* readonly */
  343. bool enabled;
  344. uint8 layer;
  345. /* readonly */
  346. float length;
  347. bool looped;
  348. /* readonly */
  349. AnimatedModel model;
  350. /* readonly */
  351. Node node;
  352. /* readonly */
  353. int refs;
  354. Bone startBone;
  355. float time;
  356. /* readonly */
  357. int weakRefs;
  358. float weight;
  359. };
  360. class AnimationTriggerPoint
  361. {
  362. // Properties:
  363. Variant data;
  364. float time;
  365. };
  366. template <class T> class Array
  367. {
  368. // Methods:
  369. void Clear();
  370. void Erase(uint);
  371. int Find(const T&) const;
  372. int Find(uint, const T&) const;
  373. void Insert(uint, const T&);
  374. void Pop();
  375. void Push(const T&);
  376. void Resize(uint);
  377. void Reverse();
  378. void Sort();
  379. void Sort(uint, uint);
  380. void SortReverse();
  381. void SortReverse(uint, uint);
  382. // Properties:
  383. /* readonly */
  384. bool empty;
  385. uint length;
  386. };
  387. class AttributeInfo
  388. {
  389. // Properties:
  390. Variant defaultValue;
  391. /* readonly */
  392. Array<String> enumNames;
  393. uint mode;
  394. String name;
  395. VariantType type;
  396. };
  397. class Audio
  398. {
  399. // Methods:
  400. bool Play();
  401. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  402. void SetMode(int, int, bool, bool = true);
  403. void Stop();
  404. // Properties:
  405. /* readonly */
  406. ShortStringHash baseType;
  407. /* readonly */
  408. String category;
  409. /* readonly */
  410. bool initialized;
  411. /* readonly */
  412. bool interpolation;
  413. SoundListener listener;
  414. Array<float> masterGain;
  415. /* readonly */
  416. int mixRate;
  417. /* readonly */
  418. bool playing;
  419. /* readonly */
  420. int refs;
  421. /* readonly */
  422. uint sampleSize;
  423. /* readonly */
  424. bool stereo;
  425. /* readonly */
  426. ShortStringHash type;
  427. /* readonly */
  428. String typeName;
  429. /* readonly */
  430. int weakRefs;
  431. };
  432. class BiasParameters
  433. {
  434. // Properties:
  435. float constantBias;
  436. float slopeScaledBias;
  437. };
  438. class Billboard
  439. {
  440. // Properties:
  441. Color color;
  442. bool enabled;
  443. Vector3 position;
  444. float rotation;
  445. Vector2 size;
  446. Rect uv;
  447. };
  448. class BillboardSet
  449. {
  450. // Methods:
  451. void ApplyAttributes();
  452. void Commit();
  453. void DrawDebugGeometry(DebugRenderer, bool);
  454. Variant GetAttribute(const String&) const;
  455. Variant GetAttributeDefault(const String&) const;
  456. bool IsInView(Camera) const;
  457. bool Load(File, bool = false);
  458. bool LoadXML(const XMLElement&, bool = false);
  459. void MarkNetworkUpdate() const;
  460. void Remove();
  461. void RemoveInstanceDefault();
  462. void ResetToDefault();
  463. bool Save(File) const;
  464. bool SaveXML(XMLElement&) const;
  465. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  466. bool SetAttribute(const String&, const Variant&);
  467. // Properties:
  468. float animationLodBias;
  469. /* readonly */
  470. Array<Variant> attributeDefaults;
  471. /* readonly */
  472. Array<AttributeInfo> attributeInfos;
  473. Array<Variant> attributes;
  474. /* readonly */
  475. ShortStringHash baseType;
  476. /* readonly */
  477. Array<Billboard> billboards;
  478. /* readonly */
  479. BoundingBox boundingBox;
  480. bool castShadows;
  481. /* readonly */
  482. String category;
  483. float drawDistance;
  484. bool enabled;
  485. /* readonly */
  486. bool enabledEffective;
  487. bool faceCamera;
  488. /* readonly */
  489. uint id;
  490. /* readonly */
  491. bool inView;
  492. uint lightMask;
  493. float lodBias;
  494. Material material;
  495. uint maxLights;
  496. /* readonly */
  497. Node node;
  498. /* readonly */
  499. uint numAttributes;
  500. uint numBillboards;
  501. bool occludee;
  502. bool occluder;
  503. /* readonly */
  504. int refs;
  505. bool relative;
  506. bool scaled;
  507. float shadowDistance;
  508. uint shadowMask;
  509. bool sorted;
  510. bool temporary;
  511. /* readonly */
  512. ShortStringHash type;
  513. /* readonly */
  514. String typeName;
  515. uint viewMask;
  516. /* readonly */
  517. int weakRefs;
  518. /* readonly */
  519. BoundingBox worldBoundingBox;
  520. /* readonly */
  521. Zone zone;
  522. uint zoneMask;
  523. };
  524. class Bone
  525. {
  526. // Properties:
  527. bool animated;
  528. BoundingBox boundingBox;
  529. Vector3 initialPosition;
  530. Quaternion initialRotation;
  531. Vector3 initialScale;
  532. String name;
  533. Node node;
  534. float radius;
  535. };
  536. class BorderImage
  537. {
  538. // Methods:
  539. void AddChild(UIElement);
  540. void ApplyAttributes();
  541. void BringToFront();
  542. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  543. void DisableLayoutUpdate();
  544. IntVector2 ElementToScreen(const IntVector2&);
  545. void EnableLayoutUpdate();
  546. uint FindChild(UIElement) const;
  547. Variant GetAttribute(const String&) const;
  548. Variant GetAttributeDefault(const String&) const;
  549. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  550. UIElement GetChild(const String&, bool = false) const;
  551. Array<UIElement> GetChildren(bool = false) const;
  552. UIElement GetElementEventSender() const;
  553. uint GetNumChildren(bool) const;
  554. void InsertChild(uint, UIElement);
  555. bool IsInside(IntVector2, bool);
  556. bool IsInsideCombined(IntVector2, bool);
  557. bool Load(File, bool = false);
  558. bool LoadChildXML(XMLFile, XMLFile = null);
  559. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  560. bool LoadXML(File);
  561. bool LoadXML(XMLFile, XMLFile);
  562. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  563. bool LoadXML(const XMLElement&, bool = false);
  564. void Remove();
  565. void RemoveAllChildren();
  566. void RemoveChild(UIElement, uint = 0);
  567. void RemoveChild(uint);
  568. void RemoveInstanceDefault();
  569. void ResetToDefault();
  570. bool Save(File) const;
  571. bool SaveXML(File);
  572. bool SaveXML(XMLElement&) const;
  573. IntVector2 ScreenToElement(const IntVector2&);
  574. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  575. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  576. bool SetAttribute(const String&, const Variant&);
  577. void SetFixedHeight(int);
  578. void SetFixedSize(int, int);
  579. void SetFixedWidth(int);
  580. void SetFullImageRect();
  581. void SetHoverOffset(int, int);
  582. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  583. void SetMaxSize(int, int);
  584. void SetMinSize(int, int);
  585. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  586. void SetPosition(int, int);
  587. void SetSize(int, int);
  588. bool SetStyle(const String&, XMLFile = null);
  589. bool SetStyle(const XMLElement&);
  590. bool SetStyleAuto(XMLFile = null);
  591. void UpdateLayout();
  592. const Variant& GetVar(const ShortStringHash&);
  593. // Properties:
  594. /* readonly */
  595. Array<Variant> attributeDefaults;
  596. /* readonly */
  597. Array<AttributeInfo> attributeInfos;
  598. Array<Variant> attributes;
  599. /* readonly */
  600. ShortStringHash baseType;
  601. BlendMode blendMode;
  602. IntRect border;
  603. bool bringToBack;
  604. bool bringToFront;
  605. /* readonly */
  606. String category;
  607. /* readonly */
  608. IntVector2 childOffset;
  609. /* readonly */
  610. Array<UIElement> children;
  611. IntRect clipBorder;
  612. bool clipChildren;
  613. /* writeonly */
  614. Color color;
  615. /* readonly */
  616. bool colorGradient;
  617. Array<Color> colors;
  618. /* readonly */
  619. IntRect combinedScreenRect;
  620. XMLFile defaultStyle;
  621. /* readonly */
  622. float derivedOpacity;
  623. uint dragDropMode;
  624. bool editable;
  625. bool elementEventSender;
  626. bool enabled;
  627. /* readonly */
  628. bool fixedHeight;
  629. /* readonly */
  630. bool fixedSize;
  631. /* readonly */
  632. bool fixedWidth;
  633. bool focus;
  634. FocusMode focusMode;
  635. int height;
  636. HorizontalAlignment horizontalAlignment;
  637. IntVector2 hoverOffset;
  638. /* readonly */
  639. bool hovering;
  640. IntRect imageRect;
  641. int indent;
  642. int indentSpacing;
  643. /* readonly */
  644. int indentWidth;
  645. bool internal;
  646. IntRect layoutBorder;
  647. LayoutMode layoutMode;
  648. int layoutSpacing;
  649. int maxHeight;
  650. IntVector2 maxSize;
  651. int maxWidth;
  652. int minHeight;
  653. IntVector2 minSize;
  654. int minWidth;
  655. String name;
  656. /* readonly */
  657. uint numAllChildren;
  658. /* readonly */
  659. uint numAttributes;
  660. /* readonly */
  661. uint numChildren;
  662. float opacity;
  663. UIElement parent;
  664. IntVector2 position;
  665. int priority;
  666. /* readonly */
  667. int refs;
  668. /* readonly */
  669. UIElement root;
  670. /* readonly */
  671. IntVector2 screenPosition;
  672. bool selected;
  673. IntVector2 size;
  674. bool sortChildren;
  675. String style;
  676. bool temporary;
  677. Texture texture;
  678. bool tiled;
  679. TraversalMode traversalMode;
  680. /* readonly */
  681. ShortStringHash type;
  682. /* readonly */
  683. String typeName;
  684. bool useDerivedOpacity;
  685. /* readonly */
  686. VariantMap vars;
  687. VerticalAlignment verticalAlignment;
  688. bool visible;
  689. /* readonly */
  690. int weakRefs;
  691. int width;
  692. };
  693. class BoundingBox
  694. {
  695. // Methods:
  696. void Clear();
  697. void Clip(const BoundingBox&);
  698. void Define(const BoundingBox&);
  699. void Define(const Frustum&);
  700. void Define(const Polyhedron&);
  701. void Define(const Sphere&);
  702. void Define(const Vector3&);
  703. void Define(const Vector3&, const Vector3&);
  704. void Define(float, float);
  705. Intersection IsInside(const BoundingBox&) const;
  706. Intersection IsInside(const Sphere&) const;
  707. Intersection IsInside(const Vector3&) const;
  708. void Merge(const BoundingBox&);
  709. void Merge(const Frustum&);
  710. void Merge(const Polyhedron&);
  711. void Merge(const Sphere&);
  712. void Merge(const Vector3&);
  713. Rect Projected(const Matrix4&) const;
  714. String ToString() const;
  715. void Transform(const Matrix3&);
  716. void Transform(const Matrix3x4&);
  717. BoundingBox Transformed(const Matrix3&) const;
  718. BoundingBox Transformed(const Matrix3x4&) const;
  719. // Properties:
  720. /* readonly */
  721. Vector3 center;
  722. bool defined;
  723. /* readonly */
  724. Vector3 halfSize;
  725. Vector3 max;
  726. Vector3 min;
  727. /* readonly */
  728. Vector3 size;
  729. };
  730. class Button
  731. {
  732. // Methods:
  733. void AddChild(UIElement);
  734. void ApplyAttributes();
  735. void BringToFront();
  736. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  737. void DisableLayoutUpdate();
  738. IntVector2 ElementToScreen(const IntVector2&);
  739. void EnableLayoutUpdate();
  740. uint FindChild(UIElement) const;
  741. Variant GetAttribute(const String&) const;
  742. Variant GetAttributeDefault(const String&) const;
  743. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  744. UIElement GetChild(const String&, bool = false) const;
  745. Array<UIElement> GetChildren(bool = false) const;
  746. UIElement GetElementEventSender() const;
  747. uint GetNumChildren(bool) const;
  748. void InsertChild(uint, UIElement);
  749. bool IsInside(IntVector2, bool);
  750. bool IsInsideCombined(IntVector2, bool);
  751. bool Load(File, bool = false);
  752. bool LoadChildXML(XMLFile, XMLFile = null);
  753. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  754. bool LoadXML(File);
  755. bool LoadXML(XMLFile, XMLFile);
  756. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  757. bool LoadXML(const XMLElement&, bool = false);
  758. void Remove();
  759. void RemoveAllChildren();
  760. void RemoveChild(UIElement, uint = 0);
  761. void RemoveChild(uint);
  762. void RemoveInstanceDefault();
  763. void ResetToDefault();
  764. bool Save(File) const;
  765. bool SaveXML(File);
  766. bool SaveXML(XMLElement&) const;
  767. IntVector2 ScreenToElement(const IntVector2&);
  768. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  769. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  770. bool SetAttribute(const String&, const Variant&);
  771. void SetFixedHeight(int);
  772. void SetFixedSize(int, int);
  773. void SetFixedWidth(int);
  774. void SetFullImageRect();
  775. void SetHoverOffset(int, int);
  776. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  777. void SetMaxSize(int, int);
  778. void SetMinSize(int, int);
  779. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  780. void SetPosition(int, int);
  781. void SetPressedChildOffset(int, int);
  782. void SetPressedOffset(int, int);
  783. void SetRepeat(float, float);
  784. void SetSize(int, int);
  785. bool SetStyle(const String&, XMLFile = null);
  786. bool SetStyle(const XMLElement&);
  787. bool SetStyleAuto(XMLFile = null);
  788. void UpdateLayout();
  789. const Variant& GetVar(const ShortStringHash&);
  790. // Properties:
  791. /* readonly */
  792. Array<Variant> attributeDefaults;
  793. /* readonly */
  794. Array<AttributeInfo> attributeInfos;
  795. Array<Variant> attributes;
  796. /* readonly */
  797. ShortStringHash baseType;
  798. BlendMode blendMode;
  799. IntRect border;
  800. bool bringToBack;
  801. bool bringToFront;
  802. /* readonly */
  803. String category;
  804. /* readonly */
  805. IntVector2 childOffset;
  806. /* readonly */
  807. Array<UIElement> children;
  808. IntRect clipBorder;
  809. bool clipChildren;
  810. /* writeonly */
  811. Color color;
  812. /* readonly */
  813. bool colorGradient;
  814. Array<Color> colors;
  815. /* readonly */
  816. IntRect combinedScreenRect;
  817. XMLFile defaultStyle;
  818. /* readonly */
  819. float derivedOpacity;
  820. uint dragDropMode;
  821. bool editable;
  822. bool elementEventSender;
  823. bool enabled;
  824. /* readonly */
  825. bool fixedHeight;
  826. /* readonly */
  827. bool fixedSize;
  828. /* readonly */
  829. bool fixedWidth;
  830. bool focus;
  831. FocusMode focusMode;
  832. int height;
  833. HorizontalAlignment horizontalAlignment;
  834. IntVector2 hoverOffset;
  835. /* readonly */
  836. bool hovering;
  837. IntRect imageRect;
  838. int indent;
  839. int indentSpacing;
  840. /* readonly */
  841. int indentWidth;
  842. bool internal;
  843. IntRect layoutBorder;
  844. LayoutMode layoutMode;
  845. int layoutSpacing;
  846. int maxHeight;
  847. IntVector2 maxSize;
  848. int maxWidth;
  849. int minHeight;
  850. IntVector2 minSize;
  851. int minWidth;
  852. String name;
  853. /* readonly */
  854. uint numAllChildren;
  855. /* readonly */
  856. uint numAttributes;
  857. /* readonly */
  858. uint numChildren;
  859. float opacity;
  860. UIElement parent;
  861. IntVector2 position;
  862. /* readonly */
  863. bool pressed;
  864. IntVector2 pressedChildOffset;
  865. IntVector2 pressedOffset;
  866. int priority;
  867. /* readonly */
  868. int refs;
  869. float repeatDelay;
  870. float repeatRate;
  871. /* readonly */
  872. UIElement root;
  873. /* readonly */
  874. IntVector2 screenPosition;
  875. bool selected;
  876. IntVector2 size;
  877. bool sortChildren;
  878. String style;
  879. bool temporary;
  880. Texture texture;
  881. bool tiled;
  882. TraversalMode traversalMode;
  883. /* readonly */
  884. ShortStringHash type;
  885. /* readonly */
  886. String typeName;
  887. bool useDerivedOpacity;
  888. /* readonly */
  889. VariantMap vars;
  890. VerticalAlignment verticalAlignment;
  891. bool visible;
  892. /* readonly */
  893. int weakRefs;
  894. int width;
  895. };
  896. class Camera
  897. {
  898. // Methods:
  899. void ApplyAttributes();
  900. void DrawDebugGeometry(DebugRenderer, bool);
  901. Variant GetAttribute(const String&) const;
  902. Variant GetAttributeDefault(const String&) const;
  903. float GetDistance(const Vector3&) const;
  904. float GetDistanceSquared(const Vector3&) const;
  905. Ray GetScreenRay(float, float) const;
  906. Frustum GetSplitFrustum(float, float) const;
  907. bool Load(File, bool = false);
  908. bool LoadXML(const XMLElement&, bool = false);
  909. void MarkNetworkUpdate() const;
  910. void Remove();
  911. void RemoveInstanceDefault();
  912. void ResetToDefault();
  913. bool Save(File) const;
  914. bool SaveXML(XMLElement&) const;
  915. Vector3 ScreenToWorldPoint(const Vector3&) const;
  916. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  917. bool SetAttribute(const String&, const Variant&);
  918. void SetOrthoSize(const Vector2&);
  919. Vector2 WorldToScreenPoint(const Vector3&) const;
  920. // Properties:
  921. float aspectRatio;
  922. /* readonly */
  923. Array<Variant> attributeDefaults;
  924. /* readonly */
  925. Array<AttributeInfo> attributeInfos;
  926. Array<Variant> attributes;
  927. bool autoAspectRatio;
  928. /* readonly */
  929. ShortStringHash baseType;
  930. /* readonly */
  931. String category;
  932. Plane clipPlane;
  933. /* readonly */
  934. Matrix3x4 effectiveWorldTransform;
  935. bool enabled;
  936. /* readonly */
  937. bool enabledEffective;
  938. float farClip;
  939. FillMode fillMode;
  940. float fov;
  941. /* readonly */
  942. Frustum frustum;
  943. /* readonly */
  944. float halfViewSize;
  945. /* readonly */
  946. uint id;
  947. float lodBias;
  948. float nearClip;
  949. /* readonly */
  950. Node node;
  951. /* readonly */
  952. uint numAttributes;
  953. float orthoSize;
  954. bool orthographic;
  955. /* readonly */
  956. Matrix4 projection;
  957. Vector2 projectionOffset;
  958. Plane reflectionPlane;
  959. /* readonly */
  960. int refs;
  961. bool temporary;
  962. /* readonly */
  963. ShortStringHash type;
  964. /* readonly */
  965. String typeName;
  966. bool useClipping;
  967. bool useReflection;
  968. /* readonly */
  969. Matrix3x4 view;
  970. uint viewMask;
  971. uint viewOverrideFlags;
  972. /* readonly */
  973. Frustum viewSpaceFrustum;
  974. /* readonly */
  975. int weakRefs;
  976. float zoom;
  977. };
  978. class CascadeParameters
  979. {
  980. // Properties:
  981. float biasAutoAdjust;
  982. float fadeStart;
  983. float split1;
  984. float split2;
  985. float split3;
  986. float split4;
  987. };
  988. class CheckBox
  989. {
  990. // Methods:
  991. void AddChild(UIElement);
  992. void ApplyAttributes();
  993. void BringToFront();
  994. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  995. void DisableLayoutUpdate();
  996. IntVector2 ElementToScreen(const IntVector2&);
  997. void EnableLayoutUpdate();
  998. uint FindChild(UIElement) const;
  999. Variant GetAttribute(const String&) const;
  1000. Variant GetAttributeDefault(const String&) const;
  1001. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  1002. UIElement GetChild(const String&, bool = false) const;
  1003. Array<UIElement> GetChildren(bool = false) const;
  1004. UIElement GetElementEventSender() const;
  1005. uint GetNumChildren(bool) const;
  1006. void InsertChild(uint, UIElement);
  1007. bool IsInside(IntVector2, bool);
  1008. bool IsInsideCombined(IntVector2, bool);
  1009. bool Load(File, bool = false);
  1010. bool LoadChildXML(XMLFile, XMLFile = null);
  1011. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  1012. bool LoadXML(File);
  1013. bool LoadXML(XMLFile, XMLFile);
  1014. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  1015. bool LoadXML(const XMLElement&, bool = false);
  1016. void Remove();
  1017. void RemoveAllChildren();
  1018. void RemoveChild(UIElement, uint = 0);
  1019. void RemoveChild(uint);
  1020. void RemoveInstanceDefault();
  1021. void ResetToDefault();
  1022. bool Save(File) const;
  1023. bool SaveXML(File);
  1024. bool SaveXML(XMLElement&) const;
  1025. IntVector2 ScreenToElement(const IntVector2&);
  1026. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1027. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  1028. bool SetAttribute(const String&, const Variant&);
  1029. void SetCheckedOffset(int, int);
  1030. void SetFixedHeight(int);
  1031. void SetFixedSize(int, int);
  1032. void SetFixedWidth(int);
  1033. void SetFullImageRect();
  1034. void SetHoverOffset(int, int);
  1035. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  1036. void SetMaxSize(int, int);
  1037. void SetMinSize(int, int);
  1038. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  1039. void SetPosition(int, int);
  1040. void SetSize(int, int);
  1041. bool SetStyle(const String&, XMLFile = null);
  1042. bool SetStyle(const XMLElement&);
  1043. bool SetStyleAuto(XMLFile = null);
  1044. void UpdateLayout();
  1045. const Variant& GetVar(const ShortStringHash&);
  1046. // Properties:
  1047. /* readonly */
  1048. Array<Variant> attributeDefaults;
  1049. /* readonly */
  1050. Array<AttributeInfo> attributeInfos;
  1051. Array<Variant> attributes;
  1052. /* readonly */
  1053. ShortStringHash baseType;
  1054. BlendMode blendMode;
  1055. IntRect border;
  1056. bool bringToBack;
  1057. bool bringToFront;
  1058. /* readonly */
  1059. String category;
  1060. bool checked;
  1061. IntVector2 checkedOffset;
  1062. /* readonly */
  1063. IntVector2 childOffset;
  1064. /* readonly */
  1065. Array<UIElement> children;
  1066. IntRect clipBorder;
  1067. bool clipChildren;
  1068. /* writeonly */
  1069. Color color;
  1070. /* readonly */
  1071. bool colorGradient;
  1072. Array<Color> colors;
  1073. /* readonly */
  1074. IntRect combinedScreenRect;
  1075. XMLFile defaultStyle;
  1076. /* readonly */
  1077. float derivedOpacity;
  1078. uint dragDropMode;
  1079. bool editable;
  1080. bool elementEventSender;
  1081. bool enabled;
  1082. /* readonly */
  1083. bool fixedHeight;
  1084. /* readonly */
  1085. bool fixedSize;
  1086. /* readonly */
  1087. bool fixedWidth;
  1088. bool focus;
  1089. FocusMode focusMode;
  1090. int height;
  1091. HorizontalAlignment horizontalAlignment;
  1092. IntVector2 hoverOffset;
  1093. /* readonly */
  1094. bool hovering;
  1095. IntRect imageRect;
  1096. int indent;
  1097. int indentSpacing;
  1098. /* readonly */
  1099. int indentWidth;
  1100. bool internal;
  1101. IntRect layoutBorder;
  1102. LayoutMode layoutMode;
  1103. int layoutSpacing;
  1104. int maxHeight;
  1105. IntVector2 maxSize;
  1106. int maxWidth;
  1107. int minHeight;
  1108. IntVector2 minSize;
  1109. int minWidth;
  1110. String name;
  1111. /* readonly */
  1112. uint numAllChildren;
  1113. /* readonly */
  1114. uint numAttributes;
  1115. /* readonly */
  1116. uint numChildren;
  1117. float opacity;
  1118. UIElement parent;
  1119. IntVector2 position;
  1120. int priority;
  1121. /* readonly */
  1122. int refs;
  1123. /* readonly */
  1124. UIElement root;
  1125. /* readonly */
  1126. IntVector2 screenPosition;
  1127. bool selected;
  1128. IntVector2 size;
  1129. bool sortChildren;
  1130. String style;
  1131. bool temporary;
  1132. Texture texture;
  1133. bool tiled;
  1134. TraversalMode traversalMode;
  1135. /* readonly */
  1136. ShortStringHash type;
  1137. /* readonly */
  1138. String typeName;
  1139. bool useDerivedOpacity;
  1140. /* readonly */
  1141. VariantMap vars;
  1142. VerticalAlignment verticalAlignment;
  1143. bool visible;
  1144. /* readonly */
  1145. int weakRefs;
  1146. int width;
  1147. };
  1148. class CollisionShape
  1149. {
  1150. // Methods:
  1151. void ApplyAttributes();
  1152. void DrawDebugGeometry(DebugRenderer, bool);
  1153. Variant GetAttribute(const String&) const;
  1154. Variant GetAttributeDefault(const String&) const;
  1155. bool Load(File, bool = false);
  1156. bool LoadXML(const XMLElement&, bool = false);
  1157. void MarkNetworkUpdate() const;
  1158. void Remove();
  1159. void RemoveInstanceDefault();
  1160. void ResetToDefault();
  1161. bool Save(File) const;
  1162. bool SaveXML(XMLElement&) const;
  1163. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1164. bool SetAttribute(const String&, const Variant&);
  1165. void SetBox(const Vector3&, const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1166. void SetCapsule(float, float, const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1167. void SetCone(float, float, const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1168. void SetConvexHull(Model, uint = 0, const Vector3& = Vector3 ( 1 , 1 , 1 ), const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1169. void SetCustomConvexHull(CustomGeometry, const Vector3& = Vector3 ( 1 , 1 , 1 ), const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1170. void SetCylinder(float, float, const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1171. void SetSphere(float, const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1172. void SetStaticPlane(const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1173. void SetTerrain();
  1174. void SetTransform(const Vector3&, const Quaternion&);
  1175. void SetTriangleMesh(Model, uint = 0, const Vector3& = Vector3 ( 1 , 1 , 1 ), const Vector3& = Vector3 ( ), const Quaternion& = Quaternion ( ));
  1176. // Properties:
  1177. /* readonly */
  1178. Array<Variant> attributeDefaults;
  1179. /* readonly */
  1180. Array<AttributeInfo> attributeInfos;
  1181. Array<Variant> attributes;
  1182. /* readonly */
  1183. ShortStringHash baseType;
  1184. /* readonly */
  1185. String category;
  1186. bool enabled;
  1187. /* readonly */
  1188. bool enabledEffective;
  1189. /* readonly */
  1190. uint id;
  1191. uint lodLevel;
  1192. float margin;
  1193. Model model;
  1194. /* readonly */
  1195. Node node;
  1196. /* readonly */
  1197. uint numAttributes;
  1198. Vector3 position;
  1199. /* readonly */
  1200. int refs;
  1201. Quaternion rotation;
  1202. ShapeType shapeType;
  1203. Vector3 size;
  1204. bool temporary;
  1205. /* readonly */
  1206. ShortStringHash type;
  1207. /* readonly */
  1208. String typeName;
  1209. /* readonly */
  1210. int weakRefs;
  1211. /* readonly */
  1212. BoundingBox worldBoundingBox;
  1213. };
  1214. class Color
  1215. {
  1216. // Methods:
  1217. float Average() const;
  1218. float Chroma() const;
  1219. void Clip(bool);
  1220. void FromHSL(float, float, float, float);
  1221. void FromHSV(float, float, float, float);
  1222. float Hue() const;
  1223. void Invert(bool);
  1224. Color Lerp(const Color&, float) const;
  1225. float Lightness() const;
  1226. float Luma() const;
  1227. float MaxRGB() const;
  1228. float MinRGB() const;
  1229. float Range() const;
  1230. float SaturationHSL() const;
  1231. float SaturationHSV() const;
  1232. float SumRGB() const;
  1233. Vector3 ToHSL() const;
  1234. Vector3 ToHSV() const;
  1235. String ToString() const;
  1236. uint ToUInt() const;
  1237. float Value() const;
  1238. // Properties:
  1239. float a;
  1240. float b;
  1241. /* readonly */
  1242. Array<float> data;
  1243. float g;
  1244. float r;
  1245. /* readonly */
  1246. Vector3 rgb;
  1247. /* readonly */
  1248. Vector4 rgba;
  1249. };
  1250. class ColorFrame
  1251. {
  1252. // Properties:
  1253. Color color;
  1254. float time;
  1255. };
  1256. class Component
  1257. {
  1258. // Methods:
  1259. void ApplyAttributes();
  1260. void DrawDebugGeometry(DebugRenderer, bool);
  1261. Variant GetAttribute(const String&) const;
  1262. Variant GetAttributeDefault(const String&) const;
  1263. bool Load(File, bool = false);
  1264. bool LoadXML(const XMLElement&, bool = false);
  1265. void MarkNetworkUpdate() const;
  1266. void Remove();
  1267. void RemoveInstanceDefault();
  1268. void ResetToDefault();
  1269. bool Save(File) const;
  1270. bool SaveXML(XMLElement&) const;
  1271. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1272. bool SetAttribute(const String&, const Variant&);
  1273. // Properties:
  1274. /* readonly */
  1275. Array<Variant> attributeDefaults;
  1276. /* readonly */
  1277. Array<AttributeInfo> attributeInfos;
  1278. Array<Variant> attributes;
  1279. /* readonly */
  1280. ShortStringHash baseType;
  1281. /* readonly */
  1282. String category;
  1283. bool enabled;
  1284. /* readonly */
  1285. bool enabledEffective;
  1286. /* readonly */
  1287. uint id;
  1288. /* readonly */
  1289. Node node;
  1290. /* readonly */
  1291. uint numAttributes;
  1292. /* readonly */
  1293. int refs;
  1294. bool temporary;
  1295. /* readonly */
  1296. ShortStringHash type;
  1297. /* readonly */
  1298. String typeName;
  1299. /* readonly */
  1300. int weakRefs;
  1301. };
  1302. class Connection
  1303. {
  1304. // Methods:
  1305. void Disconnect(int = 0);
  1306. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1307. void SendMessage(int, bool, bool, const VectorBuffer&, uint = 0);
  1308. void SendRemoteEvent(Node, const String&, bool, const VariantMap& = VariantMap ( ));
  1309. void SendRemoteEvent(const String&, bool, const VariantMap& = VariantMap ( ));
  1310. String ToString() const;
  1311. // Properties:
  1312. /* readonly */
  1313. String address;
  1314. /* readonly */
  1315. ShortStringHash baseType;
  1316. /* readonly */
  1317. String category;
  1318. /* readonly */
  1319. bool client;
  1320. /* readonly */
  1321. bool connectPending;
  1322. /* readonly */
  1323. bool connected;
  1324. Controls controls;
  1325. /* readonly */
  1326. String downloadName;
  1327. /* readonly */
  1328. float downloadProgress;
  1329. VariantMap identity;
  1330. bool logStatistics;
  1331. /* readonly */
  1332. uint numDownloads;
  1333. /* readonly */
  1334. uint16 port;
  1335. Vector3 position;
  1336. /* readonly */
  1337. int refs;
  1338. Scene scene;
  1339. /* readonly */
  1340. bool sceneLoaded;
  1341. /* readonly */
  1342. ShortStringHash type;
  1343. /* readonly */
  1344. String typeName;
  1345. /* readonly */
  1346. int weakRefs;
  1347. };
  1348. class Console
  1349. {
  1350. // Methods:
  1351. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1352. void Toggle();
  1353. void UpdateElements();
  1354. // Properties:
  1355. /* readonly */
  1356. BorderImage background;
  1357. /* readonly */
  1358. ShortStringHash baseType;
  1359. /* readonly */
  1360. String category;
  1361. XMLFile defaultStyle;
  1362. /* readonly */
  1363. uint historyPosition;
  1364. /* readonly */
  1365. Array<String> historyRow;
  1366. /* readonly */
  1367. LineEdit lineEdit;
  1368. uint numHistoryRows;
  1369. uint numRows;
  1370. /* readonly */
  1371. int refs;
  1372. /* readonly */
  1373. ShortStringHash type;
  1374. /* readonly */
  1375. String typeName;
  1376. bool visible;
  1377. /* readonly */
  1378. int weakRefs;
  1379. };
  1380. class Constraint
  1381. {
  1382. // Methods:
  1383. void ApplyAttributes();
  1384. void DrawDebugGeometry(DebugRenderer, bool);
  1385. Variant GetAttribute(const String&) const;
  1386. Variant GetAttributeDefault(const String&) const;
  1387. bool Load(File, bool = false);
  1388. bool LoadXML(const XMLElement&, bool = false);
  1389. void MarkNetworkUpdate() const;
  1390. void Remove();
  1391. void RemoveInstanceDefault();
  1392. void ResetToDefault();
  1393. bool Save(File) const;
  1394. bool SaveXML(XMLElement&) const;
  1395. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1396. bool SetAttribute(const String&, const Variant&);
  1397. // Properties:
  1398. /* readonly */
  1399. Array<Variant> attributeDefaults;
  1400. /* readonly */
  1401. Array<AttributeInfo> attributeInfos;
  1402. Array<Variant> attributes;
  1403. /* writeonly */
  1404. Vector3 axis;
  1405. /* readonly */
  1406. ShortStringHash baseType;
  1407. /* readonly */
  1408. String category;
  1409. float cfm;
  1410. ConstraintType constraintType;
  1411. bool disableCollision;
  1412. bool enabled;
  1413. /* readonly */
  1414. bool enabledEffective;
  1415. float erp;
  1416. Vector2 highLimit;
  1417. /* readonly */
  1418. uint id;
  1419. Vector2 lowLimit;
  1420. /* readonly */
  1421. Node node;
  1422. /* readonly */
  1423. uint numAttributes;
  1424. /* writeonly */
  1425. Vector3 otherAxis;
  1426. RigidBody otherBody;
  1427. Vector3 otherPosition;
  1428. Quaternion otherRotation;
  1429. /* readonly */
  1430. RigidBody ownBody;
  1431. Vector3 position;
  1432. /* readonly */
  1433. int refs;
  1434. Quaternion rotation;
  1435. bool temporary;
  1436. /* readonly */
  1437. ShortStringHash type;
  1438. /* readonly */
  1439. String typeName;
  1440. /* readonly */
  1441. int weakRefs;
  1442. Vector3 worldPosition;
  1443. };
  1444. class Controls
  1445. {
  1446. // Methods:
  1447. bool IsDown(uint) const;
  1448. bool IsPressed(uint, const Controls&) const;
  1449. void Reset();
  1450. void Set(uint, bool);
  1451. // Properties:
  1452. uint buttons;
  1453. VariantMap extraData;
  1454. float pitch;
  1455. float yaw;
  1456. };
  1457. class Cursor
  1458. {
  1459. // Methods:
  1460. void AddChild(UIElement);
  1461. void ApplyAttributes();
  1462. void BringToFront();
  1463. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  1464. void DefineShape(CursorShape, Texture, const IntRect&, const IntVector2&);
  1465. void DisableLayoutUpdate();
  1466. IntVector2 ElementToScreen(const IntVector2&);
  1467. void EnableLayoutUpdate();
  1468. uint FindChild(UIElement) const;
  1469. Variant GetAttribute(const String&) const;
  1470. Variant GetAttributeDefault(const String&) const;
  1471. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  1472. UIElement GetChild(const String&, bool = false) const;
  1473. Array<UIElement> GetChildren(bool = false) const;
  1474. UIElement GetElementEventSender() const;
  1475. uint GetNumChildren(bool) const;
  1476. void InsertChild(uint, UIElement);
  1477. bool IsInside(IntVector2, bool);
  1478. bool IsInsideCombined(IntVector2, bool);
  1479. bool Load(File, bool = false);
  1480. bool LoadChildXML(XMLFile, XMLFile = null);
  1481. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  1482. bool LoadXML(File);
  1483. bool LoadXML(XMLFile, XMLFile);
  1484. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  1485. bool LoadXML(const XMLElement&, bool = false);
  1486. void Remove();
  1487. void RemoveAllChildren();
  1488. void RemoveChild(UIElement, uint = 0);
  1489. void RemoveChild(uint);
  1490. void RemoveInstanceDefault();
  1491. void ResetToDefault();
  1492. bool Save(File) const;
  1493. bool SaveXML(File);
  1494. bool SaveXML(XMLElement&) const;
  1495. IntVector2 ScreenToElement(const IntVector2&);
  1496. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1497. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  1498. bool SetAttribute(const String&, const Variant&);
  1499. void SetFixedHeight(int);
  1500. void SetFixedSize(int, int);
  1501. void SetFixedWidth(int);
  1502. void SetFullImageRect();
  1503. void SetHoverOffset(int, int);
  1504. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  1505. void SetMaxSize(int, int);
  1506. void SetMinSize(int, int);
  1507. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  1508. void SetPosition(int, int);
  1509. void SetSize(int, int);
  1510. bool SetStyle(const String&, XMLFile = null);
  1511. bool SetStyle(const XMLElement&);
  1512. bool SetStyleAuto(XMLFile = null);
  1513. void UpdateLayout();
  1514. const Variant& GetVar(const ShortStringHash&);
  1515. // Properties:
  1516. /* readonly */
  1517. Array<Variant> attributeDefaults;
  1518. /* readonly */
  1519. Array<AttributeInfo> attributeInfos;
  1520. Array<Variant> attributes;
  1521. /* readonly */
  1522. ShortStringHash baseType;
  1523. BlendMode blendMode;
  1524. IntRect border;
  1525. bool bringToBack;
  1526. bool bringToFront;
  1527. /* readonly */
  1528. String category;
  1529. /* readonly */
  1530. IntVector2 childOffset;
  1531. /* readonly */
  1532. Array<UIElement> children;
  1533. IntRect clipBorder;
  1534. bool clipChildren;
  1535. /* writeonly */
  1536. Color color;
  1537. /* readonly */
  1538. bool colorGradient;
  1539. Array<Color> colors;
  1540. /* readonly */
  1541. IntRect combinedScreenRect;
  1542. XMLFile defaultStyle;
  1543. /* readonly */
  1544. float derivedOpacity;
  1545. uint dragDropMode;
  1546. bool editable;
  1547. bool elementEventSender;
  1548. bool enabled;
  1549. /* readonly */
  1550. bool fixedHeight;
  1551. /* readonly */
  1552. bool fixedSize;
  1553. /* readonly */
  1554. bool fixedWidth;
  1555. bool focus;
  1556. FocusMode focusMode;
  1557. int height;
  1558. HorizontalAlignment horizontalAlignment;
  1559. IntVector2 hoverOffset;
  1560. /* readonly */
  1561. bool hovering;
  1562. IntRect imageRect;
  1563. int indent;
  1564. int indentSpacing;
  1565. /* readonly */
  1566. int indentWidth;
  1567. bool internal;
  1568. IntRect layoutBorder;
  1569. LayoutMode layoutMode;
  1570. int layoutSpacing;
  1571. int maxHeight;
  1572. IntVector2 maxSize;
  1573. int maxWidth;
  1574. int minHeight;
  1575. IntVector2 minSize;
  1576. int minWidth;
  1577. String name;
  1578. /* readonly */
  1579. uint numAllChildren;
  1580. /* readonly */
  1581. uint numAttributes;
  1582. /* readonly */
  1583. uint numChildren;
  1584. float opacity;
  1585. UIElement parent;
  1586. IntVector2 position;
  1587. int priority;
  1588. /* readonly */
  1589. int refs;
  1590. /* readonly */
  1591. UIElement root;
  1592. /* readonly */
  1593. IntVector2 screenPosition;
  1594. bool selected;
  1595. CursorShape shape;
  1596. IntVector2 size;
  1597. bool sortChildren;
  1598. String style;
  1599. bool temporary;
  1600. Texture texture;
  1601. bool tiled;
  1602. TraversalMode traversalMode;
  1603. /* readonly */
  1604. ShortStringHash type;
  1605. /* readonly */
  1606. String typeName;
  1607. bool useDerivedOpacity;
  1608. bool useSystemShapes;
  1609. /* readonly */
  1610. VariantMap vars;
  1611. VerticalAlignment verticalAlignment;
  1612. bool visible;
  1613. /* readonly */
  1614. int weakRefs;
  1615. int width;
  1616. };
  1617. class CustomGeometry
  1618. {
  1619. // Methods:
  1620. void ApplyAttributes();
  1621. void BeginGeometry(uint, PrimitiveType);
  1622. void Clear();
  1623. void Commit();
  1624. void DefineColor(const Color&);
  1625. void DefineNormal(const Vector3&);
  1626. void DefineTangent(const Vector4&);
  1627. void DefineTexCoord(const Vector2&);
  1628. void DefineVertex(const Vector3&);
  1629. void DrawDebugGeometry(DebugRenderer, bool);
  1630. Variant GetAttribute(const String&) const;
  1631. Variant GetAttributeDefault(const String&) const;
  1632. bool IsInView(Camera) const;
  1633. bool Load(File, bool = false);
  1634. bool LoadXML(const XMLElement&, bool = false);
  1635. void MarkNetworkUpdate() const;
  1636. void Remove();
  1637. void RemoveInstanceDefault();
  1638. void ResetToDefault();
  1639. bool Save(File) const;
  1640. bool SaveXML(XMLElement&) const;
  1641. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1642. bool SetAttribute(const String&, const Variant&);
  1643. // Properties:
  1644. /* readonly */
  1645. Array<Variant> attributeDefaults;
  1646. /* readonly */
  1647. Array<AttributeInfo> attributeInfos;
  1648. Array<Variant> attributes;
  1649. /* readonly */
  1650. ShortStringHash baseType;
  1651. /* readonly */
  1652. BoundingBox boundingBox;
  1653. bool castShadows;
  1654. /* readonly */
  1655. String category;
  1656. float drawDistance;
  1657. bool enabled;
  1658. /* readonly */
  1659. bool enabledEffective;
  1660. /* readonly */
  1661. uint id;
  1662. /* readonly */
  1663. bool inView;
  1664. uint lightMask;
  1665. float lodBias;
  1666. /* writeonly */
  1667. Material material;
  1668. Array<Material> materials;
  1669. uint maxLights;
  1670. /* readonly */
  1671. Node node;
  1672. /* readonly */
  1673. uint numAttributes;
  1674. uint numGeometries;
  1675. bool occludee;
  1676. bool occluder;
  1677. /* readonly */
  1678. int refs;
  1679. float shadowDistance;
  1680. uint shadowMask;
  1681. bool temporary;
  1682. /* readonly */
  1683. ShortStringHash type;
  1684. /* readonly */
  1685. String typeName;
  1686. uint viewMask;
  1687. /* readonly */
  1688. int weakRefs;
  1689. /* readonly */
  1690. BoundingBox worldBoundingBox;
  1691. /* readonly */
  1692. Zone zone;
  1693. uint zoneMask;
  1694. };
  1695. class DebugHud
  1696. {
  1697. // Methods:
  1698. void ClearAppStats();
  1699. void ResetAppStats(const String&);
  1700. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1701. void SetAppStats(const String&, const String&);
  1702. void SetAppStats(const String&, const Variant&);
  1703. void Toggle(uint);
  1704. void ToggleAll();
  1705. // Properties:
  1706. /* readonly */
  1707. ShortStringHash baseType;
  1708. /* readonly */
  1709. String category;
  1710. XMLFile defaultStyle;
  1711. uint mode;
  1712. /* readonly */
  1713. Text modeText;
  1714. float profilerInterval;
  1715. uint profilerMaxDepth;
  1716. /* readonly */
  1717. Text profilerText;
  1718. /* readonly */
  1719. int refs;
  1720. /* readonly */
  1721. Text statsText;
  1722. /* readonly */
  1723. ShortStringHash type;
  1724. /* readonly */
  1725. String typeName;
  1726. bool useRendererStats;
  1727. /* readonly */
  1728. int weakRefs;
  1729. };
  1730. class DebugRenderer
  1731. {
  1732. // Methods:
  1733. void AddBoundingBox(const BoundingBox&, const Color&, bool = true);
  1734. void AddFrustum(const Frustum&, const Color&, bool = true);
  1735. void AddLine(const Vector3&, const Vector3&, const Color&, bool = true);
  1736. void AddNode(Node, float = 1.0, bool = true);
  1737. void AddPolyhedron(const Polyhedron&, const Color&, bool = true);
  1738. void AddSkeleton(Skeleton, const Color&, bool = true);
  1739. void AddSphere(const Sphere&, const Color&, bool = true);
  1740. void ApplyAttributes();
  1741. void DrawDebugGeometry(DebugRenderer, bool);
  1742. Variant GetAttribute(const String&) const;
  1743. Variant GetAttributeDefault(const String&) const;
  1744. bool Load(File, bool = false);
  1745. bool LoadXML(const XMLElement&, bool = false);
  1746. void MarkNetworkUpdate() const;
  1747. void Remove();
  1748. void RemoveInstanceDefault();
  1749. void ResetToDefault();
  1750. bool Save(File) const;
  1751. bool SaveXML(XMLElement&) const;
  1752. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1753. bool SetAttribute(const String&, const Variant&);
  1754. // Properties:
  1755. /* readonly */
  1756. Array<Variant> attributeDefaults;
  1757. /* readonly */
  1758. Array<AttributeInfo> attributeInfos;
  1759. Array<Variant> attributes;
  1760. /* readonly */
  1761. ShortStringHash baseType;
  1762. /* readonly */
  1763. String category;
  1764. bool enabled;
  1765. /* readonly */
  1766. bool enabledEffective;
  1767. /* readonly */
  1768. uint id;
  1769. /* readonly */
  1770. Node node;
  1771. /* readonly */
  1772. uint numAttributes;
  1773. /* readonly */
  1774. int refs;
  1775. bool temporary;
  1776. /* readonly */
  1777. ShortStringHash type;
  1778. /* readonly */
  1779. String typeName;
  1780. /* readonly */
  1781. int weakRefs;
  1782. };
  1783. class DecalSet
  1784. {
  1785. // Methods:
  1786. bool AddDecal(Drawable, const Vector3&, const Quaternion&, float, float, float, const Vector2&, const Vector2&, float = 0.0, float = 0.1, uint = 0xffffffff);
  1787. void ApplyAttributes();
  1788. void DrawDebugGeometry(DebugRenderer, bool);
  1789. Variant GetAttribute(const String&) const;
  1790. Variant GetAttributeDefault(const String&) const;
  1791. bool IsInView(Camera) const;
  1792. bool Load(File, bool = false);
  1793. bool LoadXML(const XMLElement&, bool = false);
  1794. void MarkNetworkUpdate() const;
  1795. void Remove();
  1796. void RemoveAllDecals();
  1797. void RemoveDecals(uint);
  1798. void RemoveInstanceDefault();
  1799. void ResetToDefault();
  1800. bool Save(File) const;
  1801. bool SaveXML(XMLElement&) const;
  1802. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1803. bool SetAttribute(const String&, const Variant&);
  1804. // Properties:
  1805. /* readonly */
  1806. Array<Variant> attributeDefaults;
  1807. /* readonly */
  1808. Array<AttributeInfo> attributeInfos;
  1809. Array<Variant> attributes;
  1810. /* readonly */
  1811. ShortStringHash baseType;
  1812. /* readonly */
  1813. BoundingBox boundingBox;
  1814. bool castShadows;
  1815. /* readonly */
  1816. String category;
  1817. float drawDistance;
  1818. bool enabled;
  1819. /* readonly */
  1820. bool enabledEffective;
  1821. /* readonly */
  1822. uint id;
  1823. /* readonly */
  1824. bool inView;
  1825. uint lightMask;
  1826. float lodBias;
  1827. Material material;
  1828. uint maxIndices;
  1829. uint maxLights;
  1830. uint maxVertices;
  1831. /* readonly */
  1832. Node node;
  1833. /* readonly */
  1834. uint numAttributes;
  1835. /* readonly */
  1836. uint numDecals;
  1837. /* readonly */
  1838. uint numIndices;
  1839. /* readonly */
  1840. uint numVertices;
  1841. bool occludee;
  1842. bool occluder;
  1843. /* readonly */
  1844. int refs;
  1845. float shadowDistance;
  1846. uint shadowMask;
  1847. bool temporary;
  1848. /* readonly */
  1849. ShortStringHash type;
  1850. /* readonly */
  1851. String typeName;
  1852. uint viewMask;
  1853. /* readonly */
  1854. int weakRefs;
  1855. /* readonly */
  1856. BoundingBox worldBoundingBox;
  1857. /* readonly */
  1858. Zone zone;
  1859. uint zoneMask;
  1860. };
  1861. class Deserializer
  1862. {
  1863. // Methods:
  1864. Array<uint8> Read(uint);
  1865. bool ReadBool();
  1866. BoundingBox ReadBoundingBox();
  1867. int8 ReadByte();
  1868. Color ReadColor();
  1869. String ReadFileID();
  1870. float ReadFloat();
  1871. int ReadInt();
  1872. IntRect ReadIntRect();
  1873. IntVector2 ReadIntVector2();
  1874. String ReadLine();
  1875. uint ReadNetID();
  1876. Quaternion ReadPackedQuaternion();
  1877. Vector3 ReadPackedVector3(float);
  1878. Quaternion ReadQuaternion();
  1879. int16 ReadShort();
  1880. ShortStringHash ReadShortStringHash();
  1881. String ReadString();
  1882. StringHash ReadStringHash();
  1883. uint8 ReadUByte();
  1884. uint ReadUInt();
  1885. uint16 ReadUShort();
  1886. uint ReadVLE();
  1887. Variant ReadVariant();
  1888. VariantMap ReadVariantMap();
  1889. Vector2 ReadVector2();
  1890. Vector3 ReadVector3();
  1891. Vector4 ReadVector4();
  1892. uint Seek(uint);
  1893. // Properties:
  1894. /* readonly */
  1895. uint checksum;
  1896. /* readonly */
  1897. bool eof;
  1898. /* readonly */
  1899. String name;
  1900. /* readonly */
  1901. uint position;
  1902. /* readonly */
  1903. uint size;
  1904. };
  1905. class Dictionary
  1906. {
  1907. // Methods:
  1908. void Clear();
  1909. void Erase(const String&);
  1910. bool Exists(const String&) const;
  1911. bool Get(const String&, void*) const;
  1912. bool Get(const String&, double&) const;
  1913. bool Get(const String&, int64&) const;
  1914. void Set(const String&, void*);
  1915. void Set(const String&, double&);
  1916. void Set(const String&, int64&);
  1917. // Properties:
  1918. /* readonly */
  1919. bool empty;
  1920. /* readonly */
  1921. Array<String> keys;
  1922. /* readonly */
  1923. uint length;
  1924. };
  1925. class Drawable
  1926. {
  1927. // Methods:
  1928. void ApplyAttributes();
  1929. void DrawDebugGeometry(DebugRenderer, bool);
  1930. Variant GetAttribute(const String&) const;
  1931. Variant GetAttributeDefault(const String&) const;
  1932. bool IsInView(Camera) const;
  1933. bool Load(File, bool = false);
  1934. bool LoadXML(const XMLElement&, bool = false);
  1935. void MarkNetworkUpdate() const;
  1936. void Remove();
  1937. void RemoveInstanceDefault();
  1938. void ResetToDefault();
  1939. bool Save(File) const;
  1940. bool SaveXML(XMLElement&) const;
  1941. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  1942. bool SetAttribute(const String&, const Variant&);
  1943. // Properties:
  1944. /* readonly */
  1945. Array<Variant> attributeDefaults;
  1946. /* readonly */
  1947. Array<AttributeInfo> attributeInfos;
  1948. Array<Variant> attributes;
  1949. /* readonly */
  1950. ShortStringHash baseType;
  1951. /* readonly */
  1952. BoundingBox boundingBox;
  1953. bool castShadows;
  1954. /* readonly */
  1955. String category;
  1956. float drawDistance;
  1957. bool enabled;
  1958. /* readonly */
  1959. bool enabledEffective;
  1960. /* readonly */
  1961. uint id;
  1962. /* readonly */
  1963. bool inView;
  1964. uint lightMask;
  1965. float lodBias;
  1966. uint maxLights;
  1967. /* readonly */
  1968. Node node;
  1969. /* readonly */
  1970. uint numAttributes;
  1971. bool occludee;
  1972. bool occluder;
  1973. /* readonly */
  1974. int refs;
  1975. float shadowDistance;
  1976. uint shadowMask;
  1977. bool temporary;
  1978. /* readonly */
  1979. ShortStringHash type;
  1980. /* readonly */
  1981. String typeName;
  1982. uint viewMask;
  1983. /* readonly */
  1984. int weakRefs;
  1985. /* readonly */
  1986. BoundingBox worldBoundingBox;
  1987. uint zoneMask;
  1988. };
  1989. class Drawable2D
  1990. {
  1991. // Methods:
  1992. void ApplyAttributes();
  1993. void DrawDebugGeometry(DebugRenderer, bool);
  1994. Variant GetAttribute(const String&) const;
  1995. Variant GetAttributeDefault(const String&) const;
  1996. bool IsInView(Camera) const;
  1997. bool Load(File, bool = false);
  1998. bool LoadXML(const XMLElement&, bool = false);
  1999. void MarkNetworkUpdate() const;
  2000. void Remove();
  2001. void RemoveInstanceDefault();
  2002. void ResetToDefault();
  2003. bool Save(File) const;
  2004. bool SaveXML(XMLElement&) const;
  2005. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2006. bool SetAttribute(const String&, const Variant&);
  2007. // Properties:
  2008. /* readonly */
  2009. Array<Variant> attributeDefaults;
  2010. /* readonly */
  2011. Array<AttributeInfo> attributeInfos;
  2012. Array<Variant> attributes;
  2013. /* readonly */
  2014. ShortStringHash baseType;
  2015. BlendMode blendMode;
  2016. /* readonly */
  2017. BoundingBox boundingBox;
  2018. bool castShadows;
  2019. /* readonly */
  2020. String category;
  2021. float drawDistance;
  2022. bool enabled;
  2023. /* readonly */
  2024. bool enabledEffective;
  2025. /* readonly */
  2026. uint id;
  2027. /* readonly */
  2028. bool inView;
  2029. uint lightMask;
  2030. float lodBias;
  2031. Material material;
  2032. uint maxLights;
  2033. /* readonly */
  2034. Node node;
  2035. /* readonly */
  2036. uint numAttributes;
  2037. bool occludee;
  2038. bool occluder;
  2039. /* readonly */
  2040. int refs;
  2041. float shadowDistance;
  2042. uint shadowMask;
  2043. Sprite2D sprite;
  2044. bool temporary;
  2045. /* readonly */
  2046. ShortStringHash type;
  2047. /* readonly */
  2048. String typeName;
  2049. float unitPerPixel;
  2050. uint viewMask;
  2051. /* readonly */
  2052. int weakRefs;
  2053. /* readonly */
  2054. BoundingBox worldBoundingBox;
  2055. float zValue;
  2056. uint zoneMask;
  2057. };
  2058. class DropDownList
  2059. {
  2060. // Methods:
  2061. void AddChild(UIElement);
  2062. void AddItem(UIElement);
  2063. void ApplyAttributes();
  2064. void BringToFront();
  2065. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  2066. void DisableLayoutUpdate();
  2067. IntVector2 ElementToScreen(const IntVector2&);
  2068. void EnableLayoutUpdate();
  2069. uint FindChild(UIElement) const;
  2070. Variant GetAttribute(const String&) const;
  2071. Variant GetAttributeDefault(const String&) const;
  2072. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  2073. UIElement GetChild(const String&, bool = false) const;
  2074. Array<UIElement> GetChildren(bool = false) const;
  2075. UIElement GetElementEventSender() const;
  2076. Array<UIElement> GetItems() const;
  2077. uint GetNumChildren(bool) const;
  2078. void InsertChild(uint, UIElement);
  2079. void InsertItem(uint, UIElement);
  2080. bool IsInside(IntVector2, bool);
  2081. bool IsInsideCombined(IntVector2, bool);
  2082. bool Load(File, bool = false);
  2083. bool LoadChildXML(XMLFile, XMLFile = null);
  2084. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  2085. bool LoadXML(File);
  2086. bool LoadXML(XMLFile, XMLFile);
  2087. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  2088. bool LoadXML(const XMLElement&, bool = false);
  2089. void Remove();
  2090. void RemoveAllChildren();
  2091. void RemoveAllItems();
  2092. void RemoveChild(UIElement, uint = 0);
  2093. void RemoveChild(uint);
  2094. void RemoveInstanceDefault();
  2095. void RemoveItem(UIElement);
  2096. void RemoveItem(uint);
  2097. void ResetToDefault();
  2098. bool Save(File) const;
  2099. bool SaveXML(File);
  2100. bool SaveXML(XMLElement&) const;
  2101. IntVector2 ScreenToElement(const IntVector2&);
  2102. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2103. void SetAccelerator(int, int);
  2104. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  2105. bool SetAttribute(const String&, const Variant&);
  2106. void SetFixedHeight(int);
  2107. void SetFixedSize(int, int);
  2108. void SetFixedWidth(int);
  2109. void SetFullImageRect();
  2110. void SetHoverOffset(int, int);
  2111. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  2112. void SetMaxSize(int, int);
  2113. void SetMinSize(int, int);
  2114. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  2115. void SetPosition(int, int);
  2116. void SetPressedChildOffset(int, int);
  2117. void SetPressedOffset(int, int);
  2118. void SetRepeat(float, float);
  2119. void SetSize(int, int);
  2120. bool SetStyle(const String&, XMLFile = null);
  2121. bool SetStyle(const XMLElement&);
  2122. bool SetStyleAuto(XMLFile = null);
  2123. void UpdateLayout();
  2124. const Variant& GetVar(const ShortStringHash&);
  2125. UIElement getPopup() const;
  2126. // Properties:
  2127. /* readonly */
  2128. int acceleratorKey;
  2129. /* readonly */
  2130. int acceleratorQualifiers;
  2131. /* readonly */
  2132. Array<Variant> attributeDefaults;
  2133. /* readonly */
  2134. Array<AttributeInfo> attributeInfos;
  2135. Array<Variant> attributes;
  2136. /* readonly */
  2137. ShortStringHash baseType;
  2138. BlendMode blendMode;
  2139. IntRect border;
  2140. bool bringToBack;
  2141. bool bringToFront;
  2142. /* readonly */
  2143. String category;
  2144. /* readonly */
  2145. IntVector2 childOffset;
  2146. /* readonly */
  2147. Array<UIElement> children;
  2148. IntRect clipBorder;
  2149. bool clipChildren;
  2150. /* writeonly */
  2151. Color color;
  2152. /* readonly */
  2153. bool colorGradient;
  2154. Array<Color> colors;
  2155. /* readonly */
  2156. IntRect combinedScreenRect;
  2157. XMLFile defaultStyle;
  2158. /* readonly */
  2159. float derivedOpacity;
  2160. uint dragDropMode;
  2161. bool editable;
  2162. bool elementEventSender;
  2163. bool enabled;
  2164. /* readonly */
  2165. bool fixedHeight;
  2166. /* readonly */
  2167. bool fixedSize;
  2168. /* readonly */
  2169. bool fixedWidth;
  2170. bool focus;
  2171. FocusMode focusMode;
  2172. int height;
  2173. HorizontalAlignment horizontalAlignment;
  2174. IntVector2 hoverOffset;
  2175. /* readonly */
  2176. bool hovering;
  2177. IntRect imageRect;
  2178. int indent;
  2179. int indentSpacing;
  2180. /* readonly */
  2181. int indentWidth;
  2182. bool internal;
  2183. /* readonly */
  2184. Array<UIElement> items;
  2185. IntRect layoutBorder;
  2186. LayoutMode layoutMode;
  2187. int layoutSpacing;
  2188. /* readonly */
  2189. ListView listView;
  2190. int maxHeight;
  2191. IntVector2 maxSize;
  2192. int maxWidth;
  2193. int minHeight;
  2194. IntVector2 minSize;
  2195. int minWidth;
  2196. String name;
  2197. /* readonly */
  2198. uint numAllChildren;
  2199. /* readonly */
  2200. uint numAttributes;
  2201. /* readonly */
  2202. uint numChildren;
  2203. /* readonly */
  2204. uint numItems;
  2205. float opacity;
  2206. UIElement parent;
  2207. /* readonly */
  2208. UIElement placeholder;
  2209. String placeholderText;
  2210. IntVector2 position;
  2211. /* readonly */
  2212. bool pressed;
  2213. IntVector2 pressedChildOffset;
  2214. IntVector2 pressedOffset;
  2215. int priority;
  2216. /* readonly */
  2217. int refs;
  2218. float repeatDelay;
  2219. float repeatRate;
  2220. bool resizePopup;
  2221. /* readonly */
  2222. UIElement root;
  2223. /* readonly */
  2224. IntVector2 screenPosition;
  2225. bool selected;
  2226. /* readonly */
  2227. UIElement selectedItem;
  2228. uint selection;
  2229. bool showPopup;
  2230. IntVector2 size;
  2231. bool sortChildren;
  2232. String style;
  2233. bool temporary;
  2234. Texture texture;
  2235. bool tiled;
  2236. TraversalMode traversalMode;
  2237. /* readonly */
  2238. ShortStringHash type;
  2239. /* readonly */
  2240. String typeName;
  2241. bool useDerivedOpacity;
  2242. /* readonly */
  2243. VariantMap vars;
  2244. VerticalAlignment verticalAlignment;
  2245. bool visible;
  2246. /* readonly */
  2247. int weakRefs;
  2248. int width;
  2249. };
  2250. class Engine
  2251. {
  2252. // Methods:
  2253. Console CreateConsole();
  2254. DebugHud CreateDebugHud();
  2255. void DumpMemory();
  2256. void DumpProfiler();
  2257. void DumpResources();
  2258. void Exit();
  2259. void RunFrame();
  2260. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2261. // Properties:
  2262. bool autoExit;
  2263. /* readonly */
  2264. ShortStringHash baseType;
  2265. /* readonly */
  2266. String category;
  2267. /* readonly */
  2268. bool exiting;
  2269. /* readonly */
  2270. bool headless;
  2271. /* readonly */
  2272. bool initialized;
  2273. int maxFps;
  2274. int maxInactiveFps;
  2275. int minFps;
  2276. bool pauseMinimized;
  2277. /* readonly */
  2278. int refs;
  2279. int timeStepSmoothing;
  2280. /* readonly */
  2281. ShortStringHash type;
  2282. /* readonly */
  2283. String typeName;
  2284. /* readonly */
  2285. int weakRefs;
  2286. };
  2287. class File
  2288. {
  2289. // Methods:
  2290. void Close();
  2291. bool Open(const String&, FileMode = FILE_READ);
  2292. Array<uint8> Read(uint);
  2293. bool ReadBool();
  2294. BoundingBox ReadBoundingBox();
  2295. int8 ReadByte();
  2296. Color ReadColor();
  2297. String ReadFileID();
  2298. float ReadFloat();
  2299. int ReadInt();
  2300. IntRect ReadIntRect();
  2301. IntVector2 ReadIntVector2();
  2302. String ReadLine();
  2303. uint ReadNetID();
  2304. Quaternion ReadPackedQuaternion();
  2305. Vector3 ReadPackedVector3(float);
  2306. Quaternion ReadQuaternion();
  2307. int16 ReadShort();
  2308. ShortStringHash ReadShortStringHash();
  2309. String ReadString();
  2310. StringHash ReadStringHash();
  2311. uint8 ReadUByte();
  2312. uint ReadUInt();
  2313. uint16 ReadUShort();
  2314. uint ReadVLE();
  2315. Variant ReadVariant();
  2316. VariantMap ReadVariantMap();
  2317. Vector2 ReadVector2();
  2318. Vector3 ReadVector3();
  2319. Vector4 ReadVector4();
  2320. uint Seek(uint);
  2321. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2322. uint Write(Array<uint8>);
  2323. bool WriteBool(bool);
  2324. bool WriteBoundingBox(const BoundingBox&);
  2325. bool WriteByte(int8);
  2326. bool WriteColor(const Color&);
  2327. bool WriteFileID(const String&);
  2328. bool WriteFloat(float);
  2329. bool WriteInt(int);
  2330. bool WriteIntRect(const IntRect&);
  2331. bool WriteIntVector2(const IntVector2&);
  2332. bool WriteLine(const String&);
  2333. bool WriteNetID(uint);
  2334. bool WritePackedQuaternion(const Quaternion&);
  2335. bool WritePackedVector3(const Vector3&, float);
  2336. bool WriteQuaternion(const Quaternion&);
  2337. bool WriteShort(int16);
  2338. bool WriteShortStringHash(const ShortStringHash&);
  2339. bool WriteString(const String&);
  2340. bool WriteStringHash(const StringHash&);
  2341. bool WriteUByte(uint8);
  2342. bool WriteUInt(uint);
  2343. bool WriteUShort(uint16);
  2344. bool WriteVLE(uint);
  2345. bool WriteVariant(const Variant&);
  2346. bool WriteVariantMap(const VariantMap&);
  2347. bool WriteVector2(const Vector2&);
  2348. bool WriteVector3(const Vector3&);
  2349. bool WriteVector4(const Vector4&);
  2350. // Properties:
  2351. /* readonly */
  2352. ShortStringHash baseType;
  2353. /* readonly */
  2354. String category;
  2355. /* readonly */
  2356. uint checksum;
  2357. /* readonly */
  2358. bool eof;
  2359. /* readonly */
  2360. FileMode mode;
  2361. /* readonly */
  2362. String name;
  2363. /* readonly */
  2364. bool open;
  2365. /* readonly */
  2366. bool packaged;
  2367. /* readonly */
  2368. uint position;
  2369. /* readonly */
  2370. int refs;
  2371. /* readonly */
  2372. uint size;
  2373. /* readonly */
  2374. ShortStringHash type;
  2375. /* readonly */
  2376. String typeName;
  2377. /* readonly */
  2378. int weakRefs;
  2379. };
  2380. class FileSelector
  2381. {
  2382. // Methods:
  2383. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2384. void SetButtonTexts(const String&, const String&);
  2385. void SetFilters(Array<String>, uint);
  2386. void UpdateElements();
  2387. // Properties:
  2388. /* readonly */
  2389. ShortStringHash baseType;
  2390. /* readonly */
  2391. Button cancelButton;
  2392. /* readonly */
  2393. String category;
  2394. XMLFile defaultStyle;
  2395. bool directoryMode;
  2396. /* readonly */
  2397. ListView fileList;
  2398. String fileName;
  2399. /* readonly */
  2400. LineEdit fileNameEdit;
  2401. /* readonly */
  2402. String filter;
  2403. /* readonly */
  2404. uint filterIndex;
  2405. /* readonly */
  2406. DropDownList filterList;
  2407. /* readonly */
  2408. Button okButton;
  2409. String path;
  2410. /* readonly */
  2411. LineEdit pathEdit;
  2412. /* readonly */
  2413. int refs;
  2414. String title;
  2415. /* readonly */
  2416. Text titleText;
  2417. /* readonly */
  2418. ShortStringHash type;
  2419. /* readonly */
  2420. String typeName;
  2421. /* readonly */
  2422. int weakRefs;
  2423. /* readonly */
  2424. Window window;
  2425. };
  2426. class FileSystem
  2427. {
  2428. // Methods:
  2429. bool Copy(const String&, const String&);
  2430. bool CreateDir(const String&);
  2431. bool Delete(const String&);
  2432. bool DirExists(const String&) const;
  2433. bool FileExists(const String&) const;
  2434. uint GetLastModifiedTime(const String&) const;
  2435. bool Rename(const String&, const String&);
  2436. Array<String> ScanDir(const String&, const String&, uint, bool) const;
  2437. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2438. int SystemCommand(const String&);
  2439. bool SystemOpen(const String&, const String&);
  2440. int SystemRun(const String&, Array<String>);
  2441. // Properties:
  2442. /* readonly */
  2443. ShortStringHash baseType;
  2444. /* readonly */
  2445. String category;
  2446. String currentDir;
  2447. /* readonly */
  2448. String programDir;
  2449. /* readonly */
  2450. int refs;
  2451. /* readonly */
  2452. ShortStringHash type;
  2453. /* readonly */
  2454. String typeName;
  2455. /* readonly */
  2456. String userDocumentsDir;
  2457. /* readonly */
  2458. int weakRefs;
  2459. };
  2460. class FocusParameters
  2461. {
  2462. // Properties:
  2463. bool autoSize;
  2464. bool focus;
  2465. float minView;
  2466. bool nonUniform;
  2467. float quantize;
  2468. };
  2469. class Font
  2470. {
  2471. // Methods:
  2472. bool Load(File);
  2473. bool Save(File) const;
  2474. bool SaveXML(File, int, bool = false);
  2475. bool SaveXML(const String&, int, bool = false);
  2476. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2477. // Properties:
  2478. /* readonly */
  2479. ShortStringHash baseType;
  2480. /* readonly */
  2481. String category;
  2482. /* readonly */
  2483. uint memoryUse;
  2484. String name;
  2485. /* readonly */
  2486. int refs;
  2487. /* readonly */
  2488. ShortStringHash type;
  2489. /* readonly */
  2490. String typeName;
  2491. /* readonly */
  2492. uint useTimer;
  2493. /* readonly */
  2494. int weakRefs;
  2495. };
  2496. class Frustum
  2497. {
  2498. // Methods:
  2499. void Define(const BoundingBox&, const Matrix3x4&);
  2500. void Define(const Vector3&, const Vector3&, const Matrix3x4&);
  2501. void Define(float, float, float, float, float, const Matrix3x4&);
  2502. void DefineOrtho(float, float, float, float, float, const Matrix3x4&);
  2503. float Distance(const Vector3&) const;
  2504. Intersection IsInside(const BoundingBox&);
  2505. Intersection IsInside(const Sphere&);
  2506. Intersection IsInside(const Vector3&);
  2507. void Transform(const Matrix3&);
  2508. void Transform(const Matrix3x4&);
  2509. Frustum Transformed(const Matrix3&) const;
  2510. Frustum Transformed(const Matrix3x4&) const;
  2511. // Properties:
  2512. /* readonly */
  2513. Array<Vector3> vertices;
  2514. };
  2515. class Graphics
  2516. {
  2517. // Methods:
  2518. void BeginDumpShaders(const String&);
  2519. void Close();
  2520. void EndDumpShaders();
  2521. void Maximize();
  2522. void Minimize();
  2523. void PrecacheShaders(File);
  2524. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2525. bool SetMode(int, int);
  2526. bool SetMode(int, int, bool, bool, bool, bool, bool, int);
  2527. void SetWindowPosition(int, int);
  2528. bool TakeScreenShot(Image);
  2529. bool ToggleFullscreen();
  2530. // Properties:
  2531. /* readonly */
  2532. ShortStringHash baseType;
  2533. /* readonly */
  2534. bool borderless;
  2535. /* readonly */
  2536. String category;
  2537. /* readonly */
  2538. bool deferredSupport;
  2539. /* readonly */
  2540. IntVector2 desktopResolution;
  2541. /* readonly */
  2542. bool deviceLost;
  2543. bool flushGPU;
  2544. bool forceSM2;
  2545. /* readonly */
  2546. bool fullscreen;
  2547. /* readonly */
  2548. bool hardwareShadowSupport;
  2549. /* readonly */
  2550. int height;
  2551. /* readonly */
  2552. bool initialized;
  2553. /* readonly */
  2554. bool instancingSupport;
  2555. /* readonly */
  2556. bool lightPrepassSupport;
  2557. /* readonly */
  2558. int multiSample;
  2559. /* readonly */
  2560. Array<int> multiSampleLevels;
  2561. /* readonly */
  2562. uint numBatches;
  2563. /* readonly */
  2564. uint numPrimitives;
  2565. /* readonly */
  2566. int refs;
  2567. /* readonly */
  2568. bool resizable;
  2569. /* readonly */
  2570. Array<IntVector2> resolutions;
  2571. bool sRGB;
  2572. /* readonly */
  2573. bool sRGBSupport;
  2574. /* readonly */
  2575. bool sRGBWriteSupport;
  2576. /* readonly */
  2577. bool sm3Support;
  2578. /* readonly */
  2579. bool tripleBuffer;
  2580. /* readonly */
  2581. ShortStringHash type;
  2582. /* readonly */
  2583. String typeName;
  2584. /* readonly */
  2585. bool vsync;
  2586. /* readonly */
  2587. int weakRefs;
  2588. /* readonly */
  2589. int width;
  2590. /* writeonly */
  2591. Image windowIcon;
  2592. IntVector2 windowPosition;
  2593. String windowTitle;
  2594. };
  2595. class HttpRequest
  2596. {
  2597. // Methods:
  2598. Array<uint8> Read(uint);
  2599. bool ReadBool();
  2600. BoundingBox ReadBoundingBox();
  2601. int8 ReadByte();
  2602. Color ReadColor();
  2603. String ReadFileID();
  2604. float ReadFloat();
  2605. int ReadInt();
  2606. IntRect ReadIntRect();
  2607. IntVector2 ReadIntVector2();
  2608. String ReadLine();
  2609. uint ReadNetID();
  2610. Quaternion ReadPackedQuaternion();
  2611. Vector3 ReadPackedVector3(float);
  2612. Quaternion ReadQuaternion();
  2613. int16 ReadShort();
  2614. ShortStringHash ReadShortStringHash();
  2615. String ReadString();
  2616. StringHash ReadStringHash();
  2617. uint8 ReadUByte();
  2618. uint ReadUInt();
  2619. uint16 ReadUShort();
  2620. uint ReadVLE();
  2621. Variant ReadVariant();
  2622. VariantMap ReadVariantMap();
  2623. Vector2 ReadVector2();
  2624. Vector3 ReadVector3();
  2625. Vector4 ReadVector4();
  2626. uint Seek(uint);
  2627. // Properties:
  2628. /* readonly */
  2629. uint availableSize;
  2630. /* readonly */
  2631. uint checksum;
  2632. /* readonly */
  2633. bool eof;
  2634. /* readonly */
  2635. String error;
  2636. /* readonly */
  2637. String name;
  2638. /* readonly */
  2639. bool open;
  2640. /* readonly */
  2641. uint position;
  2642. /* readonly */
  2643. int refs;
  2644. /* readonly */
  2645. uint size;
  2646. /* readonly */
  2647. HttpRequestState state;
  2648. /* readonly */
  2649. String url;
  2650. /* readonly */
  2651. String verb;
  2652. /* readonly */
  2653. int weakRefs;
  2654. };
  2655. class Image
  2656. {
  2657. // Methods:
  2658. void Clear(const Color&);
  2659. void FlipVertical();
  2660. Color GetPixel(int, int) const;
  2661. Color GetPixel(int, int, int) const;
  2662. Color GetPixelBilinear(float, float) const;
  2663. Color GetPixelTrilinear(float, float, float) const;
  2664. bool Load(File);
  2665. bool LoadColorLUT(File);
  2666. void Resize(int, int);
  2667. bool Save(File) const;
  2668. void SaveBMP(const String&) const;
  2669. void SaveJPG(const String&, int) const;
  2670. void SavePNG(const String&) const;
  2671. void SaveTGA(const String&) const;
  2672. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2673. void SetPixel(int, int, const Color&);
  2674. void SetPixel(int, int, int, const Color&);
  2675. bool SetSize(int, int, int, uint);
  2676. bool SetSize(int, int, uint);
  2677. // Properties:
  2678. /* readonly */
  2679. ShortStringHash baseType;
  2680. /* readonly */
  2681. String category;
  2682. /* readonly */
  2683. uint components;
  2684. /* readonly */
  2685. bool compressed;
  2686. /* readonly */
  2687. int depth;
  2688. /* readonly */
  2689. int height;
  2690. /* readonly */
  2691. uint memoryUse;
  2692. String name;
  2693. /* readonly */
  2694. int refs;
  2695. /* readonly */
  2696. ShortStringHash type;
  2697. /* readonly */
  2698. String typeName;
  2699. /* readonly */
  2700. uint useTimer;
  2701. /* readonly */
  2702. int weakRefs;
  2703. /* readonly */
  2704. int width;
  2705. };
  2706. class Input
  2707. {
  2708. // Methods:
  2709. void CloseJoystick(uint);
  2710. bool DetectJoysticks();
  2711. bool OpenJoystick(uint);
  2712. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2713. // Properties:
  2714. /* readonly */
  2715. ShortStringHash baseType;
  2716. /* readonly */
  2717. String category;
  2718. /* readonly */
  2719. bool focus;
  2720. /* readonly */
  2721. Array<String> joystickNames;
  2722. /* readonly */
  2723. Array<JoystickState> joysticks;
  2724. /* readonly */
  2725. Array<bool> keyDown;
  2726. /* readonly */
  2727. Array<bool> keyPress;
  2728. /* readonly */
  2729. bool minimized;
  2730. /* readonly */
  2731. Array<bool> mouseButtonDown;
  2732. /* readonly */
  2733. Array<bool> mouseButtonPress;
  2734. /* readonly */
  2735. IntVector2 mouseMove;
  2736. /* readonly */
  2737. int mouseMoveWheel;
  2738. /* readonly */
  2739. int mouseMoveX;
  2740. /* readonly */
  2741. int mouseMoveY;
  2742. /* readonly */
  2743. IntVector2 mousePosition;
  2744. bool mouseVisible;
  2745. /* readonly */
  2746. uint numJoysticks;
  2747. /* readonly */
  2748. uint numTouches;
  2749. /* readonly */
  2750. Array<bool> qualifierDown;
  2751. /* readonly */
  2752. Array<bool> qualifierPress;
  2753. /* readonly */
  2754. int qualifiers;
  2755. /* readonly */
  2756. int refs;
  2757. /* readonly */
  2758. bool screenKeyboardSupport;
  2759. bool screenKeyboardVisible;
  2760. bool toggleFullscreen;
  2761. /* readonly */
  2762. Array<TouchState> touches;
  2763. /* readonly */
  2764. ShortStringHash type;
  2765. /* readonly */
  2766. String typeName;
  2767. /* readonly */
  2768. int weakRefs;
  2769. };
  2770. class IntRect
  2771. {
  2772. // Methods:
  2773. Intersection IsInside(const IntVector2&) const;
  2774. // Properties:
  2775. int bottom;
  2776. /* readonly */
  2777. Array<int> data;
  2778. /* readonly */
  2779. int height;
  2780. int left;
  2781. int right;
  2782. /* readonly */
  2783. IntVector2 size;
  2784. int top;
  2785. /* readonly */
  2786. int width;
  2787. };
  2788. class IntVector2
  2789. {
  2790. // Methods:
  2791. String ToString() const;
  2792. // Properties:
  2793. /* readonly */
  2794. Array<int> data;
  2795. int x;
  2796. int y;
  2797. };
  2798. class JoystickState
  2799. {
  2800. // Properties:
  2801. /* readonly */
  2802. Array<float> axisPosition;
  2803. /* readonly */
  2804. Array<bool> buttonDown;
  2805. /* readonly */
  2806. Array<bool> buttonPress;
  2807. /* readonly */
  2808. Array<int> hatPosition;
  2809. String name;
  2810. /* readonly */
  2811. uint numAxes;
  2812. /* readonly */
  2813. uint numButtons;
  2814. /* readonly */
  2815. uint numHats;
  2816. };
  2817. class Light
  2818. {
  2819. // Methods:
  2820. void ApplyAttributes();
  2821. void DrawDebugGeometry(DebugRenderer, bool);
  2822. Variant GetAttribute(const String&) const;
  2823. Variant GetAttributeDefault(const String&) const;
  2824. bool IsInView(Camera) const;
  2825. bool Load(File, bool = false);
  2826. bool LoadXML(const XMLElement&, bool = false);
  2827. void MarkNetworkUpdate() const;
  2828. void Remove();
  2829. void RemoveInstanceDefault();
  2830. void ResetToDefault();
  2831. bool Save(File) const;
  2832. bool SaveXML(XMLElement&) const;
  2833. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2834. bool SetAttribute(const String&, const Variant&);
  2835. // Properties:
  2836. float aspectRatio;
  2837. /* readonly */
  2838. Array<Variant> attributeDefaults;
  2839. /* readonly */
  2840. Array<AttributeInfo> attributeInfos;
  2841. Array<Variant> attributes;
  2842. /* readonly */
  2843. ShortStringHash baseType;
  2844. /* readonly */
  2845. BoundingBox boundingBox;
  2846. bool castShadows;
  2847. /* readonly */
  2848. String category;
  2849. Color color;
  2850. float drawDistance;
  2851. bool enabled;
  2852. /* readonly */
  2853. bool enabledEffective;
  2854. float fadeDistance;
  2855. float fov;
  2856. /* readonly */
  2857. Frustum frustum;
  2858. /* readonly */
  2859. uint id;
  2860. /* readonly */
  2861. bool inView;
  2862. uint lightMask;
  2863. LightType lightType;
  2864. float lodBias;
  2865. uint maxLights;
  2866. /* readonly */
  2867. Node node;
  2868. /* readonly */
  2869. uint numAttributes;
  2870. bool occludee;
  2871. bool occluder;
  2872. bool perVertex;
  2873. Texture rampTexture;
  2874. float range;
  2875. /* readonly */
  2876. int refs;
  2877. BiasParameters shadowBias;
  2878. CascadeParameters shadowCascade;
  2879. float shadowDistance;
  2880. float shadowFadeDistance;
  2881. FocusParameters shadowFocus;
  2882. float shadowIntensity;
  2883. uint shadowMask;
  2884. float shadowNearFarRatio;
  2885. float shadowResolution;
  2886. Texture shapeTexture;
  2887. float specularIntensity;
  2888. bool temporary;
  2889. /* readonly */
  2890. ShortStringHash type;
  2891. /* readonly */
  2892. String typeName;
  2893. uint viewMask;
  2894. /* readonly */
  2895. int weakRefs;
  2896. /* readonly */
  2897. BoundingBox worldBoundingBox;
  2898. uint zoneMask;
  2899. };
  2900. class LineEdit
  2901. {
  2902. // Methods:
  2903. void AddChild(UIElement);
  2904. void ApplyAttributes();
  2905. void BringToFront();
  2906. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  2907. void DisableLayoutUpdate();
  2908. IntVector2 ElementToScreen(const IntVector2&);
  2909. void EnableLayoutUpdate();
  2910. uint FindChild(UIElement) const;
  2911. Variant GetAttribute(const String&) const;
  2912. Variant GetAttributeDefault(const String&) const;
  2913. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  2914. UIElement GetChild(const String&, 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 LoadChildXML(XMLFile, XMLFile = null);
  2923. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  2924. bool LoadXML(File);
  2925. bool LoadXML(XMLFile, XMLFile);
  2926. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  2927. bool LoadXML(const XMLElement&, bool = false);
  2928. void Remove();
  2929. void RemoveAllChildren();
  2930. void RemoveChild(UIElement, uint = 0);
  2931. void RemoveChild(uint);
  2932. void RemoveInstanceDefault();
  2933. void ResetToDefault();
  2934. bool Save(File) const;
  2935. bool SaveXML(File);
  2936. bool SaveXML(XMLElement&) const;
  2937. IntVector2 ScreenToElement(const IntVector2&);
  2938. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  2939. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  2940. bool SetAttribute(const String&, const Variant&);
  2941. void SetFixedHeight(int);
  2942. void SetFixedSize(int, int);
  2943. void SetFixedWidth(int);
  2944. void SetFullImageRect();
  2945. void SetHoverOffset(int, int);
  2946. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  2947. void SetMaxSize(int, int);
  2948. void SetMinSize(int, int);
  2949. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  2950. void SetPosition(int, int);
  2951. void SetSize(int, int);
  2952. bool SetStyle(const String&, XMLFile = null);
  2953. bool SetStyle(const XMLElement&);
  2954. bool SetStyleAuto(XMLFile = null);
  2955. void UpdateLayout();
  2956. const Variant& GetVar(const ShortStringHash&);
  2957. // Properties:
  2958. /* readonly */
  2959. Array<Variant> attributeDefaults;
  2960. /* readonly */
  2961. Array<AttributeInfo> attributeInfos;
  2962. Array<Variant> attributes;
  2963. /* readonly */
  2964. ShortStringHash baseType;
  2965. BlendMode blendMode;
  2966. IntRect border;
  2967. bool bringToBack;
  2968. bool bringToFront;
  2969. /* readonly */
  2970. String category;
  2971. /* readonly */
  2972. IntVector2 childOffset;
  2973. /* readonly */
  2974. Array<UIElement> children;
  2975. IntRect clipBorder;
  2976. bool clipChildren;
  2977. /* writeonly */
  2978. Color color;
  2979. /* readonly */
  2980. bool colorGradient;
  2981. Array<Color> colors;
  2982. /* readonly */
  2983. IntRect combinedScreenRect;
  2984. /* readonly */
  2985. BorderImage cursor;
  2986. float cursorBlinkRate;
  2987. bool cursorMovable;
  2988. uint cursorPosition;
  2989. XMLFile defaultStyle;
  2990. /* readonly */
  2991. float derivedOpacity;
  2992. uint dragDropMode;
  2993. uint echoCharacter;
  2994. bool editable;
  2995. bool elementEventSender;
  2996. bool enabled;
  2997. /* readonly */
  2998. bool fixedHeight;
  2999. /* readonly */
  3000. bool fixedSize;
  3001. /* readonly */
  3002. bool fixedWidth;
  3003. bool focus;
  3004. FocusMode focusMode;
  3005. int height;
  3006. HorizontalAlignment horizontalAlignment;
  3007. IntVector2 hoverOffset;
  3008. /* readonly */
  3009. bool hovering;
  3010. IntRect imageRect;
  3011. int indent;
  3012. int indentSpacing;
  3013. /* readonly */
  3014. int indentWidth;
  3015. bool internal;
  3016. IntRect layoutBorder;
  3017. LayoutMode layoutMode;
  3018. int layoutSpacing;
  3019. int maxHeight;
  3020. uint maxLength;
  3021. IntVector2 maxSize;
  3022. int maxWidth;
  3023. int minHeight;
  3024. IntVector2 minSize;
  3025. int minWidth;
  3026. String name;
  3027. /* readonly */
  3028. uint numAllChildren;
  3029. /* readonly */
  3030. uint numAttributes;
  3031. /* readonly */
  3032. uint numChildren;
  3033. float opacity;
  3034. UIElement parent;
  3035. IntVector2 position;
  3036. int priority;
  3037. /* readonly */
  3038. int refs;
  3039. /* readonly */
  3040. UIElement root;
  3041. /* readonly */
  3042. IntVector2 screenPosition;
  3043. bool selected;
  3044. IntVector2 size;
  3045. bool sortChildren;
  3046. String style;
  3047. bool temporary;
  3048. String text;
  3049. bool textCopyable;
  3050. /* readonly */
  3051. Text textElement;
  3052. bool textSelectable;
  3053. Texture texture;
  3054. bool tiled;
  3055. TraversalMode traversalMode;
  3056. /* readonly */
  3057. ShortStringHash type;
  3058. /* readonly */
  3059. String typeName;
  3060. bool useDerivedOpacity;
  3061. /* readonly */
  3062. VariantMap vars;
  3063. VerticalAlignment verticalAlignment;
  3064. bool visible;
  3065. /* readonly */
  3066. int weakRefs;
  3067. int width;
  3068. };
  3069. class ListView
  3070. {
  3071. // Methods:
  3072. void AddChild(UIElement);
  3073. void AddItem(UIElement);
  3074. void AddSelection(uint);
  3075. void ApplyAttributes();
  3076. void BringToFront();
  3077. void ChangeSelection(int, bool);
  3078. void ClearSelection();
  3079. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  3080. void DisableLayoutUpdate();
  3081. IntVector2 ElementToScreen(const IntVector2&);
  3082. void EnableLayoutUpdate();
  3083. void Expand(uint, bool, bool = false);
  3084. uint FindChild(UIElement) const;
  3085. uint FindItem(UIElement);
  3086. Variant GetAttribute(const String&) const;
  3087. Variant GetAttributeDefault(const String&) const;
  3088. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  3089. UIElement GetChild(const String&, bool = false) const;
  3090. Array<UIElement> GetChildren(bool = false) const;
  3091. UIElement GetElementEventSender() const;
  3092. Array<UIElement> GetItems() const;
  3093. uint GetNumChildren(bool) const;
  3094. void InsertChild(uint, UIElement);
  3095. void InsertItem(uint, UIElement, UIElement = null);
  3096. bool IsExpanded(uint) const;
  3097. bool IsInside(IntVector2, bool);
  3098. bool IsInsideCombined(IntVector2, bool);
  3099. bool IsSelected(uint) const;
  3100. bool Load(File, bool = false);
  3101. bool LoadChildXML(XMLFile, XMLFile = null);
  3102. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  3103. bool LoadXML(File);
  3104. bool LoadXML(XMLFile, XMLFile);
  3105. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  3106. bool LoadXML(const XMLElement&, bool = false);
  3107. void Remove();
  3108. void RemoveAllChildren();
  3109. void RemoveAllItems();
  3110. void RemoveChild(UIElement, uint = 0);
  3111. void RemoveChild(uint);
  3112. void RemoveInstanceDefault();
  3113. void RemoveItem(UIElement, uint = 0);
  3114. void RemoveItem(uint);
  3115. void RemoveSelection(uint);
  3116. void ResetToDefault();
  3117. bool Save(File) const;
  3118. bool SaveXML(File);
  3119. bool SaveXML(XMLElement&) const;
  3120. IntVector2 ScreenToElement(const IntVector2&);
  3121. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3122. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  3123. bool SetAttribute(const String&, const Variant&);
  3124. void SetFixedHeight(int);
  3125. void SetFixedSize(int, int);
  3126. void SetFixedWidth(int);
  3127. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  3128. void SetMaxSize(int, int);
  3129. void SetMinSize(int, int);
  3130. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  3131. void SetPosition(int, int);
  3132. void SetScrollBarsVisible(bool, bool);
  3133. void SetSelections(Array<uint>);
  3134. void SetSize(int, int);
  3135. bool SetStyle(const String&, XMLFile = null);
  3136. bool SetStyle(const XMLElement&);
  3137. bool SetStyleAuto(XMLFile = null);
  3138. void SetViewPosition(int, int);
  3139. void ToggleExpand(uint, bool = false);
  3140. void ToggleSelection(uint);
  3141. void UpdateLayout();
  3142. const Variant& GetVar(const ShortStringHash&);
  3143. // Properties:
  3144. /* readonly */
  3145. Array<Variant> attributeDefaults;
  3146. /* readonly */
  3147. Array<AttributeInfo> attributeInfos;
  3148. Array<Variant> attributes;
  3149. int baseIndent;
  3150. /* readonly */
  3151. ShortStringHash baseType;
  3152. bool bringToBack;
  3153. bool bringToFront;
  3154. /* readonly */
  3155. String category;
  3156. /* readonly */
  3157. IntVector2 childOffset;
  3158. /* readonly */
  3159. Array<UIElement> children;
  3160. bool clearSelectionOnDefocus;
  3161. IntRect clipBorder;
  3162. bool clipChildren;
  3163. /* writeonly */
  3164. Color color;
  3165. /* readonly */
  3166. bool colorGradient;
  3167. Array<Color> colors;
  3168. /* readonly */
  3169. IntRect combinedScreenRect;
  3170. /* readonly */
  3171. UIElement contentElement;
  3172. XMLFile defaultStyle;
  3173. /* readonly */
  3174. float derivedOpacity;
  3175. uint dragDropMode;
  3176. bool editable;
  3177. bool elementEventSender;
  3178. bool enabled;
  3179. /* readonly */
  3180. bool fixedHeight;
  3181. /* readonly */
  3182. bool fixedSize;
  3183. /* readonly */
  3184. bool fixedWidth;
  3185. bool focus;
  3186. FocusMode focusMode;
  3187. int height;
  3188. bool hierarchyMode;
  3189. HighlightMode highlightMode;
  3190. HorizontalAlignment horizontalAlignment;
  3191. /* readonly */
  3192. ScrollBar horizontalScrollBar;
  3193. /* readonly */
  3194. bool hovering;
  3195. int indent;
  3196. int indentSpacing;
  3197. /* readonly */
  3198. int indentWidth;
  3199. bool internal;
  3200. /* readonly */
  3201. Array<UIElement> items;
  3202. IntRect layoutBorder;
  3203. LayoutMode layoutMode;
  3204. int layoutSpacing;
  3205. int maxHeight;
  3206. IntVector2 maxSize;
  3207. int maxWidth;
  3208. int minHeight;
  3209. IntVector2 minSize;
  3210. int minWidth;
  3211. bool multiselect;
  3212. String name;
  3213. /* readonly */
  3214. uint numAllChildren;
  3215. /* readonly */
  3216. uint numAttributes;
  3217. /* readonly */
  3218. uint numChildren;
  3219. /* readonly */
  3220. uint numItems;
  3221. float opacity;
  3222. float pageStep;
  3223. UIElement parent;
  3224. IntVector2 position;
  3225. int priority;
  3226. /* readonly */
  3227. int refs;
  3228. /* readonly */
  3229. UIElement root;
  3230. /* readonly */
  3231. IntVector2 screenPosition;
  3232. bool scrollBarsAutoVisible;
  3233. /* readonly */
  3234. BorderImage scrollPanel;
  3235. float scrollStep;
  3236. bool selected;
  3237. /* readonly */
  3238. UIElement selectedItem;
  3239. /* readonly */
  3240. Array<UIElement> selectedItems;
  3241. uint selection;
  3242. /* readonly */
  3243. Array<uint> selections;
  3244. IntVector2 size;
  3245. bool sortChildren;
  3246. String style;
  3247. bool temporary;
  3248. TraversalMode traversalMode;
  3249. /* readonly */
  3250. ShortStringHash type;
  3251. /* readonly */
  3252. String typeName;
  3253. bool useDerivedOpacity;
  3254. /* readonly */
  3255. VariantMap vars;
  3256. VerticalAlignment verticalAlignment;
  3257. /* readonly */
  3258. ScrollBar verticalScrollBar;
  3259. IntVector2 viewPosition;
  3260. bool visible;
  3261. /* readonly */
  3262. int weakRefs;
  3263. int width;
  3264. };
  3265. class Log
  3266. {
  3267. // Methods:
  3268. void Close();
  3269. void Debug(const String&);
  3270. void Error(const String&);
  3271. void Info(const String&);
  3272. void Open(const String&);
  3273. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3274. void Warning(const String&);
  3275. void Write(const String&, bool = false);
  3276. // Properties:
  3277. /* readonly */
  3278. ShortStringHash baseType;
  3279. /* readonly */
  3280. String category;
  3281. /* readonly */
  3282. String lastMessage;
  3283. int level;
  3284. bool quiet;
  3285. /* readonly */
  3286. int refs;
  3287. bool timeStamp;
  3288. /* readonly */
  3289. ShortStringHash type;
  3290. /* readonly */
  3291. String typeName;
  3292. /* readonly */
  3293. int weakRefs;
  3294. };
  3295. class Material
  3296. {
  3297. // Methods:
  3298. Material Clone(const String& = String ( )) const;
  3299. bool Load(File);
  3300. bool Load(const XMLElement&);
  3301. void RemoveShaderParameter(const String&);
  3302. bool Save(File) const;
  3303. bool Save(XMLElement&) const;
  3304. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3305. void SetTechnique(uint, Technique, uint = 0, float = 0.0);
  3306. void SetUVTransform(const Vector2&, float, const Vector2&);
  3307. void SetUVTransform(const Vector2&, float, float);
  3308. void SortTechniques();
  3309. // Properties:
  3310. /* readonly */
  3311. ShortStringHash baseType;
  3312. /* readonly */
  3313. String category;
  3314. CullMode cullMode;
  3315. BiasParameters depthBias;
  3316. /* readonly */
  3317. uint memoryUse;
  3318. String name;
  3319. uint numTechniques;
  3320. /* readonly */
  3321. bool occlusion;
  3322. /* readonly */
  3323. int refs;
  3324. /* readonly */
  3325. Array<String> shaderParameterNames;
  3326. Array<Variant> shaderParameters;
  3327. CullMode shadowCullMode;
  3328. /* readonly */
  3329. Array<TechniqueEntry> techniqueEntries;
  3330. /* readonly */
  3331. Array<Technique> techniques;
  3332. Array<Texture> textures;
  3333. /* readonly */
  3334. ShortStringHash type;
  3335. /* readonly */
  3336. String typeName;
  3337. /* readonly */
  3338. uint useTimer;
  3339. /* readonly */
  3340. int weakRefs;
  3341. };
  3342. class Matrix3
  3343. {
  3344. // Methods:
  3345. bool Equals(const Matrix3&) const;
  3346. Matrix3 Inverse() const;
  3347. Vector3 Scale() const;
  3348. Matrix3 Scaled(const Vector3&) const;
  3349. void SetScale(const Vector3&);
  3350. void SetScale(float);
  3351. Matrix3 Transpose() const;
  3352. // Properties:
  3353. float m00;
  3354. float m01;
  3355. float m02;
  3356. float m10;
  3357. float m11;
  3358. float m12;
  3359. float m20;
  3360. float m21;
  3361. float m22;
  3362. };
  3363. class Matrix3x4
  3364. {
  3365. // Methods:
  3366. void Decompose(Vector3&, Quaternion&, Vector3&) const;
  3367. bool Equals(const Matrix3x4&) const;
  3368. Matrix3x4 Inverse() const;
  3369. Quaternion Rotation() const;
  3370. Matrix3 RotationMatrix() const;
  3371. Vector3 Scale() const;
  3372. void SetRotation(const Matrix3&);
  3373. void SetScale(const Vector3&);
  3374. void SetScale(float);
  3375. void SetTranslation(const Vector3&);
  3376. Matrix3 ToMatrix3() const;
  3377. Matrix4 ToMatrix4() const;
  3378. Vector3 Translation() const;
  3379. // Properties:
  3380. float m00;
  3381. float m01;
  3382. float m02;
  3383. float m03;
  3384. float m10;
  3385. float m11;
  3386. float m12;
  3387. float m13;
  3388. float m20;
  3389. float m21;
  3390. float m22;
  3391. float m23;
  3392. };
  3393. class Matrix4
  3394. {
  3395. // Methods:
  3396. void Decompose(Vector3&, Quaternion&, Vector3&) const;
  3397. bool Equals(const Matrix4&) const;
  3398. Matrix4 Inverse() const;
  3399. Quaternion Rotation() const;
  3400. Matrix3 RotationMatrix() const;
  3401. Vector3 Scale() const;
  3402. void SetRotation(const Matrix3&);
  3403. void SetScale(const Vector3&);
  3404. void SetScale(float);
  3405. void SetTranslation(const Vector3&);
  3406. Matrix3 ToMatrix3() const;
  3407. Vector3 Translation() const;
  3408. Matrix4 Transpose() const;
  3409. // Properties:
  3410. float m00;
  3411. float m01;
  3412. float m02;
  3413. float m03;
  3414. float m10;
  3415. float m11;
  3416. float m12;
  3417. float m13;
  3418. float m20;
  3419. float m21;
  3420. float m22;
  3421. float m23;
  3422. float m30;
  3423. float m31;
  3424. float m32;
  3425. float m33;
  3426. };
  3427. class Menu
  3428. {
  3429. // Methods:
  3430. void AddChild(UIElement);
  3431. void ApplyAttributes();
  3432. void BringToFront();
  3433. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  3434. void DisableLayoutUpdate();
  3435. IntVector2 ElementToScreen(const IntVector2&);
  3436. void EnableLayoutUpdate();
  3437. uint FindChild(UIElement) const;
  3438. Variant GetAttribute(const String&) const;
  3439. Variant GetAttributeDefault(const String&) const;
  3440. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  3441. UIElement GetChild(const String&, bool = false) const;
  3442. Array<UIElement> GetChildren(bool = false) const;
  3443. UIElement GetElementEventSender() const;
  3444. uint GetNumChildren(bool) const;
  3445. void InsertChild(uint, UIElement);
  3446. bool IsInside(IntVector2, bool);
  3447. bool IsInsideCombined(IntVector2, bool);
  3448. bool Load(File, bool = false);
  3449. bool LoadChildXML(XMLFile, XMLFile = null);
  3450. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  3451. bool LoadXML(File);
  3452. bool LoadXML(XMLFile, XMLFile);
  3453. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  3454. bool LoadXML(const XMLElement&, bool = false);
  3455. void Remove();
  3456. void RemoveAllChildren();
  3457. void RemoveChild(UIElement, uint = 0);
  3458. void RemoveChild(uint);
  3459. void RemoveInstanceDefault();
  3460. void ResetToDefault();
  3461. bool Save(File) const;
  3462. bool SaveXML(File);
  3463. bool SaveXML(XMLElement&) const;
  3464. IntVector2 ScreenToElement(const IntVector2&);
  3465. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3466. void SetAccelerator(int, int);
  3467. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  3468. bool SetAttribute(const String&, const Variant&);
  3469. void SetFixedHeight(int);
  3470. void SetFixedSize(int, int);
  3471. void SetFixedWidth(int);
  3472. void SetFullImageRect();
  3473. void SetHoverOffset(int, int);
  3474. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  3475. void SetMaxSize(int, int);
  3476. void SetMinSize(int, int);
  3477. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  3478. void SetPopupOffset(int, int);
  3479. void SetPosition(int, int);
  3480. void SetPressedChildOffset(int, int);
  3481. void SetPressedOffset(int, int);
  3482. void SetRepeat(float, float);
  3483. void SetSize(int, int);
  3484. bool SetStyle(const String&, XMLFile = null);
  3485. bool SetStyle(const XMLElement&);
  3486. bool SetStyleAuto(XMLFile = null);
  3487. void UpdateLayout();
  3488. const Variant& GetVar(const ShortStringHash&);
  3489. // Properties:
  3490. /* readonly */
  3491. int acceleratorKey;
  3492. /* readonly */
  3493. int acceleratorQualifiers;
  3494. /* readonly */
  3495. Array<Variant> attributeDefaults;
  3496. /* readonly */
  3497. Array<AttributeInfo> attributeInfos;
  3498. Array<Variant> attributes;
  3499. /* readonly */
  3500. ShortStringHash baseType;
  3501. BlendMode blendMode;
  3502. IntRect border;
  3503. bool bringToBack;
  3504. bool bringToFront;
  3505. /* readonly */
  3506. String category;
  3507. /* readonly */
  3508. IntVector2 childOffset;
  3509. /* readonly */
  3510. Array<UIElement> children;
  3511. IntRect clipBorder;
  3512. bool clipChildren;
  3513. /* writeonly */
  3514. Color color;
  3515. /* readonly */
  3516. bool colorGradient;
  3517. Array<Color> colors;
  3518. /* readonly */
  3519. IntRect combinedScreenRect;
  3520. XMLFile defaultStyle;
  3521. /* readonly */
  3522. float derivedOpacity;
  3523. uint dragDropMode;
  3524. bool editable;
  3525. bool elementEventSender;
  3526. bool enabled;
  3527. /* readonly */
  3528. bool fixedHeight;
  3529. /* readonly */
  3530. bool fixedSize;
  3531. /* readonly */
  3532. bool fixedWidth;
  3533. bool focus;
  3534. FocusMode focusMode;
  3535. int height;
  3536. HorizontalAlignment horizontalAlignment;
  3537. IntVector2 hoverOffset;
  3538. /* readonly */
  3539. bool hovering;
  3540. IntRect imageRect;
  3541. int indent;
  3542. int indentSpacing;
  3543. /* readonly */
  3544. int indentWidth;
  3545. bool internal;
  3546. IntRect layoutBorder;
  3547. LayoutMode layoutMode;
  3548. int layoutSpacing;
  3549. int maxHeight;
  3550. IntVector2 maxSize;
  3551. int maxWidth;
  3552. int minHeight;
  3553. IntVector2 minSize;
  3554. int minWidth;
  3555. String name;
  3556. /* readonly */
  3557. uint numAllChildren;
  3558. /* readonly */
  3559. uint numAttributes;
  3560. /* readonly */
  3561. uint numChildren;
  3562. float opacity;
  3563. UIElement parent;
  3564. UIElement popup;
  3565. IntVector2 popupOffset;
  3566. IntVector2 position;
  3567. /* readonly */
  3568. bool pressed;
  3569. IntVector2 pressedChildOffset;
  3570. IntVector2 pressedOffset;
  3571. int priority;
  3572. /* readonly */
  3573. int refs;
  3574. float repeatDelay;
  3575. float repeatRate;
  3576. /* readonly */
  3577. UIElement root;
  3578. /* readonly */
  3579. IntVector2 screenPosition;
  3580. bool selected;
  3581. bool showPopup;
  3582. IntVector2 size;
  3583. bool sortChildren;
  3584. String style;
  3585. bool temporary;
  3586. Texture texture;
  3587. bool tiled;
  3588. TraversalMode traversalMode;
  3589. /* readonly */
  3590. ShortStringHash type;
  3591. /* readonly */
  3592. String typeName;
  3593. bool useDerivedOpacity;
  3594. /* readonly */
  3595. VariantMap vars;
  3596. VerticalAlignment verticalAlignment;
  3597. bool visible;
  3598. /* readonly */
  3599. int weakRefs;
  3600. int width;
  3601. };
  3602. class MessageBox
  3603. {
  3604. // Methods:
  3605. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3606. // Properties:
  3607. /* readonly */
  3608. ShortStringHash baseType;
  3609. /* readonly */
  3610. String category;
  3611. String message;
  3612. /* readonly */
  3613. int refs;
  3614. String title;
  3615. /* readonly */
  3616. ShortStringHash type;
  3617. /* readonly */
  3618. String typeName;
  3619. /* readonly */
  3620. int weakRefs;
  3621. /* readonly */
  3622. UIElement window;
  3623. };
  3624. class Model
  3625. {
  3626. // Methods:
  3627. bool Load(File);
  3628. bool Save(File) const;
  3629. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3630. // Properties:
  3631. /* readonly */
  3632. ShortStringHash baseType;
  3633. /* readonly */
  3634. BoundingBox boundingBox;
  3635. /* readonly */
  3636. String category;
  3637. /* readonly */
  3638. uint memoryUse;
  3639. String name;
  3640. /* readonly */
  3641. uint numGeometries;
  3642. /* readonly */
  3643. Array<uint> numGeometryLodLevels;
  3644. /* readonly */
  3645. uint numMorphs;
  3646. /* readonly */
  3647. int refs;
  3648. /* readonly */
  3649. Skeleton skeleton;
  3650. /* readonly */
  3651. ShortStringHash type;
  3652. /* readonly */
  3653. String typeName;
  3654. /* readonly */
  3655. uint useTimer;
  3656. /* readonly */
  3657. int weakRefs;
  3658. };
  3659. class Navigable
  3660. {
  3661. // Methods:
  3662. void ApplyAttributes();
  3663. void DrawDebugGeometry(DebugRenderer, bool);
  3664. Variant GetAttribute(const String&) const;
  3665. Variant GetAttributeDefault(const String&) const;
  3666. bool Load(File, bool = false);
  3667. bool LoadXML(const XMLElement&, bool = false);
  3668. void MarkNetworkUpdate() const;
  3669. void Remove();
  3670. void RemoveInstanceDefault();
  3671. void ResetToDefault();
  3672. bool Save(File) const;
  3673. bool SaveXML(XMLElement&) const;
  3674. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3675. bool SetAttribute(const String&, const Variant&);
  3676. // Properties:
  3677. /* readonly */
  3678. Array<Variant> attributeDefaults;
  3679. /* readonly */
  3680. Array<AttributeInfo> attributeInfos;
  3681. Array<Variant> attributes;
  3682. /* readonly */
  3683. ShortStringHash baseType;
  3684. /* readonly */
  3685. String category;
  3686. bool enabled;
  3687. /* readonly */
  3688. bool enabledEffective;
  3689. /* readonly */
  3690. uint id;
  3691. /* readonly */
  3692. Node node;
  3693. /* readonly */
  3694. uint numAttributes;
  3695. bool recursive;
  3696. /* readonly */
  3697. int refs;
  3698. bool temporary;
  3699. /* readonly */
  3700. ShortStringHash type;
  3701. /* readonly */
  3702. String typeName;
  3703. /* readonly */
  3704. int weakRefs;
  3705. };
  3706. class NavigationMesh
  3707. {
  3708. // Methods:
  3709. void ApplyAttributes();
  3710. bool Build();
  3711. bool Build(const BoundingBox&);
  3712. void DrawDebugGeometry(DebugRenderer, bool);
  3713. void DrawDebugGeometry(bool);
  3714. Vector3 FindNearestPoint(const Vector3&, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ));
  3715. Array<Vector3> FindPath(const Vector3&, const Vector3&, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ));
  3716. Variant GetAttribute(const String&) const;
  3717. Variant GetAttributeDefault(const String&) const;
  3718. float GetDistanceToWall(const Vector3&, float, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ));
  3719. Vector3 GetRandomPoint();
  3720. Vector3 GetRandomPointInCircle(const Vector3&, float, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ));
  3721. bool Load(File, bool = false);
  3722. bool LoadXML(const XMLElement&, bool = false);
  3723. void MarkNetworkUpdate() const;
  3724. Vector3 MoveAlongSurface(const Vector3&, const Vector3&, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ), uint = 3);
  3725. Vector3 Raycast(const Vector3&, const Vector3&, const Vector3& = Vector3 ( 1.0 , 1.0 , 1.0 ));
  3726. void Remove();
  3727. void RemoveInstanceDefault();
  3728. void ResetToDefault();
  3729. bool Save(File) const;
  3730. bool SaveXML(XMLElement&) const;
  3731. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3732. bool SetAttribute(const String&, const Variant&);
  3733. // Properties:
  3734. float agentHeight;
  3735. float agentMaxClimb;
  3736. float agentMaxSlope;
  3737. float agentRadius;
  3738. /* readonly */
  3739. Array<Variant> attributeDefaults;
  3740. /* readonly */
  3741. Array<AttributeInfo> attributeInfos;
  3742. Array<Variant> attributes;
  3743. /* readonly */
  3744. ShortStringHash baseType;
  3745. /* readonly */
  3746. BoundingBox boundingBox;
  3747. /* readonly */
  3748. String category;
  3749. float cellHeight;
  3750. float cellSize;
  3751. float detailSampleDistance;
  3752. float detailSampleMaxError;
  3753. float edgeMaxError;
  3754. float edgeMaxLength;
  3755. bool enabled;
  3756. /* readonly */
  3757. bool enabledEffective;
  3758. /* readonly */
  3759. uint id;
  3760. /* readonly */
  3761. bool initialized;
  3762. /* readonly */
  3763. Node node;
  3764. /* readonly */
  3765. uint numAttributes;
  3766. /* readonly */
  3767. IntVector2 numTiles;
  3768. Vector3 padding;
  3769. /* readonly */
  3770. int refs;
  3771. float regionMergeSize;
  3772. float regionMinSize;
  3773. bool temporary;
  3774. int tileSize;
  3775. /* readonly */
  3776. ShortStringHash type;
  3777. /* readonly */
  3778. String typeName;
  3779. /* readonly */
  3780. int weakRefs;
  3781. /* readonly */
  3782. BoundingBox worldBoundingBox;
  3783. };
  3784. class Network
  3785. {
  3786. // Methods:
  3787. void BroadcastMessage(int, bool, bool, const VectorBuffer&, uint = 0);
  3788. void BroadcastRemoteEvent(Node, const String&, bool, const VariantMap& = VariantMap ( ));
  3789. void BroadcastRemoteEvent(Scene, const String&, bool, const VariantMap& = VariantMap ( ));
  3790. void BroadcastRemoteEvent(const String&, bool, const VariantMap& = VariantMap ( ));
  3791. bool CheckRemoteEvent(const String&) const;
  3792. bool Connect(const String&, uint16, Scene, const VariantMap& = VariantMap ( ));
  3793. void Disconnect(int = 0);
  3794. HttpRequest MakeHttpRequest(const String&, const String& = String ( ), Array<String> = null, const String& = String ( ));
  3795. void RegisterRemoteEvent(const String&) const;
  3796. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3797. bool StartServer(uint16);
  3798. void StopServer();
  3799. void UnregisterAllRemoteEvents();
  3800. void UnregisterRemoteEvent(const String&) const;
  3801. // Properties:
  3802. /* readonly */
  3803. ShortStringHash baseType;
  3804. /* readonly */
  3805. String category;
  3806. /* readonly */
  3807. Array<Connection> clientConnections;
  3808. String packageCacheDir;
  3809. /* readonly */
  3810. int refs;
  3811. /* readonly */
  3812. Connection serverConnection;
  3813. /* readonly */
  3814. bool serverRunning;
  3815. /* readonly */
  3816. ShortStringHash type;
  3817. /* readonly */
  3818. String typeName;
  3819. int updateFps;
  3820. /* readonly */
  3821. int weakRefs;
  3822. };
  3823. class NetworkPriority
  3824. {
  3825. // Methods:
  3826. void ApplyAttributes();
  3827. void DrawDebugGeometry(DebugRenderer, bool);
  3828. Variant GetAttribute(const String&) const;
  3829. Variant GetAttributeDefault(const String&) const;
  3830. bool Load(File, bool = false);
  3831. bool LoadXML(const XMLElement&, bool = false);
  3832. void MarkNetworkUpdate() const;
  3833. void Remove();
  3834. void RemoveInstanceDefault();
  3835. void ResetToDefault();
  3836. bool Save(File) const;
  3837. bool SaveXML(XMLElement&) const;
  3838. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3839. bool SetAttribute(const String&, const Variant&);
  3840. // Properties:
  3841. bool alwaysUpdateOwner;
  3842. /* readonly */
  3843. Array<Variant> attributeDefaults;
  3844. /* readonly */
  3845. Array<AttributeInfo> attributeInfos;
  3846. Array<Variant> attributes;
  3847. float basePriority;
  3848. /* readonly */
  3849. ShortStringHash baseType;
  3850. /* readonly */
  3851. String category;
  3852. float distanceFactor;
  3853. bool enabled;
  3854. /* readonly */
  3855. bool enabledEffective;
  3856. /* readonly */
  3857. uint id;
  3858. float minPriority;
  3859. /* readonly */
  3860. Node node;
  3861. /* readonly */
  3862. uint numAttributes;
  3863. /* readonly */
  3864. int refs;
  3865. bool temporary;
  3866. /* readonly */
  3867. ShortStringHash type;
  3868. /* readonly */
  3869. String typeName;
  3870. /* readonly */
  3871. int weakRefs;
  3872. };
  3873. class Node
  3874. {
  3875. // Methods:
  3876. void AddChild(Node);
  3877. void ApplyAttributes();
  3878. Node Clone(CreateMode = REPLICATED);
  3879. Node CreateChild(const String& = String ( ), CreateMode = REPLICATED, uint = 0);
  3880. Component CreateComponent(const String&, CreateMode = REPLICATED, uint = 0);
  3881. ScriptObject CreateScriptObject(ScriptFile, const String&, CreateMode = REPLICATED);
  3882. ScriptObject CreateScriptObject(const String&, const String&, CreateMode = REPLICATED);
  3883. Variant GetAttribute(const String&) const;
  3884. Variant GetAttributeDefault(const String&) const;
  3885. Node GetChild(const String&, bool = false) const;
  3886. Array<Node> GetChildren(bool = false) const;
  3887. Array<Node> GetChildrenWithComponent(const String&, bool = false) const;
  3888. Array<Node> GetChildrenWithScript(bool = false) const;
  3889. Array<Node> GetChildrenWithScript(const String&, bool = false) const;
  3890. Component GetComponent(const String&) const;
  3891. Array<Component> GetComponents() const;
  3892. Array<Component> GetComponents(const String&, bool = false) const;
  3893. Component GetOrCreateComponent(const String&, CreateMode = REPLICATED, uint = 0);
  3894. ScriptObject GetScriptObject() const;
  3895. ScriptObject GetScriptObject(const String&) const;
  3896. bool HasComponent(const String&) const;
  3897. bool Load(File, bool = false);
  3898. bool LoadXML(const XMLElement&, bool = false);
  3899. Vector3 LocalToWorld(const Vector3&) const;
  3900. Vector3 LocalToWorld(const Vector4&) const;
  3901. void LookAt(const Vector3&, const Vector3& = Vector3 ( 0 , 1 , 0 ));
  3902. void Pitch(float, bool = false);
  3903. void Remove();
  3904. void RemoveAllChildren();
  3905. void RemoveAllComponents();
  3906. void RemoveChild(Node);
  3907. void RemoveChildren(bool, bool, bool);
  3908. void RemoveComponent(Component);
  3909. void RemoveComponent(const String&);
  3910. void RemoveComponents(bool, bool);
  3911. void RemoveInstanceDefault();
  3912. void ResetToDefault();
  3913. void Roll(float, bool = false);
  3914. void Rotate(const Quaternion&, bool = false);
  3915. bool Save(File) const;
  3916. bool SaveXML(File);
  3917. bool SaveXML(XMLElement&) const;
  3918. void Scale(const Vector3&);
  3919. void Scale(float);
  3920. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  3921. bool SetAttribute(const String&, const Variant&);
  3922. void SetEnabled(bool, bool);
  3923. void SetScale(float);
  3924. void SetTransform(const Vector3&, const Quaternion&);
  3925. void SetTransform(const Vector3&, const Quaternion&, const Vector3&);
  3926. void SetTransform(const Vector3&, const Quaternion&, float);
  3927. void SetWorldTransform(const Vector3&, const Quaternion&);
  3928. void SetWorldTransform(const Vector3&, const Quaternion&, const Vector3&);
  3929. void SetWorldTransform(const Vector3&, const Quaternion&, float);
  3930. void Translate(const Vector3&);
  3931. void TranslateRelative(const Vector3&);
  3932. Vector3 WorldToLocal(const Vector3&) const;
  3933. Vector3 WorldToLocal(const Vector4&) const;
  3934. void Yaw(float, bool = false);
  3935. // Properties:
  3936. /* readonly */
  3937. Array<Variant> attributeDefaults;
  3938. /* readonly */
  3939. Array<AttributeInfo> attributeInfos;
  3940. Array<Variant> attributes;
  3941. /* readonly */
  3942. ShortStringHash baseType;
  3943. /* readonly */
  3944. String category;
  3945. /* readonly */
  3946. Array<Node> children;
  3947. /* readonly */
  3948. Array<Component> components;
  3949. Vector3 direction;
  3950. bool enabled;
  3951. /* readonly */
  3952. uint id;
  3953. String name;
  3954. /* readonly */
  3955. uint numAllChildren;
  3956. /* readonly */
  3957. uint numAttributes;
  3958. /* readonly */
  3959. uint numChildren;
  3960. /* readonly */
  3961. uint numComponents;
  3962. Connection owner;
  3963. Node parent;
  3964. Vector3 position;
  3965. /* readonly */
  3966. int refs;
  3967. /* readonly */
  3968. Vector3 right;
  3969. Quaternion rotation;
  3970. Vector3 scale;
  3971. /* readonly */
  3972. Scene scene;
  3973. /* readonly */
  3974. ScriptObject scriptObject;
  3975. bool temporary;
  3976. /* readonly */
  3977. Matrix3x4 transform;
  3978. /* readonly */
  3979. ShortStringHash type;
  3980. /* readonly */
  3981. String typeName;
  3982. /* readonly */
  3983. Vector3 up;
  3984. /* readonly */
  3985. VariantMap vars;
  3986. /* readonly */
  3987. int weakRefs;
  3988. Vector3 worldDirection;
  3989. Vector3 worldPosition;
  3990. /* readonly */
  3991. Vector3 worldRight;
  3992. Quaternion worldRotation;
  3993. Vector3 worldScale;
  3994. /* readonly */
  3995. Matrix3x4 worldTransform;
  3996. /* readonly */
  3997. Vector3 worldUp;
  3998. };
  3999. class Object
  4000. {
  4001. // Methods:
  4002. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4003. // Properties:
  4004. /* readonly */
  4005. ShortStringHash baseType;
  4006. /* readonly */
  4007. String category;
  4008. /* readonly */
  4009. int refs;
  4010. /* readonly */
  4011. ShortStringHash type;
  4012. /* readonly */
  4013. String typeName;
  4014. /* readonly */
  4015. int weakRefs;
  4016. };
  4017. class Octree
  4018. {
  4019. // Methods:
  4020. void AddManualDrawable(Drawable);
  4021. void ApplyAttributes();
  4022. void DrawDebugGeometry(DebugRenderer, bool);
  4023. void DrawDebugGeometry(bool) const;
  4024. Variant GetAttribute(const String&) const;
  4025. Variant GetAttributeDefault(const String&) const;
  4026. Array<Node> GetDrawables(const BoundingBox&, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK);
  4027. Array<Node> GetDrawables(const Frustum&, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK);
  4028. Array<Node> GetDrawables(const Sphere&, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK);
  4029. Array<Node> GetDrawables(const Vector3&, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK);
  4030. bool Load(File, bool = false);
  4031. bool LoadXML(const XMLElement&, bool = false);
  4032. void MarkNetworkUpdate() const;
  4033. Array<RayQueryResult> Raycast(const Ray&, RayQueryLevel = RAY_TRIANGLE, float = M_INFINITY, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK) const;
  4034. RayQueryResult RaycastSingle(const Ray&, RayQueryLevel = RAY_TRIANGLE, float = M_INFINITY, uint8 = DRAWABLE_ANY, uint = DEFAULT_VIEWMASK) const;
  4035. void Remove();
  4036. void RemoveInstanceDefault();
  4037. void RemoveManualDrawable(Drawable);
  4038. void ResetToDefault();
  4039. bool Save(File) const;
  4040. bool SaveXML(XMLElement&) const;
  4041. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4042. bool SetAttribute(const String&, const Variant&);
  4043. void SetSize(const BoundingBox&, uint);
  4044. // Properties:
  4045. /* readonly */
  4046. Array<Variant> attributeDefaults;
  4047. /* readonly */
  4048. Array<AttributeInfo> attributeInfos;
  4049. Array<Variant> attributes;
  4050. /* readonly */
  4051. ShortStringHash baseType;
  4052. /* readonly */
  4053. String category;
  4054. bool enabled;
  4055. /* readonly */
  4056. bool enabledEffective;
  4057. /* readonly */
  4058. uint id;
  4059. /* readonly */
  4060. Node node;
  4061. /* readonly */
  4062. uint numAttributes;
  4063. /* readonly */
  4064. uint numLevels;
  4065. /* readonly */
  4066. int refs;
  4067. bool temporary;
  4068. /* readonly */
  4069. ShortStringHash type;
  4070. /* readonly */
  4071. String typeName;
  4072. /* readonly */
  4073. int weakRefs;
  4074. /* readonly */
  4075. BoundingBox worldBoundingBox;
  4076. };
  4077. class OffMeshConnection
  4078. {
  4079. // Methods:
  4080. void ApplyAttributes();
  4081. void DrawDebugGeometry(DebugRenderer, bool);
  4082. Variant GetAttribute(const String&) const;
  4083. Variant GetAttributeDefault(const String&) const;
  4084. bool Load(File, bool = false);
  4085. bool LoadXML(const XMLElement&, bool = false);
  4086. void MarkNetworkUpdate() const;
  4087. void Remove();
  4088. void RemoveInstanceDefault();
  4089. void ResetToDefault();
  4090. bool Save(File) const;
  4091. bool SaveXML(XMLElement&) const;
  4092. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4093. bool SetAttribute(const String&, const Variant&);
  4094. // Properties:
  4095. /* readonly */
  4096. Array<Variant> attributeDefaults;
  4097. /* readonly */
  4098. Array<AttributeInfo> attributeInfos;
  4099. Array<Variant> attributes;
  4100. /* readonly */
  4101. ShortStringHash baseType;
  4102. bool bidirectional;
  4103. /* readonly */
  4104. String category;
  4105. bool enabled;
  4106. /* readonly */
  4107. bool enabledEffective;
  4108. Node endPoint;
  4109. /* readonly */
  4110. uint id;
  4111. /* readonly */
  4112. Node node;
  4113. /* readonly */
  4114. uint numAttributes;
  4115. float radius;
  4116. /* readonly */
  4117. int refs;
  4118. bool temporary;
  4119. /* readonly */
  4120. ShortStringHash type;
  4121. /* readonly */
  4122. String typeName;
  4123. /* readonly */
  4124. int weakRefs;
  4125. };
  4126. class PackageFile
  4127. {
  4128. // Methods:
  4129. bool Exists(const String&) const;
  4130. bool Open(const String&, uint = 0) const;
  4131. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4132. bool compressed() const;
  4133. // Properties:
  4134. /* readonly */
  4135. ShortStringHash baseType;
  4136. /* readonly */
  4137. String category;
  4138. /* readonly */
  4139. uint checksum;
  4140. /* readonly */
  4141. String name;
  4142. /* readonly */
  4143. uint numFiles;
  4144. /* readonly */
  4145. int refs;
  4146. /* readonly */
  4147. uint totalSize;
  4148. /* readonly */
  4149. ShortStringHash type;
  4150. /* readonly */
  4151. String typeName;
  4152. /* readonly */
  4153. int weakRefs;
  4154. };
  4155. class ParticleEmitter
  4156. {
  4157. // Methods:
  4158. void ApplyAttributes();
  4159. void DrawDebugGeometry(DebugRenderer, bool);
  4160. Variant GetAttribute(const String&) const;
  4161. Variant GetAttributeDefault(const String&) const;
  4162. bool IsInView(Camera) const;
  4163. bool Load(File, bool = false);
  4164. bool Load(XMLFile);
  4165. bool LoadXML(const XMLElement&, bool = false);
  4166. void MarkNetworkUpdate() const;
  4167. void Remove();
  4168. void RemoveInstanceDefault();
  4169. void ResetToDefault();
  4170. bool Save(File) const;
  4171. bool Save(XMLFile);
  4172. bool SaveXML(XMLElement&) const;
  4173. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4174. bool SetAttribute(const String&, const Variant&);
  4175. void SetColor(const Color&);
  4176. void SetEmitting(bool, bool);
  4177. // Properties:
  4178. float activeTime;
  4179. float animationLodBias;
  4180. /* readonly */
  4181. Array<Variant> attributeDefaults;
  4182. /* readonly */
  4183. Array<AttributeInfo> attributeInfos;
  4184. Array<Variant> attributes;
  4185. /* readonly */
  4186. ShortStringHash baseType;
  4187. /* readonly */
  4188. BoundingBox boundingBox;
  4189. bool castShadows;
  4190. /* readonly */
  4191. String category;
  4192. /* readonly */
  4193. Array<ColorFrame> colors;
  4194. Vector3 constantForce;
  4195. float dampingForce;
  4196. float drawDistance;
  4197. /* writeonly */
  4198. float emissionRate;
  4199. Vector3 emitterSize;
  4200. EmitterType emitterType;
  4201. bool emitting;
  4202. bool enabled;
  4203. /* readonly */
  4204. bool enabledEffective;
  4205. /* readonly */
  4206. uint id;
  4207. /* readonly */
  4208. bool inView;
  4209. float inactiveTime;
  4210. uint lightMask;
  4211. float lodBias;
  4212. Material material;
  4213. Vector3 maxDirection;
  4214. float maxEmissionRate;
  4215. uint maxLights;
  4216. Vector3 maxParticleSize;
  4217. float maxRotation;
  4218. float maxRotationSpeed;
  4219. float maxTimeToLive;
  4220. float maxVelocity;
  4221. Vector3 minDirection;
  4222. float minEmissionRate;
  4223. Vector2 minParticleSize;
  4224. float minRotation;
  4225. float minRotationSpeed;
  4226. float minTimeToLive;
  4227. float minVelocity;
  4228. /* readonly */
  4229. Node node;
  4230. /* readonly */
  4231. uint numAttributes;
  4232. uint numColors;
  4233. uint numParticles;
  4234. uint numTextureFrames;
  4235. bool occludee;
  4236. bool occluder;
  4237. /* writeonly */
  4238. Vector2 particleSize;
  4239. /* readonly */
  4240. int refs;
  4241. bool relative;
  4242. /* writeonly */
  4243. float rotation;
  4244. /* writeonly */
  4245. float rotationSpeed;
  4246. bool scaled;
  4247. float shadowDistance;
  4248. uint shadowMask;
  4249. float sizeAdd;
  4250. float sizeMul;
  4251. bool sorted;
  4252. bool temporary;
  4253. /* readonly */
  4254. Array<TextureFrame> textureFrames;
  4255. /* writeonly */
  4256. float timeToLive;
  4257. /* readonly */
  4258. ShortStringHash type;
  4259. /* readonly */
  4260. String typeName;
  4261. bool updateInvisible;
  4262. /* writeonly */
  4263. float velocity;
  4264. uint viewMask;
  4265. /* readonly */
  4266. int weakRefs;
  4267. /* readonly */
  4268. BoundingBox worldBoundingBox;
  4269. /* readonly */
  4270. Zone zone;
  4271. uint zoneMask;
  4272. };
  4273. class ParticleEmitter2D
  4274. {
  4275. // Methods:
  4276. void ApplyAttributes();
  4277. void DrawDebugGeometry(DebugRenderer, bool);
  4278. Variant GetAttribute(const String&) const;
  4279. Variant GetAttributeDefault(const String&) const;
  4280. bool IsInView(Camera) const;
  4281. bool Load(File, bool = false);
  4282. bool LoadXML(const XMLElement&, bool = false);
  4283. void MarkNetworkUpdate() const;
  4284. void Remove();
  4285. void RemoveInstanceDefault();
  4286. void ResetToDefault();
  4287. bool Save(File) const;
  4288. bool SaveXML(XMLElement&) const;
  4289. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4290. bool SetAttribute(const String&, const Variant&);
  4291. // Properties:
  4292. /* readonly */
  4293. Array<Variant> attributeDefaults;
  4294. /* readonly */
  4295. Array<AttributeInfo> attributeInfos;
  4296. Array<Variant> attributes;
  4297. /* readonly */
  4298. ShortStringHash baseType;
  4299. BlendMode blendMode;
  4300. /* readonly */
  4301. BoundingBox boundingBox;
  4302. bool castShadows;
  4303. /* readonly */
  4304. String category;
  4305. float drawDistance;
  4306. bool enabled;
  4307. /* readonly */
  4308. bool enabledEffective;
  4309. /* readonly */
  4310. uint id;
  4311. /* readonly */
  4312. bool inView;
  4313. uint lightMask;
  4314. float lodBias;
  4315. Material material;
  4316. uint maxLights;
  4317. ParticleModel2D model;
  4318. /* readonly */
  4319. Node node;
  4320. /* readonly */
  4321. uint numAttributes;
  4322. bool occludee;
  4323. bool occluder;
  4324. /* readonly */
  4325. int refs;
  4326. float shadowDistance;
  4327. uint shadowMask;
  4328. Sprite2D sprite;
  4329. bool temporary;
  4330. /* readonly */
  4331. ShortStringHash type;
  4332. /* readonly */
  4333. String typeName;
  4334. float unitPerPixel;
  4335. uint viewMask;
  4336. /* readonly */
  4337. int weakRefs;
  4338. /* readonly */
  4339. BoundingBox worldBoundingBox;
  4340. float zValue;
  4341. uint zoneMask;
  4342. };
  4343. class ParticleModel2D
  4344. {
  4345. // Methods:
  4346. bool Load(File);
  4347. bool Save(File) const;
  4348. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4349. // Properties:
  4350. /* readonly */
  4351. ShortStringHash baseType;
  4352. /* readonly */
  4353. String category;
  4354. /* readonly */
  4355. uint memoryUse;
  4356. String name;
  4357. /* readonly */
  4358. int refs;
  4359. /* readonly */
  4360. ShortStringHash type;
  4361. /* readonly */
  4362. String typeName;
  4363. /* readonly */
  4364. uint useTimer;
  4365. /* readonly */
  4366. int weakRefs;
  4367. };
  4368. class Pass
  4369. {
  4370. // Properties:
  4371. bool alphaMask;
  4372. BlendMode blendMode;
  4373. CompareMode depthTestMode;
  4374. bool depthWrite;
  4375. PassLightingMode lightingMode;
  4376. String pixelShader;
  4377. String pixelShaderDefines;
  4378. /* readonly */
  4379. int refs;
  4380. String vertexShader;
  4381. String vertexShaderDefines;
  4382. /* readonly */
  4383. int weakRefs;
  4384. };
  4385. class PhysicsRaycastResult
  4386. {
  4387. // Properties:
  4388. /* readonly */
  4389. RigidBody body;
  4390. float distance;
  4391. Vector3 normal;
  4392. Vector3 position;
  4393. };
  4394. class PhysicsWorld
  4395. {
  4396. // Methods:
  4397. void ApplyAttributes();
  4398. void DrawDebugGeometry(DebugRenderer, bool);
  4399. void DrawDebugGeometry(bool);
  4400. Variant GetAttribute(const String&) const;
  4401. Variant GetAttributeDefault(const String&) const;
  4402. Array<RigidBody> GetRigidBodies(RigidBody);
  4403. Array<RigidBody> GetRigidBodies(const BoundingBox&, uint = 0xffff);
  4404. Array<RigidBody> GetRigidBodies(const Sphere&, uint = 0xffff);
  4405. bool Load(File, bool = false);
  4406. bool LoadXML(const XMLElement&, bool = false);
  4407. void MarkNetworkUpdate() const;
  4408. Array<PhysicsRaycastResult> Raycast(const Ray&, float = M_INFINITY, uint = 0xffff);
  4409. PhysicsRaycastResult RaycastSingle(const Ray&, float = M_INFINITY, uint = 0xffff);
  4410. void Remove();
  4411. void RemoveCachedGeometry(Model);
  4412. void RemoveInstanceDefault();
  4413. void ResetToDefault();
  4414. bool Save(File) const;
  4415. bool SaveXML(XMLElement&) const;
  4416. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4417. bool SetAttribute(const String&, const Variant&);
  4418. PhysicsRaycastResult SphereCast(const Ray&, float, float = M_INFINITY, uint = 0xffff);
  4419. void Update(float);
  4420. void UpdateCollisions();
  4421. // Properties:
  4422. /* readonly */
  4423. Array<Variant> attributeDefaults;
  4424. /* readonly */
  4425. Array<AttributeInfo> attributeInfos;
  4426. Array<Variant> attributes;
  4427. /* readonly */
  4428. ShortStringHash baseType;
  4429. /* readonly */
  4430. String category;
  4431. bool enabled;
  4432. /* readonly */
  4433. bool enabledEffective;
  4434. int fps;
  4435. Vector3 gravity;
  4436. /* readonly */
  4437. uint id;
  4438. bool internalEdge;
  4439. bool interpolation;
  4440. /* readonly */
  4441. Node node;
  4442. /* readonly */
  4443. uint numAttributes;
  4444. int numIterations;
  4445. /* readonly */
  4446. int refs;
  4447. bool splitImpulse;
  4448. bool temporary;
  4449. /* readonly */
  4450. ShortStringHash type;
  4451. /* readonly */
  4452. String typeName;
  4453. /* readonly */
  4454. int weakRefs;
  4455. };
  4456. class Plane
  4457. {
  4458. // Methods:
  4459. void Define(const Vector3&, const Vector3&);
  4460. void Define(const Vector3&, const Vector3&, const Vector3&);
  4461. void Define(const Vector4&);
  4462. float Distance(const Vector3&) const;
  4463. Vector3 Reflect(const Vector3&) const;
  4464. Vector4 ToVector4() const;
  4465. void Transform(const Matrix3&);
  4466. void Transform(const Matrix3x4&);
  4467. void Transform(const Matrix4&);
  4468. Plane Transformed(const Matrix3&) const;
  4469. Plane Transformed(const Matrix3x4&) const;
  4470. Plane Transformed(const Matrix4&) const;
  4471. // Properties:
  4472. Vector3 absNormal;
  4473. float d;
  4474. Vector3 normal;
  4475. /* readonly */
  4476. Matrix3x4 reflectionMatrix;
  4477. };
  4478. class Polyhedron
  4479. {
  4480. // Methods:
  4481. void AddFace(const Vector3&, const Vector3&, const Vector3&);
  4482. void AddFace(const Vector3&, const Vector3&, const Vector3&, const Vector3&);
  4483. void AddFace(const Array<Vector3>);
  4484. void Clear();
  4485. void Clip(const BoundingBox&);
  4486. void Clip(const Frustum&);
  4487. void Define(const BoundingBox&);
  4488. void Define(const Frustum&);
  4489. void Transform(const Matrix3&);
  4490. void Transform(const Matrix3x4&);
  4491. Polyhedron Transformed(const Matrix3&) const;
  4492. Polyhedron Transformed(const Matrix3x4&) const;
  4493. // Properties:
  4494. /* readonly */
  4495. Array<Array<Vector3>> face;
  4496. /* readonly */
  4497. uint numFaces;
  4498. };
  4499. class Quaternion
  4500. {
  4501. // Methods:
  4502. float DotProduct(const Quaternion&) const;
  4503. bool Equals(const Quaternion&) const;
  4504. void FromAngleAxis(float, const Vector3&);
  4505. void FromAxes(const Vector3&, const Vector3&, const Vector3&);
  4506. void FromEulerAngles(float, float, float);
  4507. void FromLookRotation(const Vector3&, const Vector3&);
  4508. void FromRotationTo(const Vector3&, const Vector3&);
  4509. Quaternion Inverse() const;
  4510. Quaternion Nlerp(Quaternion, float, bool) const;
  4511. void Normalize();
  4512. Quaternion Normalized() const;
  4513. Quaternion Slerp(Quaternion, float) const;
  4514. String ToString() const;
  4515. // Properties:
  4516. /* readonly */
  4517. Vector3 eulerAngles;
  4518. /* readonly */
  4519. float pitch;
  4520. /* readonly */
  4521. float roll;
  4522. float w;
  4523. float x;
  4524. float y;
  4525. /* readonly */
  4526. float yaw;
  4527. float z;
  4528. };
  4529. class Ray
  4530. {
  4531. // Methods:
  4532. Vector3 ClosestPoint(const Ray&) const;
  4533. void Define(const Vector3&, const Vector3&);
  4534. float Distance(const Vector3&) const;
  4535. float HitDistance(const BoundingBox&) const;
  4536. float HitDistance(const Frustum&, bool = true) const;
  4537. float HitDistance(const Sphere&) const;
  4538. float HitDistance(const Vector3&, const Vector3&, const Vector3&) const;
  4539. Vector3 Project(const Vector3&) const;
  4540. Ray Transformed(const Matrix3x4&) const;
  4541. // Properties:
  4542. Vector3 direction;
  4543. Vector3 origin;
  4544. };
  4545. class RayQueryResult
  4546. {
  4547. // Properties:
  4548. float distance;
  4549. /* readonly */
  4550. Drawable drawable;
  4551. /* readonly */
  4552. Node node;
  4553. Vector3 normal;
  4554. Vector3 position;
  4555. uint subObject;
  4556. };
  4557. class Rect
  4558. {
  4559. // Methods:
  4560. void Clear();
  4561. void Clip(const Rect&);
  4562. void Define(const Vector2&);
  4563. void Define(const Vector2&, const Vector2&);
  4564. bool Equals(const Rect&) const;
  4565. Intersection IsInside(const Vector2&) const;
  4566. void Merge(const Rect&);
  4567. void Merge(const Vector2&);
  4568. Vector4 ToVector4() const;
  4569. // Properties:
  4570. float bottom;
  4571. /* readonly */
  4572. Vector2 center;
  4573. bool defined;
  4574. /* readonly */
  4575. Vector2 halfSize;
  4576. float left;
  4577. Vector2 max;
  4578. Vector2 min;
  4579. float right;
  4580. /* readonly */
  4581. Vector2 size;
  4582. float top;
  4583. };
  4584. class RefCounted
  4585. {
  4586. // Properties:
  4587. /* readonly */
  4588. int refs;
  4589. /* readonly */
  4590. int weakRefs;
  4591. };
  4592. class RenderPath
  4593. {
  4594. // Methods:
  4595. void AddCommand(const RenderPathCommand&);
  4596. void AddRenderTarget(const RenderTargetInfo&);
  4597. bool Append(XMLFile);
  4598. RenderPath Clone();
  4599. void InsertCommand(uint, const RenderPathCommand&);
  4600. bool Load(XMLFile);
  4601. void RemoveCommand(uint);
  4602. void RemoveCommands(const String&);
  4603. void RemoveRenderTarget(const String&);
  4604. void RemoveRenderTarget(uint);
  4605. void RemoveRenderTargts(const String&);
  4606. void SetEnabled(const String&, bool);
  4607. void ToggleEnabled(const String&);
  4608. // Properties:
  4609. Array<RenderPathCommand> commands;
  4610. /* readonly */
  4611. uint numCommands;
  4612. /* readonly */
  4613. uint numRenderTargets;
  4614. /* readonly */
  4615. int refs;
  4616. Array<RenderTargetInfo> renderTargets;
  4617. Array<Variant> shaderParameters;
  4618. /* readonly */
  4619. int weakRefs;
  4620. };
  4621. class RenderPathCommand
  4622. {
  4623. // Methods:
  4624. void RemoveShaderParameter(const String&);
  4625. // Properties:
  4626. Color clearColor;
  4627. float clearDepth;
  4628. uint clearFlags;
  4629. uint clearStencil;
  4630. bool enabled;
  4631. bool markToStencil;
  4632. String metadata;
  4633. uint numOutputs;
  4634. Array<String> outputNames;
  4635. String pass;
  4636. String pixelShaderDefines;
  4637. String pixelShaderName;
  4638. Array<Variant> shaderParameters;
  4639. RenderCommandSortMode sortMode;
  4640. String tag;
  4641. Array<String> textureNames;
  4642. RenderCommandType type;
  4643. bool useFogColor;
  4644. bool useLitBase;
  4645. bool vertexLights;
  4646. String vertexShaderDefines;
  4647. String vertexShaderName;
  4648. };
  4649. class RenderSurface
  4650. {
  4651. // Methods:
  4652. void QueueUpdate();
  4653. // Properties:
  4654. /* readonly */
  4655. int height;
  4656. RenderSurface linkedDepthStencil;
  4657. RenderSurface linkedRenderTarget;
  4658. uint numViewports;
  4659. /* readonly */
  4660. Texture parentTexture;
  4661. RenderSurfaceUpdateMode updateMode;
  4662. /* readonly */
  4663. TextureUsage usage;
  4664. Array<Viewport> viewports;
  4665. /* readonly */
  4666. int width;
  4667. };
  4668. class RenderTargetInfo
  4669. {
  4670. // Properties:
  4671. bool enabled;
  4672. bool filtered;
  4673. uint format;
  4674. String name;
  4675. bool persistent;
  4676. bool sRGB;
  4677. IntVector2 size;
  4678. RenderTargetSizeMode sizeMode;
  4679. String tag;
  4680. };
  4681. class Renderer
  4682. {
  4683. // Methods:
  4684. void DrawDebugGeometry(bool) const;
  4685. void ReloadShaders() const;
  4686. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4687. void SetDefaultRenderPath(XMLFile);
  4688. // Properties:
  4689. /* readonly */
  4690. ShortStringHash baseType;
  4691. /* readonly */
  4692. String category;
  4693. /* readonly */
  4694. Material defaultLightRamp;
  4695. /* readonly */
  4696. Material defaultLightSpot;
  4697. /* readonly */
  4698. Material defaultMaterial;
  4699. RenderPath defaultRenderPath;
  4700. /* readonly */
  4701. Zone defaultZone;
  4702. bool drawShadows;
  4703. bool dynamicInstancing;
  4704. bool hdrRendering;
  4705. int materialQuality;
  4706. int maxInstanceTriangles;
  4707. int maxOccluderTriangles;
  4708. int maxShadowCascades;
  4709. int maxShadowMaps;
  4710. int maxSortedInstances;
  4711. int minInstances;
  4712. /* readonly */
  4713. uint numBatches;
  4714. /* readonly */
  4715. Array<uint> numGeometries;
  4716. /* readonly */
  4717. Array<uint> numLights;
  4718. /* readonly */
  4719. Array<uint> numOccluders;
  4720. /* readonly */
  4721. uint numPrimitives;
  4722. /* readonly */
  4723. Array<uint> numShadowMaps;
  4724. uint numViewports;
  4725. /* readonly */
  4726. uint numViews;
  4727. float occluderSizeThreshold;
  4728. int occlusionBufferSize;
  4729. /* readonly */
  4730. int refs;
  4731. bool reuseShadowMaps;
  4732. int shadowMapSize;
  4733. int shadowQuality;
  4734. bool specularLighting;
  4735. int textureAnisotropy;
  4736. TextureFilterMode textureFilterMode;
  4737. int textureQuality;
  4738. /* readonly */
  4739. ShortStringHash type;
  4740. /* readonly */
  4741. String typeName;
  4742. Array<Viewport> viewports;
  4743. /* readonly */
  4744. int weakRefs;
  4745. };
  4746. class Resource
  4747. {
  4748. // Methods:
  4749. bool Load(File);
  4750. bool Save(File) const;
  4751. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4752. // Properties:
  4753. /* readonly */
  4754. ShortStringHash baseType;
  4755. /* readonly */
  4756. String category;
  4757. /* readonly */
  4758. uint memoryUse;
  4759. String name;
  4760. /* readonly */
  4761. int refs;
  4762. /* readonly */
  4763. ShortStringHash type;
  4764. /* readonly */
  4765. String typeName;
  4766. /* readonly */
  4767. uint useTimer;
  4768. /* readonly */
  4769. int weakRefs;
  4770. };
  4771. class ResourceCache
  4772. {
  4773. // Methods:
  4774. bool AddManualResource(Resource);
  4775. void AddPackageFile(PackageFile, uint = M_MAX_UNSIGNED);
  4776. bool AddResourceDir(const String&, uint = M_MAX_UNSIGNED);
  4777. bool Exists(const String&) const;
  4778. File GetFile(const String&);
  4779. String GetPreferredResourceDir(const String&) const;
  4780. Resource GetResource(ShortStringHash, const String&, bool = true);
  4781. Resource GetResource(const String&, const String&, bool = true);
  4782. String GetResourceFileName(const String&) const;
  4783. void ReleaseAllResources(bool = false);
  4784. void ReleaseResource(const String&, const String&, bool = false);
  4785. void ReleaseResources(ShortStringHash, bool = false);
  4786. void ReleaseResources(const String&, bool = false);
  4787. void ReleaseResources(const String&, const String&, bool = false);
  4788. bool ReloadResource(Resource);
  4789. void RemovePackageFile(PackageFile, bool = true, bool = false);
  4790. void RemovePackageFile(const String&, bool = true, bool = false);
  4791. void RemoveResourceDir(const String&);
  4792. String SanitateResourceDirName(const String&) const;
  4793. String SanitateResourceName(const String&) const;
  4794. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4795. // Properties:
  4796. bool autoReloadResources;
  4797. /* readonly */
  4798. ShortStringHash baseType;
  4799. /* readonly */
  4800. String category;
  4801. Array<uint> memoryBudget;
  4802. /* readonly */
  4803. Array<uint> memoryUse;
  4804. /* readonly */
  4805. Array<PackageFile> packageFiles;
  4806. /* readonly */
  4807. int refs;
  4808. /* readonly */
  4809. Array<String> resourceDirs;
  4810. bool returnFailedResources;
  4811. /* readonly */
  4812. bool seachPackagesFirst;
  4813. /* writeonly */
  4814. bool searchPackagesFirst;
  4815. /* readonly */
  4816. uint totalMemoryUse;
  4817. /* readonly */
  4818. ShortStringHash type;
  4819. /* readonly */
  4820. String typeName;
  4821. /* readonly */
  4822. int weakRefs;
  4823. };
  4824. class ResourceRef
  4825. {
  4826. // Properties:
  4827. String name;
  4828. ShortStringHash type;
  4829. };
  4830. class ResourceRefList
  4831. {
  4832. // Methods:
  4833. void Resize(uint);
  4834. // Properties:
  4835. /* readonly */
  4836. bool empty;
  4837. /* readonly */
  4838. uint length;
  4839. Array<String> names;
  4840. ShortStringHash type;
  4841. };
  4842. class RigidBody
  4843. {
  4844. // Methods:
  4845. void Activate();
  4846. void ApplyAttributes();
  4847. void ApplyForce(const Vector3&);
  4848. void ApplyForce(const Vector3&, const Vector3&);
  4849. void ApplyImpulse(const Vector3&);
  4850. void ApplyImpulse(const Vector3&, const Vector3&);
  4851. void ApplyTorque(const Vector3&);
  4852. void ApplyTorqueImpulse(const Vector3&);
  4853. void DrawDebugGeometry(DebugRenderer, bool);
  4854. Variant GetAttribute(const String&) const;
  4855. Variant GetAttributeDefault(const String&) const;
  4856. Vector3 GetVelocityAtPoint(const Vector3&) const;
  4857. bool Load(File, bool = false);
  4858. bool LoadXML(const XMLElement&, bool = false);
  4859. void MarkNetworkUpdate() const;
  4860. void ReAddBodyToWorld();
  4861. void Remove();
  4862. void RemoveInstanceDefault();
  4863. void ResetForces();
  4864. void ResetToDefault();
  4865. bool Save(File) const;
  4866. bool SaveXML(XMLElement&) const;
  4867. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4868. bool SetAttribute(const String&, const Variant&);
  4869. void SetCollisionLayerAndMask(uint, uint);
  4870. void SetTransform(const Vector3&, const Quaternion&);
  4871. // Properties:
  4872. /* readonly */
  4873. bool active;
  4874. float angularDamping;
  4875. Vector3 angularFactor;
  4876. float angularRestThreshold;
  4877. Vector3 angularVelocity;
  4878. Vector3 anisotropicFriction;
  4879. /* readonly */
  4880. Array<Variant> attributeDefaults;
  4881. /* readonly */
  4882. Array<AttributeInfo> attributeInfos;
  4883. Array<Variant> attributes;
  4884. /* readonly */
  4885. ShortStringHash baseType;
  4886. /* readonly */
  4887. String category;
  4888. float ccdMotionThreshold;
  4889. float ccdRadius;
  4890. /* readonly */
  4891. Vector3 centerOfMass;
  4892. /* readonly */
  4893. Array<RigidBody> collidingBodies;
  4894. CollisionEventMode collisionEventMode;
  4895. uint collisionLayer;
  4896. uint collisionMask;
  4897. float contactProcessingThreshold;
  4898. bool enabled;
  4899. /* readonly */
  4900. bool enabledEffective;
  4901. float friction;
  4902. Vector3 gravityOverride;
  4903. /* readonly */
  4904. uint id;
  4905. bool kinematic;
  4906. float linearDamping;
  4907. Vector3 linearFactor;
  4908. float linearRestThreshold;
  4909. Vector3 linearVelocity;
  4910. float mass;
  4911. /* readonly */
  4912. Node node;
  4913. /* readonly */
  4914. uint numAttributes;
  4915. bool phantom;
  4916. Vector3 position;
  4917. /* readonly */
  4918. int refs;
  4919. float restitution;
  4920. float rollingFriction;
  4921. Quaternion rotation;
  4922. bool temporary;
  4923. /* readonly */
  4924. ShortStringHash type;
  4925. /* readonly */
  4926. String typeName;
  4927. bool useGravity;
  4928. /* readonly */
  4929. int weakRefs;
  4930. };
  4931. class Scene
  4932. {
  4933. // Methods:
  4934. void AddChild(Node);
  4935. void AddRequiredPackageFile(PackageFile);
  4936. void ApplyAttributes();
  4937. void Clear(bool = true, bool = true);
  4938. void ClearRequiredPackageFiles();
  4939. Node CreateChild(const String& = String ( ), CreateMode = REPLICATED, uint = 0);
  4940. Component CreateComponent(const String&, CreateMode = REPLICATED, uint = 0);
  4941. ScriptObject CreateScriptObject(ScriptFile, const String&, CreateMode = REPLICATED);
  4942. ScriptObject CreateScriptObject(const String&, const String&, CreateMode = REPLICATED);
  4943. Variant GetAttribute(const String&) const;
  4944. Variant GetAttributeDefault(const String&) const;
  4945. Node GetChild(const String&, bool = false) const;
  4946. Array<Node> GetChildren(bool = false) const;
  4947. Array<Node> GetChildrenWithComponent(const String&, bool = false) const;
  4948. Array<Node> GetChildrenWithScript(bool = false) const;
  4949. Array<Node> GetChildrenWithScript(const String&, bool = false) const;
  4950. Component GetComponent(const String&) const;
  4951. Component GetComponent(uint);
  4952. Array<Component> GetComponents() const;
  4953. Array<Component> GetComponents(const String&, bool = false) const;
  4954. Node GetNode(uint);
  4955. Component GetOrCreateComponent(const String&, CreateMode = REPLICATED, uint = 0);
  4956. ScriptObject GetScriptObject() const;
  4957. ScriptObject GetScriptObject(const String&) const;
  4958. bool HasComponent(const String&) const;
  4959. Node Instantiate(File, const Vector3&, const Quaternion&, CreateMode = REPLICATED);
  4960. Node InstantiateXML(File, const Vector3&, const Quaternion&, CreateMode = REPLICATED);
  4961. Node InstantiateXML(XMLFile, const Vector3&, const Quaternion&, CreateMode = REPLICATED);
  4962. Node InstantiateXML(const XMLElement&, const Vector3&, const Quaternion&, CreateMode = REPLICATED);
  4963. bool Load(File, bool = false);
  4964. bool LoadAsync(File);
  4965. bool LoadAsyncXML(File);
  4966. bool LoadXML(File);
  4967. bool LoadXML(const XMLElement&, bool = false);
  4968. Vector3 LocalToWorld(const Vector3&) const;
  4969. Vector3 LocalToWorld(const Vector4&) const;
  4970. void LookAt(const Vector3&, const Vector3& = Vector3 ( 0 , 1 , 0 ));
  4971. void Pitch(float, bool = false);
  4972. void RegisterVar(const String&);
  4973. void Remove();
  4974. void RemoveAllChildren();
  4975. void RemoveAllComponents();
  4976. void RemoveChild(Node);
  4977. void RemoveChildren(bool, bool, bool);
  4978. void RemoveComponent(Component);
  4979. void RemoveComponent(const String&);
  4980. void RemoveComponents(bool, bool);
  4981. void RemoveInstanceDefault();
  4982. void ResetToDefault();
  4983. void Roll(float, bool = false);
  4984. void Rotate(const Quaternion&, bool = false);
  4985. bool Save(File) const;
  4986. bool SaveXML(File);
  4987. bool SaveXML(XMLElement&) const;
  4988. void Scale(const Vector3&);
  4989. void Scale(float);
  4990. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  4991. bool SetAttribute(const String&, const Variant&);
  4992. void SetScale(float);
  4993. void SetTransform(const Vector3&, const Quaternion&);
  4994. void SetTransform(const Vector3&, const Quaternion&, const Vector3&);
  4995. void SetTransform(const Vector3&, const Quaternion&, float);
  4996. void SetWorldTransform(const Vector3&, const Quaternion&);
  4997. void SetWorldTransform(const Vector3&, const Quaternion&, const Vector3&);
  4998. void SetWorldTransform(const Vector3&, const Quaternion&, float);
  4999. void StopAsyncLoading();
  5000. const String& GetVarName(ShortStringHash) const;
  5001. void Translate(const Vector3&);
  5002. void TranslateRelative(const Vector3&);
  5003. void UnregisterAllVars(const String&);
  5004. void UnregisterVar(const String&);
  5005. void Update(float);
  5006. Vector3 WorldToLocal(const Vector3&) const;
  5007. Vector3 WorldToLocal(const Vector4&) const;
  5008. void Yaw(float, bool = false);
  5009. // Properties:
  5010. /* readonly */
  5011. bool asyncLoading;
  5012. /* readonly */
  5013. float asyncProgress;
  5014. /* readonly */
  5015. Array<Variant> attributeDefaults;
  5016. /* readonly */
  5017. Array<AttributeInfo> attributeInfos;
  5018. Array<Variant> attributes;
  5019. /* readonly */
  5020. ShortStringHash baseType;
  5021. /* readonly */
  5022. String category;
  5023. /* readonly */
  5024. uint checksum;
  5025. /* readonly */
  5026. Array<Node> children;
  5027. /* readonly */
  5028. Array<Component> components;
  5029. /* readonly */
  5030. DebugRenderer debugRenderer;
  5031. Vector3 direction;
  5032. float elapsedTime;
  5033. /* readonly */
  5034. String fileName;
  5035. /* readonly */
  5036. uint id;
  5037. String name;
  5038. /* readonly */
  5039. uint numAllChildren;
  5040. /* readonly */
  5041. uint numAttributes;
  5042. /* readonly */
  5043. uint numChildren;
  5044. /* readonly */
  5045. uint numComponents;
  5046. /* readonly */
  5047. Octree octree;
  5048. Node parent;
  5049. /* readonly */
  5050. PhysicsWorld physicsWorld;
  5051. Vector3 position;
  5052. /* readonly */
  5053. int refs;
  5054. /* readonly */
  5055. Array<PackageFile> requiredPackageFiles;
  5056. /* readonly */
  5057. Vector3 right;
  5058. Quaternion rotation;
  5059. Vector3 scale;
  5060. /* readonly */
  5061. ScriptObject scriptObject;
  5062. float smoothingConstant;
  5063. float snapThreshold;
  5064. bool temporary;
  5065. float timeScale;
  5066. /* readonly */
  5067. Matrix3x4 transform;
  5068. /* readonly */
  5069. ShortStringHash type;
  5070. /* readonly */
  5071. String typeName;
  5072. /* readonly */
  5073. Vector3 up;
  5074. bool updateEnabled;
  5075. /* readonly */
  5076. VariantMap vars;
  5077. /* readonly */
  5078. int weakRefs;
  5079. Vector3 worldDirection;
  5080. Vector3 worldPosition;
  5081. /* readonly */
  5082. Vector3 worldRight;
  5083. Quaternion worldRotation;
  5084. Vector3 worldScale;
  5085. /* readonly */
  5086. Matrix3x4 worldTransform;
  5087. /* readonly */
  5088. Vector3 worldUp;
  5089. };
  5090. class Script
  5091. {
  5092. // Methods:
  5093. void DumpAPI(DumpMode = DOXYGEN);
  5094. bool Execute(const String&);
  5095. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5096. // Properties:
  5097. /* readonly */
  5098. ShortStringHash baseType;
  5099. /* readonly */
  5100. String category;
  5101. Scene defaultScene;
  5102. ScriptFile defaultScriptFile;
  5103. bool executeConsoleCommands;
  5104. /* readonly */
  5105. int refs;
  5106. /* readonly */
  5107. ShortStringHash type;
  5108. /* readonly */
  5109. String typeName;
  5110. /* readonly */
  5111. int weakRefs;
  5112. };
  5113. class ScriptFile
  5114. {
  5115. // Methods:
  5116. void ClearDelayedExecute(const String& = String ( ));
  5117. void DelayedExecute(float, bool, const String&);
  5118. void DelayedExecute(float, bool, const String&, const Array<Variant>);
  5119. bool Execute(const String&, const Array<Variant>);
  5120. bool Load(File);
  5121. bool Save(File) const;
  5122. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5123. // Properties:
  5124. /* readonly */
  5125. ShortStringHash baseType;
  5126. /* readonly */
  5127. String category;
  5128. /* readonly */
  5129. bool compiled;
  5130. /* readonly */
  5131. uint memoryUse;
  5132. String name;
  5133. /* readonly */
  5134. int refs;
  5135. /* readonly */
  5136. ShortStringHash type;
  5137. /* readonly */
  5138. String typeName;
  5139. /* readonly */
  5140. uint useTimer;
  5141. /* readonly */
  5142. int weakRefs;
  5143. };
  5144. class ScriptInstance
  5145. {
  5146. // Methods:
  5147. void ApplyAttributes();
  5148. void ClearDelayedExecute(const String& = String ( ));
  5149. bool CreateObject(ScriptFile, const String&);
  5150. void DelayedExecute(float, bool, const String&);
  5151. void DelayedExecute(float, bool, const String&, const Array<Variant>);
  5152. void DrawDebugGeometry(DebugRenderer, bool);
  5153. bool Execute(const String&);
  5154. bool Execute(const String&, const Array<Variant>);
  5155. Variant GetAttribute(const String&) const;
  5156. Variant GetAttributeDefault(const String&) const;
  5157. bool Load(File, bool = false);
  5158. bool LoadXML(const XMLElement&, bool = false);
  5159. void MarkNetworkUpdate() const;
  5160. void Remove();
  5161. void RemoveInstanceDefault();
  5162. void ResetToDefault();
  5163. bool Save(File) const;
  5164. bool SaveXML(XMLElement&) const;
  5165. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5166. bool SetAttribute(const String&, const Variant&);
  5167. // Properties:
  5168. /* readonly */
  5169. Array<Variant> attributeDefaults;
  5170. /* readonly */
  5171. Array<AttributeInfo> attributeInfos;
  5172. Array<Variant> attributes;
  5173. /* readonly */
  5174. ShortStringHash baseType;
  5175. /* readonly */
  5176. String category;
  5177. String className;
  5178. bool enabled;
  5179. /* readonly */
  5180. bool enabledEffective;
  5181. int fixedUpdateFps;
  5182. /* readonly */
  5183. uint id;
  5184. /* readonly */
  5185. Node node;
  5186. /* readonly */
  5187. uint numAttributes;
  5188. /* readonly */
  5189. ScriptObject object;
  5190. /* readonly */
  5191. int refs;
  5192. ScriptFile scriptFile;
  5193. bool temporary;
  5194. /* readonly */
  5195. ShortStringHash type;
  5196. /* readonly */
  5197. String typeName;
  5198. /* readonly */
  5199. int weakRefs;
  5200. };
  5201. class ScriptObject
  5202. {
  5203. };
  5204. class ScrollBar
  5205. {
  5206. // Methods:
  5207. void AddChild(UIElement);
  5208. void ApplyAttributes();
  5209. void BringToFront();
  5210. void ChangeValue(float);
  5211. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  5212. void DisableLayoutUpdate();
  5213. IntVector2 ElementToScreen(const IntVector2&);
  5214. void EnableLayoutUpdate();
  5215. uint FindChild(UIElement) const;
  5216. Variant GetAttribute(const String&) const;
  5217. Variant GetAttributeDefault(const String&) const;
  5218. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  5219. UIElement GetChild(const String&, bool = false) const;
  5220. Array<UIElement> GetChildren(bool = false) const;
  5221. UIElement GetElementEventSender() const;
  5222. uint GetNumChildren(bool) const;
  5223. void InsertChild(uint, UIElement);
  5224. bool IsInside(IntVector2, bool);
  5225. bool IsInsideCombined(IntVector2, bool);
  5226. bool Load(File, bool = false);
  5227. bool LoadChildXML(XMLFile, XMLFile = null);
  5228. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  5229. bool LoadXML(File);
  5230. bool LoadXML(XMLFile, XMLFile);
  5231. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  5232. bool LoadXML(const XMLElement&, bool = false);
  5233. void Remove();
  5234. void RemoveAllChildren();
  5235. void RemoveChild(UIElement, uint = 0);
  5236. void RemoveChild(uint);
  5237. void RemoveInstanceDefault();
  5238. void ResetToDefault();
  5239. bool Save(File) const;
  5240. bool SaveXML(File);
  5241. bool SaveXML(XMLElement&) const;
  5242. IntVector2 ScreenToElement(const IntVector2&);
  5243. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5244. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  5245. bool SetAttribute(const String&, const Variant&);
  5246. void SetFixedHeight(int);
  5247. void SetFixedSize(int, int);
  5248. void SetFixedWidth(int);
  5249. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  5250. void SetMaxSize(int, int);
  5251. void SetMinSize(int, int);
  5252. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  5253. void SetPosition(int, int);
  5254. void SetSize(int, int);
  5255. bool SetStyle(const String&, XMLFile = null);
  5256. bool SetStyle(const XMLElement&);
  5257. bool SetStyleAuto(XMLFile = null);
  5258. void StepBack();
  5259. void StepForward();
  5260. void UpdateLayout();
  5261. const Variant& GetVar(const ShortStringHash&);
  5262. // Properties:
  5263. /* readonly */
  5264. Array<Variant> attributeDefaults;
  5265. /* readonly */
  5266. Array<AttributeInfo> attributeInfos;
  5267. Array<Variant> attributes;
  5268. /* readonly */
  5269. Button backButton;
  5270. /* readonly */
  5271. ShortStringHash baseType;
  5272. bool bringToBack;
  5273. bool bringToFront;
  5274. /* readonly */
  5275. String category;
  5276. /* readonly */
  5277. IntVector2 childOffset;
  5278. /* readonly */
  5279. Array<UIElement> children;
  5280. IntRect clipBorder;
  5281. bool clipChildren;
  5282. /* writeonly */
  5283. Color color;
  5284. /* readonly */
  5285. bool colorGradient;
  5286. Array<Color> colors;
  5287. /* readonly */
  5288. IntRect combinedScreenRect;
  5289. XMLFile defaultStyle;
  5290. /* readonly */
  5291. float derivedOpacity;
  5292. uint dragDropMode;
  5293. bool editable;
  5294. /* readonly */
  5295. float effectiveScrollStep;
  5296. bool elementEventSender;
  5297. bool enabled;
  5298. /* readonly */
  5299. bool fixedHeight;
  5300. /* readonly */
  5301. bool fixedSize;
  5302. /* readonly */
  5303. bool fixedWidth;
  5304. bool focus;
  5305. FocusMode focusMode;
  5306. /* readonly */
  5307. Button forwardButton;
  5308. int height;
  5309. HorizontalAlignment horizontalAlignment;
  5310. /* readonly */
  5311. bool hovering;
  5312. int indent;
  5313. int indentSpacing;
  5314. /* readonly */
  5315. int indentWidth;
  5316. bool internal;
  5317. IntRect layoutBorder;
  5318. LayoutMode layoutMode;
  5319. int layoutSpacing;
  5320. int maxHeight;
  5321. IntVector2 maxSize;
  5322. int maxWidth;
  5323. int minHeight;
  5324. IntVector2 minSize;
  5325. int minWidth;
  5326. String name;
  5327. /* readonly */
  5328. uint numAllChildren;
  5329. /* readonly */
  5330. uint numAttributes;
  5331. /* readonly */
  5332. uint numChildren;
  5333. float opacity;
  5334. Orientation orientation;
  5335. UIElement parent;
  5336. IntVector2 position;
  5337. int priority;
  5338. float range;
  5339. /* readonly */
  5340. int refs;
  5341. /* readonly */
  5342. UIElement root;
  5343. /* readonly */
  5344. IntVector2 screenPosition;
  5345. float scrollStep;
  5346. bool selected;
  5347. IntVector2 size;
  5348. /* readonly */
  5349. Slider slider;
  5350. bool sortChildren;
  5351. float stepFactor;
  5352. String style;
  5353. bool temporary;
  5354. TraversalMode traversalMode;
  5355. /* readonly */
  5356. ShortStringHash type;
  5357. /* readonly */
  5358. String typeName;
  5359. bool useDerivedOpacity;
  5360. float value;
  5361. /* readonly */
  5362. VariantMap vars;
  5363. VerticalAlignment verticalAlignment;
  5364. bool visible;
  5365. /* readonly */
  5366. int weakRefs;
  5367. int width;
  5368. };
  5369. class ScrollView
  5370. {
  5371. // Methods:
  5372. void AddChild(UIElement);
  5373. void ApplyAttributes();
  5374. void BringToFront();
  5375. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  5376. void DisableLayoutUpdate();
  5377. IntVector2 ElementToScreen(const IntVector2&);
  5378. void EnableLayoutUpdate();
  5379. uint FindChild(UIElement) const;
  5380. Variant GetAttribute(const String&) const;
  5381. Variant GetAttributeDefault(const String&) const;
  5382. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  5383. UIElement GetChild(const String&, bool = false) const;
  5384. Array<UIElement> GetChildren(bool = false) const;
  5385. UIElement GetElementEventSender() const;
  5386. uint GetNumChildren(bool) const;
  5387. void InsertChild(uint, UIElement);
  5388. bool IsInside(IntVector2, bool);
  5389. bool IsInsideCombined(IntVector2, bool);
  5390. bool Load(File, bool = false);
  5391. bool LoadChildXML(XMLFile, XMLFile = null);
  5392. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  5393. bool LoadXML(File);
  5394. bool LoadXML(XMLFile, XMLFile);
  5395. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  5396. bool LoadXML(const XMLElement&, bool = false);
  5397. void Remove();
  5398. void RemoveAllChildren();
  5399. void RemoveChild(UIElement, uint = 0);
  5400. void RemoveChild(uint);
  5401. void RemoveInstanceDefault();
  5402. void ResetToDefault();
  5403. bool Save(File) const;
  5404. bool SaveXML(File);
  5405. bool SaveXML(XMLElement&) const;
  5406. IntVector2 ScreenToElement(const IntVector2&);
  5407. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5408. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  5409. bool SetAttribute(const String&, const Variant&);
  5410. void SetFixedHeight(int);
  5411. void SetFixedSize(int, int);
  5412. void SetFixedWidth(int);
  5413. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  5414. void SetMaxSize(int, int);
  5415. void SetMinSize(int, int);
  5416. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  5417. void SetPosition(int, int);
  5418. void SetScrollBarsVisible(bool, bool);
  5419. void SetSize(int, int);
  5420. bool SetStyle(const String&, XMLFile = null);
  5421. bool SetStyle(const XMLElement&);
  5422. bool SetStyleAuto(XMLFile = null);
  5423. void SetViewPosition(int, int);
  5424. void UpdateLayout();
  5425. const Variant& GetVar(const ShortStringHash&);
  5426. // Properties:
  5427. /* readonly */
  5428. Array<Variant> attributeDefaults;
  5429. /* readonly */
  5430. Array<AttributeInfo> attributeInfos;
  5431. Array<Variant> attributes;
  5432. /* readonly */
  5433. ShortStringHash baseType;
  5434. bool bringToBack;
  5435. bool bringToFront;
  5436. /* readonly */
  5437. String category;
  5438. /* readonly */
  5439. IntVector2 childOffset;
  5440. /* readonly */
  5441. Array<UIElement> children;
  5442. IntRect clipBorder;
  5443. bool clipChildren;
  5444. /* writeonly */
  5445. Color color;
  5446. /* readonly */
  5447. bool colorGradient;
  5448. Array<Color> colors;
  5449. /* readonly */
  5450. IntRect combinedScreenRect;
  5451. UIElement contentElement;
  5452. XMLFile defaultStyle;
  5453. /* readonly */
  5454. float derivedOpacity;
  5455. uint dragDropMode;
  5456. bool editable;
  5457. bool elementEventSender;
  5458. bool enabled;
  5459. /* readonly */
  5460. bool fixedHeight;
  5461. /* readonly */
  5462. bool fixedSize;
  5463. /* readonly */
  5464. bool fixedWidth;
  5465. bool focus;
  5466. FocusMode focusMode;
  5467. int height;
  5468. HorizontalAlignment horizontalAlignment;
  5469. /* readonly */
  5470. ScrollBar horizontalScrollBar;
  5471. /* readonly */
  5472. bool hovering;
  5473. int indent;
  5474. int indentSpacing;
  5475. /* readonly */
  5476. int indentWidth;
  5477. bool internal;
  5478. IntRect layoutBorder;
  5479. LayoutMode layoutMode;
  5480. int layoutSpacing;
  5481. int maxHeight;
  5482. IntVector2 maxSize;
  5483. int maxWidth;
  5484. int minHeight;
  5485. IntVector2 minSize;
  5486. int minWidth;
  5487. String name;
  5488. /* readonly */
  5489. uint numAllChildren;
  5490. /* readonly */
  5491. uint numAttributes;
  5492. /* readonly */
  5493. uint numChildren;
  5494. float opacity;
  5495. float pageStep;
  5496. UIElement parent;
  5497. IntVector2 position;
  5498. int priority;
  5499. /* readonly */
  5500. int refs;
  5501. /* readonly */
  5502. UIElement root;
  5503. /* readonly */
  5504. IntVector2 screenPosition;
  5505. bool scrollBarsAutoVisible;
  5506. /* readonly */
  5507. BorderImage scrollPanel;
  5508. float scrollStep;
  5509. bool selected;
  5510. IntVector2 size;
  5511. bool sortChildren;
  5512. String style;
  5513. bool temporary;
  5514. TraversalMode traversalMode;
  5515. /* readonly */
  5516. ShortStringHash type;
  5517. /* readonly */
  5518. String typeName;
  5519. bool useDerivedOpacity;
  5520. /* readonly */
  5521. VariantMap vars;
  5522. VerticalAlignment verticalAlignment;
  5523. /* readonly */
  5524. ScrollBar verticalScrollBar;
  5525. IntVector2 viewPosition;
  5526. bool visible;
  5527. /* readonly */
  5528. int weakRefs;
  5529. int width;
  5530. };
  5531. class Serializable
  5532. {
  5533. // Methods:
  5534. void ApplyAttributes();
  5535. Variant GetAttribute(const String&) const;
  5536. Variant GetAttributeDefault(const String&) const;
  5537. bool Load(File, bool = false);
  5538. bool LoadXML(const XMLElement&, bool = false);
  5539. void RemoveInstanceDefault();
  5540. void ResetToDefault();
  5541. bool Save(File) const;
  5542. bool SaveXML(XMLElement&) const;
  5543. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5544. bool SetAttribute(const String&, const Variant&);
  5545. // Properties:
  5546. /* readonly */
  5547. Array<Variant> attributeDefaults;
  5548. /* readonly */
  5549. Array<AttributeInfo> attributeInfos;
  5550. Array<Variant> attributes;
  5551. /* readonly */
  5552. ShortStringHash baseType;
  5553. /* readonly */
  5554. String category;
  5555. /* readonly */
  5556. uint numAttributes;
  5557. /* readonly */
  5558. int refs;
  5559. bool temporary;
  5560. /* readonly */
  5561. ShortStringHash type;
  5562. /* readonly */
  5563. String typeName;
  5564. /* readonly */
  5565. int weakRefs;
  5566. };
  5567. class Serializer
  5568. {
  5569. // Methods:
  5570. uint Write(Array<uint8>);
  5571. bool WriteBool(bool);
  5572. bool WriteBoundingBox(const BoundingBox&);
  5573. bool WriteByte(int8);
  5574. bool WriteColor(const Color&);
  5575. bool WriteFileID(const String&);
  5576. bool WriteFloat(float);
  5577. bool WriteInt(int);
  5578. bool WriteIntRect(const IntRect&);
  5579. bool WriteIntVector2(const IntVector2&);
  5580. bool WriteLine(const String&);
  5581. bool WriteNetID(uint);
  5582. bool WritePackedQuaternion(const Quaternion&);
  5583. bool WritePackedVector3(const Vector3&, float);
  5584. bool WriteQuaternion(const Quaternion&);
  5585. bool WriteShort(int16);
  5586. bool WriteShortStringHash(const ShortStringHash&);
  5587. bool WriteString(const String&);
  5588. bool WriteStringHash(const StringHash&);
  5589. bool WriteUByte(uint8);
  5590. bool WriteUInt(uint);
  5591. bool WriteUShort(uint16);
  5592. bool WriteVLE(uint);
  5593. bool WriteVariant(const Variant&);
  5594. bool WriteVariantMap(const VariantMap&);
  5595. bool WriteVector2(const Vector2&);
  5596. bool WriteVector3(const Vector3&);
  5597. bool WriteVector4(const Vector4&);
  5598. };
  5599. class ShortStringHash
  5600. {
  5601. // Methods:
  5602. String ToString() const;
  5603. // Properties:
  5604. /* readonly */
  5605. uint16 value;
  5606. };
  5607. class Skeleton
  5608. {
  5609. // Methods:
  5610. Bone GetBone(const String&) const;
  5611. void Reset();
  5612. // Properties:
  5613. /* readonly */
  5614. Array<Bone> bones;
  5615. /* readonly */
  5616. uint numBones;
  5617. /* readonly */
  5618. Bone rootBone;
  5619. };
  5620. class Skybox
  5621. {
  5622. // Methods:
  5623. void ApplyAttributes();
  5624. void ApplyMaterialList(const String& = String ( ));
  5625. void DrawDebugGeometry(DebugRenderer, bool);
  5626. Variant GetAttribute(const String&) const;
  5627. Variant GetAttributeDefault(const String&) const;
  5628. bool IsInView(Camera) const;
  5629. bool Load(File, bool = false);
  5630. bool LoadXML(const XMLElement&, bool = false);
  5631. void MarkNetworkUpdate() const;
  5632. void Remove();
  5633. void RemoveInstanceDefault();
  5634. void ResetToDefault();
  5635. bool Save(File) const;
  5636. bool SaveXML(XMLElement&) const;
  5637. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5638. bool SetAttribute(const String&, const Variant&);
  5639. // Properties:
  5640. /* readonly */
  5641. Array<Variant> attributeDefaults;
  5642. /* readonly */
  5643. Array<AttributeInfo> attributeInfos;
  5644. Array<Variant> attributes;
  5645. /* readonly */
  5646. ShortStringHash baseType;
  5647. /* readonly */
  5648. BoundingBox boundingBox;
  5649. bool castShadows;
  5650. /* readonly */
  5651. String category;
  5652. float drawDistance;
  5653. bool enabled;
  5654. /* readonly */
  5655. bool enabledEffective;
  5656. /* readonly */
  5657. uint id;
  5658. /* readonly */
  5659. bool inView;
  5660. uint lightMask;
  5661. float lodBias;
  5662. /* writeonly */
  5663. Material material;
  5664. Array<Material> materials;
  5665. uint maxLights;
  5666. Model model;
  5667. /* readonly */
  5668. Node node;
  5669. /* readonly */
  5670. uint numAttributes;
  5671. /* readonly */
  5672. uint numGeometries;
  5673. bool occludee;
  5674. bool occluder;
  5675. /* readonly */
  5676. int refs;
  5677. float shadowDistance;
  5678. uint shadowMask;
  5679. bool temporary;
  5680. /* readonly */
  5681. ShortStringHash type;
  5682. /* readonly */
  5683. String typeName;
  5684. uint viewMask;
  5685. /* readonly */
  5686. int weakRefs;
  5687. /* readonly */
  5688. BoundingBox worldBoundingBox;
  5689. /* readonly */
  5690. Zone zone;
  5691. uint zoneMask;
  5692. };
  5693. class Slider
  5694. {
  5695. // Methods:
  5696. void AddChild(UIElement);
  5697. void ApplyAttributes();
  5698. void BringToFront();
  5699. void ChangeValue(float);
  5700. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  5701. void DisableLayoutUpdate();
  5702. IntVector2 ElementToScreen(const IntVector2&);
  5703. void EnableLayoutUpdate();
  5704. uint FindChild(UIElement) const;
  5705. Variant GetAttribute(const String&) const;
  5706. Variant GetAttributeDefault(const String&) const;
  5707. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  5708. UIElement GetChild(const String&, bool = false) const;
  5709. Array<UIElement> GetChildren(bool = false) const;
  5710. UIElement GetElementEventSender() const;
  5711. uint GetNumChildren(bool) const;
  5712. void InsertChild(uint, UIElement);
  5713. bool IsInside(IntVector2, bool);
  5714. bool IsInsideCombined(IntVector2, bool);
  5715. bool Load(File, bool = false);
  5716. bool LoadChildXML(XMLFile, XMLFile = null);
  5717. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  5718. bool LoadXML(File);
  5719. bool LoadXML(XMLFile, XMLFile);
  5720. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  5721. bool LoadXML(const XMLElement&, bool = false);
  5722. void Remove();
  5723. void RemoveAllChildren();
  5724. void RemoveChild(UIElement, uint = 0);
  5725. void RemoveChild(uint);
  5726. void RemoveInstanceDefault();
  5727. void ResetToDefault();
  5728. bool Save(File) const;
  5729. bool SaveXML(File);
  5730. bool SaveXML(XMLElement&) const;
  5731. IntVector2 ScreenToElement(const IntVector2&);
  5732. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5733. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  5734. bool SetAttribute(const String&, const Variant&);
  5735. void SetFixedHeight(int);
  5736. void SetFixedSize(int, int);
  5737. void SetFixedWidth(int);
  5738. void SetFullImageRect();
  5739. void SetHoverOffset(int, int);
  5740. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  5741. void SetMaxSize(int, int);
  5742. void SetMinSize(int, int);
  5743. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  5744. void SetPosition(int, int);
  5745. void SetSize(int, int);
  5746. bool SetStyle(const String&, XMLFile = null);
  5747. bool SetStyle(const XMLElement&);
  5748. bool SetStyleAuto(XMLFile = null);
  5749. void UpdateLayout();
  5750. const Variant& GetVar(const ShortStringHash&);
  5751. // Properties:
  5752. /* readonly */
  5753. Array<Variant> attributeDefaults;
  5754. /* readonly */
  5755. Array<AttributeInfo> attributeInfos;
  5756. Array<Variant> attributes;
  5757. /* readonly */
  5758. ShortStringHash baseType;
  5759. BlendMode blendMode;
  5760. IntRect border;
  5761. bool bringToBack;
  5762. bool bringToFront;
  5763. /* readonly */
  5764. String category;
  5765. /* readonly */
  5766. IntVector2 childOffset;
  5767. /* readonly */
  5768. Array<UIElement> children;
  5769. IntRect clipBorder;
  5770. bool clipChildren;
  5771. /* writeonly */
  5772. Color color;
  5773. /* readonly */
  5774. bool colorGradient;
  5775. Array<Color> colors;
  5776. /* readonly */
  5777. IntRect combinedScreenRect;
  5778. XMLFile defaultStyle;
  5779. /* readonly */
  5780. float derivedOpacity;
  5781. uint dragDropMode;
  5782. bool editable;
  5783. bool elementEventSender;
  5784. bool enabled;
  5785. /* readonly */
  5786. bool fixedHeight;
  5787. /* readonly */
  5788. bool fixedSize;
  5789. /* readonly */
  5790. bool fixedWidth;
  5791. bool focus;
  5792. FocusMode focusMode;
  5793. int height;
  5794. HorizontalAlignment horizontalAlignment;
  5795. IntVector2 hoverOffset;
  5796. /* readonly */
  5797. bool hovering;
  5798. IntRect imageRect;
  5799. int indent;
  5800. int indentSpacing;
  5801. /* readonly */
  5802. int indentWidth;
  5803. bool internal;
  5804. /* readonly */
  5805. BorderImage knob;
  5806. IntRect layoutBorder;
  5807. LayoutMode layoutMode;
  5808. int layoutSpacing;
  5809. int maxHeight;
  5810. IntVector2 maxSize;
  5811. int maxWidth;
  5812. int minHeight;
  5813. IntVector2 minSize;
  5814. int minWidth;
  5815. String name;
  5816. /* readonly */
  5817. uint numAllChildren;
  5818. /* readonly */
  5819. uint numAttributes;
  5820. /* readonly */
  5821. uint numChildren;
  5822. float opacity;
  5823. Orientation orientation;
  5824. UIElement parent;
  5825. IntVector2 position;
  5826. int priority;
  5827. float range;
  5828. /* readonly */
  5829. int refs;
  5830. float repeatRate;
  5831. /* readonly */
  5832. UIElement root;
  5833. /* readonly */
  5834. IntVector2 screenPosition;
  5835. bool selected;
  5836. IntVector2 size;
  5837. bool sortChildren;
  5838. String style;
  5839. bool temporary;
  5840. Texture texture;
  5841. bool tiled;
  5842. TraversalMode traversalMode;
  5843. /* readonly */
  5844. ShortStringHash type;
  5845. /* readonly */
  5846. String typeName;
  5847. bool useDerivedOpacity;
  5848. float value;
  5849. /* readonly */
  5850. VariantMap vars;
  5851. VerticalAlignment verticalAlignment;
  5852. bool visible;
  5853. /* readonly */
  5854. int weakRefs;
  5855. int width;
  5856. };
  5857. class SmoothedTransform
  5858. {
  5859. // Methods:
  5860. void ApplyAttributes();
  5861. void DrawDebugGeometry(DebugRenderer, bool);
  5862. Variant GetAttribute(const String&) const;
  5863. Variant GetAttributeDefault(const String&) const;
  5864. bool Load(File, bool = false);
  5865. bool LoadXML(const XMLElement&, bool = false);
  5866. void MarkNetworkUpdate() const;
  5867. void Remove();
  5868. void RemoveInstanceDefault();
  5869. void ResetToDefault();
  5870. bool Save(File) const;
  5871. bool SaveXML(XMLElement&) const;
  5872. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5873. bool SetAttribute(const String&, const Variant&);
  5874. void Update(float, float);
  5875. // Properties:
  5876. /* readonly */
  5877. Array<Variant> attributeDefaults;
  5878. /* readonly */
  5879. Array<AttributeInfo> attributeInfos;
  5880. Array<Variant> attributes;
  5881. /* readonly */
  5882. ShortStringHash baseType;
  5883. /* readonly */
  5884. String category;
  5885. bool enabled;
  5886. /* readonly */
  5887. bool enabledEffective;
  5888. /* readonly */
  5889. uint id;
  5890. /* readonly */
  5891. bool inProgress;
  5892. /* readonly */
  5893. Node node;
  5894. /* readonly */
  5895. uint numAttributes;
  5896. /* readonly */
  5897. int refs;
  5898. Vector3 targetPosition;
  5899. Quaternion targetRotation;
  5900. Vector3 targetWorldPosition;
  5901. Quaternion targetWorldRotation;
  5902. bool temporary;
  5903. /* readonly */
  5904. ShortStringHash type;
  5905. /* readonly */
  5906. String typeName;
  5907. /* readonly */
  5908. int weakRefs;
  5909. };
  5910. class Sound
  5911. {
  5912. // Methods:
  5913. bool Load(File);
  5914. bool Save(File) const;
  5915. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5916. // Properties:
  5917. /* readonly */
  5918. ShortStringHash baseType;
  5919. /* readonly */
  5920. String category;
  5921. /* readonly */
  5922. bool compressed;
  5923. /* readonly */
  5924. float frequency;
  5925. /* readonly */
  5926. float length;
  5927. bool looped;
  5928. /* readonly */
  5929. uint memoryUse;
  5930. String name;
  5931. /* readonly */
  5932. int refs;
  5933. /* readonly */
  5934. uint sampleSize;
  5935. /* readonly */
  5936. bool sixteenBit;
  5937. /* readonly */
  5938. bool stereo;
  5939. /* readonly */
  5940. ShortStringHash type;
  5941. /* readonly */
  5942. String typeName;
  5943. /* readonly */
  5944. uint useTimer;
  5945. /* readonly */
  5946. int weakRefs;
  5947. };
  5948. class SoundListener
  5949. {
  5950. // Methods:
  5951. void ApplyAttributes();
  5952. void DrawDebugGeometry(DebugRenderer, bool);
  5953. Variant GetAttribute(const String&) const;
  5954. Variant GetAttributeDefault(const String&) const;
  5955. bool Load(File, bool = false);
  5956. bool LoadXML(const XMLElement&, bool = false);
  5957. void MarkNetworkUpdate() const;
  5958. void Remove();
  5959. void RemoveInstanceDefault();
  5960. void ResetToDefault();
  5961. bool Save(File) const;
  5962. bool SaveXML(XMLElement&) const;
  5963. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  5964. bool SetAttribute(const String&, const Variant&);
  5965. // Properties:
  5966. /* readonly */
  5967. Array<Variant> attributeDefaults;
  5968. /* readonly */
  5969. Array<AttributeInfo> attributeInfos;
  5970. Array<Variant> attributes;
  5971. /* readonly */
  5972. ShortStringHash baseType;
  5973. /* readonly */
  5974. String category;
  5975. bool enabled;
  5976. /* readonly */
  5977. bool enabledEffective;
  5978. /* readonly */
  5979. uint id;
  5980. /* readonly */
  5981. Node node;
  5982. /* readonly */
  5983. uint numAttributes;
  5984. /* readonly */
  5985. int refs;
  5986. bool temporary;
  5987. /* readonly */
  5988. ShortStringHash type;
  5989. /* readonly */
  5990. String typeName;
  5991. /* readonly */
  5992. int weakRefs;
  5993. };
  5994. class SoundSource
  5995. {
  5996. // Methods:
  5997. void ApplyAttributes();
  5998. void DrawDebugGeometry(DebugRenderer, bool);
  5999. Variant GetAttribute(const String&) const;
  6000. Variant GetAttributeDefault(const String&) const;
  6001. bool Load(File, bool = false);
  6002. bool LoadXML(const XMLElement&, bool = false);
  6003. void MarkNetworkUpdate() const;
  6004. void Play(Sound);
  6005. void Play(Sound, float);
  6006. void Play(Sound, float, float);
  6007. void Play(Sound, float, float, float);
  6008. void Remove();
  6009. void RemoveInstanceDefault();
  6010. void ResetToDefault();
  6011. bool Save(File) const;
  6012. bool SaveXML(XMLElement&) const;
  6013. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6014. bool SetAttribute(const String&, const Variant&);
  6015. void Stop();
  6016. // Properties:
  6017. /* readonly */
  6018. float attenuation;
  6019. /* readonly */
  6020. Array<Variant> attributeDefaults;
  6021. /* readonly */
  6022. Array<AttributeInfo> attributeInfos;
  6023. Array<Variant> attributes;
  6024. bool autoRemove;
  6025. /* readonly */
  6026. ShortStringHash baseType;
  6027. /* readonly */
  6028. String category;
  6029. bool enabled;
  6030. /* readonly */
  6031. bool enabledEffective;
  6032. float frequency;
  6033. float gain;
  6034. /* readonly */
  6035. uint id;
  6036. /* readonly */
  6037. Node node;
  6038. /* readonly */
  6039. uint numAttributes;
  6040. float panning;
  6041. /* readonly */
  6042. bool playing;
  6043. /* readonly */
  6044. int refs;
  6045. /* readonly */
  6046. Sound sound;
  6047. SoundType soundType;
  6048. bool temporary;
  6049. /* readonly */
  6050. float timePosition;
  6051. /* readonly */
  6052. ShortStringHash type;
  6053. /* readonly */
  6054. String typeName;
  6055. /* readonly */
  6056. int weakRefs;
  6057. };
  6058. class SoundSource3D
  6059. {
  6060. // Methods:
  6061. void ApplyAttributes();
  6062. void DrawDebugGeometry(DebugRenderer, bool);
  6063. Variant GetAttribute(const String&) const;
  6064. Variant GetAttributeDefault(const String&) const;
  6065. bool Load(File, bool = false);
  6066. bool LoadXML(const XMLElement&, bool = false);
  6067. void MarkNetworkUpdate() const;
  6068. void Play(Sound);
  6069. void Play(Sound, float);
  6070. void Play(Sound, float, float);
  6071. void Play(Sound, float, float, float);
  6072. void Remove();
  6073. void RemoveInstanceDefault();
  6074. void ResetToDefault();
  6075. bool Save(File) const;
  6076. bool SaveXML(XMLElement&) const;
  6077. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6078. void SetAngleAttenuation(float, float);
  6079. bool SetAttribute(const String&, const Variant&);
  6080. void SetDistanceAttenuation(float, float, float);
  6081. void Stop();
  6082. // Properties:
  6083. /* readonly */
  6084. float attenuation;
  6085. /* readonly */
  6086. Array<Variant> attributeDefaults;
  6087. /* readonly */
  6088. Array<AttributeInfo> attributeInfos;
  6089. Array<Variant> attributes;
  6090. bool autoRemove;
  6091. /* readonly */
  6092. ShortStringHash baseType;
  6093. /* readonly */
  6094. String category;
  6095. bool enabled;
  6096. /* readonly */
  6097. bool enabledEffective;
  6098. float farDistance;
  6099. float frequency;
  6100. float gain;
  6101. /* readonly */
  6102. uint id;
  6103. float innerAngle;
  6104. float nearDistance;
  6105. /* readonly */
  6106. Node node;
  6107. /* readonly */
  6108. uint numAttributes;
  6109. float outerAngle;
  6110. float panning;
  6111. /* readonly */
  6112. bool playing;
  6113. /* readonly */
  6114. int refs;
  6115. float rolloffFactor;
  6116. /* readonly */
  6117. Sound sound;
  6118. SoundType soundType;
  6119. bool temporary;
  6120. /* readonly */
  6121. float timePosition;
  6122. /* readonly */
  6123. ShortStringHash type;
  6124. /* readonly */
  6125. String typeName;
  6126. /* readonly */
  6127. int weakRefs;
  6128. };
  6129. class Sphere
  6130. {
  6131. // Methods:
  6132. void Clear();
  6133. void Define(const BoundingBox&);
  6134. void Define(const Frustum&);
  6135. void Define(const Polyhedron&);
  6136. void Define(const Sphere&);
  6137. void Define(const Vector3&, float);
  6138. float Distance(const Vector3&) const;
  6139. Intersection IsInside(const BoundingBox&) const;
  6140. Intersection IsInside(const Sphere&) const;
  6141. Intersection IsInside(const Vector3&) const;
  6142. void Merge(const BoundingBox&);
  6143. void Merge(const Frustum&);
  6144. void Merge(const Sphere&);
  6145. void Merge(const Vector3&);
  6146. // Properties:
  6147. Vector3 center;
  6148. bool defined;
  6149. float radius;
  6150. };
  6151. class Spline
  6152. {
  6153. // Methods:
  6154. void ApplyAttributes();
  6155. Variant GetAttribute(const String&) const;
  6156. Variant GetAttributeDefault(const String&) const;
  6157. Vector3 GetPoint(float) const;
  6158. bool Load(File, bool = false);
  6159. bool LoadXML(const XMLElement&, bool = false);
  6160. void MarkNetworkUpdate() const;
  6161. void Move(float);
  6162. void Pop();
  6163. void Push(const Vector3&);
  6164. void Remove();
  6165. void RemoveInstanceDefault();
  6166. void Reset();
  6167. void ResetToDefault();
  6168. bool Save(File) const;
  6169. bool SaveXML(XMLElement&) const;
  6170. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6171. bool SetAttribute(const String&, const Variant&);
  6172. // Properties:
  6173. /* readonly */
  6174. Array<Variant> attributeDefaults;
  6175. /* readonly */
  6176. Array<AttributeInfo> attributeInfos;
  6177. Array<Variant> attributes;
  6178. /* readonly */
  6179. ShortStringHash baseType;
  6180. /* readonly */
  6181. String category;
  6182. Array<Vector3> controlPoints;
  6183. bool enabled;
  6184. /* readonly */
  6185. bool enabledEffective;
  6186. /* readonly */
  6187. bool finished;
  6188. /* readonly */
  6189. uint id;
  6190. InterpolationMode interpolationMode;
  6191. /* readonly */
  6192. Node node;
  6193. /* readonly */
  6194. uint numAttributes;
  6195. Vector3 position;
  6196. /* readonly */
  6197. int refs;
  6198. float speed;
  6199. bool temporary;
  6200. /* readonly */
  6201. ShortStringHash type;
  6202. /* readonly */
  6203. String typeName;
  6204. /* readonly */
  6205. int weakRefs;
  6206. };
  6207. class Sprite
  6208. {
  6209. // Methods:
  6210. void AddChild(UIElement);
  6211. void ApplyAttributes();
  6212. void BringToFront();
  6213. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  6214. uint FindChild(UIElement) const;
  6215. Variant GetAttribute(const String&) const;
  6216. Variant GetAttributeDefault(const String&) const;
  6217. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  6218. UIElement GetChild(const String&, bool = false) const;
  6219. Array<UIElement> GetChildren(bool = false) const;
  6220. UIElement GetElementEventSender() const;
  6221. uint GetNumChildren(bool) const;
  6222. void InsertChild(uint, UIElement);
  6223. bool Load(File, bool = false);
  6224. bool LoadChildXML(XMLFile, XMLFile = null);
  6225. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  6226. bool LoadXML(File);
  6227. bool LoadXML(XMLFile, XMLFile);
  6228. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  6229. bool LoadXML(const XMLElement&, bool = false);
  6230. void Remove();
  6231. void RemoveAllChildren();
  6232. void RemoveChild(UIElement, uint = 0);
  6233. void RemoveChild(uint);
  6234. void RemoveInstanceDefault();
  6235. void ResetToDefault();
  6236. bool Save(File) const;
  6237. bool SaveXML(File);
  6238. bool SaveXML(XMLElement&) const;
  6239. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6240. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  6241. bool SetAttribute(const String&, const Variant&);
  6242. void SetFixedHeight(int);
  6243. void SetFixedSize(int, int);
  6244. void SetFixedWidth(int);
  6245. void SetFullImageRect();
  6246. void SetHotSpot(int, int);
  6247. void SetMaxSize(int, int);
  6248. void SetMinSize(int, int);
  6249. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  6250. void SetPosition(float, float);
  6251. void SetScale(float);
  6252. void SetScale(float, float);
  6253. void SetSize(int, int);
  6254. bool SetStyle(const String&, XMLFile = null);
  6255. bool SetStyle(const XMLElement&);
  6256. bool SetStyleAuto(XMLFile = null);
  6257. const Variant& GetVar(const ShortStringHash&);
  6258. // Properties:
  6259. /* readonly */
  6260. Array<Variant> attributeDefaults;
  6261. /* readonly */
  6262. Array<AttributeInfo> attributeInfos;
  6263. Array<Variant> attributes;
  6264. /* readonly */
  6265. ShortStringHash baseType;
  6266. BlendMode blendMode;
  6267. bool bringToBack;
  6268. bool bringToFront;
  6269. /* readonly */
  6270. String category;
  6271. /* readonly */
  6272. Array<UIElement> children;
  6273. /* writeonly */
  6274. Color color;
  6275. /* readonly */
  6276. bool colorGradient;
  6277. Array<Color> colors;
  6278. XMLFile defaultStyle;
  6279. /* readonly */
  6280. float derivedOpacity;
  6281. bool elementEventSender;
  6282. int height;
  6283. HorizontalAlignment horizontalAlignment;
  6284. IntVector2 hotSpot;
  6285. IntRect imageRect;
  6286. String name;
  6287. /* readonly */
  6288. uint numAllChildren;
  6289. /* readonly */
  6290. uint numAttributes;
  6291. /* readonly */
  6292. uint numChildren;
  6293. float opacity;
  6294. UIElement parent;
  6295. Vector2 position;
  6296. int priority;
  6297. /* readonly */
  6298. int refs;
  6299. /* readonly */
  6300. UIElement root;
  6301. float rotation;
  6302. Vector2 scale;
  6303. IntVector2 size;
  6304. bool sortChildren;
  6305. String style;
  6306. bool temporary;
  6307. Texture texture;
  6308. /* readonly */
  6309. ShortStringHash type;
  6310. /* readonly */
  6311. String typeName;
  6312. bool useDerivedOpacity;
  6313. /* readonly */
  6314. VariantMap vars;
  6315. VerticalAlignment verticalAlignment;
  6316. bool visible;
  6317. /* readonly */
  6318. int weakRefs;
  6319. int width;
  6320. };
  6321. class Sprite2D
  6322. {
  6323. // Methods:
  6324. bool Load(File);
  6325. bool Save(File) const;
  6326. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6327. // Properties:
  6328. /* readonly */
  6329. ShortStringHash baseType;
  6330. /* readonly */
  6331. String category;
  6332. Vector2 hotSpot;
  6333. /* readonly */
  6334. uint memoryUse;
  6335. String name;
  6336. IntRect rectangle;
  6337. /* readonly */
  6338. int refs;
  6339. Texture2D texture;
  6340. /* readonly */
  6341. ShortStringHash type;
  6342. /* readonly */
  6343. String typeName;
  6344. /* readonly */
  6345. uint useTimer;
  6346. /* readonly */
  6347. int weakRefs;
  6348. };
  6349. class SpriteSheet2D
  6350. {
  6351. // Methods:
  6352. void DefineSprite(const String&, const IntRect&, const Vector2&);
  6353. Sprite2D GetSprite(const String&);
  6354. bool Load(File);
  6355. bool Save(File) const;
  6356. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6357. void UpdateSprite(const String&, const IntRect&, const Vector2&);
  6358. // Properties:
  6359. /* readonly */
  6360. ShortStringHash baseType;
  6361. /* readonly */
  6362. String category;
  6363. /* readonly */
  6364. uint memoryUse;
  6365. String name;
  6366. /* readonly */
  6367. int refs;
  6368. /* readonly */
  6369. Texture2D texture;
  6370. /* readonly */
  6371. ShortStringHash type;
  6372. /* readonly */
  6373. String typeName;
  6374. /* readonly */
  6375. uint useTimer;
  6376. /* readonly */
  6377. int weakRefs;
  6378. };
  6379. class StaticModel
  6380. {
  6381. // Methods:
  6382. void ApplyAttributes();
  6383. void ApplyMaterialList(const String& = String ( ));
  6384. void DrawDebugGeometry(DebugRenderer, bool);
  6385. Variant GetAttribute(const String&) const;
  6386. Variant GetAttributeDefault(const String&) const;
  6387. bool IsInView(Camera) const;
  6388. bool IsInside(const Vector3&) const;
  6389. bool IsInsideLocal(const Vector3&) const;
  6390. bool Load(File, bool = false);
  6391. bool LoadXML(const XMLElement&, bool = false);
  6392. void MarkNetworkUpdate() const;
  6393. void Remove();
  6394. void RemoveInstanceDefault();
  6395. void ResetToDefault();
  6396. bool Save(File) const;
  6397. bool SaveXML(XMLElement&) const;
  6398. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6399. bool SetAttribute(const String&, const Variant&);
  6400. // Properties:
  6401. /* readonly */
  6402. Array<Variant> attributeDefaults;
  6403. /* readonly */
  6404. Array<AttributeInfo> attributeInfos;
  6405. Array<Variant> attributes;
  6406. /* readonly */
  6407. ShortStringHash baseType;
  6408. /* readonly */
  6409. BoundingBox boundingBox;
  6410. bool castShadows;
  6411. /* readonly */
  6412. String category;
  6413. float drawDistance;
  6414. bool enabled;
  6415. /* readonly */
  6416. bool enabledEffective;
  6417. /* readonly */
  6418. uint id;
  6419. /* readonly */
  6420. bool inView;
  6421. uint lightMask;
  6422. float lodBias;
  6423. /* writeonly */
  6424. Material material;
  6425. Array<Material> materials;
  6426. uint maxLights;
  6427. Model model;
  6428. /* readonly */
  6429. Node node;
  6430. /* readonly */
  6431. uint numAttributes;
  6432. /* readonly */
  6433. uint numGeometries;
  6434. bool occludee;
  6435. bool occluder;
  6436. uint occlusionLodLevel;
  6437. /* readonly */
  6438. int refs;
  6439. float shadowDistance;
  6440. uint shadowMask;
  6441. bool temporary;
  6442. /* readonly */
  6443. ShortStringHash type;
  6444. /* readonly */
  6445. String typeName;
  6446. uint viewMask;
  6447. /* readonly */
  6448. int weakRefs;
  6449. /* readonly */
  6450. BoundingBox worldBoundingBox;
  6451. uint zoneMask;
  6452. };
  6453. class StaticModelGroup
  6454. {
  6455. // Methods:
  6456. void AddInstanceNode(Node);
  6457. void ApplyAttributes();
  6458. void ApplyMaterialList(const String& = String ( ));
  6459. void DrawDebugGeometry(DebugRenderer, bool);
  6460. Variant GetAttribute(const String&) const;
  6461. Variant GetAttributeDefault(const String&) const;
  6462. bool IsInView(Camera) const;
  6463. bool Load(File, bool = false);
  6464. bool LoadXML(const XMLElement&, bool = false);
  6465. void MarkNetworkUpdate() const;
  6466. void Remove();
  6467. void RemoveAllInstanceNodes();
  6468. void RemoveInstanceDefault();
  6469. void RemoveInstanceNode(Node);
  6470. void ResetToDefault();
  6471. bool Save(File) const;
  6472. bool SaveXML(XMLElement&) const;
  6473. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6474. bool SetAttribute(const String&, const Variant&);
  6475. // Properties:
  6476. /* readonly */
  6477. Array<Variant> attributeDefaults;
  6478. /* readonly */
  6479. Array<AttributeInfo> attributeInfos;
  6480. Array<Variant> attributes;
  6481. /* readonly */
  6482. ShortStringHash baseType;
  6483. /* readonly */
  6484. BoundingBox boundingBox;
  6485. bool castShadows;
  6486. /* readonly */
  6487. String category;
  6488. float drawDistance;
  6489. bool enabled;
  6490. /* readonly */
  6491. bool enabledEffective;
  6492. /* readonly */
  6493. uint id;
  6494. /* readonly */
  6495. bool inView;
  6496. /* readonly */
  6497. Array<Node> instanceNodes;
  6498. uint lightMask;
  6499. float lodBias;
  6500. /* writeonly */
  6501. Material material;
  6502. Array<Material> materials;
  6503. uint maxLights;
  6504. Model model;
  6505. /* readonly */
  6506. Node node;
  6507. /* readonly */
  6508. uint numAttributes;
  6509. /* readonly */
  6510. uint numGeometries;
  6511. /* readonly */
  6512. uint numInstanceNodes;
  6513. bool occludee;
  6514. bool occluder;
  6515. uint occlusionLodLevel;
  6516. /* readonly */
  6517. int refs;
  6518. float shadowDistance;
  6519. uint shadowMask;
  6520. bool temporary;
  6521. /* readonly */
  6522. ShortStringHash type;
  6523. /* readonly */
  6524. String typeName;
  6525. uint viewMask;
  6526. /* readonly */
  6527. int weakRefs;
  6528. /* readonly */
  6529. BoundingBox worldBoundingBox;
  6530. /* readonly */
  6531. Zone zone;
  6532. uint zoneMask;
  6533. };
  6534. class StaticSprite2D
  6535. {
  6536. // Methods:
  6537. void ApplyAttributes();
  6538. void DrawDebugGeometry(DebugRenderer, bool);
  6539. Variant GetAttribute(const String&) const;
  6540. Variant GetAttributeDefault(const String&) const;
  6541. bool IsInView(Camera) const;
  6542. bool Load(File, bool = false);
  6543. bool LoadXML(const XMLElement&, bool = false);
  6544. void MarkNetworkUpdate() const;
  6545. void Remove();
  6546. void RemoveInstanceDefault();
  6547. void ResetToDefault();
  6548. bool Save(File) const;
  6549. bool SaveXML(XMLElement&) const;
  6550. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6551. bool SetAttribute(const String&, const Variant&);
  6552. void SetFlip(bool, bool);
  6553. // Properties:
  6554. /* readonly */
  6555. Array<Variant> attributeDefaults;
  6556. /* readonly */
  6557. Array<AttributeInfo> attributeInfos;
  6558. Array<Variant> attributes;
  6559. /* readonly */
  6560. ShortStringHash baseType;
  6561. BlendMode blendMode;
  6562. /* readonly */
  6563. BoundingBox boundingBox;
  6564. bool castShadows;
  6565. /* readonly */
  6566. String category;
  6567. Color color;
  6568. float drawDistance;
  6569. bool enabled;
  6570. /* readonly */
  6571. bool enabledEffective;
  6572. bool flipX;
  6573. bool flipY;
  6574. /* readonly */
  6575. uint id;
  6576. /* readonly */
  6577. bool inView;
  6578. uint lightMask;
  6579. float lodBias;
  6580. Material material;
  6581. uint maxLights;
  6582. /* readonly */
  6583. Node node;
  6584. /* readonly */
  6585. uint numAttributes;
  6586. bool occludee;
  6587. bool occluder;
  6588. /* readonly */
  6589. int refs;
  6590. float shadowDistance;
  6591. uint shadowMask;
  6592. Sprite2D sprite;
  6593. bool temporary;
  6594. /* readonly */
  6595. ShortStringHash type;
  6596. /* readonly */
  6597. String typeName;
  6598. float unitPerPixel;
  6599. uint viewMask;
  6600. /* readonly */
  6601. int weakRefs;
  6602. /* readonly */
  6603. BoundingBox worldBoundingBox;
  6604. float zValue;
  6605. uint zoneMask;
  6606. };
  6607. class String
  6608. {
  6609. // Methods:
  6610. void AppendUTF8(uint);
  6611. uint AtUTF8(uint) const;
  6612. uint ByteOffsetUTF8(uint) const;
  6613. void Clear();
  6614. int Compare(const String&, bool = true) const;
  6615. bool Contains(const String&, bool = true) const;
  6616. bool Contains(uint8, bool = true) const;
  6617. bool EndsWith(const String&, bool = true) const;
  6618. uint Find(const String&, uint = 0, bool = true) const;
  6619. uint Find(uint8, uint = 0, bool = true) const;
  6620. uint FindLast(const String&, uint = 0xffffffff, bool = true) const;
  6621. uint FindLast(uint8, uint = 0xffffffff, bool = true) const;
  6622. void Join(Array<String>&, const String&);
  6623. uint NextUTF8Char(uint&) const;
  6624. void Replace(const String&, const String&, bool = true);
  6625. void Replace(uint8, uint8, bool = true);
  6626. void ReplaceUTF8(uint, uint);
  6627. String Replaced(const String&, const String&, bool = true) const;
  6628. String Replaced(uint8, uint8, bool = true) const;
  6629. void Resize(uint);
  6630. void SetUTF8FromLatin1(const String&);
  6631. Array<String> Split(uint8) const;
  6632. bool StartsWith(const String&, bool = true) const;
  6633. String Substring(uint) const;
  6634. String Substring(uint, uint) const;
  6635. String SubstringUTF8(uint) const;
  6636. String SubstringUTF8(uint, uint) const;
  6637. bool ToBool() const;
  6638. Color ToColor() const;
  6639. float ToFloat() const;
  6640. int ToInt() const;
  6641. IntRect ToIntRect() const;
  6642. IntVector2 ToIntVector2() const;
  6643. String ToLower() const;
  6644. Quaternion ToQuaternion() const;
  6645. uint ToUInt() const;
  6646. String ToUpper() const;
  6647. Vector2 ToVector2() const;
  6648. Vector3 ToVector3() const;
  6649. Vector4 ToVector4(bool = false) const;
  6650. Variant ToVectorVariant() const;
  6651. String Trimmed() const;
  6652. // Properties:
  6653. /* readonly */
  6654. bool empty;
  6655. /* readonly */
  6656. uint length;
  6657. /* readonly */
  6658. uint utf8Length;
  6659. };
  6660. class StringHash
  6661. {
  6662. // Methods:
  6663. String ToString() const;
  6664. // Properties:
  6665. /* readonly */
  6666. uint value;
  6667. };
  6668. class Technique
  6669. {
  6670. // Methods:
  6671. Pass CreatePass(StringHash);
  6672. bool HasPass(StringHash) const;
  6673. bool Load(File);
  6674. void RemovePass(StringHash);
  6675. bool Save(File) const;
  6676. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6677. // Properties:
  6678. /* readonly */
  6679. ShortStringHash baseType;
  6680. /* readonly */
  6681. String category;
  6682. /* readonly */
  6683. uint memoryUse;
  6684. String name;
  6685. /* readonly */
  6686. Array<Pass> passes;
  6687. /* readonly */
  6688. int refs;
  6689. bool sm3;
  6690. /* readonly */
  6691. ShortStringHash type;
  6692. /* readonly */
  6693. String typeName;
  6694. /* readonly */
  6695. uint useTimer;
  6696. /* readonly */
  6697. int weakRefs;
  6698. };
  6699. class TechniqueEntry
  6700. {
  6701. // Properties:
  6702. float lodDistance;
  6703. int qualityLevel;
  6704. Technique technique;
  6705. };
  6706. class Terrain
  6707. {
  6708. // Methods:
  6709. void ApplyAttributes();
  6710. void DrawDebugGeometry(DebugRenderer, bool);
  6711. Variant GetAttribute(const String&) const;
  6712. Variant GetAttributeDefault(const String&) const;
  6713. float GetHeight(const Vector3&) const;
  6714. Vector3 GetNormal(const Vector3&) const;
  6715. TerrainPatch GetPatch(int, int) const;
  6716. bool Load(File, bool = false);
  6717. bool LoadXML(const XMLElement&, bool = false);
  6718. void MarkNetworkUpdate() const;
  6719. void Remove();
  6720. void RemoveInstanceDefault();
  6721. void ResetToDefault();
  6722. bool Save(File) const;
  6723. bool SaveXML(XMLElement&) const;
  6724. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6725. bool SetAttribute(const String&, const Variant&);
  6726. // Properties:
  6727. /* readonly */
  6728. Array<Variant> attributeDefaults;
  6729. /* readonly */
  6730. Array<AttributeInfo> attributeInfos;
  6731. Array<Variant> attributes;
  6732. /* readonly */
  6733. ShortStringHash baseType;
  6734. bool castShadows;
  6735. /* readonly */
  6736. String category;
  6737. float drawDistance;
  6738. bool enabled;
  6739. /* readonly */
  6740. bool enabledEffective;
  6741. Image heightMap;
  6742. /* readonly */
  6743. uint id;
  6744. uint lightMask;
  6745. float lodBias;
  6746. Material material;
  6747. uint maxLights;
  6748. /* readonly */
  6749. Node node;
  6750. /* readonly */
  6751. uint numAttributes;
  6752. /* readonly */
  6753. IntVector2 numPatches;
  6754. /* readonly */
  6755. IntVector2 numVertices;
  6756. bool occludee;
  6757. bool occluder;
  6758. int patchSize;
  6759. /* readonly */
  6760. Array<TerrainPatch> patches;
  6761. /* readonly */
  6762. int refs;
  6763. float shadowDistance;
  6764. uint shadowMask;
  6765. bool smoothing;
  6766. Vector3 spacing;
  6767. bool temporary;
  6768. /* readonly */
  6769. ShortStringHash type;
  6770. /* readonly */
  6771. String typeName;
  6772. uint viewMask;
  6773. /* readonly */
  6774. int weakRefs;
  6775. uint zoneMask;
  6776. };
  6777. class TerrainPatch
  6778. {
  6779. // Methods:
  6780. void ApplyAttributes();
  6781. void DrawDebugGeometry(DebugRenderer, bool);
  6782. Variant GetAttribute(const String&) const;
  6783. Variant GetAttributeDefault(const String&) const;
  6784. bool IsInView(Camera) const;
  6785. bool Load(File, bool = false);
  6786. bool LoadXML(const XMLElement&, bool = false);
  6787. void MarkNetworkUpdate() const;
  6788. void Remove();
  6789. void RemoveInstanceDefault();
  6790. void ResetToDefault();
  6791. bool Save(File) const;
  6792. bool SaveXML(XMLElement&) const;
  6793. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6794. bool SetAttribute(const String&, const Variant&);
  6795. // Properties:
  6796. /* readonly */
  6797. Array<Variant> attributeDefaults;
  6798. /* readonly */
  6799. Array<AttributeInfo> attributeInfos;
  6800. Array<Variant> attributes;
  6801. /* readonly */
  6802. ShortStringHash baseType;
  6803. /* readonly */
  6804. BoundingBox boundingBox;
  6805. bool castShadows;
  6806. /* readonly */
  6807. String category;
  6808. float drawDistance;
  6809. bool enabled;
  6810. /* readonly */
  6811. bool enabledEffective;
  6812. /* readonly */
  6813. uint id;
  6814. /* readonly */
  6815. bool inView;
  6816. uint lightMask;
  6817. float lodBias;
  6818. uint maxLights;
  6819. /* readonly */
  6820. Node node;
  6821. /* readonly */
  6822. uint numAttributes;
  6823. bool occludee;
  6824. bool occluder;
  6825. /* readonly */
  6826. int refs;
  6827. float shadowDistance;
  6828. uint shadowMask;
  6829. bool temporary;
  6830. /* readonly */
  6831. ShortStringHash type;
  6832. /* readonly */
  6833. String typeName;
  6834. uint viewMask;
  6835. /* readonly */
  6836. int weakRefs;
  6837. /* readonly */
  6838. BoundingBox worldBoundingBox;
  6839. uint zoneMask;
  6840. };
  6841. class Text
  6842. {
  6843. // Methods:
  6844. void AddChild(UIElement);
  6845. void ApplyAttributes();
  6846. void BringToFront();
  6847. void ClearSelection();
  6848. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  6849. void DisableLayoutUpdate();
  6850. IntVector2 ElementToScreen(const IntVector2&);
  6851. void EnableLayoutUpdate();
  6852. uint FindChild(UIElement) const;
  6853. Variant GetAttribute(const String&) const;
  6854. Variant GetAttributeDefault(const String&) const;
  6855. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  6856. UIElement GetChild(const String&, bool = false) const;
  6857. Array<UIElement> GetChildren(bool = false) const;
  6858. UIElement GetElementEventSender() const;
  6859. uint GetNumChildren(bool) const;
  6860. void InsertChild(uint, UIElement);
  6861. bool IsInside(IntVector2, bool);
  6862. bool IsInsideCombined(IntVector2, bool);
  6863. bool Load(File, bool = false);
  6864. bool LoadChildXML(XMLFile, XMLFile = null);
  6865. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  6866. bool LoadXML(File);
  6867. bool LoadXML(XMLFile, XMLFile);
  6868. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  6869. bool LoadXML(const XMLElement&, bool = false);
  6870. void Remove();
  6871. void RemoveAllChildren();
  6872. void RemoveChild(UIElement, uint = 0);
  6873. void RemoveChild(uint);
  6874. void RemoveInstanceDefault();
  6875. void ResetToDefault();
  6876. bool Save(File) const;
  6877. bool SaveXML(File);
  6878. bool SaveXML(XMLElement&) const;
  6879. IntVector2 ScreenToElement(const IntVector2&);
  6880. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  6881. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  6882. bool SetAttribute(const String&, const Variant&);
  6883. void SetFixedHeight(int);
  6884. void SetFixedSize(int, int);
  6885. void SetFixedWidth(int);
  6886. bool SetFont(Font, int);
  6887. bool SetFont(const String&, int);
  6888. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  6889. void SetMaxSize(int, int);
  6890. void SetMinSize(int, int);
  6891. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  6892. void SetPosition(int, int);
  6893. void SetSelection(uint, uint = M_MAX_UNSIGNED);
  6894. void SetSize(int, int);
  6895. bool SetStyle(const String&, XMLFile = null);
  6896. bool SetStyle(const XMLElement&);
  6897. bool SetStyleAuto(XMLFile = null);
  6898. void UpdateLayout();
  6899. const Variant& GetVar(const ShortStringHash&);
  6900. // Properties:
  6901. /* readonly */
  6902. Array<Variant> attributeDefaults;
  6903. /* readonly */
  6904. Array<AttributeInfo> attributeInfos;
  6905. Array<Variant> attributes;
  6906. /* readonly */
  6907. ShortStringHash baseType;
  6908. bool bringToBack;
  6909. bool bringToFront;
  6910. /* readonly */
  6911. String category;
  6912. /* readonly */
  6913. Array<IntVector2> charPositions;
  6914. /* readonly */
  6915. Array<IntVector2> charSizes;
  6916. /* readonly */
  6917. IntVector2 childOffset;
  6918. /* readonly */
  6919. Array<UIElement> children;
  6920. IntRect clipBorder;
  6921. bool clipChildren;
  6922. /* writeonly */
  6923. Color color;
  6924. /* readonly */
  6925. bool colorGradient;
  6926. Array<Color> colors;
  6927. /* readonly */
  6928. IntRect combinedScreenRect;
  6929. XMLFile defaultStyle;
  6930. /* readonly */
  6931. float derivedOpacity;
  6932. uint dragDropMode;
  6933. bool editable;
  6934. Color effectColor;
  6935. bool elementEventSender;
  6936. bool enabled;
  6937. /* readonly */
  6938. bool fixedHeight;
  6939. /* readonly */
  6940. bool fixedSize;
  6941. /* readonly */
  6942. bool fixedWidth;
  6943. bool focus;
  6944. FocusMode focusMode;
  6945. /* readonly */
  6946. Font font;
  6947. /* readonly */
  6948. int fontSize;
  6949. int height;
  6950. HorizontalAlignment horizontalAlignment;
  6951. Color hoverColor;
  6952. /* readonly */
  6953. bool hovering;
  6954. int indent;
  6955. int indentSpacing;
  6956. /* readonly */
  6957. int indentWidth;
  6958. bool internal;
  6959. IntRect layoutBorder;
  6960. LayoutMode layoutMode;
  6961. int layoutSpacing;
  6962. int maxHeight;
  6963. IntVector2 maxSize;
  6964. int maxWidth;
  6965. int minHeight;
  6966. IntVector2 minSize;
  6967. int minWidth;
  6968. String name;
  6969. /* readonly */
  6970. uint numAllChildren;
  6971. /* readonly */
  6972. uint numAttributes;
  6973. /* readonly */
  6974. uint numChars;
  6975. /* readonly */
  6976. uint numChildren;
  6977. /* readonly */
  6978. uint numRows;
  6979. float opacity;
  6980. UIElement parent;
  6981. IntVector2 position;
  6982. int priority;
  6983. /* readonly */
  6984. int refs;
  6985. /* readonly */
  6986. UIElement root;
  6987. /* readonly */
  6988. int rowHeight;
  6989. float rowSpacing;
  6990. /* readonly */
  6991. Array<int> rowWidths;
  6992. /* readonly */
  6993. IntVector2 screenPosition;
  6994. bool selected;
  6995. Color selectionColor;
  6996. /* readonly */
  6997. uint selectionLength;
  6998. /* readonly */
  6999. uint selectionStart;
  7000. IntVector2 size;
  7001. bool sortChildren;
  7002. String style;
  7003. bool temporary;
  7004. String text;
  7005. HorizontalAlignment textAlignment;
  7006. TextEffect textEffect;
  7007. TraversalMode traversalMode;
  7008. /* readonly */
  7009. ShortStringHash type;
  7010. /* readonly */
  7011. String typeName;
  7012. bool useDerivedOpacity;
  7013. /* readonly */
  7014. VariantMap vars;
  7015. VerticalAlignment verticalAlignment;
  7016. bool visible;
  7017. /* readonly */
  7018. int weakRefs;
  7019. int width;
  7020. bool wordwrap;
  7021. };
  7022. class Text3D
  7023. {
  7024. // Methods:
  7025. void ApplyAttributes();
  7026. void DrawDebugGeometry(DebugRenderer, bool);
  7027. Variant GetAttribute(const String&) const;
  7028. Variant GetAttributeDefault(const String&) const;
  7029. bool IsInView(Camera) const;
  7030. bool Load(File, bool = false);
  7031. bool LoadXML(const XMLElement&, bool = false);
  7032. void MarkNetworkUpdate() const;
  7033. void Remove();
  7034. void RemoveInstanceDefault();
  7035. void ResetToDefault();
  7036. bool Save(File) const;
  7037. bool SaveXML(XMLElement&) const;
  7038. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7039. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  7040. bool SetAttribute(const String&, const Variant&);
  7041. bool SetFont(Font, int);
  7042. bool SetFont(const String&, int);
  7043. // Properties:
  7044. /* readonly */
  7045. Array<Variant> attributeDefaults;
  7046. /* readonly */
  7047. Array<AttributeInfo> attributeInfos;
  7048. Array<Variant> attributes;
  7049. /* readonly */
  7050. ShortStringHash baseType;
  7051. /* readonly */
  7052. BoundingBox boundingBox;
  7053. bool castShadows;
  7054. /* readonly */
  7055. String category;
  7056. /* readonly */
  7057. Array<IntVector2> charPositions;
  7058. /* readonly */
  7059. Array<IntVector2> charSizes;
  7060. /* writeonly */
  7061. Color color;
  7062. Array<Color> colors;
  7063. float drawDistance;
  7064. Color effectColor;
  7065. float effectDepthBias;
  7066. bool enabled;
  7067. /* readonly */
  7068. bool enabledEffective;
  7069. bool faceCamera;
  7070. /* readonly */
  7071. Font font;
  7072. /* readonly */
  7073. int fontSize;
  7074. HorizontalAlignment horizontalAlignment;
  7075. /* readonly */
  7076. uint id;
  7077. /* readonly */
  7078. bool inView;
  7079. uint lightMask;
  7080. float lodBias;
  7081. Material material;
  7082. uint maxLights;
  7083. /* readonly */
  7084. Node node;
  7085. /* readonly */
  7086. uint numAttributes;
  7087. /* readonly */
  7088. uint numChars;
  7089. /* readonly */
  7090. uint numRows;
  7091. bool occludee;
  7092. bool occluder;
  7093. float opacity;
  7094. /* readonly */
  7095. int refs;
  7096. /* readonly */
  7097. int rowHeight;
  7098. float rowSpacing;
  7099. /* readonly */
  7100. Array<int> rowWidths;
  7101. float shadowDistance;
  7102. uint shadowMask;
  7103. bool temporary;
  7104. String text;
  7105. HorizontalAlignment textAlignment;
  7106. TextEffect textEffect;
  7107. /* readonly */
  7108. ShortStringHash type;
  7109. /* readonly */
  7110. String typeName;
  7111. VerticalAlignment verticalAlignment;
  7112. uint viewMask;
  7113. /* readonly */
  7114. int weakRefs;
  7115. int width;
  7116. bool wordwrap;
  7117. /* readonly */
  7118. BoundingBox worldBoundingBox;
  7119. uint zoneMask;
  7120. };
  7121. class Texture
  7122. {
  7123. // Methods:
  7124. void ClearDataLost();
  7125. bool Load(File);
  7126. bool Save(File) const;
  7127. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7128. void SetNumLevels(uint);
  7129. // Properties:
  7130. Array<TextureAddressMode> addressMode;
  7131. Texture backupTexture;
  7132. /* readonly */
  7133. ShortStringHash baseType;
  7134. Color borderColor;
  7135. /* readonly */
  7136. String category;
  7137. /* readonly */
  7138. bool compressed;
  7139. /* readonly */
  7140. bool dataLost;
  7141. TextureFilterMode filterMode;
  7142. /* readonly */
  7143. uint format;
  7144. /* readonly */
  7145. int height;
  7146. /* readonly */
  7147. Array<int> levelHeight;
  7148. /* readonly */
  7149. Array<int> levelWidth;
  7150. /* readonly */
  7151. uint levels;
  7152. /* readonly */
  7153. uint memoryUse;
  7154. Array<int> mipsToSkip;
  7155. String name;
  7156. /* readonly */
  7157. int refs;
  7158. bool sRGB;
  7159. /* readonly */
  7160. ShortStringHash type;
  7161. /* readonly */
  7162. String typeName;
  7163. /* readonly */
  7164. TextureUsage usage;
  7165. /* readonly */
  7166. uint useTimer;
  7167. /* readonly */
  7168. int weakRefs;
  7169. /* readonly */
  7170. int width;
  7171. };
  7172. class Texture2D
  7173. {
  7174. // Methods:
  7175. void ClearDataLost();
  7176. bool Load(File);
  7177. bool Load(Image, bool = false);
  7178. bool Save(File) const;
  7179. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7180. void SetNumLevels(uint);
  7181. bool SetSize(int, int, uint, TextureUsage = TEXTURE_STATIC);
  7182. // Properties:
  7183. Array<TextureAddressMode> addressMode;
  7184. Texture backupTexture;
  7185. /* readonly */
  7186. ShortStringHash baseType;
  7187. Color borderColor;
  7188. /* readonly */
  7189. String category;
  7190. /* readonly */
  7191. bool compressed;
  7192. /* readonly */
  7193. bool dataLost;
  7194. TextureFilterMode filterMode;
  7195. /* readonly */
  7196. uint format;
  7197. /* readonly */
  7198. int height;
  7199. /* readonly */
  7200. Array<int> levelHeight;
  7201. /* readonly */
  7202. Array<int> levelWidth;
  7203. /* readonly */
  7204. uint levels;
  7205. /* readonly */
  7206. uint memoryUse;
  7207. Array<int> mipsToSkip;
  7208. String name;
  7209. /* readonly */
  7210. int refs;
  7211. /* readonly */
  7212. RenderSurface renderSurface;
  7213. bool sRGB;
  7214. /* readonly */
  7215. ShortStringHash type;
  7216. /* readonly */
  7217. String typeName;
  7218. /* readonly */
  7219. TextureUsage usage;
  7220. /* readonly */
  7221. uint useTimer;
  7222. /* readonly */
  7223. int weakRefs;
  7224. /* readonly */
  7225. int width;
  7226. };
  7227. class Texture3D
  7228. {
  7229. // Methods:
  7230. void ClearDataLost();
  7231. bool Load(File);
  7232. bool Load(Image, bool = false);
  7233. bool Save(File) const;
  7234. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7235. void SetNumLevels(uint);
  7236. bool SetSize(int, int, uint, TextureUsage = TEXTURE_STATIC);
  7237. // Properties:
  7238. Array<TextureAddressMode> addressMode;
  7239. Texture backupTexture;
  7240. /* readonly */
  7241. ShortStringHash baseType;
  7242. Color borderColor;
  7243. /* readonly */
  7244. String category;
  7245. /* readonly */
  7246. bool compressed;
  7247. /* readonly */
  7248. bool dataLost;
  7249. TextureFilterMode filterMode;
  7250. /* readonly */
  7251. uint format;
  7252. /* readonly */
  7253. int height;
  7254. /* readonly */
  7255. Array<int> levelHeight;
  7256. /* readonly */
  7257. Array<int> levelWidth;
  7258. /* readonly */
  7259. uint levels;
  7260. /* readonly */
  7261. uint memoryUse;
  7262. Array<int> mipsToSkip;
  7263. String name;
  7264. /* readonly */
  7265. int refs;
  7266. /* readonly */
  7267. RenderSurface renderSurface;
  7268. bool sRGB;
  7269. /* readonly */
  7270. ShortStringHash type;
  7271. /* readonly */
  7272. String typeName;
  7273. /* readonly */
  7274. TextureUsage usage;
  7275. /* readonly */
  7276. uint useTimer;
  7277. /* readonly */
  7278. int weakRefs;
  7279. /* readonly */
  7280. int width;
  7281. };
  7282. class TextureCube
  7283. {
  7284. // Methods:
  7285. void ClearDataLost();
  7286. bool Load(CubeMapFace, Image, bool = false);
  7287. bool Load(File);
  7288. bool Save(File) const;
  7289. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7290. void SetNumLevels(uint);
  7291. bool SetSize(int, uint, TextureUsage = TEXTURE_STATIC);
  7292. // Properties:
  7293. Array<TextureAddressMode> addressMode;
  7294. Texture backupTexture;
  7295. /* readonly */
  7296. ShortStringHash baseType;
  7297. Color borderColor;
  7298. /* readonly */
  7299. String category;
  7300. /* readonly */
  7301. bool compressed;
  7302. /* readonly */
  7303. bool dataLost;
  7304. TextureFilterMode filterMode;
  7305. /* readonly */
  7306. uint format;
  7307. /* readonly */
  7308. int height;
  7309. /* readonly */
  7310. Array<int> levelHeight;
  7311. /* readonly */
  7312. Array<int> levelWidth;
  7313. /* readonly */
  7314. uint levels;
  7315. /* readonly */
  7316. uint memoryUse;
  7317. Array<int> mipsToSkip;
  7318. String name;
  7319. /* readonly */
  7320. int refs;
  7321. /* readonly */
  7322. Array<RenderSurface> renderSurfaces;
  7323. bool sRGB;
  7324. /* readonly */
  7325. ShortStringHash type;
  7326. /* readonly */
  7327. String typeName;
  7328. /* readonly */
  7329. TextureUsage usage;
  7330. /* readonly */
  7331. uint useTimer;
  7332. /* readonly */
  7333. int weakRefs;
  7334. /* readonly */
  7335. int width;
  7336. };
  7337. class TextureFrame
  7338. {
  7339. // Properties:
  7340. float time;
  7341. Rect uv;
  7342. };
  7343. class Time
  7344. {
  7345. // Methods:
  7346. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7347. // Properties:
  7348. /* readonly */
  7349. ShortStringHash baseType;
  7350. /* readonly */
  7351. String category;
  7352. /* readonly */
  7353. float elapsedTime;
  7354. /* readonly */
  7355. uint frameNumber;
  7356. /* readonly */
  7357. int refs;
  7358. /* readonly */
  7359. uint systemTime;
  7360. /* readonly */
  7361. String timeStamp;
  7362. /* readonly */
  7363. float timeStep;
  7364. /* readonly */
  7365. ShortStringHash type;
  7366. /* readonly */
  7367. String typeName;
  7368. /* readonly */
  7369. int weakRefs;
  7370. };
  7371. class Timer
  7372. {
  7373. // Methods:
  7374. uint GetMSec(bool);
  7375. void Reset();
  7376. };
  7377. class ToolTip
  7378. {
  7379. // Methods:
  7380. void AddChild(UIElement);
  7381. void ApplyAttributes();
  7382. void BringToFront();
  7383. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  7384. void DisableLayoutUpdate();
  7385. IntVector2 ElementToScreen(const IntVector2&);
  7386. void EnableLayoutUpdate();
  7387. uint FindChild(UIElement) const;
  7388. Variant GetAttribute(const String&) const;
  7389. Variant GetAttributeDefault(const String&) const;
  7390. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  7391. UIElement GetChild(const String&, bool = false) const;
  7392. Array<UIElement> GetChildren(bool = false) const;
  7393. UIElement GetElementEventSender() const;
  7394. uint GetNumChildren(bool) const;
  7395. void InsertChild(uint, UIElement);
  7396. bool IsInside(IntVector2, bool);
  7397. bool IsInsideCombined(IntVector2, bool);
  7398. bool Load(File, bool = false);
  7399. bool LoadChildXML(XMLFile, XMLFile = null);
  7400. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  7401. bool LoadXML(File);
  7402. bool LoadXML(XMLFile, XMLFile);
  7403. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  7404. bool LoadXML(const XMLElement&, bool = false);
  7405. void Remove();
  7406. void RemoveAllChildren();
  7407. void RemoveChild(UIElement, uint = 0);
  7408. void RemoveChild(uint);
  7409. void RemoveInstanceDefault();
  7410. void ResetToDefault();
  7411. bool Save(File) const;
  7412. bool SaveXML(File);
  7413. bool SaveXML(XMLElement&) const;
  7414. IntVector2 ScreenToElement(const IntVector2&);
  7415. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7416. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  7417. bool SetAttribute(const String&, const Variant&);
  7418. void SetFixedHeight(int);
  7419. void SetFixedSize(int, int);
  7420. void SetFixedWidth(int);
  7421. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  7422. void SetMaxSize(int, int);
  7423. void SetMinSize(int, int);
  7424. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  7425. void SetPosition(int, int);
  7426. void SetSize(int, int);
  7427. bool SetStyle(const String&, XMLFile = null);
  7428. bool SetStyle(const XMLElement&);
  7429. bool SetStyleAuto(XMLFile = null);
  7430. void UpdateLayout();
  7431. const Variant& GetVar(const ShortStringHash&);
  7432. // Properties:
  7433. /* readonly */
  7434. Array<Variant> attributeDefaults;
  7435. /* readonly */
  7436. Array<AttributeInfo> attributeInfos;
  7437. Array<Variant> attributes;
  7438. /* readonly */
  7439. ShortStringHash baseType;
  7440. bool bringToBack;
  7441. bool bringToFront;
  7442. /* readonly */
  7443. String category;
  7444. /* readonly */
  7445. IntVector2 childOffset;
  7446. /* readonly */
  7447. Array<UIElement> children;
  7448. IntRect clipBorder;
  7449. bool clipChildren;
  7450. /* writeonly */
  7451. Color color;
  7452. /* readonly */
  7453. bool colorGradient;
  7454. Array<Color> colors;
  7455. /* readonly */
  7456. IntRect combinedScreenRect;
  7457. XMLFile defaultStyle;
  7458. float delay;
  7459. /* readonly */
  7460. float derivedOpacity;
  7461. uint dragDropMode;
  7462. bool editable;
  7463. bool elementEventSender;
  7464. bool enabled;
  7465. /* readonly */
  7466. bool fixedHeight;
  7467. /* readonly */
  7468. bool fixedSize;
  7469. /* readonly */
  7470. bool fixedWidth;
  7471. bool focus;
  7472. FocusMode focusMode;
  7473. int height;
  7474. HorizontalAlignment horizontalAlignment;
  7475. /* readonly */
  7476. bool hovering;
  7477. int indent;
  7478. int indentSpacing;
  7479. /* readonly */
  7480. int indentWidth;
  7481. bool internal;
  7482. IntRect layoutBorder;
  7483. LayoutMode layoutMode;
  7484. int layoutSpacing;
  7485. int maxHeight;
  7486. IntVector2 maxSize;
  7487. int maxWidth;
  7488. int minHeight;
  7489. IntVector2 minSize;
  7490. int minWidth;
  7491. String name;
  7492. /* readonly */
  7493. uint numAllChildren;
  7494. /* readonly */
  7495. uint numAttributes;
  7496. /* readonly */
  7497. uint numChildren;
  7498. float opacity;
  7499. UIElement parent;
  7500. IntVector2 position;
  7501. int priority;
  7502. /* readonly */
  7503. int refs;
  7504. /* readonly */
  7505. UIElement root;
  7506. /* readonly */
  7507. IntVector2 screenPosition;
  7508. bool selected;
  7509. IntVector2 size;
  7510. bool sortChildren;
  7511. String style;
  7512. bool temporary;
  7513. TraversalMode traversalMode;
  7514. /* readonly */
  7515. ShortStringHash type;
  7516. /* readonly */
  7517. String typeName;
  7518. bool useDerivedOpacity;
  7519. /* readonly */
  7520. VariantMap vars;
  7521. VerticalAlignment verticalAlignment;
  7522. bool visible;
  7523. /* readonly */
  7524. int weakRefs;
  7525. int width;
  7526. };
  7527. class TouchState
  7528. {
  7529. // Properties:
  7530. IntVector2 delta;
  7531. IntVector2 lastPosition;
  7532. IntVector2 position;
  7533. float pressure;
  7534. int touchID;
  7535. };
  7536. class UI
  7537. {
  7538. // Methods:
  7539. void Clear();
  7540. void DebugDraw(UIElement);
  7541. UIElement GetElementAt(const IntVector2&, bool = true);
  7542. UIElement GetElementAt(int, int, bool = true);
  7543. bool HasModalElement() const;
  7544. UIElement LoadLayout(File);
  7545. UIElement LoadLayout(File, XMLFile);
  7546. UIElement LoadLayout(XMLFile);
  7547. UIElement LoadLayout(XMLFile, XMLFile);
  7548. bool SaveLayout(File, UIElement);
  7549. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7550. void SetFocusElement(UIElement, bool = false);
  7551. // Properties:
  7552. /* readonly */
  7553. ShortStringHash baseType;
  7554. /* readonly */
  7555. String category;
  7556. String clipBoardText;
  7557. Cursor cursor;
  7558. /* readonly */
  7559. IntVector2 cursorPosition;
  7560. float defaultToolTipDelay;
  7561. float doubleClickInterval;
  7562. int dragBeginDistance;
  7563. float dragBeginInterval;
  7564. /* readonly */
  7565. UIElement dragElement;
  7566. UIElement focusElement;
  7567. bool forceAutoHint;
  7568. /* readonly */
  7569. UIElement frontElement;
  7570. int maxFontTextureSize;
  7571. /* readonly */
  7572. UIElement modalRoot;
  7573. bool nonFocusedMouseWheel;
  7574. /* readonly */
  7575. int refs;
  7576. /* readonly */
  7577. UIElement root;
  7578. /* readonly */
  7579. ShortStringHash type;
  7580. /* readonly */
  7581. String typeName;
  7582. bool useMutableGlyphs;
  7583. bool useScreenKeyboard;
  7584. bool useSystemClipBoard;
  7585. /* readonly */
  7586. int weakRefs;
  7587. };
  7588. class UIElement
  7589. {
  7590. // Methods:
  7591. void AddChild(UIElement);
  7592. void ApplyAttributes();
  7593. void BringToFront();
  7594. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  7595. void DisableLayoutUpdate();
  7596. IntVector2 ElementToScreen(const IntVector2&);
  7597. void EnableLayoutUpdate();
  7598. uint FindChild(UIElement) const;
  7599. Variant GetAttribute(const String&) const;
  7600. Variant GetAttributeDefault(const String&) const;
  7601. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  7602. UIElement GetChild(const String&, bool = false) const;
  7603. Array<UIElement> GetChildren(bool = false) const;
  7604. UIElement GetElementEventSender() const;
  7605. uint GetNumChildren(bool) const;
  7606. void InsertChild(uint, UIElement);
  7607. bool IsInside(IntVector2, bool);
  7608. bool IsInsideCombined(IntVector2, bool);
  7609. bool Load(File, bool = false);
  7610. bool LoadChildXML(XMLFile, XMLFile = null);
  7611. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  7612. bool LoadXML(File);
  7613. bool LoadXML(XMLFile, XMLFile);
  7614. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  7615. bool LoadXML(const XMLElement&, bool = false);
  7616. void Remove();
  7617. void RemoveAllChildren();
  7618. void RemoveChild(UIElement, uint = 0);
  7619. void RemoveChild(uint);
  7620. void RemoveInstanceDefault();
  7621. void ResetToDefault();
  7622. bool Save(File) const;
  7623. bool SaveXML(File);
  7624. bool SaveXML(XMLElement&) const;
  7625. IntVector2 ScreenToElement(const IntVector2&);
  7626. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7627. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  7628. bool SetAttribute(const String&, const Variant&);
  7629. void SetFixedHeight(int);
  7630. void SetFixedSize(int, int);
  7631. void SetFixedWidth(int);
  7632. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  7633. void SetMaxSize(int, int);
  7634. void SetMinSize(int, int);
  7635. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  7636. void SetPosition(int, int);
  7637. void SetSize(int, int);
  7638. bool SetStyle(const String&, XMLFile = null);
  7639. bool SetStyle(const XMLElement&);
  7640. bool SetStyleAuto(XMLFile = null);
  7641. void UpdateLayout();
  7642. const Variant& GetVar(const ShortStringHash&);
  7643. // Properties:
  7644. /* readonly */
  7645. Array<Variant> attributeDefaults;
  7646. /* readonly */
  7647. Array<AttributeInfo> attributeInfos;
  7648. Array<Variant> attributes;
  7649. /* readonly */
  7650. ShortStringHash baseType;
  7651. bool bringToBack;
  7652. bool bringToFront;
  7653. /* readonly */
  7654. String category;
  7655. /* readonly */
  7656. IntVector2 childOffset;
  7657. /* readonly */
  7658. Array<UIElement> children;
  7659. IntRect clipBorder;
  7660. bool clipChildren;
  7661. /* writeonly */
  7662. Color color;
  7663. /* readonly */
  7664. bool colorGradient;
  7665. Array<Color> colors;
  7666. /* readonly */
  7667. IntRect combinedScreenRect;
  7668. XMLFile defaultStyle;
  7669. /* readonly */
  7670. float derivedOpacity;
  7671. uint dragDropMode;
  7672. bool editable;
  7673. bool elementEventSender;
  7674. bool enabled;
  7675. /* readonly */
  7676. bool fixedHeight;
  7677. /* readonly */
  7678. bool fixedSize;
  7679. /* readonly */
  7680. bool fixedWidth;
  7681. bool focus;
  7682. FocusMode focusMode;
  7683. int height;
  7684. HorizontalAlignment horizontalAlignment;
  7685. /* readonly */
  7686. bool hovering;
  7687. int indent;
  7688. int indentSpacing;
  7689. /* readonly */
  7690. int indentWidth;
  7691. bool internal;
  7692. IntRect layoutBorder;
  7693. LayoutMode layoutMode;
  7694. int layoutSpacing;
  7695. int maxHeight;
  7696. IntVector2 maxSize;
  7697. int maxWidth;
  7698. int minHeight;
  7699. IntVector2 minSize;
  7700. int minWidth;
  7701. String name;
  7702. /* readonly */
  7703. uint numAllChildren;
  7704. /* readonly */
  7705. uint numAttributes;
  7706. /* readonly */
  7707. uint numChildren;
  7708. float opacity;
  7709. UIElement parent;
  7710. IntVector2 position;
  7711. int priority;
  7712. /* readonly */
  7713. int refs;
  7714. /* readonly */
  7715. UIElement root;
  7716. /* readonly */
  7717. IntVector2 screenPosition;
  7718. bool selected;
  7719. IntVector2 size;
  7720. bool sortChildren;
  7721. String style;
  7722. bool temporary;
  7723. TraversalMode traversalMode;
  7724. /* readonly */
  7725. ShortStringHash type;
  7726. /* readonly */
  7727. String typeName;
  7728. bool useDerivedOpacity;
  7729. /* readonly */
  7730. VariantMap vars;
  7731. VerticalAlignment verticalAlignment;
  7732. bool visible;
  7733. /* readonly */
  7734. int weakRefs;
  7735. int width;
  7736. };
  7737. class Variant
  7738. {
  7739. // Methods:
  7740. void Clear();
  7741. const Color& GetColor() const;
  7742. void FromString(VariantType, const String&);
  7743. void FromString(const String&, const String&);
  7744. bool GetBool() const;
  7745. VectorBuffer GetBuffer() const;
  7746. float GetFloat() const;
  7747. int GetInt() const;
  7748. RefCounted GetPtr() const;
  7749. ShortStringHash GetShortStringHash() const;
  7750. StringHash GetStringHash() const;
  7751. uint GetUInt() const;
  7752. Array<Variant> GetVariantVector() const;
  7753. const IntRect& GetIntRect() const;
  7754. const IntVector2& GetIntVector2() const;
  7755. const Quaternion& GetQuaternion() const;
  7756. const ResourceRef& GetResourceRef() const;
  7757. const ResourceRefList& GetResourceRefList() const;
  7758. const String& GetString() const;
  7759. String ToString() const;
  7760. const VariantMap& GetVariantMap() const;
  7761. const Vector2& GetVector2() const;
  7762. const Vector3& GetVector3() const;
  7763. const Vector4& GetVector4() const;
  7764. /* deprecated */
  7765. Camera GetCamera() const;
  7766. /* deprecated */
  7767. CollisionShape GetCollisionShape() const;
  7768. /* deprecated */
  7769. Component GetComponent() const;
  7770. /* deprecated */
  7771. Connection GetConnection() const;
  7772. /* deprecated */
  7773. Node GetNode() const;
  7774. /* deprecated */
  7775. PhysicsWorld GetPhysicsWorld() const;
  7776. /* deprecated */
  7777. RenderSurface GetRenderSurface() const;
  7778. /* deprecated */
  7779. RigidBody GetRigidBody() const;
  7780. /* deprecated */
  7781. Scene GetScene() const;
  7782. /* deprecated */
  7783. Serializable GetSerializable() const;
  7784. /* deprecated */
  7785. Texture GetTexture() const;
  7786. /* deprecated */
  7787. UIElement GetUIElement() const;
  7788. // Properties:
  7789. /* readonly */
  7790. bool empty;
  7791. /* readonly */
  7792. VariantType type;
  7793. /* readonly */
  7794. String typeName;
  7795. /* readonly */
  7796. bool zero;
  7797. };
  7798. class VariantMap
  7799. {
  7800. // Methods:
  7801. void Clear();
  7802. bool Contains(ShortStringHash) const;
  7803. bool Contains(const String&) const;
  7804. bool Erase(ShortStringHash);
  7805. bool Erase(const String&);
  7806. // Properties:
  7807. /* readonly */
  7808. Array<ShortStringHash> keys;
  7809. /* readonly */
  7810. uint length;
  7811. };
  7812. class Vector2
  7813. {
  7814. // Methods:
  7815. float AbsDotProduct(const Vector2&) const;
  7816. float DotProduct(const Vector2&) const;
  7817. bool Equals(const Vector2&) const;
  7818. Vector2 Lerp(const Vector2&, float) const;
  7819. void Normalize();
  7820. Vector2 Normalized() const;
  7821. String ToString() const;
  7822. // Properties:
  7823. /* readonly */
  7824. Array<float> data;
  7825. /* readonly */
  7826. float length;
  7827. /* readonly */
  7828. float lengthSquared;
  7829. float x;
  7830. float y;
  7831. };
  7832. class Vector3
  7833. {
  7834. // Methods:
  7835. float AbsDotProduct(const Vector3&) const;
  7836. float Angle(const Vector3&) const;
  7837. Vector3 CrossProduct(const Vector3&) const;
  7838. float DotProduct(const Vector3&) const;
  7839. bool Equals(const Vector3&) const;
  7840. Vector3 Lerp(const Vector3&, float) const;
  7841. void Normalize();
  7842. Vector3 Normalized() const;
  7843. String ToString() const;
  7844. // Properties:
  7845. /* readonly */
  7846. Array<float> data;
  7847. /* readonly */
  7848. float length;
  7849. /* readonly */
  7850. float lengthSquared;
  7851. float x;
  7852. float y;
  7853. float z;
  7854. };
  7855. class Vector4
  7856. {
  7857. // Methods:
  7858. float AbsDotProduct(const Vector4&) const;
  7859. float DotProduct(const Vector4&) const;
  7860. bool Equals(const Vector4&) const;
  7861. Vector4 Lerp(const Vector4&, float) const;
  7862. String ToString() const;
  7863. // Properties:
  7864. /* readonly */
  7865. Array<float> data;
  7866. float w;
  7867. float x;
  7868. float y;
  7869. float z;
  7870. };
  7871. class VectorBuffer
  7872. {
  7873. // Methods:
  7874. void Clear();
  7875. Array<uint8> Read(uint);
  7876. bool ReadBool();
  7877. BoundingBox ReadBoundingBox();
  7878. int8 ReadByte();
  7879. Color ReadColor();
  7880. String ReadFileID();
  7881. float ReadFloat();
  7882. int ReadInt();
  7883. IntRect ReadIntRect();
  7884. IntVector2 ReadIntVector2();
  7885. String ReadLine();
  7886. uint ReadNetID();
  7887. Quaternion ReadPackedQuaternion();
  7888. Vector3 ReadPackedVector3(float);
  7889. Quaternion ReadQuaternion();
  7890. int16 ReadShort();
  7891. ShortStringHash ReadShortStringHash();
  7892. String ReadString();
  7893. StringHash ReadStringHash();
  7894. uint8 ReadUByte();
  7895. uint ReadUInt();
  7896. uint16 ReadUShort();
  7897. uint ReadVLE();
  7898. Variant ReadVariant();
  7899. VariantMap ReadVariantMap();
  7900. Vector2 ReadVector2();
  7901. Vector3 ReadVector3();
  7902. Vector4 ReadVector4();
  7903. void Resize(uint);
  7904. uint Seek(uint);
  7905. void SetData(Deserializer, uint);
  7906. uint Write(Array<uint8>);
  7907. bool WriteBool(bool);
  7908. bool WriteBoundingBox(const BoundingBox&);
  7909. bool WriteByte(int8);
  7910. bool WriteColor(const Color&);
  7911. bool WriteFileID(const String&);
  7912. bool WriteFloat(float);
  7913. bool WriteInt(int);
  7914. bool WriteIntRect(const IntRect&);
  7915. bool WriteIntVector2(const IntVector2&);
  7916. bool WriteLine(const String&);
  7917. bool WriteNetID(uint);
  7918. bool WritePackedQuaternion(const Quaternion&);
  7919. bool WritePackedVector3(const Vector3&, float);
  7920. bool WriteQuaternion(const Quaternion&);
  7921. bool WriteShort(int16);
  7922. bool WriteShortStringHash(const ShortStringHash&);
  7923. bool WriteString(const String&);
  7924. bool WriteStringHash(const StringHash&);
  7925. bool WriteUByte(uint8);
  7926. bool WriteUInt(uint);
  7927. bool WriteUShort(uint16);
  7928. bool WriteVLE(uint);
  7929. bool WriteVariant(const Variant&);
  7930. bool WriteVariantMap(const VariantMap&);
  7931. bool WriteVector2(const Vector2&);
  7932. bool WriteVector3(const Vector3&);
  7933. bool WriteVector4(const Vector4&);
  7934. // Properties:
  7935. /* readonly */
  7936. uint checksum;
  7937. /* readonly */
  7938. bool eof;
  7939. /* readonly */
  7940. String name;
  7941. /* readonly */
  7942. uint position;
  7943. /* readonly */
  7944. uint size;
  7945. };
  7946. class View3D
  7947. {
  7948. // Methods:
  7949. void AddChild(UIElement);
  7950. void ApplyAttributes();
  7951. void BringToFront();
  7952. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  7953. void DisableLayoutUpdate();
  7954. IntVector2 ElementToScreen(const IntVector2&);
  7955. void EnableLayoutUpdate();
  7956. uint FindChild(UIElement) const;
  7957. Variant GetAttribute(const String&) const;
  7958. Variant GetAttributeDefault(const String&) const;
  7959. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  7960. UIElement GetChild(const String&, bool = false) const;
  7961. Array<UIElement> GetChildren(bool = false) const;
  7962. UIElement GetElementEventSender() const;
  7963. uint GetNumChildren(bool) const;
  7964. void InsertChild(uint, UIElement);
  7965. bool IsInside(IntVector2, bool);
  7966. bool IsInsideCombined(IntVector2, bool);
  7967. bool Load(File, bool = false);
  7968. bool LoadChildXML(XMLFile, XMLFile = null);
  7969. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  7970. bool LoadXML(File);
  7971. bool LoadXML(XMLFile, XMLFile);
  7972. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  7973. bool LoadXML(const XMLElement&, bool = false);
  7974. void QueueUpdate();
  7975. void Remove();
  7976. void RemoveAllChildren();
  7977. void RemoveChild(UIElement, uint = 0);
  7978. void RemoveChild(uint);
  7979. void RemoveInstanceDefault();
  7980. void ResetToDefault();
  7981. bool Save(File) const;
  7982. bool SaveXML(File);
  7983. bool SaveXML(XMLElement&) const;
  7984. IntVector2 ScreenToElement(const IntVector2&);
  7985. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  7986. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  7987. bool SetAttribute(const String&, const Variant&);
  7988. void SetFixedHeight(int);
  7989. void SetFixedSize(int, int);
  7990. void SetFixedWidth(int);
  7991. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  7992. void SetMaxSize(int, int);
  7993. void SetMinSize(int, int);
  7994. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  7995. void SetPosition(int, int);
  7996. void SetSize(int, int);
  7997. bool SetStyle(const String&, XMLFile = null);
  7998. bool SetStyle(const XMLElement&);
  7999. bool SetStyleAuto(XMLFile = null);
  8000. void SetView(Scene, Camera);
  8001. void UpdateLayout();
  8002. const Variant& GetVar(const ShortStringHash&);
  8003. // Properties:
  8004. /* readonly */
  8005. Array<Variant> attributeDefaults;
  8006. /* readonly */
  8007. Array<AttributeInfo> attributeInfos;
  8008. Array<Variant> attributes;
  8009. bool autoUpdate;
  8010. /* readonly */
  8011. ShortStringHash baseType;
  8012. bool bringToBack;
  8013. bool bringToFront;
  8014. /* readonly */
  8015. Node cameraNode;
  8016. /* readonly */
  8017. String category;
  8018. /* readonly */
  8019. IntVector2 childOffset;
  8020. /* readonly */
  8021. Array<UIElement> children;
  8022. IntRect clipBorder;
  8023. bool clipChildren;
  8024. /* writeonly */
  8025. Color color;
  8026. /* readonly */
  8027. bool colorGradient;
  8028. Array<Color> colors;
  8029. /* readonly */
  8030. IntRect combinedScreenRect;
  8031. XMLFile defaultStyle;
  8032. /* readonly */
  8033. Texture2D depthTexture;
  8034. /* readonly */
  8035. float derivedOpacity;
  8036. uint dragDropMode;
  8037. bool editable;
  8038. bool elementEventSender;
  8039. bool enabled;
  8040. /* readonly */
  8041. bool fixedHeight;
  8042. bool fixedHeightResizing;
  8043. /* readonly */
  8044. bool fixedSize;
  8045. /* readonly */
  8046. bool fixedWidth;
  8047. bool fixedWidthResizing;
  8048. bool focus;
  8049. FocusMode focusMode;
  8050. uint format;
  8051. int height;
  8052. HorizontalAlignment horizontalAlignment;
  8053. /* readonly */
  8054. bool hovering;
  8055. int indent;
  8056. int indentSpacing;
  8057. /* readonly */
  8058. int indentWidth;
  8059. bool internal;
  8060. IntRect layoutBorder;
  8061. LayoutMode layoutMode;
  8062. int layoutSpacing;
  8063. int maxHeight;
  8064. IntVector2 maxSize;
  8065. int maxWidth;
  8066. int minHeight;
  8067. IntVector2 minSize;
  8068. int minWidth;
  8069. bool modal;
  8070. Color modalFrameColor;
  8071. IntVector2 modalFrameSize;
  8072. Color modalShadeColor;
  8073. bool movable;
  8074. String name;
  8075. /* readonly */
  8076. uint numAllChildren;
  8077. /* readonly */
  8078. uint numAttributes;
  8079. /* readonly */
  8080. uint numChildren;
  8081. float opacity;
  8082. UIElement parent;
  8083. IntVector2 position;
  8084. int priority;
  8085. /* readonly */
  8086. int refs;
  8087. /* readonly */
  8088. Texture2D renderTexture;
  8089. bool resizable;
  8090. IntRect resizeBorder;
  8091. /* readonly */
  8092. UIElement root;
  8093. /* readonly */
  8094. Scene scene;
  8095. /* readonly */
  8096. IntVector2 screenPosition;
  8097. bool selected;
  8098. IntVector2 size;
  8099. bool sortChildren;
  8100. String style;
  8101. bool temporary;
  8102. TraversalMode traversalMode;
  8103. /* readonly */
  8104. ShortStringHash type;
  8105. /* readonly */
  8106. String typeName;
  8107. bool useDerivedOpacity;
  8108. /* readonly */
  8109. VariantMap vars;
  8110. VerticalAlignment verticalAlignment;
  8111. /* readonly */
  8112. Viewport viewport;
  8113. bool visible;
  8114. /* readonly */
  8115. int weakRefs;
  8116. int width;
  8117. };
  8118. class Viewport
  8119. {
  8120. // Methods:
  8121. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8122. void SetRenderPath(XMLFile);
  8123. // Properties:
  8124. /* readonly */
  8125. ShortStringHash baseType;
  8126. Camera camera;
  8127. /* readonly */
  8128. String category;
  8129. IntRect rect;
  8130. /* readonly */
  8131. int refs;
  8132. RenderPath renderPath;
  8133. Scene scene;
  8134. /* readonly */
  8135. ShortStringHash type;
  8136. /* readonly */
  8137. String typeName;
  8138. /* readonly */
  8139. int weakRefs;
  8140. };
  8141. class WeakHandle
  8142. {
  8143. // Methods:
  8144. RefCounted Get() const;
  8145. // Properties:
  8146. /* readonly */
  8147. bool expired;
  8148. /* readonly */
  8149. int refs;
  8150. /* readonly */
  8151. int weakRefs;
  8152. };
  8153. class Window
  8154. {
  8155. // Methods:
  8156. void AddChild(UIElement);
  8157. void ApplyAttributes();
  8158. void BringToFront();
  8159. UIElement CreateChild(const String&, const String& = String ( ), uint = M_MAX_UNSIGNED);
  8160. void DisableLayoutUpdate();
  8161. IntVector2 ElementToScreen(const IntVector2&);
  8162. void EnableLayoutUpdate();
  8163. uint FindChild(UIElement) const;
  8164. Variant GetAttribute(const String&) const;
  8165. Variant GetAttributeDefault(const String&) const;
  8166. UIElement GetChild(const ShortStringHash&, const Variant& = Variant ( ), bool = false) const;
  8167. UIElement GetChild(const String&, bool = false) const;
  8168. Array<UIElement> GetChildren(bool = false) const;
  8169. UIElement GetElementEventSender() const;
  8170. uint GetNumChildren(bool) const;
  8171. void InsertChild(uint, UIElement);
  8172. bool IsInside(IntVector2, bool);
  8173. bool IsInsideCombined(IntVector2, bool);
  8174. bool Load(File, bool = false);
  8175. bool LoadChildXML(XMLFile, XMLFile = null);
  8176. bool LoadChildXML(const XMLElement&, XMLFile = null, bool = false);
  8177. bool LoadXML(File);
  8178. bool LoadXML(XMLFile, XMLFile);
  8179. bool LoadXML(const XMLElement&, XMLFile, bool = false);
  8180. bool LoadXML(const XMLElement&, bool = false);
  8181. void Remove();
  8182. void RemoveAllChildren();
  8183. void RemoveChild(UIElement, uint = 0);
  8184. void RemoveChild(uint);
  8185. void RemoveInstanceDefault();
  8186. void ResetToDefault();
  8187. bool Save(File) const;
  8188. bool SaveXML(File);
  8189. bool SaveXML(XMLElement&) const;
  8190. IntVector2 ScreenToElement(const IntVector2&);
  8191. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8192. void SetAlignment(HorizontalAlignment, VerticalAlignment);
  8193. bool SetAttribute(const String&, const Variant&);
  8194. void SetFixedHeight(int);
  8195. void SetFixedSize(int, int);
  8196. void SetFixedWidth(int);
  8197. void SetLayout(LayoutMode, int = 0, const IntRect& = IntRect ( 0 , 0 , 0 , 0 ));
  8198. void SetMaxSize(int, int);
  8199. void SetMinSize(int, int);
  8200. void SetParent(UIElement, uint = M_MAX_UNSIGNED);
  8201. void SetPosition(int, int);
  8202. void SetSize(int, int);
  8203. bool SetStyle(const String&, XMLFile = null);
  8204. bool SetStyle(const XMLElement&);
  8205. bool SetStyleAuto(XMLFile = null);
  8206. void UpdateLayout();
  8207. const Variant& GetVar(const ShortStringHash&);
  8208. // Properties:
  8209. /* readonly */
  8210. Array<Variant> attributeDefaults;
  8211. /* readonly */
  8212. Array<AttributeInfo> attributeInfos;
  8213. Array<Variant> attributes;
  8214. /* readonly */
  8215. ShortStringHash baseType;
  8216. bool bringToBack;
  8217. bool bringToFront;
  8218. /* readonly */
  8219. String category;
  8220. /* readonly */
  8221. IntVector2 childOffset;
  8222. /* readonly */
  8223. Array<UIElement> children;
  8224. IntRect clipBorder;
  8225. bool clipChildren;
  8226. /* writeonly */
  8227. Color color;
  8228. /* readonly */
  8229. bool colorGradient;
  8230. Array<Color> colors;
  8231. /* readonly */
  8232. IntRect combinedScreenRect;
  8233. XMLFile defaultStyle;
  8234. /* readonly */
  8235. float derivedOpacity;
  8236. uint dragDropMode;
  8237. bool editable;
  8238. bool elementEventSender;
  8239. bool enabled;
  8240. /* readonly */
  8241. bool fixedHeight;
  8242. bool fixedHeightResizing;
  8243. /* readonly */
  8244. bool fixedSize;
  8245. /* readonly */
  8246. bool fixedWidth;
  8247. bool fixedWidthResizing;
  8248. bool focus;
  8249. FocusMode focusMode;
  8250. int height;
  8251. HorizontalAlignment horizontalAlignment;
  8252. /* readonly */
  8253. bool hovering;
  8254. int indent;
  8255. int indentSpacing;
  8256. /* readonly */
  8257. int indentWidth;
  8258. bool internal;
  8259. IntRect layoutBorder;
  8260. LayoutMode layoutMode;
  8261. int layoutSpacing;
  8262. int maxHeight;
  8263. IntVector2 maxSize;
  8264. int maxWidth;
  8265. int minHeight;
  8266. IntVector2 minSize;
  8267. int minWidth;
  8268. bool modal;
  8269. Color modalFrameColor;
  8270. IntVector2 modalFrameSize;
  8271. Color modalShadeColor;
  8272. bool movable;
  8273. String name;
  8274. /* readonly */
  8275. uint numAllChildren;
  8276. /* readonly */
  8277. uint numAttributes;
  8278. /* readonly */
  8279. uint numChildren;
  8280. float opacity;
  8281. UIElement parent;
  8282. IntVector2 position;
  8283. int priority;
  8284. /* readonly */
  8285. int refs;
  8286. bool resizable;
  8287. IntRect resizeBorder;
  8288. /* readonly */
  8289. UIElement root;
  8290. /* readonly */
  8291. IntVector2 screenPosition;
  8292. bool selected;
  8293. IntVector2 size;
  8294. bool sortChildren;
  8295. String style;
  8296. bool temporary;
  8297. TraversalMode traversalMode;
  8298. /* readonly */
  8299. ShortStringHash type;
  8300. /* readonly */
  8301. String typeName;
  8302. bool useDerivedOpacity;
  8303. /* readonly */
  8304. VariantMap vars;
  8305. VerticalAlignment verticalAlignment;
  8306. bool visible;
  8307. /* readonly */
  8308. int weakRefs;
  8309. int width;
  8310. };
  8311. class XMLElement
  8312. {
  8313. // Methods:
  8314. XMLElement CreateChild(const String&);
  8315. String GetAttribute(const String& = String ( )) const;
  8316. String GetAttributeLower(const String&) const;
  8317. Array<String> GetAttributeNames() const;
  8318. String GetAttributeUpper(const String&) const;
  8319. bool GetBool(const String&) const;
  8320. BoundingBox GetBoundingBox() const;
  8321. XMLElement GetChild(const String& = String ( )) const;
  8322. Color GetColor(const String&) const;
  8323. float GetFloat(const String&) const;
  8324. int GetInt(const String&) const;
  8325. XMLElement GetNext(const String& = String ( )) const;
  8326. Quaternion GetQuaternion(const String&) const;
  8327. ResourceRef GetResourceRef() const;
  8328. ResourceRefList GetResourceRefList() const;
  8329. uint GetUInt(const String&) const;
  8330. String GetValue() const;
  8331. Variant GetVariant() const;
  8332. VariantMap GetVariantMap() const;
  8333. Array<Variant> GetVariantVector() const;
  8334. Vector2 GetVector2(const String&) const;
  8335. Vector3 GetVector3(const String&) const;
  8336. Vector4 GetVector4(const String&) const;
  8337. Variant GetVectorVariant(const String&) const;
  8338. bool HasAttribute(const String&) const;
  8339. bool HasChild(const String&) const;
  8340. bool RemoveAttribute(const String& = String ( ));
  8341. bool RemoveChild(const String&);
  8342. bool RemoveChild(const XMLElement&);
  8343. bool RemoveChildren(const String& = String ( ));
  8344. XPathResultSet Select(const String&);
  8345. XPathResultSet SelectPrepared(const XPathQuery&);
  8346. XMLElement SelectSingle(const String&);
  8347. XMLElement SelectSinglePrepared(const XPathQuery&);
  8348. bool SetAttribute(const String&);
  8349. bool SetAttribute(const String&, const String&);
  8350. bool SetBool(const String&, bool);
  8351. bool SetBoundingBox(const BoundingBox&);
  8352. bool SetColor(const String&, const Color&);
  8353. bool SetFloat(const String&, float);
  8354. bool SetInt(const String&, int);
  8355. bool SetQuaternion(const String&, const Quaternion&);
  8356. bool SetResourceRef(const String&, const ResourceRef&);
  8357. bool SetResourceRefList(const String&, const ResourceRefList&);
  8358. bool SetUInt(const String&, uint);
  8359. bool SetValue(const String&);
  8360. bool SetVariant(const Variant&);
  8361. bool SetVariantMap(const VariantMap&);
  8362. bool SetVariantVector(Array<Variant>);
  8363. bool SetVector2(const String&, const Vector2&);
  8364. bool SetVector3(const String&, const Vector3&);
  8365. bool SetVector4(const String&, const Vector4&);
  8366. bool SetVectorVariant(const String&, const Variant&);
  8367. // Properties:
  8368. /* readonly */
  8369. XMLFile file;
  8370. /* readonly */
  8371. bool isNull;
  8372. /* readonly */
  8373. String name;
  8374. /* readonly */
  8375. XMLElement nextResult;
  8376. /* readonly */
  8377. bool notNull;
  8378. /* readonly */
  8379. uint numAttributes;
  8380. /* readonly */
  8381. XMLElement parent;
  8382. String value;
  8383. };
  8384. class XMLFile
  8385. {
  8386. // Methods:
  8387. XMLElement CreateRoot(const String&);
  8388. XMLElement GetRoot(const String& = String ( ));
  8389. bool Load(File);
  8390. void Patch(XMLElement);
  8391. void Patch(XMLFile);
  8392. bool Save(File) const;
  8393. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8394. // Properties:
  8395. /* readonly */
  8396. ShortStringHash baseType;
  8397. /* readonly */
  8398. String category;
  8399. /* readonly */
  8400. uint memoryUse;
  8401. String name;
  8402. /* readonly */
  8403. int refs;
  8404. /* readonly */
  8405. XMLElement root;
  8406. /* readonly */
  8407. ShortStringHash type;
  8408. /* readonly */
  8409. String typeName;
  8410. /* readonly */
  8411. uint useTimer;
  8412. /* readonly */
  8413. int weakRefs;
  8414. };
  8415. class XPathQuery
  8416. {
  8417. // Methods:
  8418. void Bind();
  8419. void Clear();
  8420. XPathResultSet Evaluate(XMLElement);
  8421. bool EvaluateToBool(XMLElement);
  8422. float EvaluateToFloat(XMLElement);
  8423. String EvaluateToString(XMLElement);
  8424. bool SetQuery(const String&, const String& = String ( ), bool = true);
  8425. bool SetVariable(const String&, bool);
  8426. bool SetVariable(const String&, const String&);
  8427. bool SetVariable(const String&, const XPathResultSet&);
  8428. bool SetVariable(const String&, float);
  8429. // Properties:
  8430. String query;
  8431. };
  8432. class XPathResultSet
  8433. {
  8434. // Properties:
  8435. /* readonly */
  8436. bool empty;
  8437. /* readonly */
  8438. XMLElement firstResult;
  8439. /* readonly */
  8440. uint size;
  8441. };
  8442. class Zone
  8443. {
  8444. // Methods:
  8445. void ApplyAttributes();
  8446. void DrawDebugGeometry(DebugRenderer, bool);
  8447. Variant GetAttribute(const String&) const;
  8448. Variant GetAttributeDefault(const String&) const;
  8449. bool IsInView(Camera) const;
  8450. bool Load(File, bool = false);
  8451. bool LoadXML(const XMLElement&, bool = false);
  8452. void MarkNetworkUpdate() const;
  8453. void Remove();
  8454. void RemoveInstanceDefault();
  8455. void ResetToDefault();
  8456. bool Save(File) const;
  8457. bool SaveXML(XMLElement&) const;
  8458. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8459. bool SetAttribute(const String&, const Variant&);
  8460. // Properties:
  8461. Color ambientColor;
  8462. /* readonly */
  8463. Color ambientEndColor;
  8464. bool ambientGradient;
  8465. /* readonly */
  8466. Color ambientStartColor;
  8467. /* readonly */
  8468. Array<Variant> attributeDefaults;
  8469. /* readonly */
  8470. Array<AttributeInfo> attributeInfos;
  8471. Array<Variant> attributes;
  8472. /* readonly */
  8473. ShortStringHash baseType;
  8474. BoundingBox boundingBox;
  8475. bool castShadows;
  8476. /* readonly */
  8477. String category;
  8478. float drawDistance;
  8479. bool enabled;
  8480. /* readonly */
  8481. bool enabledEffective;
  8482. Color fogColor;
  8483. float fogEnd;
  8484. float fogHeight;
  8485. float fogHeightScale;
  8486. float fogStart;
  8487. bool heightFog;
  8488. /* readonly */
  8489. uint id;
  8490. /* readonly */
  8491. bool inView;
  8492. /* readonly */
  8493. Matrix3x4 inverseWorldTransform;
  8494. uint lightMask;
  8495. float lodBias;
  8496. uint maxLights;
  8497. /* readonly */
  8498. Node node;
  8499. /* readonly */
  8500. uint numAttributes;
  8501. bool occludee;
  8502. bool occluder;
  8503. bool override;
  8504. int priority;
  8505. /* readonly */
  8506. int refs;
  8507. float shadowDistance;
  8508. uint shadowMask;
  8509. bool temporary;
  8510. /* readonly */
  8511. ShortStringHash type;
  8512. /* readonly */
  8513. String typeName;
  8514. uint viewMask;
  8515. /* readonly */
  8516. int weakRefs;
  8517. /* readonly */
  8518. BoundingBox worldBoundingBox;
  8519. uint zoneMask;
  8520. };
  8521. // Enumerations
  8522. enum BlendMode
  8523. {
  8524. BLEND_REPLACE,
  8525. BLEND_ADD,
  8526. BLEND_MULTIPLY,
  8527. BLEND_ALPHA,
  8528. BLEND_ADDALPHA,
  8529. BLEND_PREMULALPHA,
  8530. BLEND_INVDESTALPHA,
  8531. };
  8532. enum CollisionEventMode
  8533. {
  8534. COLLISION_NEVER,
  8535. COLLISION_ACTIVE,
  8536. COLLISION_ALWAYS,
  8537. };
  8538. enum CompareMode
  8539. {
  8540. CMP_ALWAYS,
  8541. CMP_EQUAL,
  8542. CMP_NOTEQUAL,
  8543. CMP_LESS,
  8544. CMP_LESSEQUAL,
  8545. CMP_GREATER,
  8546. CMP_GREATEREQUAL,
  8547. };
  8548. enum ConstraintType
  8549. {
  8550. CONSTRAINT_POINT,
  8551. CONSTRAINT_HINGE,
  8552. CONSTRAINT_SLIDER,
  8553. CONSTRAINT_CONETWIST,
  8554. };
  8555. enum Corner
  8556. {
  8557. C_TOPLEFT,
  8558. C_TOPRIGHT,
  8559. C_BOTTOMLEFT,
  8560. C_BOTTOMRIGHT,
  8561. };
  8562. enum CreateMode
  8563. {
  8564. REPLICATED,
  8565. LOCAL,
  8566. };
  8567. enum CubeMapFace
  8568. {
  8569. FACE_POSITIVE_X,
  8570. FACE_NEGATIVE_X,
  8571. FACE_POSITIVE_Y,
  8572. FACE_NEGATIVE_Y,
  8573. FACE_POSITIVE_Z,
  8574. FACE_NEGATIVE_Z,
  8575. };
  8576. enum CullMode
  8577. {
  8578. CULL_NONE,
  8579. CULL_CCW,
  8580. CULL_CW,
  8581. };
  8582. enum CursorShape
  8583. {
  8584. CS_NORMAL,
  8585. CS_RESIZEVERTICAL,
  8586. CS_RESIZEDIAGONAL_TOPRIGHT,
  8587. CS_RESIZEHORIZONTAL,
  8588. CS_RESIZEDIAGONAL_TOPLEFT,
  8589. CS_ACCEPTDROP,
  8590. CS_REJECTDROP,
  8591. CS_BUSY,
  8592. };
  8593. enum CycleMode
  8594. {
  8595. CM_LOOP,
  8596. CM_CLAMP,
  8597. CM_PINGPONG,
  8598. };
  8599. enum DumpMode
  8600. {
  8601. DOXYGEN,
  8602. C_HEADER,
  8603. };
  8604. enum EmitterType
  8605. {
  8606. EMITTER_SPHERE,
  8607. EMITTER_BOX,
  8608. };
  8609. enum EmitterType2D
  8610. {
  8611. EMITTER_TYPE_GRAVITY,
  8612. EMITTER_TYPE_RADIAL,
  8613. };
  8614. enum FileMode
  8615. {
  8616. FILE_READ,
  8617. FILE_WRITE,
  8618. FILE_READWRITE,
  8619. };
  8620. enum FillMode
  8621. {
  8622. FILL_SOLID,
  8623. FILL_WIREFRAME,
  8624. FILL_POINT,
  8625. };
  8626. enum FocusMode
  8627. {
  8628. FM_NOTFOCUSABLE,
  8629. FM_RESETFOCUS,
  8630. FM_FOCUSABLE,
  8631. FM_FOCUSABLE_DEFOCUSABLE,
  8632. };
  8633. enum HighlightMode
  8634. {
  8635. HM_NEVER,
  8636. HM_FOCUS,
  8637. HM_ALWAYS,
  8638. };
  8639. enum HorizontalAlignment
  8640. {
  8641. HA_LEFT,
  8642. HA_CENTER,
  8643. HA_RIGHT,
  8644. };
  8645. enum HttpRequestState
  8646. {
  8647. HTTP_INITIALIZING,
  8648. HTTP_ERROR,
  8649. HTTP_OPEN,
  8650. HTTP_CLOSED,
  8651. };
  8652. enum InterpolationMode
  8653. {
  8654. BEZIER_CURVE,
  8655. };
  8656. enum Intersection
  8657. {
  8658. OUTSIDE,
  8659. INTERSECTS,
  8660. INSIDE,
  8661. };
  8662. enum LayoutMode
  8663. {
  8664. LM_FREE,
  8665. LM_HORIZONTAL,
  8666. LM_VERTICAL,
  8667. };
  8668. enum LightType
  8669. {
  8670. LIGHT_DIRECTIONAL,
  8671. LIGHT_SPOT,
  8672. LIGHT_POINT,
  8673. };
  8674. enum Orientation
  8675. {
  8676. O_HORIZONTAL,
  8677. O_VERTICAL,
  8678. };
  8679. enum PassLightingMode
  8680. {
  8681. LIGHTING_UNLIT,
  8682. LIGHTING_PERVERTEX,
  8683. LIGHTING_PERPIXEL,
  8684. };
  8685. enum PrimitiveType
  8686. {
  8687. TRIANGLE_LIST,
  8688. LINE_LIST,
  8689. };
  8690. enum RayQueryLevel
  8691. {
  8692. RAY_AABB,
  8693. RAY_OBB,
  8694. RAY_TRIANGLE,
  8695. };
  8696. enum RenderCommandSortMode
  8697. {
  8698. SORT_FRONTTOBACK,
  8699. SORT_BACKTOFRONT,
  8700. };
  8701. enum RenderCommandType
  8702. {
  8703. CMD_NONE,
  8704. CMD_CLEAR,
  8705. CMD_SCENEPASS,
  8706. CMD_QUAD,
  8707. CMD_FORWARDLIGHTS,
  8708. CMD_LIGHTVOLUMES,
  8709. };
  8710. enum RenderSurfaceUpdateMode
  8711. {
  8712. SURFACE_MANUALUPDATE,
  8713. SURFACE_UPDATEVISIBLE,
  8714. SURFACE_UPDATEALWAYS,
  8715. };
  8716. enum RenderTargetSizeMode
  8717. {
  8718. SIZE_ABSOLUTE,
  8719. SIZE_RENDERTARGETDIVISOR,
  8720. SIZE_VIEWPORTDIVISOR,
  8721. };
  8722. enum ShapeType
  8723. {
  8724. SHAPE_BOX,
  8725. SHAPE_SPHERE,
  8726. SHAPE_STATICPLANE,
  8727. SHAPE_CYLINDER,
  8728. SHAPE_CAPSULE,
  8729. SHAPE_CONE,
  8730. SHAPE_TRIANGLEMESH,
  8731. SHAPE_CONVEXHULL,
  8732. SHAPE_TERRAIN,
  8733. };
  8734. enum SoundType
  8735. {
  8736. SOUND_EFFECT,
  8737. SOUND_AMBIENT,
  8738. SOUND_VOICE,
  8739. SOUND_MUSIC,
  8740. SOUND_MASTER,
  8741. };
  8742. enum TextEffect
  8743. {
  8744. TE_NONE,
  8745. TE_SHADOW,
  8746. TE_STROKE,
  8747. };
  8748. enum TextureAddressMode
  8749. {
  8750. ADDRESS_WRAP,
  8751. ADDRESS_MIRROR,
  8752. ADDRESS_CLAMP,
  8753. ADDRESS_BORDER,
  8754. };
  8755. enum TextureCoordinate
  8756. {
  8757. COORD_U,
  8758. COORD_V,
  8759. COORD_W,
  8760. };
  8761. enum TextureFilterMode
  8762. {
  8763. FILTER_NEAREST,
  8764. FILTER_BILINEAR,
  8765. FILTER_TRILINEAR,
  8766. FILTER_ANISOTROPIC,
  8767. FILTER_DEFAULT,
  8768. };
  8769. enum TextureUnit
  8770. {
  8771. TU_DIFFUSE,
  8772. TU_NORMAL,
  8773. TU_SPECULAR,
  8774. TU_EMISSIVE,
  8775. TU_ENVIRONMENT,
  8776. TU_LIGHTRAMP,
  8777. TU_LIGHTSHAPE,
  8778. TU_SHADOWMAP,
  8779. TU_FACESELECT,
  8780. TU_INDIRECTION,
  8781. TU_ALBEDOBUFFER,
  8782. TU_NORMALBUFFER,
  8783. TU_DEPTHBUFFER,
  8784. TU_LIGHTBUFFER,
  8785. TU_VOLUMEMAP,
  8786. MAX_MATERIAL_TEXTURE_UNITS,
  8787. MAX_TEXTURE_UNITS,
  8788. };
  8789. enum TextureUsage
  8790. {
  8791. TEXTURE_STATIC,
  8792. TEXTURE_DYNAMIC,
  8793. TEXTURE_RENDERTARGET,
  8794. TEXTURE_DEPTHSTENCIL,
  8795. };
  8796. enum TraversalMode
  8797. {
  8798. TM_BREADTH_FIRST,
  8799. TM_DEPTH_FIRST,
  8800. };
  8801. enum VariantType
  8802. {
  8803. VAR_NONE,
  8804. VAR_INT,
  8805. VAR_BOOL,
  8806. VAR_FLOAT,
  8807. VAR_VECTOR2,
  8808. VAR_VECTOR3,
  8809. VAR_VECTOR4,
  8810. VAR_QUATERNION,
  8811. VAR_COLOR,
  8812. VAR_STRING,
  8813. VAR_BUFFER,
  8814. VAR_VOIDPTR,
  8815. VAR_RESOURCEREF,
  8816. VAR_RESOURCEREFLIST,
  8817. VAR_VARIANTVECTOR,
  8818. VAR_VARIANTMAP,
  8819. VAR_INTRECT,
  8820. VAR_INTVECTOR2,
  8821. VAR_PTR,
  8822. };
  8823. enum VerticalAlignment
  8824. {
  8825. VA_TOP,
  8826. VA_CENTER,
  8827. VA_BOTTOM,
  8828. };
  8829. // Global functions
  8830. float Abs(float);
  8831. float Acos(float);
  8832. String AddTrailingSlash(const String&);
  8833. float Asin(float);
  8834. float Atan(float);
  8835. float Atan2(float, float);
  8836. float Ceil(float);
  8837. float Clamp(float, float, float);
  8838. int Clamp(int, int, int);
  8839. void ClearDelayedExecute(const String& = String ( ));
  8840. float Cos(float);
  8841. void DelayedExecute(float, bool, const String&);
  8842. void DelayedExecute(float, bool, const String&, const Array<Variant>);
  8843. bool Equals(float, float);
  8844. void ErrorDialog(const String&, const String&);
  8845. float Floor(float);
  8846. uint GetAlphaFormat();
  8847. Array<String> GetArguments();
  8848. String GetConsoleInput();
  8849. uint GetDepthStencilFormat();
  8850. Object GetEventSender();
  8851. String GetExtension(const String&, bool = true);
  8852. String GetFileName(const String&);
  8853. String GetFileNameAndExtension(const String&, bool = false);
  8854. uint GetFloat16Format();
  8855. uint GetFloat32Format();
  8856. uint GetFormat(const String&);
  8857. String GetInternalPath(const String&);
  8858. uint GetLuminanceAlphaFormat();
  8859. uint GetLuminanceFormat();
  8860. uint GetNumLogicalCPUs();
  8861. uint GetNumPhysicalCPUs();
  8862. Array<String> GetObjectCategories();
  8863. Array<String> GetObjectsByCategory(const String&);
  8864. String GetParentPath(const String&);
  8865. String GetPath(const String&);
  8866. String GetPlatform();
  8867. uint GetRG16Format();
  8868. uint GetRGBA16Format();
  8869. uint GetRGBAFloat16Format();
  8870. uint GetRGBAFloat32Format();
  8871. uint GetRGBAFormat();
  8872. uint GetRGBFormat();
  8873. uint GetRGFloat16Format();
  8874. uint GetRGFloat32Format();
  8875. uint GetRandomSeed();
  8876. String GetTextureUnitName(TextureUnit);
  8877. bool IsAbsolutePath(const String&);
  8878. bool IsAlpha(uint);
  8879. bool IsDigit(uint);
  8880. String Join(Array<String>&, const String&);
  8881. float Lerp(float, float, float);
  8882. void MarkNetworkUpdate();
  8883. float Max(float, float);
  8884. int Max(int, int);
  8885. float Min(float, float);
  8886. int Min(int, int);
  8887. float Mod(float, float);
  8888. void OpenConsoleWindow();
  8889. float Pow(float, float);
  8890. void Print(bool, bool = false);
  8891. void Print(const String&, bool = false);
  8892. void Print(const Variant&, bool = false);
  8893. void Print(float, bool = false);
  8894. void Print(int, bool = false);
  8895. void Print(uint, bool = false);
  8896. void PrintCallStack(bool = false);
  8897. float Random();
  8898. float Random(float);
  8899. float Random(float, float);
  8900. int RandomInt();
  8901. int RandomInt(int);
  8902. int RandomInt(int, int);
  8903. float RandomNormal(float, float);
  8904. void Remove();
  8905. String RemoveTrailingSlash(const String&);
  8906. String ReplaceExtension(const String&, const String&);
  8907. void SendEvent(const String&, VariantMap& = VariantMap ( ));
  8908. void SetRandomSeed(uint);
  8909. float Sign(float);
  8910. float Sin(float);
  8911. float SmoothStep(float, float, float);
  8912. float Sqrt(float);
  8913. const String& GetTypeName(ShortStringHash);
  8914. void SubscribeToEvent(Object, const String&, const String&);
  8915. void SubscribeToEvent(const String&, const String&);
  8916. float Tan(float);
  8917. uint ToLower(uint);
  8918. String ToStringHex(int);
  8919. uint ToUpper(uint);
  8920. void UnsubscribeFromAllEvents();
  8921. void UnsubscribeFromAllEventsExcept(Array<String>);
  8922. void UnsubscribeFromEvent(Object, const String&);
  8923. void UnsubscribeFromEvent(const String&);
  8924. void UnsubscribeFromEvents(Object);
  8925. // Global properties
  8926. Audio audio;
  8927. ResourceCache cache;
  8928. Console console;
  8929. DebugHud debugHud;
  8930. DebugRenderer debugRenderer;
  8931. Engine engine;
  8932. FileSystem fileSystem;
  8933. Graphics graphics;
  8934. Input input;
  8935. Log log;
  8936. Network network;
  8937. Node node;
  8938. Octree octree;
  8939. PhysicsWorld physicsWorld;
  8940. Renderer renderer;
  8941. ResourceCache resourceCache;
  8942. Scene scene;
  8943. Script script;
  8944. ScriptFile scriptFile;
  8945. ScriptInstance self;
  8946. Time time;
  8947. UI ui;
  8948. // Global constants
  8949. uint AM_COMPONENTID;
  8950. uint AM_DEFAULT;
  8951. uint AM_FILE;
  8952. uint AM_LATESTDATA;
  8953. uint AM_NET;
  8954. uint AM_NODEID;
  8955. uint AM_NODEIDVECTOR;
  8956. uint AM_NOEDIT;
  8957. int CONTROLLER_AXIS_LEFTX;
  8958. int CONTROLLER_AXIS_LEFTY;
  8959. int CONTROLLER_AXIS_RIGHTX;
  8960. int CONTROLLER_AXIS_RIGHTY;
  8961. int CONTROLLER_AXIS_TRIGGERLEFT;
  8962. int CONTROLLER_AXIS_TRIGGERRIGHT;
  8963. int CONTROLLER_BUTTON_A;
  8964. int CONTROLLER_BUTTON_B;
  8965. int CONTROLLER_BUTTON_BACK;
  8966. int CONTROLLER_BUTTON_DPAD_DOWN;
  8967. int CONTROLLER_BUTTON_DPAD_LEFT;
  8968. int CONTROLLER_BUTTON_DPAD_RIGHT;
  8969. int CONTROLLER_BUTTON_DPAD_UP;
  8970. int CONTROLLER_BUTTON_GUIDE;
  8971. int CONTROLLER_BUTTON_LEFTSHOULDER;
  8972. int CONTROLLER_BUTTON_LEFTSTICK;
  8973. int CONTROLLER_BUTTON_RIGHTSHOULDER;
  8974. int CONTROLLER_BUTTON_RIGHTSTICK;
  8975. int CONTROLLER_BUTTON_START;
  8976. int CONTROLLER_BUTTON_X;
  8977. int CONTROLLER_BUTTON_Y;
  8978. uint DD_DISABLED;
  8979. uint DD_SOURCE;
  8980. uint DD_SOURCE_AND_TARGET;
  8981. uint DD_TARGET;
  8982. uint DEBUGHUD_SHOW_ALL;
  8983. uint DEBUGHUD_SHOW_MODE;
  8984. uint DEBUGHUD_SHOW_NONE;
  8985. uint DEBUGHUD_SHOW_PROFILER;
  8986. uint DEBUGHUD_SHOW_STATS;
  8987. uint DEFAULT_LIGHTMASK;
  8988. uint DEFAULT_VIEWMASK;
  8989. uint DRAWABLE_ANY;
  8990. uint DRAWABLE_GEOMETRY;
  8991. uint DRAWABLE_LIGHT;
  8992. uint DRAWABLE_ZONE;
  8993. uint FIRST_LOCAL_ID;
  8994. uint FIRST_REPLICATED_ID;
  8995. int HAT_CENTER;
  8996. int HAT_DOWN;
  8997. int HAT_LEFT;
  8998. int HAT_RIGHT;
  8999. int HAT_UP;
  9000. int KEY_ADD;
  9001. int KEY_APPS;
  9002. int KEY_BACKSPACE;
  9003. int KEY_CAPSLOCK;
  9004. int KEY_DECIMAL;
  9005. int KEY_DELETE;
  9006. int KEY_DIVIDE;
  9007. int KEY_DOWN;
  9008. int KEY_END;
  9009. int KEY_ESC;
  9010. int KEY_F1;
  9011. int KEY_F10;
  9012. int KEY_F11;
  9013. int KEY_F12;
  9014. int KEY_F13;
  9015. int KEY_F14;
  9016. int KEY_F15;
  9017. int KEY_F16;
  9018. int KEY_F17;
  9019. int KEY_F18;
  9020. int KEY_F19;
  9021. int KEY_F2;
  9022. int KEY_F20;
  9023. int KEY_F21;
  9024. int KEY_F22;
  9025. int KEY_F23;
  9026. int KEY_F24;
  9027. int KEY_F3;
  9028. int KEY_F4;
  9029. int KEY_F5;
  9030. int KEY_F6;
  9031. int KEY_F7;
  9032. int KEY_F8;
  9033. int KEY_F9;
  9034. int KEY_HOME;
  9035. int KEY_INSERT;
  9036. int KEY_KP_ENTER;
  9037. int KEY_LALT;
  9038. int KEY_LCTRL;
  9039. int KEY_LEFT;
  9040. int KEY_LSHIFT;
  9041. int KEY_LWIN;
  9042. int KEY_MULTIPLY;
  9043. int KEY_NUMLOCK;
  9044. int KEY_NUMPAD0;
  9045. int KEY_NUMPAD1;
  9046. int KEY_NUMPAD2;
  9047. int KEY_NUMPAD3;
  9048. int KEY_NUMPAD4;
  9049. int KEY_NUMPAD5;
  9050. int KEY_NUMPAD6;
  9051. int KEY_NUMPAD7;
  9052. int KEY_NUMPAD8;
  9053. int KEY_NUMPAD9;
  9054. int KEY_PAGEDOWN;
  9055. int KEY_PAGEUP;
  9056. int KEY_PAUSE;
  9057. int KEY_RALT;
  9058. int KEY_RCTRL;
  9059. int KEY_RETURN;
  9060. int KEY_RETURN2;
  9061. int KEY_RIGHT;
  9062. int KEY_RSHIFT;
  9063. int KEY_RWIN;
  9064. int KEY_SCROLLLOCK;
  9065. int KEY_SPACE;
  9066. int KEY_SUBTRACT;
  9067. int KEY_TAB;
  9068. int KEY_UP;
  9069. uint LAST_LOCAL_ID;
  9070. uint LAST_REPLICATED_ID;
  9071. int LOG_DEBUG;
  9072. int LOG_ERROR;
  9073. int LOG_INFO;
  9074. int LOG_NONE;
  9075. int LOG_WARNING;
  9076. int MOUSEB_LEFT;
  9077. int MOUSEB_MIDDLE;
  9078. int MOUSEB_RIGHT;
  9079. float M_DEGTORAD;
  9080. float M_DEGTORAD_2;
  9081. float M_EPSILON;
  9082. float M_HALF_PI;
  9083. float M_INFINITY;
  9084. float M_LARGE_EPSILON;
  9085. float M_LARGE_VALUE;
  9086. int M_MAX_INT;
  9087. uint M_MAX_UNSIGNED;
  9088. int M_MIN_INT;
  9089. uint M_MIN_UNSIGNED;
  9090. float M_PI;
  9091. float M_RADTODEG;
  9092. int QUALITY_HIGH;
  9093. int QUALITY_LOW;
  9094. int QUALITY_MAX;
  9095. int QUALITY_MEDIUM;
  9096. int QUAL_ALT;
  9097. int QUAL_ANY;
  9098. int QUAL_CTRL;
  9099. int QUAL_SHIFT;
  9100. uint SCAN_DIRS;
  9101. uint SCAN_FILES;
  9102. uint SCAN_HIDDEN;
  9103. int SHADOWQUALITY_HIGH_16BIT;
  9104. int SHADOWQUALITY_HIGH_24BIT;
  9105. int SHADOWQUALITY_LOW_16BIT;
  9106. int SHADOWQUALITY_LOW_24BIT;
  9107. uint VO_DISABLE_OCCLUSION;
  9108. uint VO_DISABLE_SHADOWS;
  9109. uint VO_LOW_MATERIAL_QUALITY;
  9110. uint VO_NONE;