Files
SyncHome/trunk/ulp/set_name_value.ulp

42 lines
1.2 KiB
Plaintext
Raw Normal View History

2023-03-09 10:24:21 +00:00
#usage "place >NAME and >VALUE in Package or Symbol if not placed<p>"
"<author>Author alf@cadsoft.de</author>"
string cmd;
if (symbol) {
int no_Sname = 1;
int no_Svalue = 1;
symbol(S) {
S.texts(T) {
if (T.value == ">NAME" && T.layer == 95) no_Sname = 0;
if (T.value == ">VALUE" && T.layer == 96) no_Svalue = 0;
if (T.value == ">GATE" && T.layer == 95 || T.value == ">PART" && T.layer == 95) {
no_Sname = 0;
no_Svalue = 0;
}
}
}
if (no_Sname && no_Svalue) {
cmd = "GRID MIL;\nCHANGE SIZE 70;\nCHANGE LAYER 95;\nTEXT >NAME (0 100);\n GRID LAST;";
cmd += "GRID MIL;\nCHANGE SIZE 70;\nCHANGE LAYER 96;\nTEXT >VALUE (0 0);\n GRID LAST;";
}
}
if (package) {
int no_Pname = 1;
int no_Pvalue = 1;
package(P) {
P.texts(T) {
if (T.value == ">NAME" && T.layer == 25) no_Pname = 0;
if (T.value == ">VALUE" && T.layer == 27) no_Pvalue = 0;
}
}
if (no_Pname) {
cmd = "GRID MIL;\nCHANGE SIZE 50;\nCHANGE LAYER 25;\nTEXT >NAME (0 100);\n GRID LAST;";
}
if (no_Pvalue) {
cmd += "GRID MIL;\nCHANGE SIZE 50;\nCHANGE LAYER 27;\nTEXT >VALUE (0 0);\n GRID LAST;";
}
}
exit (cmd);