GUI operation

The GUI is a just a Perl/Tk front end (localProxy.pl) to the Perl program (the 'back end', or 'engine', in localProxy2.pl) which does all the work. The back end may not be running on the same computer as the GUI (use 'Connect' to connect and disconnect from the various back ends you may have running).
Start the GUI in your preferred manner:
You will see two icons open on your task bar. The first is the GUI log window, and the second is the real GUI graphics window. The first of these (will stay minimized and) is the log window for the GUI. This is the place to look for messages when the GUI doesn't seem to do what you expected. Otherwise, this window may be ignored. The graphics window will open up on the screen. Die-hard command line users (and Unix system shell users without Tk) may run the back end (localProxy2.pl) directly (try it with -h, for help, or use the usual perldoc to see embedded documentation). The GUI window displayed is, by default, the simple one. The advanced window (click 'Advanced') offers most of the options described below.

Normal use

Select a configuration to use, or use 'AutoConfigure' (and follow the instructions).
Click 'Start services'
Wait for that button to turn green
LP is then ready for use
Configure your browser to use the HTTP proxy on localhost, port 10080 and browse the uncensored web, or  convince your Usenet News client (Outlook Express, maybe?) that there's a news server on localhost, port 10119 and see some real uncensored Usenet News - the best resource the Internet has to offer, IMHO.
By default, LP as distributed builds a proxy autoconfiguration service - http://<back end address>:10079/proxy.pac. This service does some ad-zapping, different LP services for certain hosts (e.g. PROPFIND proxies for hosts like hotmail.com), etc. Hard to debug when it goes wrong.

First time only, or to reinitialize your entire network configuration

If you know any proxies that your ISP has given you to use, enter them in the 'Proxy hints (fqdn/IP) for AutoConfig and Test/merge' field. The format could be something like:
proxy1.emirates.net.ae:8080, 194.170.1.234:8080
Press 'AutoConfigure' and wait for the firewall rules to be analyzed. A message box will inform you that the AutoConfiguration is finished (but you should be aware that the proxies you specified may still be under test - see below). If this is your first use of LP, you probably should wait for the proxy tests to complete, but otherwise you may proceed (the firewall data is known, but the updated proxy speed data will not be available until the next build after the tests complete).
When the 'auto' configuration appears in the configuration list, select it.
Click 'Start services'

Refresh your network configuration (proxy tests etc.)

This should be done periodically, especially if I can't reach these proxies to test (because of firewall blocks, for example).
This is (for now) the *only* way that dead proxies you have merged into your configuration can be 'demoted' properly and eventually (after about 3 non-connection results) disabled.

Enter any proxies you know of in the 'Proxy hints (fqdn/IP) for AutoConfig and Test/merge' field using the format above.
Click the 'Test and merge user proxies' button. The proxies you entered will be tested and the results merged into the currently selected configuration. Watch the GUI log window to see when these tests are complete. Note that although the GUI is busy, the localProxy engine is still running and usable while these proxy tests are being done (that may take a minute or two per proxy).

Be careful with this. If you add a proxy here, and even one test result is positive on one occasion, it will be merged into your configuration.
After that, localProxy will assume you have access to that subnet (you told it that proxy was part of your configuration, after all). This will continue until you retest (several times) and localProxy (actually mergeHosts.pl) is able to disable the proxy in your configuration. A quicker way is to simply edit it out of the XML file.

Advanced use

Before running the back end, you may enter the port numbers for any services you wish to leave out of the build into the 'Build config without these services' field (see below).

When running ...

Select a service. The commStrats should appear in the next window.
Select a commStrat. The layer 0 and layer 1 windows will fill with proxies.
You may enable/disable localProxy services, commStrats, or proxies, by selecting the entry you wish to disable and then clicking in the neighboring checkbox ('this ... is disabled').
You may disable/enable all of them at once using the 'Disable/enable all' checkbox. Layer 0 and 2 hosts (proxies or redirectors) should always have ports which are directly accessible from where you are (port 8000, 12000 etc.). The program checks for this when you do an 'AutoConfigure', or as you browse. Press 'Start services' to start the localProxy back end in another window (minimized on the task bar). On Windows systems, it might have a small yellow ball in it. Don't confuse it with the other one which started when you started the GUI. Both of these will show log messages, one from from localProxy (the GUI) and the other from the back end (localProxy2.pl). You cannot enter commands in either of these windows. Advanced users will try ctrl-break in the localProxy2 log window, and this will work (it will toggle debug mode), but note that it will close the GUI. I guess this is handy if you want to run localProxy, modify the configuration and then close down the GUI and it's log window.

GUI options

Some of the GUI options are: