UNPKG

@nodegui/nodegui

Version:

A cross-platform library to build native desktop apps.

80 lines (72 loc) 2.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SizeConstraint = exports.QLayout = void 0; const QObject_1 = require("../QtCore/QObject"); // All Layouts should extend this abstract class. /** > Abstract class to add functionalities common to all Layout. **This class implements all methods, properties of Qt's [QLayout class](https://doc.qt.io/qt-5/qlayout.html) so that it can be inherited by all layouts** `QLayout` is an abstract class and hence no instances of the same should be created. ### Example ```javascript const { QLayout, FlexLayout, GridLayout, QPushButton, QWidget } = require("@nodegui/nodegui"); // addChildToLayout can accept any layout since it expects QLayout const addChildToLayout = (layout: QLayout, widget: QWidget) => { layout.addWidget(widget); }; addChildToLayout(new FlexLayout(), new QPushButton()); addChildToLayout(new GridLayout(), new QWidget()); ``` */ class QLayout extends QObject_1.QObject { constructor() { super(...arguments); this.type = 'layout'; } setSizeConstraint(constraint) { this.setProperty('sizeConstraint', constraint); } sizeConstraint() { return this.property('sizeConstraint').toInt(); } setSpacing(spacing) { this.setProperty('spacing', spacing); } spacing() { return this.property('spacing').toInt(); } activate() { return this.native.activate(); } setEnabled(enable) { this.native.setEnabled(enable); } isEnabled() { return this.native.isEnabled(); } setContentsMargins(left, top, right, bottom) { this.native.setContentsMargins(left, top, right, bottom); } invalidate() { this.native.invalidate(); } update() { this.native.update(); } } exports.QLayout = QLayout; var SizeConstraint; (function (SizeConstraint) { SizeConstraint[SizeConstraint["SetDefaultConstraint"] = 0] = "SetDefaultConstraint"; SizeConstraint[SizeConstraint["SetNoConstraint"] = 1] = "SetNoConstraint"; SizeConstraint[SizeConstraint["SetMinimumSize"] = 2] = "SetMinimumSize"; SizeConstraint[SizeConstraint["SetFixedSize"] = 3] = "SetFixedSize"; SizeConstraint[SizeConstraint["SetMaximumSize"] = 4] = "SetMaximumSize"; SizeConstraint[SizeConstraint["SetMinAndMaxSize"] = 5] = "SetMinAndMaxSize"; })(SizeConstraint = exports.SizeConstraint || (exports.SizeConstraint = {}));