SCALA WORKSHOP deel 4 """"""""""""""""""""" In de eerste delen hebben we ons de grondkennis eigen gemaakt, zodat we nu kunnen overgaan naar de interaktieve mogelijkheden van Scala. In principe is het zeer eenvoudig om met Scala interaktieve scripts te maken. Het enigste wat we nodig hebben zijn variabelen en aanklikvelden. Hoe deze tot stand komen en ingezet kunnen worden, zal ik aan de hand van 2 voorbeelden duidelijk proberen te maken. Het eerste voorbeeld is een schakelcentrum, van waaruit we willekeurige programma's kunnen starten. Dit voorbeeld heeft misschien niet veel praktische waarde, maar het toont duidelijk hoe zo'n aanklikveld tot stand komt. Scala kan zelf geen tekeningen maken, daarvoor hebben we een ander programma nodig zoals DPaint. Teken met DPaint een tekening zoals (Scala.027). - kies HIRES-NON INTERLACE als formaat - kies voor 8 kleuren - de kleurenpallet mag je zelf kiezen. Ik heb de volgende RGB waarden gebruikt : AAA, FFF, 000, 239, F00, 0F0, 00F, 000. - plaats er je tekst op - schrijf je tekening weg bvb. Ivopic - verlaat DPaint Start Scala op. Klik op de NEW-rechthoek Laad je zopas gemaakte tekening (Ivopic) als achtergrondtekening. Kort nadien verschijnt je tekening en kom je in het tekstmenu terecht. Voeg er nu de tekst "IVO-STARTUP-BUTTONS" bij. Gebruik FRANKLIN 50 als font. Kies ROOD als kleur en klik op de SHADOW-rechthoek. (Scala.028) Klik nu op de BUTTONS-rechthoek. Het Buttonmenu opent zich (Scala.029). * In de eerste rechthoek staat er normaal naast "Button:" het nummer van het huidige aanklikveld, maar omdat we er nog geen gedefinieerd hebben, staat er nog "NO BUTTONS". Om nu het aanklik-bereik in te stellen, klik je gewoon met de Linkermuis in de linkerbovenhoek van de DPaint-rechthoek en houdt hem ingedrukt. Daarna sleep je het kader naar de gewenste grootte. De grootte en de plaats kan nadien nog altijd veranderd worden. Om een aanklikveld te verplaatsen, volstaat het om in het midden van het aanklikveld te klikken, en met ingedrukte Linkermuis deze te verplaatsen. Het huidige, aktuele aanklikveld wordt door 2 vierkantjes (links bovenaan en rechts onderaan) gekenmerkt (Scala.030). Klikt men in deze vierkantjes, dan kun je met ingedrukte muistoets, de grootte veranderen. * De GO TO rechthoek laten we nog onveranderd. Hier kan vastgelegd worden naar welke plaats in het script er moet gesprongen worden, als het huidige aanklikveld aangeklikt wordt. Gaat het hier om een tekening, dan wordt deze volledig links in een miniatuur getoond. * Via de MARK/SELECT rechthoek kan bepaald worden hoe het aanklikveldbereik zich moet gedragen als je er met de muispointer boven bent of als je erop klikt. Het onderscheid tussen MARK en SELECT bestaat erin dat door MARK elke verandering getoond wordt van zodra je je met de muispointer boven het aanklikveld bevindt. Deze wordt vooral gebruikt om de gebruiker te tonen dat het hier om een keuze kan gaan. Via SELECT wordt bepaald hoe het uitzicht van je aanklikveld kan veranderd worden. SELECT is de instelling dat we voor deze workshop kiezen. * Hoe dat uitzicht precies veranderd, wordt door de rechthoek daar juist naast bepaald. De mogelijkheden zijn : NONE, REPLACE en INVERSE. - NONE bepaalt dat Scala geen enkele verandering uitvoert - REPLACE is de instelling die wij kiezen voor deze workshop. De kleur- band wordt nu dubbel getoond, waarbij de bovenste rij de originele kleurinstellingen weergeeft. In de tweede rij kunnen de kleuren door andere vervangen worden. Deze kleurveranderingen hebben enkel invloed op het aanklikveld, zodat de rest van de tekening onveranderd blijft. Als je, zoals ik, de randen van de aanklikvelden met kleur 1 (wit) en kleur 2 (zwart) getekend hebt, dan wissel je deze beide kleuren in de onderste kleurenband. Hierdoor bekom je dat bij het aanklikken van het aanklikveld, de zwarte lijnen wit worden en de witte lijnen zwart worden en zo het gewenste 3D-effekt bekomen. - INVERSE maakt de kleuren complementair dwz. de eerste kleur wordt door de laatste vervangen en omgekeerd. We moeten ook nog zorgen dat de NONE rechthoek gekozen is als de MARK rechthoek te zien is. * De VARIABLES rechthoek interesseert ons nog niet. Deze komt wel aan bod in onze tweede oefening. Op dezelfde manier maak je de overige aanklikvelden aan. Dit doe je, zonder het menu te verlaten, door steeds weer in de linkerbovenhoek van de acht andere rechthoeken te klikken en een rechthoek te slepen. Zodra je klikt (ook al vergeet je te slepen) maakt Scala een nieuw aanklikveld aan. Dit merk je ook omdat het nummer naast Button: verhoogt. Om een fout aangemaakt aanklikveld te wissen, maak je het aktueel, en druk je op de DEL-toets. Van zodra alle negen de aanklikvelden gemaakt zijn, klik je 3 keer na elkaar op de OK-rechthoeken die verschijnen. Nu moeten we nog de bijhorende scriptregels maken, waardoor de gewenste programma's in de EXECUTE-kolom opgeroepen worden. Omdat we in deze regels enkel programma's willen oproepen (en dus geen tekeningen willen tonen), kunnen we NEW niet gebruiken. Er bestaat een andere weg. Dubbelklik op de eerste kolom NR van de eerste regel (onze tekening). Het PAGE CONTROL menu wordt geopend. (Scala.031) Klik op INSERT NEW, waardoor eveneens een lege regel verschijnt (echter zonder naar een tekening te vragen). Je kunt onmiddelijk een naam aan deze regel geven. (Scala.032) Hoe je met de EXECUTE kolom moet werken, heb ik reeds de vorige keer uitgelegd. Maak nu zelf de regels die je nodig hebt (overeenkomstig met je klikvelden) waardoor je de programma's oproept. (Scala.033) We bekijken nu nog even de invoer in de VARIABLE kolom. We moeten Scala nog laten weten met welke klikvelden onze regels overeenstemmen. Hiervoor moet je het FONT-menu terug openen, door op de eerste regel in de PAGENAME kolom te dubbelklikken. Het ons zo bekende menu verschijnt. Klik op de BUTTON-rechthoek en het eerste klikveld is geaktiveerd. We gebruiken hier nu de GO TO-optie. Via de pijlsymbolen kun je kiezen naar welke regel Scala moet verwijzen, van zodra op de huidige aktieve drukknop geklikt wordt. Dit leg je nu voor elke drukknop afzonderlijk vast. (Scala.034) Om ze elk om beurt te aktiveren, kun je ofwel ze één voor één aanklikken, ofwel de BUTTON rechthoek gebruiken. Daarna ga je terug naar de hoofdlijst. Ivo VanderMarliere BBS de SAEN