menu

NodeGui

A library for building cross-platform native desktop applications with Node.js and CSS.

Channels
Team

NodeGUI watercooler

September 1, 2019 at 8:40am
Show previous messages

September 28, 2019 at 11:25pm
and finally and related, just want to know if you are aware of this project claiming to automatically generate bindings and typings by small declarations in the c++ files (https://github.com/charto/nbind) ? - just asknig - never used it but I see projects facing problems similar as this using it successfull and if the claims are not false that would save lots of work and accelerate the API porting... thanks and sorry to speack without even being familiarized with the project
  • reply
  • like

September 29, 2019 at 9:30am
Hello team, I'm interesting to contribute on the documentation part while I learn - could you correct me in the following ? 1) nodegui APIs are similar / equivalent to qt APIs 2) nodegui apidocs are manually created / maintained ? 3) nodegui typings are manually created and maintained ?
nodegui APIs are similar / equivalent to qt APIs - Yes, we want to keep nodegui APIs similar to that of Qt APIs as much as possible so that we can make use of api design decisions that are made in Qt (which are mature and really nice). But there will be few changes where necessary due to language differences. Also, we are not aiming to export all of the apis from QT (only those are necessary). For example we are not going to export out all overloaded methods.
  • reply
  • like
Hello team, I'm interesting to contribute on the documentation part while I learn - could you correct me in the following ? 1) nodegui APIs are similar / equivalent to qt APIs 2) nodegui apidocs are manually created / maintained ? 3) nodegui typings are manually created and maintained ?
  1. Yes, nodegui docs are manually maintained at the moment. But if you have some way to generate a doc that is user friendly. Feel free to discuss it more here.
  • reply
  • like
NodeGui typings are not manually created. We have a TS counterpart to the c++ bindings. This is necessary for handling events and making necessary changes to exported bindings due to language differences. These TS counterparts additionally also serve as typescript typings.
  • reply
  • like
https://github.com/charto/nbind <- Yes, I did take a look at this. The big issue with this is that it generates NAN bindings instead of NAPI. NAPI is the newer and ABI stable bindings for node js addons.
  • reply
  • like
If there is something like nbind for NAPI we can take a look.
  • reply
  • like
Also, Lets try and discuss these in General channel instead ? since its easier to navigate there.
  • reply
  • like

October 7, 2019 at 12:02am
Yo,
  • reply
  • like
First congratulations for the project!!!
  • reply
  • like
Its only possible use typescript to work with nodegui?
  • reply
  • like
Its only possible use typescript to work with nodegui?
Hi Dalton, you can use plain javascript as well. just replace .ts files with .js files and replace import statements with require in the starter peojects
  • reply
  • like

October 11, 2019 at 2:42pm
Hi team, thanks for the hard work on the library. I'd like to use this for an embedded application, the application should start up in fullscreen, I'm not sure if the API has been exposed for that or whether it's possible?
  • reply
  • like
Realise I'd likely want to write straight to the framebuffer, like you can with Qt
  • reply
  • like
But if that's not possible, programatically setting it with something along the lines of:
Mainwindow w;
w.setWindowState(Qt::WindowMaximized);
w.show();
  • reply
  • like

October 14, 2019 at 8:39am
But if that's not possible, programatically setting it with something along the lines of:
Mainwindow w;
w.setWindowState(Qt::WindowMaximized);
w.show();
Hi You can already do this using
import { QMainWindow, WindowState } from '@nodegui/nodegui';
const win = new QMainWindow();
win.setWindowState(WindowState.WindowMaximized);
win.show();
Edited
  • reply
  • like

October 28, 2019 at 7:35am
, I'd like to contribute to help filling up the Handle events page, where should I start?
like-fill
1
  • reply
  • like
, I'd like to contribute to help filling up the Handle events page, where should I start?
Awesome! The documentation lives in the same repo as the project. The guides can be accessed here: https://github.com/nodegui/nodegui/tree/master/website/docs/guides They are all just mark down files. And NodeGui is using docusauraus.
like-fill
1
  • reply
  • like
Great, regarding the event list, I guess I can find it on the Qt Event System docsite right?
  • reply
  • like
Great, regarding the event list, I guess I can find it on the Qt Event System docsite right?
Yes, NodeGui supports all events from Qt.So that you can get from Qt's docs or from here: https://github.com/nodegui/nodegui/blob/576ba1ace6e6e67bd65889303c9f1909249cce31/src/lib/core/EventWidget/index.ts#L40. Apart from regular events, Qt also has a concept of signals. So NodeGui also adds support for some signals. signals need to be manually exported out. So those you can find in each widget's source code ( I think those should live with each widget's doc). Since JS has only the concept of events. I merged Qt's events and Qt's signals into one in NodeGui.
  • reply
  • like
Yes, NodeGui supports all events from Qt.So that you can get from Qt's docs or from here: https://github.com/nodegui/nodegui/blob/576ba1ace6e6e67bd65889303c9f1909249cce31/src/lib/core/EventWidget/index.ts#L40. Apart from regular events, Qt also has a concept of signals. So NodeGui also adds support for some signals. signals need to be manually exported out. So those you can find in each widget's source code ( I think those should live with each widget's doc). Since JS has only the concept of events. I merged Qt's events and Qt's signals into one in NodeGui.
Let me know if you need more clarification.
  • reply
  • like
Thanks!
  • reply
  • like