#Region - TimeStamp
; 2013-01-16 22:47:12   v 0.1
#EndRegion - TimeStamp

#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <GuiListBox.au3>

Global $aUniCode[101][2] = [ _
["Kleiner Kreis",8226], _
["Drei Punkte",8230], _
["Hoch-Strich",8242], _
["Hoch-Striche",8243], _
["Pfeil links",8592], _
["Pfeil hoch",8593], _
["Pfeil rechts",8594], _
["Pfeil runter",8595], _
["Pfeil links-rechts",8596], _
["Pfeil runter",8629], _
["Pfeil links",8656], _
["Pfeil hoch",8657], _
["Pfeil rechts",8658], _
["Pfeil runter",8659], _
["Pfeil links-rechts",8660], _
["All-Quantor",8704], _
["Teil-Quantor",8706], _
["Einige-Quantor",8707], _
["Leere Menge",8709], _
["Element von",8712], _
["Nicht Element von",8713], _
["enthält Elemente",8715], _
["Logisches Produkt",8719], _
["Logisches Summe",8721], _
["unendlich",8734], _
["Konjunktor",8743], _
["Adjunktor",8744], _
["Intersektion",8745], _
["Union",8746], _
["Similar",8764], _
["annähernd",8773], _
["asymetrisch",8776], _
["ungleich",8800], _
["identisch",8801], _
["kleiner-gleich",8804], _
["größer-gleich",8805], _
["Teilmenge",8834], _
["Übermenge",8835], _
["Keine Teilmenge",8836], _
["Teil- oder ganze Menge",8838], _
["Über- oder ganze Menge",8839], _
["Geöffnete Klammer",8249], _
["Geschlossene Klammer",8250], _
["alpha",945], _
["beta",946], _
["gamma",947], _
["delta",948], _
["epsilon",949], _
["zeta",950], _
["eta",951], _
["theta",952], _
["iota",953], _
["kappa",954], _
["lambda",955], _
["mu",956], _
["nu",957], _
["xi",958], _
["omicron",959], _
["pi",960], _
["rho",961], _
["final sigma",962], _
["sigma",963], _
["tau",964], _
["upsilon",965], _
["phi",966], _
["chi",967], _
["psi",968], _
["omega",969], _
["alpha (Kapital)",913], _
["beta (Kapital)",914], _
["gamma (Kapital)",915], _
["delta (Kapital)",916], _
["epsilon (Kapital)",917], _
["zeta (Kapital)",918], _
["eta (Kapital)",919], _
["theta (Kapital)",920], _
["iota (Kapital)",921], _
["kappa (Kapital)",922], _
["lambda (Kapital)",923], _
["mu (Kapital)",924], _
["nu (Kapital)",925], _
["xi (Kapital)",926], _
["omicron (Kapital)",927], _
["pi (Kapital)",928], _
["rho (Kapital)",929], _
["sigma (Kapital)",931], _
["tau (Kapital)",932], _
["upsilon (Kapital)",933], _
["phi (Kapital)",934], _
["chi (Kapital)",935], _
["psi (Kapital)",936], _
["omega (Kapital)",937], _
["bullet = black small circle",8226], _
["horizontal ellipsis",8230], _
["prime = minutes = feet",8242], _
["double prime = sec. = inch.",8243], _
["overline = spacing overscore",8254], _
["fraction slash",8260], _
["theta symbol",977], _
["upsilon with hook symb.",978], _
["pi symbol",982]]
Global $GUI, $List, $lbUniCode, $btCopy, $inCode, $index, $sData = ''

$GUI = GUICreate("UniCode - Symbole", 345, 400)
$List = GUICtrlCreateList("", 24, 15, 210, 358, BitOR($WS_BORDER, $WS_VSCROLL))
$lbUniCode = GUICtrlCreateLabel("", 260, 15, 60, 60, BitOR($SS_CENTER,$SS_CENTERIMAGE))
GUICtrlSetFont(-1, 18)
GUICtrlSetBkColor(-1, 0xFFFFFF)
$inCode = GUICtrlCreateInput('', 260, 90, 60, 20, BitOR(0x0001,0x0800)) ; $ES_CENTER, $ES_READONLY
GUICtrlCreateGroup('', 245, 115, 90, 100)
$btCopy = GUICtrlCreateButton('Copy', 260, 130, 60, 20)
$rSymbol = GUICtrlCreateRadio('Symbol', 265, 160, 60)
GUICtrlSetState(-1, $GUI_CHECKED)
GUICtrlCreateRadio('Code', 265, 185, 60)
For $i = 0 To UBound($aUniCode) -1
	$sData &= $aUniCode[$i][0] & '|'
Next
GUICtrlSetData($List, StringTrimRight($sData,1))

GUISetState()

While 1
	Switch GUIGetMsg()
		Case -3
			Exit
		Case $List
			$index = _GUICtrlListBox_GetCurSel($List)
			GUICtrlSetData($lbUniCode, ChrW($aUniCode[$index][1]))
			GUICtrlSetData($inCode, $aUniCode[$index][1])
		Case $btCopy
			$index = _GUICtrlListBox_GetCurSel($List)
			If $index > -1 Then
				If BitAND(GUICtrlRead($rSymbol), $GUI_CHECKED) Then
					ClipPut(ChrW($aUniCode[$index][1]))
				Else
					ClipPut($aUniCode[$index][1])
				EndIf
			EndIf
	EndSwitch
WEnd