nodeguy/5a35b6ef.5597b95e.js

1 line
19 KiB
JavaScript

(window.webpackJsonp=window.webpackJsonp||[]).push([[77],{169:function(e,t,a){"use strict";a.r(t),a.d(t,"frontMatter",(function(){return c})),a.d(t,"rightToc",(function(){return l})),a.d(t,"metadata",(function(){return p})),a.d(t,"default",(function(){return s}));var n=a(1),b=a(6),r=(a(0),a(324)),c={id:"eventwidget",title:"EventWidget",sidebar_label:"EventWidget"},l=[{value:"Example",id:"example",children:[]},{value:"Type parameters",id:"type-parameters",children:[]},{value:"Hierarchy",id:"hierarchy",children:[]},{value:"Index",id:"index",children:[{value:"Constructors",id:"constructors",children:[]},{value:"Properties",id:"properties",children:[]},{value:"Methods",id:"methods",children:[]}]},{value:"Constructors",id:"constructors-1",children:[{value:"constructor",id:"constructor",children:[]}]},{value:"Properties",id:"properties-1",children:[{value:"<code>Abstract</code> native",id:"abstract-native",children:[]},{value:"nodeChildren",id:"nodechildren",children:[]},{value:"<code>Optional</code> nodeParent",id:"optional-nodeparent",children:[]}]},{value:"Methods",id:"methods-1",children:[{value:"addEventListener",id:"addeventlistener",children:[]},{value:"removeEventListener",id:"removeeventlistener",children:[]},{value:"setNodeParent",id:"setnodeparent",children:[]}]}],p={id:"api/generated/classes/eventwidget",title:"EventWidget",description:"> Abstract class that adds event handling support to all widgets.",source:"@site/docs/api/generated/classes/eventwidget.md",permalink:"/docs/api/generated/classes/eventwidget",sidebar_label:"EventWidget",sidebar:"api",previous:{title:"Component",permalink:"/docs/api/generated/classes/component"},next:{title:"FlexLayout",permalink:"/docs/api/generated/classes/flexlayout"}},i={rightToc:l,metadata:p},o="wrapper";function s(e){var t=e.components,a=Object(b.a)(e,["components"]);return Object(r.b)(o,Object(n.a)({},i,a,{components:t,mdxType:"MDXLayout"}),Object(r.b)("blockquote",null,Object(r.b)("p",{parentName:"blockquote"},"Abstract class that adds event handling support to all widgets.")),Object(r.b)("p",null,"*This class implements an event emitter and merges it with Qt's event and signal system. It allows us to register and unregister event and signal listener at will from javascript**"),Object(r.b)("p",null,Object(r.b)("inlineCode",{parentName:"p"},"EventWidget")," is an abstract class and hence no instances of the same should be created. It exists so that we can add event handling functionalities to all widget's easily. This is an internal class."),Object(r.b)("h3",{id:"example"},"Example"),Object(r.b)("pre",null,Object(r.b)("code",Object(n.a)({parentName:"pre"},{className:"language-javascript"}),'const { QWidget, QWidgetSignals, WidgetEventTypes } = require("@nodegui/nodegui");\n\nconst view = new QWidget();\n// You either listen for a widget\'s signal\nview.addEventListener(\'windowTitleChanged\', () => {\nconsole.log("window title changed");\n});\n\n// or you can listen for an event\n\nview.addEventListener(WidgetEventTypes.MouseMove, () => {\nconsole.log("mouse moved");\n});\n')),Object(r.b)("h2",{id:"type-parameters"},"Type parameters"),Object(r.b)("p",null,"\u25aa ",Object(r.b)("strong",{parentName:"p"},"Signals"),": ",Object(r.b)("em",{parentName:"p"},"__type")),Object(r.b)("h2",{id:"hierarchy"},"Hierarchy"),Object(r.b)("ul",null,Object(r.b)("li",{parentName:"ul"},Object(r.b)("p",{parentName:"li"},Object(r.b)("a",Object(n.a)({parentName:"p"},{href:"/docs/api/generated/classes/component"}),"Component")),Object(r.b)("p",{parentName:"li"},"\u21b3 ",Object(r.b)("strong",{parentName:"p"},"EventWidget")),Object(r.b)("p",{parentName:"li"},"\u21b3 ",Object(r.b)("a",Object(n.a)({parentName:"p"},{href:"/docs/api/generated/classes/nodeobject"}),"NodeObject")))),Object(r.b)("h2",{id:"index"},"Index"),Object(r.b)("h3",{id:"constructors"},"Constructors"),Object(r.b)("ul",null,Object(r.b)("li",{parentName:"ul"},Object(r.b)("a",Object(n.a)({parentName:"li"},{href:"/docs/api/generated/classes/eventwidget#constructor"}),"constructor"))),Object(r.b)("h3",{id:"properties"},"Properties"),Object(r.b)("ul",null,Object(r.b)("li",{parentName:"ul"},Object(r.b)("a",Object(n.a)({parentName:"li"},{href:"/docs/api/generated/classes/eventwidget#abstract-native"}),"native")),Object(r.b)("li",{parentName:"ul"},Object(r.b)("a",Object(n.a)({parentName:"li"},{href:"/docs/api/generated/classes/eventwidget#nodechildren"}),"nodeChildren")),Object(r.b)("li",{parentName:"ul"},Object(r.b)("a",Object(n.a)({parentName:"li"},{href:"/docs/api/generated/classes/eventwidget#optional-nodeparent"}),"nodeParent"))),Object(r.b)("h3",{id:"methods"},"Methods"),Object(r.b)("ul",null,Object(r.b)("li",{parentName:"ul"},Object(r.b)("a",Object(n.a)({parentName:"li"},{href:"/docs/api/generated/classes/eventwidget#addeventlistener"}),"addEventListener")),Object(r.b)("li",{parentName:"ul"},Object(r.b)("a",Object(n.a)({parentName:"li"},{href:"/docs/api/generated/classes/eventwidget#removeeventlistener"}),"removeEventListener")),Object(r.b)("li",{parentName:"ul"},Object(r.b)("a",Object(n.a)({parentName:"li"},{href:"/docs/api/generated/classes/eventwidget#setnodeparent"}),"setNodeParent"))),Object(r.b)("h2",{id:"constructors-1"},"Constructors"),Object(r.b)("h3",{id:"constructor"},"constructor"),Object(r.b)("p",null,"+"," ",Object(r.b)("strong",{parentName:"p"},"new EventWidget"),"(",Object(r.b)("inlineCode",{parentName:"p"},"native"),": ",Object(r.b)("a",Object(n.a)({parentName:"p"},{href:"/docs/api/generated/globals#nativeelement"}),"NativeElement"),"): ",Object(r.b)("em",{parentName:"p"},Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/eventwidget"}),"EventWidget"))),Object(r.b)("p",null,Object(r.b)("em",{parentName:"p"},"Overrides ",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component"}),"Component"),".",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component#constructor"}),"constructor"))),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Parameters:")),Object(r.b)("table",null,Object(r.b)("thead",{parentName:"table"},Object(r.b)("tr",{parentName:"thead"},Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Name"),Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Type"))),Object(r.b)("tbody",{parentName:"table"},Object(r.b)("tr",{parentName:"tbody"},Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("inlineCode",{parentName:"td"},"native")),Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("a",Object(n.a)({parentName:"td"},{href:"/docs/api/generated/globals#nativeelement"}),"NativeElement"))))),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Returns:")," ",Object(r.b)("em",{parentName:"p"},Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/eventwidget"}),"EventWidget"))),Object(r.b)("h2",{id:"properties-1"},"Properties"),Object(r.b)("h3",{id:"abstract-native"},Object(r.b)("inlineCode",{parentName:"h3"},"Abstract")," native"),Object(r.b)("p",null,"\u2022 ",Object(r.b)("strong",{parentName:"p"},"native"),": ",Object(r.b)("em",{parentName:"p"},Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/globals#nativeelement"}),"NativeElement"))),Object(r.b)("p",null,Object(r.b)("em",{parentName:"p"},"Inherited from ",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component"}),"Component"),".",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component#abstract-native"}),"native"))),Object(r.b)("hr",null),Object(r.b)("h3",{id:"nodechildren"},"nodeChildren"),Object(r.b)("p",null,"\u2022 ",Object(r.b)("strong",{parentName:"p"},"nodeChildren"),": ",Object(r.b)("em",{parentName:"p"},"Set\u2039",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component"}),"Component"),"\u203a")),Object(r.b)("p",null,Object(r.b)("em",{parentName:"p"},"Inherited from ",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component"}),"Component"),".",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component#nodechildren"}),"nodeChildren"))),Object(r.b)("hr",null),Object(r.b)("h3",{id:"optional-nodeparent"},Object(r.b)("inlineCode",{parentName:"h3"},"Optional")," nodeParent"),Object(r.b)("p",null,"\u2022 ",Object(r.b)("strong",{parentName:"p"},"nodeParent"),"? : ",Object(r.b)("em",{parentName:"p"},Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component"}),"Component"))),Object(r.b)("p",null,Object(r.b)("em",{parentName:"p"},"Inherited from ",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component"}),"Component"),".",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component#optional-nodeparent"}),"nodeParent"))),Object(r.b)("h2",{id:"methods-1"},"Methods"),Object(r.b)("h3",{id:"addeventlistener"},"addEventListener"),Object(r.b)("p",null,"\u25b8 ",Object(r.b)("strong",{parentName:"p"},"addEventListener"),"<",Object(r.b)("strong",{parentName:"p"},"SignalType"),">(",Object(r.b)("inlineCode",{parentName:"p"},"signalType"),": SignalType, ",Object(r.b)("inlineCode",{parentName:"p"},"callback"),": Signals","[SignalType]","): ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Type parameters:")),Object(r.b)("p",null,"\u25aa ",Object(r.b)("strong",{parentName:"p"},"SignalType"),": ",Object(r.b)("em",{parentName:"p"},"keyof Signals")),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Parameters:")),Object(r.b)("table",null,Object(r.b)("thead",{parentName:"table"},Object(r.b)("tr",{parentName:"thead"},Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Name"),Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Type"),Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Description"))),Object(r.b)("tbody",{parentName:"table"},Object(r.b)("tr",{parentName:"tbody"},Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("inlineCode",{parentName:"td"},"signalType")),Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),"SignalType"),Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),"SignalType is a signal from the widgets signals interface.")),Object(r.b)("tr",{parentName:"tbody"},Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("inlineCode",{parentName:"td"},"callback")),Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),"Signals","[SignalType]"),Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),"Corresponding callback for the signal as mentioned in the widget's signal interface")))),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Returns:")," ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("p",null,"void"),Object(r.b)("p",null,"For example in the case of QPushButton:"),Object(r.b)("pre",null,Object(r.b)("code",Object(n.a)({parentName:"pre"},{className:"language-js"}),"const button = new QPushButton();\nbutton.addEventListener('clicked',(checked)=>console.log(\"clicked\"));\n// here clicked is a value from QPushButtonSignals interface\n")),Object(r.b)("p",null,"\u25b8 ",Object(r.b)("strong",{parentName:"p"},"addEventListener"),"(",Object(r.b)("inlineCode",{parentName:"p"},"eventType"),": ",Object(r.b)("a",Object(n.a)({parentName:"p"},{href:"/docs/api/generated/enums/widgeteventtypes"}),"WidgetEventTypes"),", ",Object(r.b)("inlineCode",{parentName:"p"},"callback"),": function): ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Parameters:")),Object(r.b)("p",null,"\u25aa ",Object(r.b)("strong",{parentName:"p"},"eventType"),": ",Object(r.b)("em",{parentName:"p"},Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/enums/widgeteventtypes"}),"WidgetEventTypes"))),Object(r.b)("p",null,"\u25aa ",Object(r.b)("strong",{parentName:"p"},"callback"),": ",Object(r.b)("em",{parentName:"p"},"function")),Object(r.b)("p",null,"For example in the case of QPushButton:"),Object(r.b)("pre",null,Object(r.b)("code",Object(n.a)({parentName:"pre"},{className:"language-js"}),'const button = new QPushButton();\nbutton.addEventListener(WidgetEventTypes.HoverEnter,()=>console.log("hovered"));\n')),Object(r.b)("p",null,"\u25b8 (",Object(r.b)("inlineCode",{parentName:"p"},"event?"),": ",Object(r.b)("a",Object(n.a)({parentName:"p"},{href:"/docs/api/generated/globals#nativeelement"}),"NativeElement"),"): ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Parameters:")),Object(r.b)("table",null,Object(r.b)("thead",{parentName:"table"},Object(r.b)("tr",{parentName:"thead"},Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Name"),Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Type"))),Object(r.b)("tbody",{parentName:"table"},Object(r.b)("tr",{parentName:"tbody"},Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("inlineCode",{parentName:"td"},"event?")),Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("a",Object(n.a)({parentName:"td"},{href:"/docs/api/generated/globals#nativeelement"}),"NativeElement"))))),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Returns:")," ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("hr",null),Object(r.b)("h3",{id:"removeeventlistener"},"removeEventListener"),Object(r.b)("p",null,"\u25b8 ",Object(r.b)("strong",{parentName:"p"},"removeEventListener"),"<",Object(r.b)("strong",{parentName:"p"},"SignalType"),">(",Object(r.b)("inlineCode",{parentName:"p"},"signalType"),": SignalType, ",Object(r.b)("inlineCode",{parentName:"p"},"callback"),": Signals","[SignalType]","): ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Type parameters:")),Object(r.b)("p",null,"\u25aa ",Object(r.b)("strong",{parentName:"p"},"SignalType"),": ",Object(r.b)("em",{parentName:"p"},"keyof Signals")),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Parameters:")),Object(r.b)("table",null,Object(r.b)("thead",{parentName:"table"},Object(r.b)("tr",{parentName:"thead"},Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Name"),Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Type"))),Object(r.b)("tbody",{parentName:"table"},Object(r.b)("tr",{parentName:"tbody"},Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("inlineCode",{parentName:"td"},"signalType")),Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),"SignalType")),Object(r.b)("tr",{parentName:"tbody"},Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("inlineCode",{parentName:"td"},"callback")),Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),"Signals","[SignalType]")))),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Returns:")," ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("p",null,"\u25b8 ",Object(r.b)("strong",{parentName:"p"},"removeEventListener"),"(",Object(r.b)("inlineCode",{parentName:"p"},"eventType"),": ",Object(r.b)("a",Object(n.a)({parentName:"p"},{href:"/docs/api/generated/enums/widgeteventtypes"}),"WidgetEventTypes"),", ",Object(r.b)("inlineCode",{parentName:"p"},"callback"),": function): ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Parameters:")),Object(r.b)("p",null,"\u25aa ",Object(r.b)("strong",{parentName:"p"},"eventType"),": ",Object(r.b)("em",{parentName:"p"},Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/enums/widgeteventtypes"}),"WidgetEventTypes"))),Object(r.b)("p",null,"\u25aa ",Object(r.b)("strong",{parentName:"p"},"callback"),": ",Object(r.b)("em",{parentName:"p"},"function")),Object(r.b)("p",null,"\u25b8 (",Object(r.b)("inlineCode",{parentName:"p"},"event?"),": ",Object(r.b)("a",Object(n.a)({parentName:"p"},{href:"/docs/api/generated/globals#nativeelement"}),"NativeElement"),"): ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Parameters:")),Object(r.b)("table",null,Object(r.b)("thead",{parentName:"table"},Object(r.b)("tr",{parentName:"thead"},Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Name"),Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Type"))),Object(r.b)("tbody",{parentName:"table"},Object(r.b)("tr",{parentName:"tbody"},Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("inlineCode",{parentName:"td"},"event?")),Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("a",Object(n.a)({parentName:"td"},{href:"/docs/api/generated/globals#nativeelement"}),"NativeElement"))))),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Returns:")," ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("hr",null),Object(r.b)("h3",{id:"setnodeparent"},"setNodeParent"),Object(r.b)("p",null,"\u25b8 ",Object(r.b)("strong",{parentName:"p"},"setNodeParent"),"(",Object(r.b)("inlineCode",{parentName:"p"},"parent?"),": ",Object(r.b)("a",Object(n.a)({parentName:"p"},{href:"/docs/api/generated/classes/component"}),"Component"),"): ",Object(r.b)("em",{parentName:"p"},"void")),Object(r.b)("p",null,Object(r.b)("em",{parentName:"p"},"Inherited from ",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component"}),"Component"),".",Object(r.b)("a",Object(n.a)({parentName:"em"},{href:"/docs/api/generated/classes/component#setnodeparent"}),"setNodeParent"))),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Parameters:")),Object(r.b)("table",null,Object(r.b)("thead",{parentName:"table"},Object(r.b)("tr",{parentName:"thead"},Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Name"),Object(r.b)("th",Object(n.a)({parentName:"tr"},{align:null}),"Type"))),Object(r.b)("tbody",{parentName:"table"},Object(r.b)("tr",{parentName:"tbody"},Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("inlineCode",{parentName:"td"},"parent?")),Object(r.b)("td",Object(n.a)({parentName:"tr"},{align:null}),Object(r.b)("a",Object(n.a)({parentName:"td"},{href:"/docs/api/generated/classes/component"}),"Component"))))),Object(r.b)("p",null,Object(r.b)("strong",{parentName:"p"},"Returns:")," ",Object(r.b)("em",{parentName:"p"},"void")))}s.isMDXComponent=!0},324:function(e,t,a){"use strict";a.d(t,"a",(function(){return l})),a.d(t,"b",(function(){return s}));var n=a(0),b=a.n(n),r=b.a.createContext({}),c=function(e){var t=b.a.useContext(r),a=t;return e&&(a="function"==typeof e?e(t):Object.assign({},t,e)),a},l=function(e){var t=c(e.components);return b.a.createElement(r.Provider,{value:t},e.children)};var p="mdxType",i={inlineCode:"code",wrapper:function(e){var t=e.children;return b.a.createElement(b.a.Fragment,{},t)}},o=Object(n.forwardRef)((function(e,t){var a=e.components,n=e.mdxType,r=e.originalType,l=e.parentName,p=function(e,t){var a={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&-1===t.indexOf(n)&&(a[n]=e[n]);return a}(e,["components","mdxType","originalType","parentName"]),o=c(a),s=n,d=o[l+"."+s]||o[s]||i[s]||r;return a?b.a.createElement(d,Object.assign({},{ref:t},p,{components:a})):b.a.createElement(d,Object.assign({},{ref:t},p))}));function s(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=a.length,c=new Array(r);c[0]=o;var l={};for(var i in t)hasOwnProperty.call(t,i)&&(l[i]=t[i]);l.originalType=e,l[p]="string"==typeof e?e:n,c[1]=l;for(var s=2;s<r;s++)c[s]=a[s];return b.a.createElement.apply(null,c)}return b.a.createElement.apply(null,a)}o.displayName="MDXCreateElement"}}]);