AtomicWork.d.ts 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241
  1. /// <reference path="Atomic.d.ts" />
  2. /// <reference path="ToolCore.d.ts" />
  3. /// <reference path="Editor.d.ts" />
  4. declare module Atomic {
  5. export function print(...args: any[]);
  6. export var platform: string;
  7. // subsystems
  8. export var engine: Engine;
  9. export var graphics: Graphics;
  10. export var renderer: Renderer;
  11. export var cache: ResourceCache;
  12. export var input: Input;
  13. export var fileSystem: FileSystem;
  14. export var network: Network;
  15. export var ui: UI;
  16. export var editorMode: Editor.EditorMode;
  17. // end subsystems
  18. export interface PathInfo {
  19. pathName: string;
  20. fileName: string;
  21. ext: string;
  22. }
  23. export interface ScreenModeEvent {
  24. width: number;
  25. height: number;
  26. fullscreen: boolean;
  27. resizable: boolean;
  28. borderless: boolean;
  29. }
  30. export interface UIShortcutEvent {
  31. // keycode
  32. key: number;
  33. // Atomic.QUAL_SHIFT, Atomic.QUAL_CTRL, Atomic.QUAL_ALT, Atomic.QUAL_ANY
  34. qualifiers: number;
  35. }
  36. export interface NodeAddedEvent {
  37. scene: Atomic.Scene;
  38. parent: Atomic.Node;
  39. node: Atomic.Node;
  40. }
  41. export interface NodeRemovedEvent {
  42. scene: Atomic.Scene;
  43. parent: Atomic.Node;
  44. node: Atomic.Node;
  45. }
  46. export interface NodeNameChangedEvent {
  47. scene: Atomic.Scene;
  48. node: Atomic.Node;
  49. }
  50. export interface UIWidgetEvent {
  51. handler: UIWidget;
  52. target: UIWidget;
  53. type: number; /*UIWidgetEventType*/
  54. x: number;
  55. y: number;
  56. deltax: number;
  57. deltay: number;
  58. count: number;
  59. key: number;
  60. specialkey: number;
  61. modifierkeys: number;
  62. refid: string;
  63. touch: boolean;
  64. }
  65. export interface UIWidgetDeletedEvent {
  66. widget: UIWidget;
  67. }
  68. export interface DragBeginEvent {
  69. source: UIWidget;
  70. dragObject: UIDragObject;
  71. }
  72. export interface DragEnterWidgetEvent {
  73. widget: UIWidget;
  74. dragObject: UIDragObject;
  75. }
  76. export interface DragExitWidgetEvent {
  77. widget: UIWidget;
  78. dragObject: UIDragObject;
  79. }
  80. export interface DragEndedEvent {
  81. target: UIWidget;
  82. dragObject: UIDragObject;
  83. }
  84. export interface TemporaryChangedEvent {
  85. serializable: Atomic.Serializable;
  86. }
  87. export interface ComponentAddedEvent {
  88. scene: Atomic.Scene;
  89. node: Atomic.Node;
  90. component: Atomic.Component;
  91. }
  92. export interface ComponentRemovedEvent {
  93. scene: Atomic.Scene;
  94. node: Atomic.Node;
  95. component: Atomic.Component;
  96. }
  97. export interface IPCJSErrorEvent {
  98. errorName: string;
  99. errorMessage: string;
  100. errorFileName: string;
  101. errorLineNumber: number;
  102. errorStack: string;
  103. }
  104. export interface AttributeInfo {
  105. type: VariantType;
  106. name: string;
  107. mode: number; // AM_*
  108. defaultValue: string;
  109. enumNames: string[];
  110. resourceTypeName: string;
  111. }
  112. export interface ShaderParameter {
  113. name: string;
  114. value: any;
  115. valueString: string;
  116. typeName: string;
  117. type: VariantType;
  118. }
  119. export function getArguments(): Array<string>;
  120. export function getEngine(): Engine;
  121. export function getInput(): Input;
  122. export function getGraphics(): Graphics;
  123. export function getFileSystem(): FileSystem;
  124. export function getResourceCache(): ResourceCache;
  125. export function getRenderer(): Atomic.Renderer;
  126. export function getNetwork(): Atomic.Network;
  127. export function getUI(): Atomic.UI;
  128. export function assert();
  129. export function js_module_read_file(path: string);
  130. export function openConsoleWindow();
  131. export function script(script: string): boolean;
  132. export function destroy(node: Atomic.Node): boolean;
  133. export function destroy(scene: Atomic.Scene): boolean;
  134. export function destroy(component: Atomic.JSComponent): boolean;
  135. export function getParentPath(path: string): string;
  136. export function addTrailingSlash(path: string): string;
  137. export function getExtension(path: string): string;
  138. export function splitPath(path: string): PathInfo;
  139. }
  140. declare module ToolCore {
  141. export interface ResourceAddedEvent {
  142. guid: string;
  143. }
  144. export interface ResourceRemovedEvent {
  145. guid: string;
  146. }
  147. export interface LicenseDeactivationErrorEvent {
  148. message: string;
  149. }
  150. export interface AssetImportErrorEvent {
  151. path:string;
  152. guid:string;
  153. error: string;
  154. }
  155. export var toolEnvironment: ToolEnvironment;
  156. export var toolSystem: ToolSystem;
  157. export var assetDatabase: AssetDatabase;
  158. export var licenseSystem: LicenseSystem;
  159. export function getToolEnvironment(): ToolEnvironment;
  160. export function getToolSystem(): ToolSystem;
  161. export function getAssetDatabase(): AssetDatabase;
  162. export function getLicenseSystem(): LicenseSystem;
  163. }