diff options
author | deva <deva> | 2007-07-19 09:36:30 +0000 |
---|---|---|
committer | deva <deva> | 2007-07-19 09:36:30 +0000 |
commit | 97f91125b45996994efd4a9964c25202477cb530 (patch) | |
tree | 77965d17344e8c7da06c9cb2fa2343a3be61f9d9 /design | |
parent | fbd63562dbc7ca72f2318edbb60d04f595c2a552 (diff) |
Added the stuff from the evaluation meeting.
Diffstat (limited to 'design')
-rw-r--r-- | design/client.tex | 4 | ||||
-rw-r--r-- | design/preamble.tex | 1 | ||||
-rw-r--r-- | design/transmission.tex | 12 | ||||
-rw-r--r-- | design/xmlformat.tex | 129 |
4 files changed, 111 insertions, 35 deletions
diff --git a/design/client.tex b/design/client.tex new file mode 100644 index 0000000..94613fe --- /dev/null +++ b/design/client.tex @@ -0,0 +1,4 @@ +\section{Klienten} +Klienten skal vise GUIet som XMLMakroen foreskriver.\\ +Hvis brugerens sk�rmopl�sning er mindre end top vinduets h�jde +og bredde angivelser skal vinduet konstrueres med scrollbars. diff --git a/design/preamble.tex b/design/preamble.tex index 8b2eac7..b916ab7 100644 --- a/design/preamble.tex +++ b/design/preamble.tex @@ -133,6 +133,7 @@ \include{xmlformat} \include{transmission} +\include{client} \end{document} %********************************************* diff --git a/design/transmission.tex b/design/transmission.tex index 9f04aeb..2823c0c 100644 --- a/design/transmission.tex +++ b/design/transmission.tex @@ -1,19 +1,19 @@ \section{Data transmission} -En transmission best�r af en r�kke deltransmissioner som afh�nger af burgerens handling. +En transmission best�r af en r�kke deltransmissioner som afh�nger af +brugerens handling. \begin{itemize} \item Klienten beder om en XMLMakro by-name. \item Serveren genererer makroen og sender den til klienten i en XML - stream. + stream. Forbindelsen lukkes efter end overf�rsel. \item Brugeren udfylder input felterne og trykker p� ``commit'' eller ``abort'' knappen. -\item Hvis der blev trykket ``abort'' lukkes vinduet og en ABORT besked - sendes til serveren som afbryder transmissionen. +\item Hvis der blev trykket ``abort'' lukkes vinduet. \item Hvis der blev trykket ``commit'' genereres et XML dokument p� klienten indeholdene alle input felternes navne og deres tilh�rende v�rdier. -\item Dette XML dokument sendes til serveren. +\item Dette XML dokument sendes til serveren via en nyoprettet forbindelse. \item Serveren producerer en plaintext klump som repr�senterer -\item Texten sendes til klienten som appender til den PC-Praxis +\item Teksten sendes til klienten som appender til den PC-Praxis journalfilen. \item Klienten svarer til serveren at alt gik godt (eller det modsatte) og makrovinduet lukkes. diff --git a/design/xmlformat.tex b/design/xmlformat.tex index 03817a5..781bb24 100644 --- a/design/xmlformat.tex +++ b/design/xmlformat.tex @@ -2,7 +2,7 @@ Vi starter med et eksempel: \begin{verbatim} <?xml version="1.0" encoding="UTF-8"?> -<macro name="test_macro" cpr="1505050505" version="1.0"> +<macro name="test_macro" cpr="1505050505" version="1.0" macro_version="1.0"> <window name="mainwindow" caption="This is the mainwindow" width="800" @@ -14,6 +14,7 @@ Vi starter med et eksempel: <lineedit name="lineedit1" regexp="[0-9]+"/> </frame> <frame name="bottom_frame" layout="hbox"> + <spacer /> <button caption="Close window" action="abort"/> <button caption="Commit changes" action="commit"/> </frame> @@ -36,53 +37,86 @@ f.eks. LineEdit, Combo eller CheckBox. Ikke-input felter er felter som udelukkende bidrager til layout og brugerens forst�else af inputfelterne, f.eks. Frame, Image eler Label. -\subsection{Generelle attributer} -Alle GUI elementerne i xml dokumentet har flg. attributer: +\subsection{\texttt{macro} elementet} +Makro elementet brges som indpakning til hele makroen. Den +identificerer makroen og angiver en r�kke v�rdier som skal bruges til +ops�tning p� klienten.\\ +Makroen har flg. attributter: +\begin{itemize} +\item \textit{name} - Navnet p� makroen. Navnet skal matche det navn + som klienten har bedt om.\\ + Navnet m� udelukkende indeholdene de almindelige bogstaver, samt + underscore, dvs. \verb|[a-z0-9_]+|, hvis det skrives ud som regul�rt + udtryk.\\ + Dette felt m� ikke undlades. +\item \textit{cpr} - CPR nummeret p� den patient som makroen er + knyttet til. Dette CPR nummer skal matche det CPR nummer som + klienten har bedt om.\\ + Bruges blandt andet ved den afsluttende lagring af data.\\ + Dette felt m� ikke undlades. +\item \textit{version} - Dette felt fort�ller hvilken version af XML + specifikationen som er benyttet i dokumentet.\\ + Denne variabel skal matche den version klienten forventer.\\ + Dette felt m� ikke udelades. +\item \textit{macro\_version} - Dette felt fort�ller hvilken version + den konkrete makro har.\\ + Dette felt m� ikke udelades. +\end{itemize} + +\subsection{\texttt{include} elementet} +Include elementet kan kun frekomme serverside, hvor det vil blive +udvidet med den angivne makro.\\ +Serveren inds�tter alle elementer fra (og ikke med) makroens rodvindue +og indad p� det sted hvor include elementet befinder sig.\\ +Include har flg. attributter: +\begin{itemize} +\item \textit{name} - Navnet p� den makro som skal inkluderes. +\item \textit{disabled} - Angiver om den indsatte makro skal + disables. Kan have v�rdierne ``true'' eller ``false''. Hvis udeladt + benyttes v�rdien ``false''. +\end{itemize} + +\subsection{Generelle GUI attributter} +Alle GUI elementerne i xml dokumentet har flg. attributter: \begin{itemize} \item \textit{name} - Navnet p� elementet. Bruges ved data nedl�sning.\\ Navnet m� udelukkende indeholdene de almindelige bogstaver, samt underscore, dvs. \verb|[a-z0-9_]+|, hvis det skrives ud som regul�rt udtryk.\\ - Navnet skal v�re unikt p� det niveau hvor elementet befinder sig. + Navnet skal v�re unikt p� det niveau hvor elementet befinder sig.\\ + Navnet m� ikke undlades. \item \textit{width} - Et positivt heltal som s�tter bredden af elementet. Hvis den er udeladt benyttes elementets default bredde. \item \textit{height} - Et positivt heltal som s�tter h�jden p� elementet. Hvis den er udeladt benyttes elementets default h�jde. -\item \textit{layout} - Elementets layout engine. Kan have v�rdierne - ``hbox'' eller ``vbox''. Hvis udeladt benyttes et tomt layout. \item \textit{help} - Elementets hj�lpetekst. En beskrivende tekst som vises p� sk�rmen n�r elementet er aktivt. Hvis udeladt vises ingenting. +\item \textit{disabled} - Denne attribut kan v�re enten ``true'' eller + ``false''. Hvis den er ``true'' vil elementet blive tegnet disabled + samt alle dets children rekursivt. Hvis undladt benyttes v�rdien ``false''. \end{itemize} \subsection{\texttt{window} elementet} Et vindue benyttes som moder element, til at inds�tte andre elementer i. Det vil optr�de som et vindue p� sk�rmen med kanter, vinduestitel, ikon osv.\\ -Et vindue har flg. attributer: +Et vindue har flg. attributter: \begin{itemize} \item \textit{caption} - Den tekst som skal vises i labelen. Hvis udeladt vises ingen tekst i elementet. \item \textit{fixed} - Angiver om vinduet kan skaleres eller om det er statisk. Kan have v�rdierne ``true'' eller ``false''. Hvis udeladt vil vinduet kunne skaleres. -\end{itemize} - -\subsection{\texttt{label} elementet} -En label benyttes til at inds�tte beskrivejnde tekst i makroen.\\ -En label har flg. attributer: -\begin{itemize} -\item \textit{caption} - Den tekst som skal vises i labelen. Hvis - udeladt vises ingen tekst i elementet. -\item \textit{alignment} - Justeringen af teksten. Kan have v�rdierne - ``left'', ``right'' eller ``center''. Hvis udeladt benyttes ``left''. +\item \textit{layout} - Vinduets layout engine. Kan have v�rdierne + ``hbox'' eller ``vbox''. Hvis udeladt benyttes et vbox layout. \end{itemize} \subsection{\texttt{frame} elementet} En frame benyttes til at inds�tte nestede elementer i makroen, s�som gruperinger af radio buttons.\\ -En frame har flg. attributer: +En frame har flg. attributter: \begin{itemize} \item \textit{caption} - Den tekst som skal vises i framen. Hvis udeladt vises framen som en tom ramme. @@ -92,6 +126,22 @@ En frame har flg. attributer: elementet. Hvis udeladt benyttes elementets default padding. \item \textit{margin} - En integer som er st�relsen p� elementets margin. Hvis udeladt benyttes elementets default margin. +\item \textit{layout} - Framens layout engine. Kan have v�rdierne + ``hbox'' eller ``vbox''. Hvis udeladt benyttes et vbox layout. +\end{itemize} + +\subsection{\texttt{spacer} elementet} +Et spacer element bruges for at pakke andre elementer i et layout.\\ +En spacer har ingen attributter. + +\subsection{\texttt{label} elementet} +En label benyttes til at inds�tte beskrivejnde tekst i makroen.\\ +En label har flg. attributter: +\begin{itemize} +\item \textit{caption} - Den tekst som skal vises i labelen. Hvis + udeladt vises ingen tekst i elementet. +\item \textit{alignment} - Justeringen af teksten. Kan have v�rdierne + ``left'', ``right'' eller ``center''. Hvis udeladt benyttes ``left''. \end{itemize} \subsection{\texttt{lineedit} elementet} @@ -100,7 +150,7 @@ Lineediten kan have et regul�rt udtryk tilknyttet, som validerer input mens der tastes og �ndrer feltets baggrundsfarve afh�ngig af om feltet indeholder valid data eller ej.\\ Feltet er et et linies felt.\\ -En lineedit har flg. attributer: +En lineedit har flg. attributter: \begin{itemize} \item \textit{value} - Den tekst som skal vises i lineediten. Hvis udeladt vil lineediten v�re tom. @@ -117,7 +167,7 @@ Textediten kan have et regul�rt udtryk tilknyttet, som validerer input mens der tastes og �ndrer feltets baggrundsfarve afh�ngig af om feltet indeholder valid data eller ej.\\ Feltet er modsat lineedit et flerliniers felt.\\ -En textedit har flg. attributer: +En textedit har flg. attributter: \begin{itemize} \item \textit{value} - Den tekst som skal vises i textediten. Hvis udeladt vil textediten v�re tom. @@ -130,20 +180,21 @@ En textedit har flg. attributer: \subsection{\texttt{button} elementet} En knap kan benyttes til enten at afbryde makroen eller at acceptere dens indhold og dermed gemme dataene p� serveren.\\ -En knap har flg. attributer: +En knap har flg. attributter: \begin{itemize} \item \textit{caption} - Den tekst som skal vises i knappen. Hvis udeladt vises knappen uden tekst. \item \textit{action} - Den handling som skal udf�res n�r der trykkes - p� knappen. Kan v�re ``abort'' eller ``commit'', hvor ``abort - afbryder makroen, og ``commit'' gemmer makroen i databasen og i - journalen. Hvis udeladt vil en inaktiv knap blive produceret. + p� knappen. Kan v�re ``abort'', ``commit'' eller ``reset'', hvor ``abort'' + afbryder makroen, ``commit'' gemmer makroen i databasen og i + journalen og ``reset'' fjerner alle indtastede data. Hvis udeladt + vil en inaktiv knap blive produceret. \end{itemize} \subsection{\texttt{checkbox} elementet} En checkbox bruges til at aktivere eller deaktivere en given v�rdi ved hj�lp af flueben.\\ -En checkbox har flg. attributer: +En checkbox har flg. attributter: \begin{itemize} \item \textit{caption} - Den tekst som skal vises i knappen. Hvis udeladt vises checkboxen uden tekst. @@ -152,17 +203,37 @@ En checkbox har flg. attributer: ``false''. \end{itemize} +\subsection{\texttt{togglebutton} elementet} +En togglebutton bruges til at aktivere eller deaktivere en given v�rdi ved +brug af en trykknap.\\ +En togglebutton har flg. attributter: +\begin{itemize} +\item \textit{caption} - Den tekst som skal vises i knappen. Hvis + udeladt vises knappen uden tekst. +\item \textit{value} - Den v�rdi som knappen har intielt. Kan + ``true'' eller ``false''. Hvis udeladt vil den f� v�rdien + ``false''. +\end{itemize} + \subsection{\texttt{radiobutton} elementet} En radiobutton bruges til at v�lge et element ud af en gruppe.\\ -En radiobutton tilh�rer automatisk den samme gruppe som resten af de -radiobuttons som befinder sig i samme widget (f.eks frame eller -window).\\ -En radiobutton har flg. attributer: +En radiobutton har flg. attributter: \begin{itemize} \item \textit{caption} - Den tekst som skal vises i knappen. Hvis udeladt vises radiobuttonen uden tekst. \item \textit{value} - Den v�rdi som radiobuttonen har intielt. Kan ``true'' eller ``false''. Hvis udeladt vil checkboxen f� v�rdien ``false''. +\item \textit{group} - Et id som beskriver hvilken gruppe + radiobuttonen er en del af. Gruppe id'et kan have v�rdier i + \verb|[a-z0-9_]+|.\\ + Hvis udeladt tilh�rer den automatisk den samme gruppe som resten af + de radiobuttons som befinder sig i samme widget (f.eks frame eller + window).\\ \end{itemize} +\subsection{\texttt{combobox} elementet} +Kommer snart... + +\subsection{\texttt{listbox} elementet} +Kommer snart... |