• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

F@H stats in your sig: not just for Linux anymore!

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.
Default "generic sig_gen":

Build!.Borg!.Recruit!.Folding.for.Team.32!
My Folding Stats:____Currently Monitored WUs:
score:______25972____{§¤´²¨ª_________}_47%: p1322_1fnt_a20_9.1ps-1_u
Pts Per Day:__542____{§¤_______________}_10%: OneIsTheLoneliestNumber
Pts 7 Days:_3,796____{§¤´²¨ª_________}_50%: UnitTwoWhereAreYou
Clients:________6____{§¤´²¨ª*»§¤´____}_75%: ThreeisMe_MeToo_MeToo
Work Units:___229____{§¤´²¨ª*»§¤´²¨ª}_99%: Impossible_AMD_Quad_Power
Team 32 Rank:_521 (+43.in.7.days)____
Auto Generated 02/27/2005 07:22. AutoSig ©2005 Christoph et al. Want a sig? :)0


gui_v0.03.gif


GUI settings above did this:

Build!.Borg!.Recruit!.Folding.for.Team.32!
My Folding Stats:____Currently Monitored WUs:
Points:_____25972____{§¤´²¨ª__________}_44%: p1322_1fnt_a20_9.1ps-1_u
Clients:________6____{§¤_______________}_10%: OneIsTheLoneliestNumber
Work Units:___229____{§¤´²¨ª_________}_50%: UnitTwoWhereAreYou
Pts Per Day:__542____{§¤´²¨ª*»§¤´____}_75%: ThreeisMe_MeToo_MeToo
Pts 7Days:__3,796____{§¤´²¨ª*»§¤´²¨ª}_99%: Impossible_AMD_Quad_Power
Team 32 Rank:_521 (+43.in.7.days)____
Auto Generated 02/27/2005 06:40. AutoSig ©2005 Christoph et al. Want a sig? :)0




Getting a little further... I picked random hex colors to see how it'd turn out, not websafe colors but oh well...

Work log, v0.03:
  • I failed to remember that there were about 50 things to look for in the sig_gen. Count how many elements you can change in the GUI, and there's still some left to do.
  • Gotta n00b proof it a bit more.. like putting 2394828394293742 for the column spacing.. it'll pop up a window saying "Invalid blah blah"
  • Added most of the coloring options. Everything except the change rank 7 days colors can now be modified. Thinking about making a "Show Change Rank 7 Days" checkbox, to hide/show the "(+32 in 7 days)", then enabling/diabling the color entry fields for them.
  • Can change the progress bar length, and can change the characters that make up the progress bar.
  • Can change the "Gbye" tagline on the bottom. That was a biotch because of the multiple quotes and \n everywhere, and because the GUI parse twice for 3 changes.
  • "Load Default Settings" works now. Can access it through File > Load Default Settings. Need to add a button for it.
  • Don't need to know the variables for the stats, only what they mean. Variables are now in a "combobox" (BrowseEntry... a poor man's combo box). Later the "combobox" will have real names like "Points Per Day" instead of "$ppd", I'm just lazy ATM. BTW, Tk::BrowseEntry documentation sucks.
  • FAH Path Wizard coming soon...
  • Option to Open/Save Configuration(As...) coming soon... so if they like a certain color pattern or stats, then can save it to a config file rather than writing it down.. then they can load it again if they want.
  • Color Picker coming soon...
  • Check sig_gen for errors coming soon...
  • Restore Original sig_gen coming soon... (load from backup)
  • Might throw in "Randomize Colors" checkboxes for fun
 
Last edited:
Yea...a GOOD textbook would be a godsend. Hell, even the tutorials have alot of typos..makes learning quite the challange....sigh.

Hey JerMe, I am playing with a color picker. Finally got the stupid tutorial to work properly, after fixing all the typos and formatting it to a readable level. If I didn't have yours to look at I would have never figured out what was wrong...geesh! And they are teaching people that garbage? Amazing!

I was hoping to get a serious color picker worked out for you to look at and maybe insert, change, hack, throw away...:). I'll keep plugging away at it for now.
 
Cool! To keep it simple, just make a separate project. Here's what to do so it'll just be a drop in procedure:

Make a window. MainWindow

Make a frame that takes up the whole window (i call it Bigframe)

Make 2 frames that pack left in the bigframe vertically... leftframe and right frame... pack(-side=>'left')

then in the left frame, put an entry box (Entry).. entry field, for a hex color?

then in right frame, put the color picker (ChooseColor, I think, check the ASPN documentation)

If you can get the entry field on the left to say the hex color/RGB color output of the color picker on the right, then you did it. =)

Once you figure it out, then just pack(-side=>'top') 5 more Entry's in the left window, and 5 more ColorChooser's in the right window, and tada! Drop in =) The user should be able to then pick a color or type in the hex color in the entry field.
 
I've got a list like you wouldnt believe!!! Been working on it all day. I may be slow, but I am steady..:) All I have to do now is get the drop down box to do what you want. Doesn't look too hard, I've scoped yours out for the variables and think I have the basic idea. Check this out:

Code:
%selectcolor = (
	"aliceblue" => [FOF8FF],
	"antiquewhite" => [FAEBD7],
	"aqua" => [00FFFF],
	"aquamarine" => [7FFFD4],
	"azure" => [F0FFFF],
	"beige" => [F5F5DC],
	"bisque" => [FFE4C4],
	"black" => [000000],
	"blanchedalmond" => [FFEBCD],
	"blue" => [0000FF],
	"blueviolet" => [8A2BE2],
	"brown" => [A52A2A],
	"burlywood" => [DEB887],
	"cadetblue" => [5F9EA0],
	"chartreuse" => [7FFF00],
	"chocolate" => [D2691E],
	"coral" => [FF7F50],
	"cornflowerblue" => [6495ED],
	"cornsilk" => [FFF8DC],
	"crimson" => [DC143C],
	"cyan" => [00FFFF],
	"darkblue" => [00008B],
	"darkcyan" => [008B8B],
	"darkgoldenrod" => [B8860B],
	"darkgray" => [A9A9A9],
	"darkgreen" => [006400],
	"darkkhaki" => [BDB76B],
	"darkmagenta" => [8B008B],
	"darkolivegreen" => [556B2F],
	"darkorange" => [FF8C00],
	"darkorchid" => [9932CC],
	"darkred" => [8A0000],
	"darksalmon" => [E9967A],
	"darkseagreen" => [8FBC8F],
	"darkslateblue" => [483D8B],
	"darkslategray" => [2F4F4F],
	"darkturquoise" => [00CED1],
	"darkviolet" => [9400D3],
	"deeppink" => [FF1493],
	"deepskyblue" => [00BFFF],
	"dimgray" => [696969],
	"dodgerblue" => [1E90FF],
	"firebrick" => [B22222],
	"floralwhite" => [FFFAF0],
	"forestgreen" => [228B22],
	"fuchsia" => [FF00FF],
	"gainsboro" => [DCDCDC],
	"ghostwhite" => [F8F8FF],
	"gold" => [FFD700],
	"goldenrod" => [DAA520],
	"grey" => [808080],
	"green" => [008000],	
	"greenyellow" => [ADFF2F],
	"honeydew" => [F0FFF0],
	"hotpink" => [FF69B4],
	"indianred" => [CD5C5C],
	"indigo" => [4B0082],
	"ivory" => [FFFFF0],
	"khaki" => [F0E68C],
	"lavender" => [E6E6FA],
	"lavenderblush" => [FFF0F5],
	"lawngreen" => [7CFC00],
	"lemonchiffon" => [FFFACD],
	"lightblue" => [ADD8E6],
	"lightcoral" => [F08080],
	"lightcyan" => [E0FFFF],
	"lightgoldenrodyellow" => [FAFAD2],
	"lightgreen" => [90EE90],
	"lightgrey" => [D3D3D3],
	"lightpink" => [FFB6C1],
	"lightsalmon" => [FFA07A],
	"lightseagreen" => [20B2AA],
	"lightskyblue" => [87CEFA],
	"lightslategray" => [778899],
	"lightsteelblue" => [B0C4DE],
	"lightyellow" => [FFFFE0],
	"lime" => [00FF00],
	"limegreen" => [32CD32],
	"linen" => [FAF0E6],
	"magenta" => [FF00FF],
	"maroon" => [800000],
	"mediumaquamarine" => [66CDAA],
	"mediumblue" => [0000CD],
	"mediumorchid" => [BA55D3],
	"mediumpurple" => [9370DB],
	"mediumseagreen" => [3CB371],
	"mediumslateblue" => [7B68EE],
	"mediumspringgreen" => [00FA9A],
	"mediumturquoise" => [48D1CC],
	"mediumvioletred" => [C71585],
	"midnightblue" => [191970],
	"mintcream" => [F5FFFA],
	"mistyrose" => [FFE4E1],
	"moccasin" => [FFE4B5],
	"navajowhite" => [FFDEAD],
	"navy" => [000080],
	"oldlace" => [FDF5E6],
	"olive" => [808000],
	"olivedrab" => [6B8E23],
	"orange" => [FFA500],
	"orangered" => [FF4500],
	"orchid" => [DA70D6],
	"palegoldenrod" => [EEE8AA],
	"palegreen" => [98FB98],
	"paleturquoise" => [AFEEEE],
	"palevioletred" => [DB7093],
	"papayawhip" => [FFEFD5],
	"peachpuff" => [FFDAB9],
	"peru" => [CD853F],
	"pink" => [FFC0CB],
	"plum" => [DDA0DD],
	"powderblue" => [B0E0E6],
	"purple" => [800080],
	"red" => [FF0000],
	"rosybrown" => [BC8F8F],
	"royalblue" => [4169E1],
	"saddlebrown" => [8B4513],
	"salmon" => [FA8072],
	"sandybrown" => [F4A460],
	"seagreen" => [2E8B57],
	"seashell" => [FFF5EE],
	"sienna" => [A0522D],
	"silver" => [C0C0C0],
	"skyblue" => [87CEEB],
	"slateblue" => [6A5ACD],
	"slategray" => [708090],
	"snow" => [FFFAFA],
	"springgreen" => [AAFF7F],
	"steelblue" => [4682B4],
	"tan" => [D2B48C],
	"teal" => [008080],
	"thistle" => [D8BFD8],
	"tomato" => [FF6347],
	"turquoise" => [40E0D0],
	"violet" => [EE82EE],
	"wheat" => [F5DEB3],
	"white" => [FFFFFF],
	"whitesmoke" => [F5F5F5],
	"yellow" => [FFFF00],
	"yellowgreen" => [9ACD32]
    );

Those are the 147 colors defined by the Scalable Vector Graphics (SVG) Specification. Some of those will be way too dark, but after we get it to work, we can always weed out the dark ones. I just wish there was a way to have a color blotch next to the color name in the drop down...now THAT would be cool!!

Hey! It's a start!!
 
gui_v0.04.gif


Settings aboved produced this sig:

Build!.Borg!.Recruit!.Folding.for.Team.32!
My Folding Stats:_____Currently Monitored WUs:
score:______25972_____{§¤´²¨ª*»§¤´²¨ª_}_97%: p1322_1fnt_a20_9.1ps-1_u
Pts Per Day:__457_____{§¤_______________}_10%: OneIsTheLoneliestNumber
Pts 7 Days:_3,196_____{§¤´²¨ª_________}_50%: UnitTwoWhereAreYou
Clients:________6_____{§¤´²¨ª*»§¤´____}_75%: ThreeisMe_MeToo_MeToo
Work Units:___229_____{§¤´²¨ª*»§¤´²¨ª}_99%: Impossible_AMD_Quad_Power
Team 32 Rank:_522 (+37.in.7.days)_____
Auto Generated 02/27/2005 23:33. AutoSig ©2005 Christoph et al. Want a sig? :)0


Clicking the colored buttons will bring up the eversofamiliar color palette to choose a color:

color.gif


Of course, most of those colors aren't websafe. That's where GTFout's work comes in. =)

Worklog, v0.04:
  • Color Picker now working, though not websafe, will look pretty decent in Firefox/IE. GTFouts is taking care of an SVG list that'll coexist with this color picker.
  • Changed the progress bar length and spacers to be a Spinbox rather than an entry field, to avoid users typing some strange character, or picking an insanely huge number. Looks neato, too.
  • Extended the entry fields.
  • Total: 61 items (ugh)

To Do List
  • FAH Path Wizard
  • Open/Save Configuration (very close to load default stats, just save each stat/color to a variable list in another file)
  • Text and color of headers ("My Folding Stats", "Currently Monitored WUs")
  • Entries to change values using Christoph's color_string subroutine ($err, $periods, $fun) for the folding string and wu name
 
I don't envy anyone who's trying to pick up Perl without either "Programming Perl" (mostly complete reference) or "Learning Perl" (aimed at non-programmers) from O'Reilly. One of them might be worth buying for this project alone, but if you're going to do anything else with Perl, I wouldn't consider them optional.
I wish I had the money to send one to you, JerMe, but that's the life of a college student.
The GUI looks very good. It should make this project much more accessible.

Also, it's update time!
About 6 months ago (or 3 days, I'm not quite sure), JerMe requested that mksig not produce huge logs. I like big logs (and I cannot lie), but for those of you who don't, v.67, which is up now, adds a max_log_size entry to mksig.conf. By default, it's 0, which means don't touch the log. To get your logs down to a more manageable size, change it to something like "12k", "5M" or "32g", and it'll be cut down next time mksig is run.
If mksig doesn't detect a config file, it will ask for a size during the configuration.
 
Last edited:
WOW! Now that is seriously SWEET JerMe. Man, you are light years ahead of me in this programming. I would have never been able to do that with the colors, tho that is what I was wanting the end product to be. Jam Up Son!!!

I do have a few suggestions for the think pot:

1. make the labels change to the color they pick
2. change the background of those labels and such to the forums background color so you can really see what the change will look like
3. Progress Bar: put a field next to the character select field that will show what a full progress bar will look like, colored and background. remember it will change size when a different length is entered. I think 20 should be the max length.
4. Maybe a check box to turn off and on however many stats you wish to show. Some people may not want 6 stats, maybe they only want to show 3 stats...shrug
5. oh, and the stat names need to be lined up with the stat label boxes.

6. Pat yourself on the back. you damn sure deserve it!

You definetly have this well under control. I don't know what I can do to help, but if I can please let me know.
 
GTFouts said:
1. make the labels change to the color they pick

I thought about doing that, but I don't think I can change the font color for the text in the Entry fields! If there's a way, COOL. Is there? Again, book is great here.

2. change the background of those labels and such to the forums background color so you can really see what the change will look like

Changing the background color to #333333, now that's possible, but with black font staying black, I can't do anything about that...

3. Progress Bar: put a field next to the character select field that will show what a full progress bar will look like, colored and background. remember it will change size when a different length is entered. I think 20 should be the max length.

Again this is a font issue. Right now the chars are looking pretty squished, I think I can change the font, but it'll change the size of the Entry field. I'll play with it. Max length now set to 20.

4. Maybe a check box to turn off and on however many stats you wish to show. Some people may not want 6 stats, maybe they only want to show 3 stats...shrug

Yep, checkboxes have been there since I think v0.02 but commented out, was working on getting the Path Wizard and color boxes up and "running".


5. oh, and the stat names need to be lined up with the stat label boxes.

Doh, fixed. =) The color buttons have a minimum size that is larger than the size of the entry fields and labels, so I had to -pady=>2 for all the labels and entry fields. Forgot the stat labels, thanks.

6. Pat yourself on the back. you damn sure deserve it!

I'm addicted, what can I say ;)


K, here's the FAH Path Wizard, as promised:

Click File > FAH Path Wizard...

gui_v0.05_menu_file.gif


Type in your paths (in the Perl Way, but if you do it the windows way it'll put it back to the perl way), or click the Browse button to open the crappy arse FileSelect widget:

pathwizard.gif


Here's what FileSelect looks like. It sucks, every time you hit cancel it fills my Entry field with c:/Program Files/FAH (the inital directory). If I don't specify an initial directory, then it'll populate my Entry field with the last directory WIndows was messing with. It's SUPPOSED to do nothing. I haven't figured it out how to work with it yet, but just know if you hit "Cancel" then funny things will happen.

fileselect.gif



Worklog v0.05:

  • FAH Path now "working". Can type in both C:\\Program Files\FAH or C:/Program Files/FAH, it'll fix it in the end. Or you can click "Browse..." and select the file directory. BAD: If you hit "Cancel" in while browsing for a file, it'll populate the field with C:/Program Files/FAH, instead of doing nothing. That's not my fault, it's Tk::FileSelect's fault.
  • Fixed the stat labels

To do list:

  • I just realized that there are other alternatives to FileSelect. @#(*$@#($@(#*$. I'll dump is as soon as I can.

Argh, you don't understand how frustrating using FileSelect was. If I just took a break, I would have known that getOpenFile is the windows native file selector, and looks a lot better too. Ugh. At least I know now, and that'll make it easy for the Open/Save Config option.

Edit: getOpenFile works, but it only works with the top window (the main window), so everytime I pick a file, the main window takes focus, thus hiding the Wizard. I'm going to dump the Path Wizard and just have 5 Entry fields & 5 Browse buttons in the main window, just right of the folding name and eocid.
 
Last edited:
Daaaaaaaaaaaaaaannnnnnnnnnnnnngggggggggggggg JerMe! I get some time to work on the GUI code (and so check this thread for the latest code), and it seems like you've thrown in pretty much everything I was thinking of adding (and then some!) :D

*bows deeply*

Now I've just got to learn exactly how this GUI library works, and how you're doing what you're doing. Hopefully I can add some other neat stuff that's been requested (since I'm fresh out of ideas). At the very least, porting it over to the BOINC sig_gen shouldn't be a huge pain...


EDIT: Hmmm.... I must be blind or something, becuase I can only find 0.02 :-/ Where's the latest code at?
JigPu
 
Last edited:
There has to be ways to change the color of a font. Surely they wouldn't have such a powerful programming tool that couldn't do that!!! By golly, if PerlEdit changes the colors of the script while editing, then Perl can change the colors, dangit!!!! I will find it, I swear...tho I bet you find it before me. Don't make it a priority tho...thats all fluff compared to the real inner workings of the prg. Just call me Fluff Boy, thats what I'm good at suggesting....Fluff!!!

I still can't get over how fast you whipped that color sploth thing out. amazing...
 
Thanks guys =) I think I'm going to pick up one of the O'Reilly books that Christoph suggested. It's hard to learn Tk from the online documentation alone. The Font Widget is an example. My coding style is terribly inefficient, but it gets the job done on my system (I'm on a DFI NF2/XP-M system, I haven't had the terrible urge to go A64 yet.)

I'm going to dump everything for this project at http://geocities.com/backwardsmiley. Why is everyone's smiley backwards, anways? :)0 So the latest GUI file is at http://geocities.com/backwardsmiley/gui.pl . Oh yeah, watch out for the code. Backup your sig_gen multiple times everywhere on your computer, just incase my GUI blows your computer up. Hence my discretion in posting the gui file.

JigPu, I'm going to soon post a little Tk tutorial. It's going to be very lame and flowery, but at least you can see a lot of what I've learned in one reference post. That way you won't have to dig through all the crud like I had to. If you need any help just PM me and I'll have a huge reply waiting (GTFouts knows this haha ;))

Once again, I'm thanking Christoph for his work, as mksig.pl is the true worker script behind the scenes, and the original sig_gen.pl files are the big sisters of the "generic sig_gen" and GUI. :)

Thanks also to GTFouts, he pointed me in the direction of PerlEdit, so now I don't have to use notepad! =) I wanna get my hands on one of those ActiveState compilers, they look sweet, but very complicated. Baby steps, Jer, baby steps.

Next items up for bid in v0.06: revamped FAH path browse (entry WILL be -state=>'readonly' to make it n00b proof and so I can cut the filtering code out, the default FAH Paths will be according to Wedo's one-click), and an Open/Save Configuration (to save color, label and variable combinations to a preference file).
 
Last edited:
Download the attached version of Seti, the sig_gen, try not to use the copied version becaues it loses some code with we use the CODE tags (it creates a space after a string of 40 chars or so, and eats all the BB tag that we throw in there).

Or if you want, in the code, where it says
$cpu1_end_c olor

just make it $cpu1_end_color

and so on for all those "syntax error" lines you saw. the spaces were inserted by using the CODE tags.

Also, is your firewall blocking Perl.exe from accessing the internet? that may be why mksig couldn't connect to the internet.

HTH, keep posting if it doesn't.
 
Right. Definitely don't copy/paste when you can help it. I've tried to make all the code I post copy/paste friendly to get around that archaic fomatting "feature" and to make the vcode come out correctly, but the solution isn't partitularly elegant and I can't guarantee that I didn't miss something.
If you need to download mksig, the most up-to-date version is still at both the old location and here on my fileserver.

Also, Perl/TK is mentioned about twice in "Programming Perl," although both "Mastering Perl/TK" and "Perl/Tk Pocket Reference" are likely to be available from a local bookstore. I'd really hate for you to take my advice, only to end up with something that didn't have the info you were after.
 
Last edited:
When I was just a pup....many many many years ago...I used a book to learn basic that had quizes all throughout each chapter and a self test at the end of each chapter, way back in the early 80's. The thing I remember most about the cover was the label, it was a hand pushed hotdog cart with a man pushing it. (think that was just the printing company tho). Christoph, do you know of any books like that for perl/Tk? Ones with quizes and tests and such? I have always felt that those additions helped considerably to the learning process.
 
GUI v0.06
Download GUI

I think I'm getting towards the end of the creation phase of this project. If you decide to download this version, beware that it still is buggy. Backup all copies of your siggen, I am not responsible for blowing your computer up! ;) I'm still here though, so it shouldn't be that bad.

gui_v0.06.gif


Settings above produced this sig:

Build!.Borg!.Recruit!.Folding.for.Team.32!
My Folding Stats:____Currently Monitored WUs:
score:______26879____{§¤´²¨ª*»§¤´²¨__}_88%: p1475_tet1_03_1
Pts Per Day:__533____{§¤_______________}_10%: OneIsTheLoneliestNumber
Pts 7 Days:_3,730____{§¤´²¨ª_________}_50%: UnitTwoWhereAreYou
Clients:________6____{§¤´²¨ª*»§¤´____}_75%: ThreeisMe_MeToo_MeToo
Work Units:___232____{§¤´²¨ª*»§¤´²¨ª}_99%: Impossible_AMD_Quad_Power
Team 32 Rank:_515 (+41.in.7.days)____
Auto Generated 03/01/2005 04:59. AutoSig ©2005 Christoph et al. Want a sig? :)0



If you click the "Browse..." button, a window appears to allow you to choose your FAH unitinfo.txt. When you select your unitinfo.txt, it will then get your file path and populate the adjacent Entry field.

getopenfile.gif



There are now a couple of Dialog boxes to ask "Are You Sure?"

dialog.gif



New! There is now an option to validate all fields, to make sure that everything entered is A-OK, and that you're not trying to submit a blank name or (#*# as a stat description.

New! There is button to generate random colors.

New! You can Save Configuration to a preference file, which saves all the colors, paths, entries, variables. You can also Load Configuration.


Worklog, v0.06:

  • Reworked FAH PATH listing. Split it into 5 small Entry fields. Added the getOpenFile dialog to let user pick file
  • Added "Are You Sure?" Dialog boxes to validate and purge functions
  • Added Validate method to validate all Entry fields as "valid" input into the sig_gen. Also, when user saves, all the fields are validated first before saving. Need to add dialog saying "entry not valid"
  • Added "Randomize Colors" button, to generate random colors for all buttons
  • Added Save/Open Configuration, to allow you to save settings to a file (not the sig_gen). If you like a certain configuration, save it to a preference file, and when you want to come back to it, you can just load it up again.


To Do:

  • show/hide stats (that's going to be annoying, it's going to have to manipulate comments, current parsing method ignores all commented lines)
  • I don't think a proper preview function is possible
  • error correcting
  • option to check sig_gen for errors
  • help baloons
  • binding to keyboard events, undo, save, return
  • attached .txt help files that gui will use to load help files
  • one-click installer to get all these things into c:/mksig automatically

I'm thinking about having the "generic" sig_gen come default with no username or paths. Then, if the parser finds a blank name or EOC ID, it'll ask the user for their folding name, then check if that name is valid at Stanford. If it's not it'll do something or other. Then it'll ask for EOCID, and check if that number exists and if it exists for that user. If it doesn't it'll give and error and repeat. Then once it's done, it'll bring up the GUI window. Then if they try to save and the paths are blank, it won't save and the main window will tell them to add paths before saving. Talk about totally n00b proofing this thing.
 
Last edited:
Christoph, can you demo a quick tutorial on perl error handling? I can't find anything good using the "try.catch,finally" routine. I don't want to use die,warn,eval. Basically, I want to verify paths by opening each unitinfo.txt file, and errordialog if it didn't find a path.
 
Back