Ejemplo n.º 1
0
void deleteName(node ** book, char * name){
  int i;
  char alphabet[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  for (i = 0; i < 26; i++){
    if (strncmp(alphabet+i, name, 1) == 0){
      removeName(*(book+i), name);
    }
  }
}
Ejemplo n.º 2
0
//Search for the currently selected and erase it
void NameList::removeCurrent()
{
    //Remove the selected row (if the current is valid)
    int row = _table->currentIndex().row();
    if (row != -1)
    {
        removeName(_table->item(row, 0)->text());
        removeAt(row);
    }
}
Ejemplo n.º 3
0
void
QvNode::setName(const QvName &newName)
{
    if (! !(*objName)) {
	removeName(this, objName->getString());
    }
    delete objName;

    const char *str = newName.getString();
    QvBool isBad = 0;

    if (newName.getLength() > 0 &&
	!QvName::isNodeNameStartChar(str[0])) isBad = TRUE;

    int i;
    for (i = 1; i < newName.getLength() && !isBad; i++) {
	isBad = !QvName::isNodeNameChar(str[i]);
    }

    if (isBad) {
	QvString goodString;

	if (!QvName::isNodeNameStartChar(str[0])) {
	    goodString += "_";
	}
	for (i = 0; i < newName.getLength(); i++) {
	    char temp[2];
	    temp[0] = str[i]; temp[1] = '\0';
	    if (!QvName::isNodeNameChar(str[i]))
		goodString += "_";
	    else
		goodString += temp;
	}
#ifdef DEBUG
	QvDebugError::post("QvNode::setName", "Bad characters in"
			   " name '%s'.  Replacing with name '%s'",
			   str, goodString.getString());
#endif       
	objName = new QvName(goodString);
    }
    else {
	objName = new QvName(newName);
    }
    if (! !(*objName)) {
	addName(this, objName->getString());
    }
}
Ejemplo n.º 4
0
QvNode::~QvNode()
{
    if (! !(*objName))
	removeName(this, objName->getString());
    delete objName;
}