Adding first code drop
[demorecorder] / src / YesNoCancelDialog.vala
diff --git a/src/YesNoCancelDialog.vala b/src/YesNoCancelDialog.vala
new file mode 100644 (file)
index 0000000..9166764
--- /dev/null
@@ -0,0 +1,43 @@
+/*  Demo Recorder for MAEMO 5
+*   Copyright (C) 2010 Dru Moore <usr@dru-id.co.uk>
+*   This program is free software; you can redistribute it and/or modify
+*   it under the terms of the GNU General Public License version 2,
+*   or (at your option) any later version, as published by the Free
+*   Software Foundation
+*
+*   This program is distributed in the hope that it will be useful,
+*   but WITHOUT ANY WARRANTY; without even the implied warranty of
+*   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+*   GNU General Public License for more details
+*
+*   You should have received a copy of the GNU General Public
+*   License along with this program; if not, write to the
+*   Free Software Foundation, Inc.,
+*   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+*/
+namespace IdWorks {
+
+public class YesNoCancelDialog : Hildon.Dialog {
+
+  public YesNoCancelDialog(Gtk.Widget parent, string title, string message, Gtk.ResponseType default_response) {
+    this.set_title(title);
+    this.set_parent(parent);
+    this.set_default_response(default_response);
+    construct_interface(message);
+  }
+  
+  private void construct_interface(string message) {
+    this.add_button(Gtk.STOCK_YES, Gtk.ResponseType.YES);
+    this.add_button(Gtk.STOCK_NO, Gtk.ResponseType.NO);
+    this.add_button(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL);
+    
+    Gtk.VBox control_area = (Gtk.VBox)this.get_content_area();
+    
+    control_area.pack_start(new Gtk.Label(message), true, true, 4);
+    
+    this.show_all();
+  }
+
+}
+
+}
\ No newline at end of file