3 class AddIdentityDialog : Dialog
5 private Entry displayname_entry;
6 private Entry issuer_entry;
7 private Entry username_entry;
8 private Entry password_entry;
9 private CheckButton remember_checkbutton;
11 public string display_name {
12 get { return displayname_entry.get_text(); }
15 public string issuer {
16 get { return issuer_entry.get_text (); }
19 public string username {
20 get { return username_entry.get_text (); }
23 public string password {
24 get { return password_entry.get_text (); }
27 public bool store_password {
28 get { return remember_checkbutton.active; }
31 public AddIdentityDialog ()
33 this.set_title (_("Add ID Card"));
34 this.set_modal (true);
36 this.add_buttons (_("Add ID Card"), ResponseType.OK,
38 Stock.CANCEL, ResponseType.CANCEL);
40 STOCK_CANCEL, ResponseType.CANCEL);
43 var content_area = this.get_content_area ();
44 ((Box) content_area).set_spacing (12);
46 var displayname_label = new Label (_("Display Name:"));
47 displayname_label.set_alignment (1, (float) 0.5);
48 displayname_entry = new Entry ();
49 var issuer_label = new Label (_("Issuer:"));
50 issuer_label.set_alignment (1, (float) 0.5);
51 this.issuer_entry = new Entry ();
52 var username_label = new Label (_("Username:"));
53 username_label.set_alignment (1, (float) 0.5);
54 this.username_entry = new Entry ();
55 var password_label = new Label (_("Password:"));
56 password_label.set_alignment (1, (float) 0.5);
57 this.password_entry = new Entry ();
58 password_entry.set_invisible_char ('*');
59 password_entry.set_visibility (false);
60 this.remember_checkbutton = new CheckButton.with_label (_("Remember password"));
62 set_atk_relation (displayname_label, displayname_entry, Atk.RelationType.LABEL_FOR);
63 set_atk_relation (issuer_label, issuer_entry, Atk.RelationType.LABEL_FOR);
64 set_atk_relation (username_label, username_entry, Atk.RelationType.LABEL_FOR);
65 set_atk_relation (password_entry, password_entry, Atk.RelationType.LABEL_FOR);
67 var table = new Table (5, 5, false);
68 table.set_col_spacings (10);
69 table.set_row_spacings (10);
71 table.attach_defaults (displayname_label, 0, 1, 0, 1);
72 table.attach_defaults (displayname_entry, 1, 2, 0, 1);
73 table.attach_defaults (issuer_label, 0, 1, 1, 2);
74 table.attach_defaults (issuer_entry, 1, 2, 1, 2);
75 table.attach_defaults (username_label, 0, 1, 2, 3);
76 table.attach_defaults (username_entry, 1, 2, 2, 3);
77 table.attach_defaults (password_label, 0, 1, 3, 4);
78 table.attach_defaults (password_entry, 1, 2, 3, 4);
79 table.attach_defaults (remember_checkbutton, 1, 2, 4, 5);
81 var vbox = new VBox (false, 0);
82 vbox.set_border_width (6);
83 vbox.pack_start (table, false, false, 0);
85 ((Container) content_area).add (vbox);
87 this.set_border_width (6);
88 this.set_resizable (false);
92 private void set_atk_relation (Widget widget, Widget target_widget, Atk.RelationType relationship)
94 var atk_widget = widget.get_accessible ();
95 var atk_target_widget = target_widget.get_accessible ();
97 atk_widget.add_relationship (relationship, atk_target_widget);