# Με φάτνωμα (JavaScript)

Meg Ford
megford@gnome.org 2013
Ένα γραφικό συστατικό με δύο ρυθμίσιμα φατνώματα
Δημήτρης Σπίγγος
dmtrs32@gmail.com 2012, 2013

# Σε φάτνωμα

Δύο εικόνες σε δύο ρυθμίσιμα φατνώματα οριζόντια στοιχισμένες.

# Ο χρησιμοποιούμενος κώδικας για παραγωγή αυτού παραδείγματος

#!/usr/bin/gjs

const Gtk = imports.gi.Gtk; const Lang = imports.lang;

const PanedExample = new Lang.Class ({ Name: 'Paned Example',

// Δημιουργία της ίδιας της εφαρμογής _init: function () { this.application = new Gtk.Application({ application_id: 'org.example.panedexample' });

// Σύνδεση σημάτων 'activate' και 'startup' με τις συναρτήσεις επανάκλησης this.application.connect('activate', Lang.bind(this, this._onActivate)); this.application.connect('startup', Lang.bind(this, this._onStartup)); },

// Συνάρτηση επανάκλησης για το σήμα 'activate' παριστάνει παράθυρα όταν είναι ενεργή _onActivate: function() { this.window.present(); },

// Η συνάρτηση επανάκλησης για το σήμα 'startup' κατασκευάζει τη γραφική διεπαφή _onStartup: function () { this._buildUI (); },

// Κατασκευή της γραφικής διεπαφής της εφαρμογής _buildUI: function() { // Create the application window this.window = new Gtk.ApplicationWindow ({ application: this.application, window_position: Gtk.WindowPosition.CENTER, title: "Paned Window Example", default_width: 450, default_height: 350, border_width: 10 });

// ένα νέο γραφικό συστατικό με δύο ρυθμίσιμα παράθυρα, // ένα στα αριστερά και ένα στα δεξιά this.paned = Gtk.Paned.new(Gtk.Orientation.HORIZONTAL);

// δύο εικόνες this.image1 = new Gtk.Image(); this.image1.set_from_file("gnome-image.png"); this.image2 = new Gtk.Image(); this.image2.set_from_file("tux.png");

// προσθήκη της πρώτης εικόνας στο αριστερό παράθυρο this.paned.add1(this.image1); // add the second image to the right pane this.paned.add2(this.image2)

// προσθήκη των φατνωμάτων στο παράθυρο this.window.add(this.paned) this.window.show_all(); } });

// εκτέλεση της εφαρμογής let app = new PanedExample(); app.application.run (ARGV);

# Αναφορές API

Σε αυτό το παράδειγμα χρησιμοποιήσαμε τα παρακάτω:

GtkPaned

Standard Enumerations

GtkImage