#usage "Delete empty devices\n" "

" "To delete devices without a symbol from a library, " "run this ULP and click EXECUTE." "

" "Before executing the DELETE commands you can edit them " "in the appearing editor window." "

" "Author: support@cadsoft.de" // THIS PROGRAM IS PROVIDED AS IS AND WITHOUT WARRANTY OF ANY KIND, EXPRESSED OR IMPLIED if (library) { int empty; string cmd = "", h; cmd += "set undo_log off;\n"; library(L) { L.devicesets(D) { h = ""; empty = 1; D.gates(G) { empty = 0; } if (empty) { // device w/o gates found! sprintf(h,"REMOVE %s.dev;\n",D.name); cmd += h; } } } cmd += "set undo_log on;\n"; // EditBox int Result = dlgDialog("Edit and Execute") { dlgTextEdit(cmd); dlgHBoxLayout { dlgPushButton("+Execute") dlgAccept(); dlgPushButton("-Cancel") dlgReject(); } }; if (!Result) exit(0); exit(cmd); } else { dlgMessageBox("\n Start this ULP in a Library \n"); exit (0); }