summaryrefslogtreecommitdiffstats
path: root/src/ProjectPropertiesDialog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ProjectPropertiesDialog.cpp')
-rw-r--r--src/ProjectPropertiesDialog.cpp93
1 files changed, 0 insertions, 93 deletions
diff --git a/src/ProjectPropertiesDialog.cpp b/src/ProjectPropertiesDialog.cpp
deleted file mode 100644
index 93c7a39..0000000
--- a/src/ProjectPropertiesDialog.cpp
+++ /dev/null
@@ -1,93 +0,0 @@
-/* This file is part of Patchage.
- * Copyright 2008 Nedko Arnaudov <nedko@arnaudov.name>
- *
- * Patchage is free software; you can redistribute it and/or modify it under the
- * terms of the GNU General Public License as published by the Free Software
- * Foundation; either version 2 of the License, or (at your option) any later
- * version.
- *
- * Patchage 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 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 St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include <gtkmm/dialog.h>
-#include <gtkmm/entry.h>
-#include <gtkmm/textview.h>
-#include <gtkmm/textbuffer.h>
-#include <gtkmm/builder.h>
-
-#include "LashProxy.hpp"
-#include "Patchage.hpp"
-#include "Project.hpp"
-#include "ProjectPropertiesDialog.hpp"
-#include "Widget.hpp"
-
-using boost::shared_ptr;
-
-struct ProjectPropertiesDialogImpl {
- ProjectPropertiesDialogImpl(LashProxy* proxy, Glib::RefPtr<Gtk::Builder> xml);
-
- LashProxy* _proxy;
- Widget<Gtk::Dialog> _dialog;
- Widget<Gtk::Entry> _name;
- Widget<Gtk::Entry> _description;
- Widget<Gtk::TextView> _notes;
-};
-
-ProjectPropertiesDialog::ProjectPropertiesDialog(LashProxy* proxy,
- Glib::RefPtr<Gtk::Builder> xml)
-{
- _impl = new ProjectPropertiesDialogImpl(proxy, xml);
-}
-
-ProjectPropertiesDialog::~ProjectPropertiesDialog()
-{
- delete _impl;
-}
-
-void
-ProjectPropertiesDialog::run(shared_ptr<Project> project)
-{
- Glib::RefPtr<Gtk::TextBuffer> buffer;
- int result;
-
- _impl->_name->set_text(project->get_name());
-
- _impl->_description->set_text(project->get_description());
-
- buffer = _impl->_notes->get_buffer();
- buffer->set_text(project->get_notes());
-
- result = _impl->_dialog->run();
- if (result == 2) {
- const std::string& old_name = project->get_name();
- const std::string& desc = _impl->_description->get_text();
- const std::string& notes = buffer->get_text();
- const std::string& name = _impl->_name->get_text();
- if (project->get_description() != desc)
- _impl->_proxy->project_set_description(old_name, _impl->_description->get_text());
- if (project->get_notes() != notes)
- _impl->_proxy->project_set_notes(old_name, buffer->get_text());
- if (old_name != name)
- _impl->_proxy->project_rename(old_name, buffer->get_text());
- }
-
- _impl->_dialog->hide();
-}
-
-ProjectPropertiesDialogImpl::ProjectPropertiesDialogImpl(
- LashProxy* proxy,
- Glib::RefPtr<Gtk::Builder> xml)
- : _proxy(proxy)
- , _dialog(xml, "project_properties_dialog")
- , _name(xml, "project_name")
- , _description(xml, "project_description")
- , _notes(xml, "project_notes")
-{
-}
-