X-Git-Url: https://scm.cri.ensmp.fr/git/Faustine.git/blobdiff_plain/c7f552fd8888da2f0d8cfb228fe0f28d3df3a12c..b4b6f2ea75b9f0f3ca918f5b84016610bf7a4d4f:/interpretor/faust-0.9.47mr3/compiler/draw/schema/blockSchema.cpp diff --git a/interpretor/faust-0.9.47mr3/compiler/draw/schema/blockSchema.cpp b/interpretor/faust-0.9.47mr3/compiler/draw/schema/blockSchema.cpp deleted file mode 100644 index ca5ff55..0000000 --- a/interpretor/faust-0.9.47mr3/compiler/draw/schema/blockSchema.cpp +++ /dev/null @@ -1,302 +0,0 @@ -/************************************************************************ - ************************************************************************ - FAUST compiler - Copyright (C) 2003-2004 GRAME, Centre National de Creation Musicale - --------------------------------------------------------------------- - This program 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. - - 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., 675 Mass Ave, Cambridge, MA 02139, USA. - ************************************************************************ - ************************************************************************/ - - -#include "blockSchema.h" -#include - -using namespace std; - -static double quantize(int n) -{ - int q = 3; - return dLetter * (q *((n+q-1)/q)); -} - -/** - * Build a simple colored blockSchema with a certain number of - * inputs and outputs, a text to be displayed, and an optional link. - * Computes the size of the box according to the length of the text - * and the maximum number of ports. - */ -schema* makeBlockSchema ( unsigned int inputs, - unsigned int outputs, - const string& text, - const string& color, - const string& link ) -{ - // determine the optimal size of the box - double minimal = 3*dWire; - double w = 2*dHorz + max( minimal, quantize(text.size()) ); - double h = 2*dVert + max( minimal, max(inputs, outputs) * dWire ); - - return new blockSchema(inputs, outputs, w, h, text, color, link); -} - -/** - * Build a simple colored blockSchema with a certain number of - * inputs and outputs, a text to be displayed, and an optional link. - * The length of the text as well as th number of inputs and outputs - * are used to compute the size of the blockSchema - */ -blockSchema::blockSchema ( unsigned int inputs, - unsigned int outputs, - double width, - double height, - const string& text, - const string& color, - const string& link ) - - : schema( inputs, outputs, width, height ), - fText(text), - fColor(color), - fLink(link) -{ - for (unsigned int i=0; iout direction - c.addInput(point(p.x+dx, p.y)); - } -} - -/** - * Draw horizontal line from the blockSchema rectangle to the - * output points - */ -void blockSchema::collectOutputWires(collector& c) -{ - double dx = (orientation() == kLeftRight) ? dHorz : -dHorz; - - for (unsigned int i=0; iout direction - c.addOutput(point(p.x-dx, p.y)); - } -} - -