function uposition_configure(window, xl, yl)
{
local pos;
pos = gdk_window_get_root_origin (window.get_window());
xl.set_text (string(car(pos)));
yl.set_text (string(cadr(pos)));
}
function create_saved_position ()
{
local main_vbox, vbox, hbox, label, separator, button;
win_saved_position = new (GtkWindow);
win_saved_position.signal ("destroy", #win_saved_position = nil);
win_saved_position.title = "Saved Position";
win_saved_position.border_width = 0;
main_vbox = new (GtkVBox);
main_vbox.spacing = 5;
main_vbox.border_width = 0;
win_saved_position.add (main_vbox);
vbox = new(GtkVBox);
vbox.homogeneous = FALSE;
vbox.spacing = 5;
vbox.border_width = 10;
main_vbox.pack_start(vbox, TRUE, TRUE, 0);
vbox.show();
hbox = new(GtkHBox);
hbox.border_width = 5;
vbox.pack_start(hbox, FALSE, TRUE, 0);
label = new(GtkLabel);
label.set_text("X Origin : ");
label.set_alignment(0, 0.5);
hbox.pack_start(label, FALSE, TRUE, 0);
x_label = new(GtkLabel);
x_label.set_text("n/a");
hbox.pack_start(x_label, TRUE, TRUE, 0);
hbox = new(GtkHBox);
hbox.border_width = 5;
vbox.pack_start(hbox, FALSE, TRUE, 0);
label = new(GtkLabel);
label.set_text("Y Origin : ");
label.set_alignment(0, 0.5);
hbox.pack_start(label, FALSE, TRUE, 0);
y_label = new(GtkLabel);
y_label.set_text("n/a");
hbox.pack_start(y_label, TRUE, TRUE, 0);
separator = new(GtkHSeparator);
main_vbox.pack_start(separator, FALSE, TRUE, 0);
hbox = new(GtkHBox);
hbox.border_width = 10;
main_vbox.pack_start(hbox, FALSE, TRUE, 0);
button = new (GtkButton);
button.label = "Close";
button.signal ("clicked", `(@win_saved_position).destroy());
hbox.pack_start (button, TRUE, TRUE, 5);
button.can_default = TRUE;
button.grab_default();
win_saved_position.signal ("configure_event",
`uposition_configure(@win_saved_position,
@x_label, @y_label));
win_saved_position.show_all();
win_saved_position;
}
function main ()
{
local window, win_saved_position;
TRUE=1;
FALSE=0;
window = create_saved_position ();
window.signal ("destroy", #exit_program(0));
init_ipc("saved_pos", "saved_posq");
gtk_main ();
}
Copyright © 1995-2010 by Cogent Real-Time Systems, Inc. All rights reserved.