Quit when requested from the menu
[ladish.git] / gui / lash_client.cpp
blob48f3ccfd876c94df9015d90867563c80a32f6be9
1 /* -*- Mode: C ; c-basic-offset: 2 -*- */
2 /*
3 * LADI Session Handler (ladish)
5 * Copyright (C) 2008 Nedko Arnaudov <nedko@arnaudov.name>
7 **************************************************************************
8 * This file contains implementation of the lash_client class
9 **************************************************************************
11 * LADI Session Handler is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
16 * LADI Session Handler is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
21 * You should have received a copy of the GNU General Public License
22 * along with LADI Session Handler. If not, see <http://www.gnu.org/licenses/>
23 * or write to the Free Software Foundation, Inc.,
24 * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
27 #include "common.h"
28 #include "lash_client.hpp"
29 #include "Patchage.hpp"
30 //#include "globals.hpp"
32 struct lash_client_impl
34 lash_proxy * lash_ptr;
35 project * project_ptr;
36 std::string id;
37 std::string name;
40 lash_client::lash_client(
41 lash_proxy * lash_ptr,
42 project * project_ptr,
43 const std::string& id,
44 const std::string& name)
46 _impl_ptr = new lash_client_impl;
47 _impl_ptr->lash_ptr = lash_ptr;
48 _impl_ptr->project_ptr = project_ptr;
49 _impl_ptr->id = id;
50 _impl_ptr->name = name;
52 //g_app->info_msg("client created");
55 lash_client::~lash_client()
57 delete _impl_ptr;
58 //g_app->info_msg("client destroyed");
61 project *
62 lash_client::get_project()
64 return _impl_ptr->project_ptr;
67 void
68 lash_client::get_id(
69 std::string& id)
71 id = _impl_ptr->id;
74 void
75 lash_client::get_name(
76 std::string& name)
78 name = _impl_ptr->name;
81 void
82 lash_client::do_rename(
83 const std::string& name)
85 if (_impl_ptr->name != name)
87 //_impl_ptr->lash_ptr->client_rename(_impl_ptr->id, name);
91 void
92 lash_client::on_name_changed(
93 const std::string& name)
95 _impl_ptr->name = name;
96 _signal_renamed.emit();