Hi,
If I understand correctly, u want to send keypresses to your other clients , but by clicking on an Icon from your main windows..
Well, You can do that easily with AHK, All you need to do is map coordinates of every icon on your main window and have them set to send a key press to wichever client u want..

As my main is a Pally and my alts are all Shammies,, I use this method to map most of my shammy spells.. this way i can simply click a box and have all my shammies drop a totem or cast a specific spell that i want (eg Ghost wolf, Lightening Shield, Rock biter etc)..... During the fights though,, i still mainly use buttons 1-2-3-4 on the keybord to cast lightening bolts and Shocks as its easier and faster(button smashing) and at the same time i have my Pally spells being cast.. However if i want them to drop a particular totem i just click on its icon box (Cooordinate) and they all drop it OR do whatever i've set up on each shammy...

I'll try to explain ,, Bellow is a small snipit of my AHK script,(just a small part of my script), As u can c there are mouse range coordinates,, So when i click at those cordinates on the main screen the script sends a perticular keypress to all my other clients,, ( which are mapped according to your prefference for each client),, i hope this all makes sense,,


; AHK Coordinats scripted action (fires on left mouse button click).

~LButton::
; ROW 1
If MouseInRange(845,878,620,650)
{
ControlSend,,{Alt down}{1 down}{1 up}{Alt up}, ahk_id %wowid2%
ControlSend,,{Alt down}{1 down}{1 up}{Alt up}, ahk_id %wowid3%
ControlSend,,{Alt down}{1 down}{1 up}{Alt up}, ahk_id %wowid4%
ControlSend,,{Alt down}{1 down}{1 up}{Alt up}, ahk_id %wowid5%
}

else If MouseInRange(880,914,620,650)
{
ControlSend,,{Alt down}{2 down}{2 up}{Alt up}, ahk_id %wowid2%
ControlSend,,{Alt down}{2 down}{2 up}{Alt up}, ahk_id %wowid3%
ControlSend,,{Alt down}{2 down}{2 up}{Alt up}, ahk_id %wowid4%
ControlSend,,{Alt down}{2 down}{2 up}{Alt up}, ahk_id %wowid5%
}

else If MouseInRange(916,950,620,650)
{
ControlSend,,{Alt down}{3 down}{3 up}{Alt up}, ahk_id %wowid2%
ControlSend,,{Alt down}{3 down}{3 up}{Alt up}, ahk_id %wowid3%
ControlSend,,{Alt down}{3 down}{3 up}{Alt up}, ahk_id %wowid4%
ControlSend,,{Alt down}{3 down}{3 up}{Alt up}, ahk_id %wowid5%
}

; ROW 2

MouseInRange(minx,maxx,miny,maxy)
{
MouseGetPos, x, y
If (y >= miny) and (y <= maxy) and (x >= minx) and (x <= maxx)
Return 1
Return 0
}