1 /**
2 * \brief Choose Desktop dialog
3 *
4 * Authors:
5 * Dale Harvey <harveyd@gmail.com>
6 *
7 * Copyright (C) 2006 Authors
8 *
9 * Released under GNU GPL. Read the file 'COPYING' for more information.
10 */
12 #include <gtkmm.h>
14 #include "desktop.h"
16 namespace Inkscape {
17 namespace Whiteboard {
19 class ChooseDesktop : public Gtk::Dialog
20 {
21 public:
23 ChooseDesktop()
24 { doSetup(); }
26 virtual ~ChooseDesktop()
27 {}
29 SPDesktop* getDesktop();
31 private:
33 void okCallback();
34 void cancelCallback();
36 void doubleClickCallback(
37 const Gtk::TreeModel::Path &path,
38 Gtk::TreeViewColumn *col);
40 bool doSetup();
42 class DesktopColumns : public Gtk::TreeModel::ColumnRecord
43 {
44 public:
45 DesktopColumns()
46 {
47 add(nameColumn);
48 add(desktopColumn);
49 }
51 Gtk::TreeModelColumn<Glib::ustring> nameColumn;
52 Gtk::TreeModelColumn<SPDesktop*> desktopColumn;
53 };
55 DesktopColumns desktopColumns;
57 Gtk::ScrolledWindow desktopScroll;
58 Gtk::TreeView desktopView;
60 Glib::RefPtr<Gtk::ListStore> desktopListStore;
62 };
64 }
65 }