// --------------------------------------------------------------------- // Makes the schematic symbol subcircuit with the correct number // of ports. void Subcircuit::createSymbol() { int No; QString FileName(Props.getFirst()->Value); FileName = getSubcircuitFile(); tx = INT_MIN; ty = INT_MIN; if(loadSymbol(FileName) > 0) { // try to load subcircuit symbol if(tx == INT_MIN) tx = x1+4; if(ty == INT_MIN) ty = y2+4; // remove unused ports for(Port *pp = Ports.first(); pp != 0; ) { if(!pp->avail) { Ports.remove(); pp = Ports.current (); } else pp = Ports.next(); } } else { No = QucsApp::testFile(FileName); if(No < 0) No = 0; Ports.clear(); remakeSymbol(No); // no symbol was found -> create standard symbol } }
// --------------------------------------------------------------------- // Makes the schematic symbol subcircuit with the correct number // of ports. void Subcircuit::createSymbol() { int No; QString FileName(Props.getFirst()->Value); FileName = getSubcircuitFile(); tx = INT_MIN; ty = INT_MIN; if(loadSymbol(FileName) > 0) { // try to load subcircuit symbol if(tx == INT_MIN) tx = x1+4; if(ty == INT_MIN) ty = y2+4; // remove unused ports QMutableListIterator<Port *> ip(Ports); Port *pp; while (ip.hasNext()) { pp = ip.next(); if(!pp->avail) { pp = ip.peekNext(); ip.remove(); } } } else { No = QucsApp::testFile(FileName); if(No < 0) No = 0; Ports.clear(); remakeSymbol(No); // no symbol was found -> create standard symbol } }