It would help if I knew which country you were in. I'll assume you're in America and point you to the Digikey web site. Digikey and Mouser will sell you almost any electronic component you would ever want.
Here's an updated schematic.
Resistors in this application are not critical. For normal applications I use 1% metal film parts. These are made in the "axial" (cylindrical with a wire out each end) style. Go to
http://www.digikey.com/product-search/en/resistors/through-hole-resistors
Digikey have three suitable ranges that are available in low quantities:
Vishay "SFR16S" series, 0.5W. One-off quantity but most expensive.
Vishay "SFR25" series, 0.4W. One-off quantity. Probably the best option.
Yageo "MFR" series, 0.25W. Minimum order quantity is 5.
Narrow down your selection using the filter table. Select the series you want, check "In stock" and click "Apply Filters". If you chose the SFR25 series, you will now have the option of 100ppm/C or 250ppm/C temperature coefficient. Most of these resistors are 100ppm/C so select that and reapply the filters.
When you're using the Digikey filter table, you can use Shift-click to select a range, and Ctrl-Click to select/deselect individual lines in a multi-line selection. Also, ignore any lines where the minimum order quantity is more than 5, or that say "Non-stock". Yes I know you checked "In stock" but they still sometimes list those lines. I don't know why.
You can now see the resistance values available in the SFR25 series. I'll come back to the Digikey page later after the nominal value calculations.
While the circuit is in regulation, i.e. providing the selected current to the load, there will be a roughly constant voltage across the emitter resistance. That is, a roughly constant voltage between the positive supply rail and Q1's emitter. The output current can be calculated using Ohm's law, which says I = V / R. In this case, I is the output current (in amps), V is the voltage across the total emitter resistance (in volts), and R is the total emitter resistance (in ohms).
V is equal to the forward voltage of LEDC (when operated at a forward current of about 1 mA) minus the base-emitter voltage of Q1 when operated at a collector current of 0.5~2.5 mA. The Avago data sheet says the LED has a nominal forward voltage of 1.6V at 1 mA, but this is only nominal and there is variation between individual LEDs. I'm assuming 0.6V base-emitter voltage for the transistor, which is reasonable considering the low base and collector currents that it will be operating at. The actual voltage will depend on the transistor type, and characteristics of the individual transistor. These parameters will also vary with temperature; you should test the unit at low and high temperatures to see how much the current varies.
With those values, there will be 1.0V across the emitter resistance. I have marked this on the updated schematic.
This means V = 1.0 in the Ohm's law formula. Therefore the output current (in amps) is 1.0 divided by the total emitter resistance (in ohms). Ohm's law can also be rearranged to R = V / I which means that R (ohms) = 1.0 / I (amps).
First we have to calculate RX and RS. These determine the maximum output current. They are in series, so their resistances add together, and we calculate assuming the trimpot will be at mid-position, so its actual resistance will be about half of its total resistance. For example a 100 ohm trimpot set half-way will have a resistance of about 50 ohms. (The trimpot is there so you can set the current exactly at room temperature.)
You want the maximum output current to be 2.5 mA, which corresponds to a total emitter resistance of 400 ohms (from R = 1.0 / I). So RX+(RS/2) should be 400 ohms. Most (say 80-90%) of the resistance should be in the fixed resistor RX, with the rest in the trimpot RS.
Trimpots are generally available in the 1-2-5 series, e.g. 10, 20, 50, 100, 200, 500 etc. Expensive trimpots are available with higher accuracy and value resolution but I'll stick with these options.
So RX + (RS/2) = 400 ohms, and RX should be a large percentage of that amount.
Looking through the available resistances on the Digikey page, I see 348 ohms is available. This is 87% of the total resistance needed, and it fits nicely with a 100 ohm trimpot.
RX = 348 ohms (Vishay SFR25 series)
RS = 100 ohms (multi-turn trimpot)
Now the four preset currents.
I've reconsidered my suggestion to use a resistor and a trimpot in series for each of the four preset currents. A single multi-turn trimpot for each will be simpler. I've updated the schematic to show this. I would like to stick with the fixed resistor RX from the emitter for safety reasons - it limits the maximum current in case of a short somewhere in the emitter resistor circuit (you must protect the connection from RX to the emitter of Q1 so NOTHING can short onto it).
Each of the four fixed currents will be set by one multi-turn trimpot (selected by the switch) in series with the 400 ohm resistance made up from RX and RS, so we have to subtract 400 from the value that we calculate based on the output current. Also, we want each trimpot to be set around 2/3 to 3/4 of its maximum resistance, so its rated resistance needs to be between 130% and 150% of the value we calculate.
2.0 mA: R = 500; RU at 2/3 positon = 100; RU = 200 ohms (multi-turn trimpot)
1.5 mA: R = 666; RT at 2/3 position = 266; RT = 500 ohms (multi-turn trimpot)
1.0 mA: R = 1000; RS at 2/3 position = 600; RS = 1000 ohms (multi-turn trimpot)
0.5 mA: R = 2000; RR at 2/3 position = 1600; RR = 2000 ohms (multi-turn trimpot).
Trimpots are at
http://www.digikey.com/product-search/en/potentiometers-variable-resistors/trimmers
There are two series that look suitable. Both types are 12-turn, 1/4 watt 10% cermet types and are available with top or side adjustment.
Murata "PV37" (wide variety available)
Bourns 3266 (more expensive).
Go to that web page and select the series you want, check In Stock, and click Apply Filters. Now you can choose the values you're interested in - 100, 200, 500, 1000 and 2000 ohms, and apply filters again.
Finally you need a value for RV. When it's fully clockwise, the current will be 2.5 mA as set by RX and RS. When it's fully anticlockwise, the current will be set by the resistance of RV plus 400 ohms from RX and RS.
Say you want the minimum variable current to be 0.3 mA. The total emitter resistance needs to be 3333 ohms (from R = 1.0 / I). Subtract 400 ohms for RX+RS and you get 2933 ohms. A 3k potentiometer would do, except that potentiometers usually have 20% tolerance on their end-to-end resistance, so you might not be able to get the current all the way down to 0.3 mA.
As you can see, you won't be able to adjust the current right down to zero.
How about choosing a 2k potentiometer. This gives a current adjustable down to 0.41667 mA nominally. If that's low enough for you, go for it. If you make RV much higher, you can get the current lower, but you'll find that the most useful part of the adjustment range, from say 0.5 to 2.5 mA, is over a very small angle of adjustment. So there is a compromise there. If you really need a wide range, you could add another position on the rotary switch and use two potentiometers.
As for sourcing the potentiometer, I'll leave that to you, OK?
Edit: You should also get an adjustment tool for the trimpots. You can adjust them easily enough with a flat blade screwdriver, but the buggers keep sliding out of the slot and falling off! There is a proper tool for this, known as a swizzle stick tool, trimpot screw adjuster tool, or trimmer adjustment tool. See
http://www.digikey.com/product-detail/en/ACCTRITOB308-T000/SPTOOL-ND/1287467