# ApplicationWindow (Javascript)

Tiffany Antopolski
tiffany.antopolski@gmail.com 2012
GtkWindow-underklass med GtkApplication-stöd
Sebastian Rasmussen
sebras@gmail.com 2019
Anders Jonsson
anders.jonsson@norsjovallen.se 2021

# ApplicationWindow

A simple GtkApplicationWindow which can support Menus.

#!/usr/bin/gjs

imports.gi.versions.Gtk = '3.0';

const Gio = imports.gi.Gio; const GLib = imports.gi.GLib; const Gtk = imports.gi.Gtk;

class Application {

//skapa programmet constructor() { this.application = new Gtk.Application ({ application_id: 'org.example.myapp', flags: Gio.ApplicationFlags.FLAGS_NONE });

//anslut ”activate”- och ”startup”-signaler till återanropsfunktionerna this.application.connect('activate', this._onActivate.bind(this)); this.application.connect('startup', this._onStartup.bind(this)); }

//skapa användargränssnittet (i detta fall bara vårt ApplicationWindow _buildUI() { this._window = new Gtk.ApplicationWindow({ application: this.application, window_position: Gtk.WindowPosition.CENTER, title: "Välkommen till GNOME" });

//att avkommentera raden nedan kommer ändra fönsterstorleken //this._window.set_default_size(600, 400);

//visa fönstret och alla barnkomponenter (ingen i detta fall) this._window.show_all(); }

//återanropsfunktion för ”activate”-signal _onActivate() { this._window.present(); }

//återanropsfunktion för ”startup”-signal _onStartup() { this._buildUI(); } };

//kör programmet let app = new Application (); app.application.run (ARGV);

I detta exempel använde vi följande:

Gtk.Application

Gtk.ApplicationWindow