& kommander; blev oprindeligt designet omkring et simpelt koncept der har vist sig næsten revolutionerende blandt visuelle designværktøjer. Typisk tillader disse værktøjer at man kan oprette dialoger og måske endda hovedvindue- grænseflader. Hovedvindue- grænseflader er naturligvis et programs hovedgrænseflade der typisk indeholder menuer, værktøjslinjer, statuslinje og programarealet. Dialoger er børnevinduerne som typisk ikke har menuer og således navngivet fordi deres formål er at have en dialog eller udveksle information mellem dig og hovedprogrammet. Elementerne i en dialog kaldes kontroller og du kobler dit program til disse kontroller. & kommander; er anderledes pga. sin non- programmatiske natur i denne henseende. Det bruger konceptet om at associere tekst med kontrollerne på dialogen. Til at begynde med kaldtes dette Associeret tekst men kaldes nu kommander; tekst. Kontroller i & kommander; - dialoger kan indeholde indholdet af andre kontroller gennem en reference og en kontrol kan referere sit eget indhold vha. en Speciel som ser således ud: @ kontrolTekst. Specielle er kommandoer med specielle betydning i & kommander;. Så hvis du har oprettet en dialog med to linjeEditorkontroller og navngivet den første Fornavn og den anden Efternavn, kan du oprette en knap og sætte dens & kommander; tekst til Mit navn er @ Fornavn @ Efternavn. Du vil være nødt til at sætte @ kontrolTekst i for - og efternavnskontrollerne, husker du? Vi må fortælle & kommander; at referere til teksten i dem. Du kan køre dette fra en Konsol og den vil så udskrive strengen for dig. Så den vil referere fornavnet sådan her: @ Fornavn - > hent kontrollen med navnet Fornavn (@ Fornavn) - > @ kontrolTekst - > hent indholdet af linjeEditorkontrollen. Så i dette tilfælde returnerer @ Fornavn Eric: @ fornavn - > @ kontrolTekst - > Eric.
& kommander; was originally designed around a simple concept that has proven somewhat revolutionary among visual design tools. Typically these tools allow you to create dialogs and possibly mainwindow interfaces. Of course a mainwindow interface is the main program window which typically has menus, toolbars, statusbar and the application area. Dialogs are child windows which typically do n't have menus and are so named because their purpose is to have a dialog or exchange information between you and the main application. The elements on a dialog are called widgets and you hook your program into these widgets. & kommander; is different because it is inherently nonprogrammatic here. It uses the concept of associating text with the widgets on the dialog. Initially this was called Associated Text but now it is called kommander; Text. Widgets on & kommander; dialogs can include the content of other widgets by reference and a widget can reference its own content by use of a Special that looks like this, @widgetText. Specials are commands with special meaning in & kommander;. So if you created a dialog with two LineEditwidgets and named the first FirstName and the second LastName you could create a button and set its & kommander; Text to My name is @FirstName @LastName. You would need to set @widgetText in the first and last name widgets. Remember? We need to tell & kommander; to reference the text in them. You could run this from a Konsole and it would output the string for you. So it would reference the first name like so: @FirstName - > get the widget named FirstName(@FirstName) - > @widgetText - > get the contents of the LineEdit widget. So in this case @FirstName returns Eric: @FirstName - > @widgetText - > Eric.