FormWind - Hantering av dialoger som ligger i f”nster.
------------------------------------------------------
I filen FORMWIND.LZH b”r du finna:

 - FORMWIND.C     K„llkod
 - FORMWIND.H     Headerfil(objektnamn fr†n RSC-editor)
 - FORMWIND.RSC   Resursfil
 - FORMWIND.PRG   Programmet
 - MAKEFILE.MAK   Makefile f”r HSC1.40(GEMFAST, DLIBS)
 - README.1ST     Denna textfil
 
Alla dessa filer „r Public Domain. Detta inneb„r att du f†r
g”ra hur m†nga kopior du vill, och anv„nda delar av eller hela
k„llkoden i dina egna program. Var v„nlig och beh†ll alla dessa
filer i arkivet(FORMWIND.LZH) om du t„nker vidaredistribuera
koden. Du f†r d„remot g„rna l„gga till ev. eget arbete(f”rb„ttringar,
nya exempel etc.). Skriv d† att det „r en av dig modifierad version.

FormWind - Vad g”r programmet?
------------------------------
Programmet l„gger en dialog i ett f”nster, och behandlar denna. Dialogen
behandlas icke-modalt, vilket f”renklat inneb„r att dialogen inte l†ser
menyraden. Detta faktum inneb„r i sin tur att man ej kan anv„nda GEMs
FORM_DO(...) f”r att behandla dialogen. FormWind har allts† sin egen
FORM_DO, som i det h„r exemplet inte har alla de egenskaper som GEMs 
FORM_DO har(inga EDIT-f„lt, ej TOUCHEXIT m.m.). Detta g†r dock
att g”ra.

FormWind - Varf”r?
------------------
Varf”r skall man ha icke-modala dialoger? MultiTOS! Eftersom MTOS anv„nder
menyraden(gamla Desk) f”r att "switcha" mellan de olika aktiva till„mp-
ningarna samt Desktopen, s† vill man inte att en dialog skall l†sa denna.
Det skall g† att "switcha" utan att beh”va st„nga en ”ppen dialog(som man
kanske inte „r f„rdig med), f”r att ex.vis formatera en diskett. Dessutom
s† kan man ha flera dialoger ”ppna samtidigt(f”rutsatt att systemet har
tillr„ckligt med "window handles"). En annan f”rdel „r att man kan flytta
dialogen delvis utanf”r sk„rmen om den skymmer n†got som man vill se f”r
att kunna fylla i dialogen.

FormWind - K„llkoden?
---------------------
FormWind „r skrivet i C(K&R C, ej ANSI). Kommentarerna „r inte s† m†nga,
men det b”r nog g† att f”lja programmets g†ng „nd†. Har du n†gra fr†gor
s† kan du ju alltid skriva ett brev till mig p† STIX BBS(08-7617203).
Jag har anv„nt PD-kompilatorn HSC1.40 med GEMFASTv1.8 GEM-bibliotek
(komplett paket med allt som beh”vs f”r att kompilera programmet finns
p† bl.a. STIX BBS under namnet HSC140.LZH(troligen)).

FormWind - F”rb„ttringar!
-------------------------
En naturlig forts„ttning vore att koda en funktion wnd_dialog(...) som
sedan l„nkas in i GEMFAST-biblioteket. Denna funktion b”r d† fungera
som GEMs FORM_DO, med den skillnaden att dialogerna ligger i f”nster(och
„r icke-modala). D† kan programmerarna l†ta anv„ndaren sj„lv best„mma
hur han/hon vill ha dialoghanteringen. Wnd_dialog b”r d† underh†lla en
l„nkad lista(ex.vis) f”r att h†lla reda p† alla ”ppna dialoger, s† att
programmeraren ej beh”ver g”ra detta. D† kr„vs att wnd_dialog returnerar
(via medd.k”n) vilket exit-objekt(touchexit) som klickades, och till
vilken dialog objektet h”r.

Jag har skrivit till Ian Lepore(f”rf. till GEMFAST) och l„mnat detta
f”rslag samt n†gra andra, eftersom jag tror att han b”r vara intresserad.
Vi f†r v„l se vad som h„nder!

/Nils Ekholm

