{
  "name": "MessageLoop",
  "component": "gui",
  "header": "nativeui/message_loop.h",
  "type": "Object",
  "namespace": "nu",
  "description": "Post events to main GUI message loop.",
  "detail": "Depending on the runtime you use, Yue may or may not provide this API.\n\nNote that `MessageLoop` is a class instead of an instance, the APIs are\nprovided as class methods. This is because the `MessageLoop` does not manage\nmessage loop, it just provides wrappers of system GUI message loop APIs.\n\nThis class can not be created by user, you can only call its class methods.\n\n```js\nconst gui = require('gui')\ngui.MessageLoop.run()\n```\n",
  "class_methods": [
    {
      "signature": {
        "name": "run",
        "parameters": [],
        "shortStr": "run()",
        "str": "run()"
      },
      "description": "Enter GUI message loop.",
      "id": "run"
    },
    {
      "signature": {
        "name": "quit",
        "parameters": [],
        "shortStr": "quit()",
        "str": "quit()"
      },
      "description": "Quit current message loop.",
      "id": "quit"
    },
    {
      "signature": {
        "name": "postTask",
        "parameters": [
          {
            "type": {
              "name": "Function"
            },
            "name": "task"
          }
        ],
        "shortStr": "postTask(task)",
        "str": "postTask(task)"
      },
      "description": "Post a `task` to main thread's message loop.",
      "id": "posttask-task"
    },
    {
      "signature": {
        "name": "postDelayedTask",
        "parameters": [
          {
            "type": {
              "name": "Integer"
            },
            "name": "ms",
            "description": "The number of milliseconds to wait"
          },
          {
            "type": {
              "name": "Function"
            },
            "name": "task"
          }
        ],
        "shortStr": "postDelayedTask(ms, task)",
        "str": "postDelayedTask(ms, task)"
      },
      "description": "Post a `task` to main thread's message loop and execute it after `ms`.\n",
      "id": "postdelayedtask-ms-task"
    }
  ],
  "module": "gui",
  "id": "message_loop"
}