& 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.
& kommander; sai alguse visuaalse disaini tööriistade maailmas mõneti revolutsiooniliseks osutunud lihtsat kontseptsioonist. Tavaliselt võimaldavad need tööriistad luua dialooge, vahel ka peaakna liidest. Peaakna liides on aga juba koht, kus reeglina esinevad menüüd, tööriistaribad, olekuriba ja rakendus ise ka muidugi. Dialoogid on alamaknad, millel tavaliselt ei ole ei menüüd, tööriistariba, olekuriba ega ka mingit 'rakenduseala', ning kannavad sellist nime seepärast, et nende eesmärk on pidada dialoogi või vahendada sulle mingit mingit põhirakenduse edastatavat infot. Dialoogi elemente nimetatakse vidinatekst ja sul tuleb oma programm nende vidinatega siduda. & kommander; läheneb asjale aga hoopis teisest küljest. Me kasutame siin dialoogis vidinatega seostatud teksti põhimõtet. Algselt kandiski see nimetust seostatud tekst, nüüd nimetame seda lihtsalt kommander; i tekstiks. Vidinad & kommander; i dialoogides võivad sisaldada viidetena teiste vidinate sisu, samuti võivad vidinad lasta oma sisu viidata spetsiaalsete eride abil, mille näiteks võib olla @ widgetText. Erid on & kommander; i spetsiaalse tähendusega käsud. Kui oled näiteks loonud dialoogi kahe tekstikastiga ning andnud neist esimesele nimeks Eesnimi ja teisele Perekonnanimi, võid luua nupu ja määrata selle & kommander; i tekstiks Minu nimi on @ Eesnimi @ Perekonnanimi. Sul tuleb eesnime - ja perekonnanimevidinas @ widgetText. Oli ju arusaadav? Me peame andma & kommander; ile korralduse viidata neis olevale tekstile. Siis võid selle käivitada näiteks Konsool il ja peaksid nägema väljundina just seda stringi. Eesnime viitame siis nii: @ Eesnimi - > hangib vidina nimega Eesnimi (@ Eesnimi) - > @ widgetText - > hangib tekstikasti vidina sisu. Nii et kui @ Eesnimi tagastab Marek, siis @ Eesnimi - > @ widgetText - > Marek.