Eliminated unecessary PatchPort class.

git-svn-id: http://svn.drobilla.net/lad@137 a436a847-0d15-0410-975c-d299462d15a1
This commit is contained in:
dave 2006-09-15 03:16:08 +00:00
parent 222ccb8360
commit d8e4524127
8 changed files with 13 additions and 129 deletions

View File

@ -69,8 +69,6 @@ ingenuity_SOURCES = \
SubpatchModule.cpp \
Port.h \
Port.cpp \
PatchPort.h \
PatchPort.cpp \
NewSubpatchWindow.h \
NewSubpatchWindow.cpp \
ConfigWindow.h \

View File

@ -28,7 +28,6 @@
#include "Port.h"
#include "NodeModel.h"
#include "NodeModule.h"
#include "PatchPortModule.h"
#include "SubpatchModule.h"
#include "GladeFactory.h"
#include "WindowFactory.h"

View File

@ -1,57 +0,0 @@
/* This file is part of Ingen. Copyright (C) 2006 Dave Robillard.
*
* Ingen 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.
*
* Ingen 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 "PatchPort.h"
#include <cassert>
#include <iostream>
#include "PortModel.h"
#include "PatchPortModule.h"
#include "ControlModel.h"
#include "Configuration.h"
#include "App.h"
using std::cerr; using std::endl;
using namespace Ingen::Client;
namespace Ingenuity {
PatchPort::PatchPort(PatchPortModule* module, CountedPtr<PortModel> pm)
: Port(module, pm->path().name(), !pm->is_input(), App::instance().configuration()->get_port_color(pm.get())),
m_port_model(pm)
{
assert(module);
assert(m_port_model);
}
#if 0
void
PatchPort::set_name(const string& n)
{
cerr << "********** PatchPort::set_name broken **********************" << endl;
/* FIXME: move to PortController
string new_path = Path::parent(m_port_model->path()) +"/"+ n;
for (list<ControlPanel*>::iterator i = m_control_panels.begin(); i != m_control_panels.end(); ++i)
(*i)->rename_port(m_port_model->path(), new_path);
Port::set_name(n);
m_port_model->path(new_path);
*/
}
#endif
} // namespace Ingenuity

View File

@ -1,59 +0,0 @@
/* This file is part of Ingen. Copyright (C) 2006 Dave Robillard.
*
* Ingen 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.
*
* Ingen 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
*/
#ifndef PATCHPORT_H
#define PATCHPORT_H
#include <cassert>
#include <string>
#include <flowcanvas/Port.h>
#include "util/CountedPtr.h"
namespace Ingen { namespace Client { class PortModel; } }
using namespace Ingen::Client;
using namespace LibFlowCanvas;
using std::string; using std::list;
namespace Ingenuity {
class FlowCanvas;
class PatchWindow;
class PatchPortModule;
/** A Port (on a pseudo node) in a patch canvas, to represent a port on that patch.
*
* \ingroup Ingenuity
*/
class PatchPort : public LibFlowCanvas::Port
{
public:
PatchPort(PatchPortModule* module, CountedPtr<PortModel> pm);
virtual ~PatchPort() {}
//void set_name(const string& n);
CountedPtr<PortModel> model() const { return m_port_model; }
private:
CountedPtr<PortModel> m_port_model;
};
} // namespace Ingenuity
#endif // PATCHPORT_H

View File

@ -25,7 +25,6 @@
#include "GladeFactory.h"
#include "RenameWindow.h"
#include "PatchWindow.h"
#include "PatchPort.h"
namespace Ingenuity {
@ -47,7 +46,7 @@ PatchPortModule::PatchPortModule(PatchCanvas* canvas, CountedPtr<PortModel> port
if (m_patch_port)
delete m_patch_port;
m_patch_port = new PatchPort(this, port);
m_patch_port = new Port(this, port, true);
}
resize();

View File

@ -21,7 +21,7 @@
#include <libgnomecanvasmm.h>
#include <flowcanvas/Module.h>
#include "util/Atom.h"
#include "PatchPort.h"
#include "Port.h"
using std::string;
namespace Ingen { namespace Client {
@ -62,7 +62,7 @@ protected:
void metadata_update(const string& key, const Atom& value);
CountedPtr<PortModel> m_port;
PatchPort* m_patch_port; ///< Port on this 'anonymous' module
Port* m_patch_port; ///< Port on this 'anonymous' module
};

View File

@ -17,8 +17,8 @@
#include "Port.h"
#include <cassert>
#include <iostream>
#include "PatchModel.h"
#include "PortModel.h"
#include "NodeModule.h"
#include "ControlModel.h"
#include "Configuration.h"
#include "App.h"
@ -28,8 +28,14 @@ using namespace Ingen::Client;
namespace Ingenuity {
Port::Port(NodeModule* module, CountedPtr<PortModel> pm)
: LibFlowCanvas::Port(module, pm->path().name(), pm->is_input(), App::instance().configuration()->get_port_color(pm.get())),
/** @param flip Make an input port appear as an output port, and vice versa.
*/
Port::Port(LibFlowCanvas::Module* module, CountedPtr<PortModel> pm, bool flip)
: LibFlowCanvas::Port(module,
pm->path().name(),
flip ? (!pm->is_input()) : pm->is_input(),
App::instance().configuration()->get_port_color(pm.get())),
m_port_model(pm)
{
assert(module);

View File

@ -27,8 +27,6 @@ using Ingen::Client::PortModel;
namespace Ingenuity {
class NodeModule;
/** A Port on an Module.
*
@ -37,7 +35,7 @@ class NodeModule;
class Port : public LibFlowCanvas::Port
{
public:
Port(NodeModule* module, CountedPtr<PortModel> pm);
Port(LibFlowCanvas::Module* module, CountedPtr<PortModel> pm, bool flip = false);
virtual ~Port() {}