diff options
| -rw-r--r-- | design/client.tex | 1 | ||||
| -rw-r--r-- | design/database.tex | 15 | ||||
| -rw-r--r-- | design/preamble.tex | 14 | ||||
| -rw-r--r-- | design/preudfyldning.tex | 65 | ||||
| -rw-r--r-- | design/transmission.tex | 15 | ||||
| -rw-r--r-- | design/versionering.tex | 25 | ||||
| -rw-r--r-- | design/widgets/button.tex | 7 | ||||
| -rw-r--r-- | design/widgets/checkbox.tex | 9 | ||||
| -rw-r--r-- | design/widgets/combobox.tex | 27 | ||||
| -rw-r--r-- | design/widgets/frame.tex | 11 | ||||
| -rw-r--r-- | design/widgets/label.tex | 5 | ||||
| -rw-r--r-- | design/widgets/lineedit.tex | 15 | ||||
| -rw-r--r-- | design/widgets/listbox.tex | 19 | ||||
| -rw-r--r-- | design/widgets/multilist.tex | 27 | ||||
| -rw-r--r-- | design/widgets/radiobuttons.tex | 13 | ||||
| -rw-r--r-- | design/widgets/spacer.tex | 1 | ||||
| -rw-r--r-- | design/widgets/textedit.tex | 15 | ||||
| -rw-r--r-- | design/widgets/togglebutton.tex | 7 | ||||
| -rw-r--r-- | design/widgets/window.tex | 9 | ||||
| -rw-r--r-- | design/xmlformat.tex | 97 | 
20 files changed, 229 insertions, 168 deletions
| diff --git a/design/client.tex b/design/client.tex index fc144cc..259033c 100644 --- a/design/client.tex +++ b/design/client.tex @@ -1,3 +1,4 @@ +% -*- coding: utf-8 -*-  \section{Klienten}  Klienten skal vise GUIet som XMLMakroen foreskriver.\\  Hvis brugerens skrmoplsning er mindre end top vinduets hjde diff --git a/design/database.tex b/design/database.tex index 2caa20e..20f53ec 100644 --- a/design/database.tex +++ b/design/database.tex @@ -1,27 +1,28 @@ +% -*- coding: utf-8 -*-  \section{Database layout}  \begin{figure}  \begin{center}  \includegraphics[width=120mm]{database.eps}\\  \end{center}  \label{database} -\caption{Databasens indhold og et foreslået tabel design.} +\caption{Databasens indhold og et foreslÃ¥et tabel design.}  \end{figure}  \begin{verbatim} -Database designformål: +Database designformÃ¥l:  - Hurtig skrivning af en transaktion.  - Hurtig genfinding af en tidligere skrevet transaktion. -- Robusthed overfor ændringer i makroers layout. -- Gode muligheder for at lave statistik udtræk. +- Robusthed overfor ændringer i makroers layout. +- Gode muligheder for at lave statistik udtræk. -Estimat af datastørrelser: +Estimat af datastørrelser:  200 patienter pr. dag.  10 fields pr. patient.  ----  2000 fields + 200 headere = 2200 entries i databasen pr. dag. -Hvis en entry i gennemsnit består af 200 tegn er det +Hvis en entry i gennemsnit bestÃ¥r af 200 tegn er det  2200 * 200 = 440000 bytes/dag. -eller 153.16Mbytes/år +eller 153.16Mbytes/Ã¥r  // som root  // # createuser -P -h localhost -U postgres diff --git a/design/preamble.tex b/design/preamble.tex index cff4c6a..7096db5 100644 --- a/design/preamble.tex +++ b/design/preamble.tex @@ -1,3 +1,4 @@ +% -*- coding: utf-8 -*-  \documentclass[  %*********************************************  %* Paper type (letterpaper)                  * @@ -52,7 +53,7 @@  %*********************************************  %* Userpackages                              *  %********************************************* -\usepackage[latin1]{inputenc} %Bruges til  +\usepackage[utf8]{inputenc} %Bruges til   %\usepackage[T1]{fontenc}  \usepackage[danish]{babel}  \usepackage{amsfonts} @@ -131,11 +132,12 @@  \maketitle  \tableofcontents -\include{xmlformat} -\include{transmission} -\include{client} -\include{database} -\include{preudfyldning} +\input{xmlformat} +\input{transmission} +\input{client} +\input{database} +\input{versionering} +\input{preudfyldning}  \end{document}  %********************************************* diff --git a/design/preudfyldning.tex b/design/preudfyldning.tex index f7b2b7e..7a19052 100644 --- a/design/preudfyldning.tex +++ b/design/preudfyldning.tex @@ -1,27 +1,28 @@ +% -*- coding: utf-8 -*-  \section{Preudfyldning}  Inden en makro sendes til klienten sker der en preudfyldningsprocess -på serveren.\\ +pÃ¥ serveren.\\  Et givet inputfelt kan blive preudfyldt med  \begin{itemize} -\item en målt værdi via Pentominos. -\item en tidligere lagret værdi i databasen. -\item en defaultværdi. +\item en mÃ¥lt værdi via Pentominos. +\item en tidligere lagret værdi i databasen. +\item en defaultværdi.  \end{itemize} -Præcis hvilken af de tre metoder som vil blive brugt til det enkeklte -felt afhænger af tidskoder. +Præcis hvilken af de tre metoder som vil blive brugt til det enkeklte +felt afhænger af tidskoder.  \subsection{Pentominos} -I headeren på en makro forefindes en række queries til pentominos -serveren. Disse udføres samlet inden makroen behandles, og producerer +I headeren pÃ¥ en makro forefindes en række queries til pentominos +serveren. Disse udføres samlet inden makroen behandles, og producerer  et namespace hvor navnene er dikteret af deres nesting i svaret fra  pentominos serveren.\\ -En query kan f.eks se sådan ud: +En query kan f.eks se sÃ¥dan ud:  \begin{verbatim}  <queries>    <query class="lensmeter" ttl="10000"/>  </queries>  \end{verbatim} -Et svar kan f.eks se sådan ud: +Et svar kan f.eks se sÃ¥dan ud:  \begin{verbatim}  <results>    <result class="lensmeter" timestamp="1211808877"> @@ -38,17 +39,17 @@ Et svar kan f.eks se sådan ud:    </result>  </results>  \end{verbatim} -For hvert resultat produceres en \texttt{result} knude med tilhørende -tidkode som beskriver hvornår den givne måling er indrapporteret.\\ -Disse knuder oversættes til et namespace med nesting, separeret med -\texttt{.} (punktum), bestående af først klassenavnet på querien, -dernest alle grupper og sidst navnet på værdien, f.eks +For hvert resultat produceres en \texttt{result} knude med tilhørende +tidkode som beskriver hvornÃ¥r den givne mÃ¥ling er indrapporteret.\\ +Disse knuder oversættes til et namespace med nesting, separeret med +\texttt{.} (punktum), bestÃ¥ende af først klassenavnet pÃ¥ querien, +dernest alle grupper og sidst navnet pÃ¥ værdien, f.eks  \texttt{lensmeter.right.axis}.\\ -Hver af disse værdier indeholder en value og en timestamp som sat +Hver af disse værdier indeholder en value og en timestamp som sat  iflg. svaret.\\ -Svaret bliver nu filtreret igennem en række LUA mapper programmer som -hver især returnerer en værdi og en tidskode.\\ -Mapper programmerne kan f.eks se sådan ud: +Svaret bliver nu filtreret igennem en række LUA mapper programmer som +hver især returnerer en værdi og en tidskode.\\ +Mapper programmerne kan f.eks se sÃ¥dan ud:  \begin{verbatim}  <maps>    <map name="axis"> @@ -68,27 +69,27 @@ Mapper programmerne kan f.eks se sådan ud:    </map>  </maps>  \end{verbatim} -Et inputfelt angiver at det skal (eller kan) udfyldes via sådan et -map, ved hjælp af et \texttt{map} tag. Hvis dette tag ikke findes, eller hvis +Et inputfelt angiver at det skal (eller kan) udfyldes via sÃ¥dan et +map, ved hjælp af et \texttt{map} tag. Hvis dette tag ikke findes, eller hvis  det er tomt, eller refererer til et ikke-eksisterende map, ignoreres  det.  \subsection{Pracro}  Alle input felter i makroen har et navn tilknyttet. Disse navne  benyttes til at lave opslag i pracro databasen for at finde ud af om -der er tidligere indtastede værdier.\\ -Disse eventuelle værdier har ligesom værdierne fra pentominos +der er tidligere indtastede værdier.\\ +Disse eventuelle værdier har ligesom værdierne fra pentominos  tidskoder.\\  Ved opslaget benyttes en fast defineret (i configurationsfilen) -ttl. Overskrides denne af en værdi, ignoreres den i opslaget.\\ -Hvis pentominos svaret ikke har givet anledning til en konkret værdi, -eller hvis værdiens tidskode er ældre end den pracro opslaget giver, -så har pracro værdien precedens over pentominos. Hvis det modsatte er -tilfældet, benyttes værdien fra pentominos.\\ +ttl. Overskrides denne af en værdi, ignoreres den i opslaget.\\ +Hvis pentominos svaret ikke har givet anledning til en konkret værdi, +eller hvis værdiens tidskode er ældre end den pracro opslaget giver, +sÃ¥ har pracro værdien precedens over pentominos. Hvis det modsatte er +tilfældet, benyttes værdien fra pentominos.\\  Hvis hverken pentominos eller pracro giver noget bugbart resultat, -benyttes default værdien. +benyttes default værdien. -\subsection{Default værdi} -Alle inputfelter har en predefineret værdi, i kraft af et value felt.\\ -Et ikke eksisterende value felt resulterer i en default værdi værende +\subsection{Default værdi} +Alle inputfelter har en predefineret værdi, i kraft af et value felt.\\ +Et ikke eksisterende value felt resulterer i en default værdi værende  den tomme streng. diff --git a/design/transmission.tex b/design/transmission.tex index f4e811b..f2c8997 100644 --- a/design/transmission.tex +++ b/design/transmission.tex @@ -1,18 +1,19 @@ +% -*- coding: utf-8 -*-  \section{Data transmission} -En transmission består af en række deltransmissioner som afhænger af +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. Forbindelsen lukkes efter end overførsel. -\item Brugeren udfylder input felterne og trykker på ``commit'' eller +      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. -\item Hvis der blev trykket ``commit'' genereres et XML dokument på -      klienten indeholdene alle input felternes navne og deres tilhørende -      værdier. +\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 via en nyoprettet forbindelse. -\item Serveren producerer en plaintext klump som repræsenterer den udførte +\item Serveren producerer en plaintext klump som repræsenterer den udføte        transaktion.  \item Teksten sendes til en applikation som appender til den PC-Praxis        journalfilen. diff --git a/design/versionering.tex b/design/versionering.tex new file mode 100644 index 0000000..2c3c9f7 --- /dev/null +++ b/design/versionering.tex @@ -0,0 +1,25 @@ +% -*- coding: utf-8 -*- +\section{Versionering af Macroer og Templates} +Alle templates og makroer har et unikt navn og et versionsnummer.\\ +Disse bruges blandt andet til at knytte gamle data sammen med sine +oprindelige widgets.\\ +Alle makroer lagres i en serverdefineret makro folder, efter følgende +navngivnings metode:\\ +\begin{verbatim} +makronavn.xml.version +\end{verbatim} +\texttt{makronavn} er det samme navn som ingÃ¥r i makro headeren inde i +xml filen. Det mÃ¥ kun indeholde tegnene fra a-z, samt underscore \_.\\ +Versionsnummeret bestÃ¥r af tre dele, et major versionsnummer, som +starter pÃ¥ 1, et minor versionsnummer som starter pÃ¥ 0 og en +patchlevel som starter pÃ¥ 0.\\ +Alle tre niveauer skal altid være til stede.\\ +Et symbolic link oprettes bestÃ¥ende kun af makronavnet, som peger pÃ¥ +den nyeste version af makroen. AltsÃ¥ efter følgende konvention: +\begin{verbatim} +makronavn.xml +\end{verbatim} +Makroerne indsættes pÃ¥ serveren via et upload program (muligvis +indbygget i editoren). Serveren laver dels xml validering af makroen, +dels lua syntax check og endelig en række sanity checks inden den +endeligt indsættes i systemet. diff --git a/design/widgets/button.tex b/design/widgets/button.tex index b58d24d..e2bb00e 100644 --- a/design/widgets/button.tex +++ b/design/widgets/button.tex @@ -1,12 +1,13 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{button} elementet}  En knap kan benyttes til enten at afbryde makroen eller at acceptere -dens indhold og dermed gemme dataene på serveren.\\ +dens indhold og dermed gemme dataene pÃ¥ serveren.\\  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'', ``commit'' eller ``reset'', hvor ``abort'' +\item \textit{action} - Den handling som skal udføres nÃ¥r der trykkes +  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. diff --git a/design/widgets/checkbox.tex b/design/widgets/checkbox.tex index a02a1f9..0becb88 100644 --- a/design/widgets/checkbox.tex +++ b/design/widgets/checkbox.tex @@ -1,11 +1,12 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{checkbox} elementet} -En checkbox bruges til at aktivere eller deaktivere en given værdi ved -hjælp af flueben.\\ +En checkbox bruges til at aktivere eller deaktivere en given værdi ved +hjælp af flueben.\\  En checkbox har flg. attributter:  \begin{itemize}  \item \textit{caption} - Den tekst som skal vises i knappen. Hvis    udeladt vises checkboxen uden tekst. -\item \textit{value} - Den værdi som checkboxen har intielt. Kan -  ``true'' eller ``false''. Hvis udeladt vil checkboxen få værdien +\item \textit{value} - Den værdi som checkboxen har intielt. Kan +  ``true'' eller ``false''. Hvis udeladt vil checkboxen fÃ¥ værdien    ``false''.  \end{itemize} diff --git a/design/widgets/combobox.tex b/design/widgets/combobox.tex index bb6ddf8..2793bbe 100644 --- a/design/widgets/combobox.tex +++ b/design/widgets/combobox.tex @@ -1,11 +1,28 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{combobox} elementet} -En combobox gruppe bruges til at vælge et element ud af en gruppe.\\ +En combobox gruppe bruges til at vælge et element ud af en gruppe.\\  En combobox har flg. attributter:  \begin{itemize} -\item \textit{value} - Inidikerer hvilket element i gruppen som skal være -  valgt initielt. Hvis udeladt eller ikke-matchende vil comboboxen være tom, -  hvilket vil svare til at et regulært udtryk på et tekstfelt ikke er +\item \textit{value} - Inidikerer hvilket element i gruppen som skal være +  valgt initielt. Hvis udeladt eller ikke-matchende vil comboboxen være tom, +  hvilket vil svare til at et regulært udtryk pÃ¥ et tekstfelt ikke er    opfyldt. +\item \textit{type} - Denne attribut bruges til at styre comboboxens +  funktionalitet. Feltet kan have følgende værdier: +  \begin{description} +  \item[select] FÃ¥r comboboxen til at opføre sig som en single select +                liste. AltsÃ¥ en list hvor præcis et element skal +                vælges, og man ikke selv kan skrive. +  \item[edit] FÃ¥r comboboxen til at opføre sig som en single select +              liste, men hvor brugeren kan skrive fritekst i feltet, +              og derved vælge værdier som ikke allerede er pÃ¥ listen. +  \item[search] FÃ¥r comboboxsen til at opføre sig som hvis den havde +                typen \texttt{select}, bortset fra at brugeren nu kan +                skrive i feltet, hvorved en søgning i listen +                foretages, og det bedst matchene resultat vælges. +  \end{description} +  Hvis \texttt{type} feltet er undladt, laves comboboxen med +  typen \texttt{select}.  \end{itemize}  Comboboxen indeholder \texttt{item} tags som beskriver hvilke valgmuligheder  den givne gruppe har.\\ @@ -13,7 +30,7 @@ Et combobox item har flg. attributter:  \begin{itemize}  \item \textit{caption} - Den tekst som skal vises for denne valgmulighed. Hvis    udeladt vises den uden tekst. -\item \textit{value} - Den værdi som valgmuligheden har og som sendes som værdi +\item \textit{value} - Den værdi som valgmuligheden har og som sendes som værdi    af gruppen hvis den er valgt ved commit.  \end{itemize}  Ved commit returneres comboboxens navn med det valgte items value. diff --git a/design/widgets/frame.tex b/design/widgets/frame.tex index 76b307b..7fd4294 100644 --- a/design/widgets/frame.tex +++ b/design/widgets/frame.tex @@ -1,16 +1,17 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{frame} elementet} -En frame benyttes til at indsætte nestede elementer i makroen, såsom +En frame benyttes til at indsætte nestede elementer i makroen, sÃ¥som  gruperinger af checkboxe.\\  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. -\item \textit{border} - Elementets kant type. Kan have værdierne +\item \textit{border} - Elementets kant type. Kan have værdierne    ``plain'' eller ``raised'' Hvis udeladt benyttes laves ingen kant. -\item \textit{padding} - En integer som er størelsen på paddingen på +\item \textit{padding} - En integer som er størelsen pÃ¥ paddingen pÃ¥    elementet. Hvis udeladt benyttes elementets default padding. -\item \textit{margin} - En integer som er størelsen på elementets +\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 +\item \textit{layout} - Framens layout engine. Kan have værdierne    ``hbox'' eller ``vbox''. Hvis udeladt benyttes et vbox layout.  \end{itemize} diff --git a/design/widgets/label.tex b/design/widgets/label.tex index eb2d4d2..436fee5 100644 --- a/design/widgets/label.tex +++ b/design/widgets/label.tex @@ -1,9 +1,10 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{label} elementet} -En label benyttes til at indsætte beskrivejnde tekst i makroen.\\ +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 +\item \textit{alignment} - Justeringen af teksten. Kan have værdierne    ``left'', ``right'' eller ``center''. Hvis udeladt benyttes ``left''.  \end{itemize} diff --git a/design/widgets/lineedit.tex b/design/widgets/lineedit.tex index ff1b389..cec5214 100644 --- a/design/widgets/lineedit.tex +++ b/design/widgets/lineedit.tex @@ -1,15 +1,16 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{lineedit} elementet} -En lineedit benyttes til at læse input fra brugeren i kraft tekst.\\ -Lineediten kan have et regulært udtryk tilknyttet, som validerer input -mens der tastes og ændrer feltets baggrundsfarve afhængig af om feltet +En lineedit benyttes til at læse input fra brugeren i kraft tekst.\\ +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. attributter:  \begin{itemize}  \item \textit{value} - Den tekst som skal vises i lineediten. Hvis -  udeladt vil lineediten være tom. -\item \textit{regexp} - Et regulært udtryk som benyttes til at -  validere feltet. Hvis udeladt accepterer feltet alle inputs. Læs -  mere om de regulære udtryk her: +  udeladt vil lineediten være tom. +\item \textit{regexp} - Et regulært udtryk som benyttes til at +  validere feltet. Hvis udeladt accepterer feltet alle inputs. Læs +  mere om de regulære udtryk her:    \verb|http://doc.trolltech.com/4.3/qregexp.html#introduction|  \end{itemize} diff --git a/design/widgets/listbox.tex b/design/widgets/listbox.tex index 3689ee9..dd9fe19 100644 --- a/design/widgets/listbox.tex +++ b/design/widgets/listbox.tex @@ -1,24 +1,25 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{listbox} elementet} -En listbox bruges til at vælge præcis et element ud af en gruppe via en liste.\\ +En listbox bruges til at vælge præcis et element ud af en gruppe via en liste.\\  En listbox har flg. attributter:  \begin{itemize} -\item \textit{value} - Indikerer hvilket element på listen som skal være -  valgt initielt. Hvis udeladt eller ikke-matchende vil ingenting være valgt, -  hvilket vil svare til at et regulært udtryk på et tekstfelt ikke er +\item \textit{value} - Indikerer hvilket element pÃ¥ listen som skal være +  valgt initielt. Hvis udeladt eller ikke-matchende vil ingenting være valgt, +  hvilket vil svare til at et regulært udtryk pÃ¥ et tekstfelt ikke er    opfyldt.  \end{itemize}  Listboxen indeholder \texttt{item} tags som beskriver hvilke linier der skal -være i listen.\\ +være i listen.\\  Et listbox item har flg. attributter:  \begin{itemize}  \item \textit{caption} - Den tekst som skal vises for denne valgmulighed. Hvis    udeladt vises den uden tekst. -\item \textit{value} - Den værdi som valgmuligheden har og som sendes som værdi +\item \textit{value} - Den værdi som valgmuligheden har og som sendes som værdi    af gruppen hvis den er valgt ved commit. Skal udelades hvis type er sat.  \item \textit{type} - Et typefelt, som beskriver hvordan dette item skal vise. -  Kan have værdierne ``separator'', hvilket indikerer at elementet skal vises -  som en horisontal streg der ikke kan vælges, eller ``header'' som indikerer at -  elementet skal vises som en overskrift der ikke kan vælges. Når typen er sat +  Kan have værdierne ``separator'', hvilket indikerer at elementet skal vises +  som en horisontal streg der ikke kan vælges, eller ``header'' som indikerer at +  elementet skal vises som en overskrift der ikke kan vælges. NÃ¥r typen er sat    til ``header'' benyttes \textit{caption} attributen som den tekst der skal    vises i overskriften.  \end{itemize} diff --git a/design/widgets/multilist.tex b/design/widgets/multilist.tex index 9e3ff6e..8ca82eb 100644 --- a/design/widgets/multilist.tex +++ b/design/widgets/multilist.tex @@ -1,11 +1,12 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{multilist} elementet} -En multilist bruges til at producere en række tekststrenge som alle -vil blive tilføjet til en liste.\\ +En multilist bruges til at producere en række tekststrenge som alle +vil blive tilføjet til en liste.\\  En multilist har flg. attributter:  %\begin{itemize} -%\item \textit{value} - Inidikerer hvilket element på listen som skal være -%  valgt initielt. Hvis udeladt eller ikke-matchende vil ingenting være valgt, -%  hvilket vil svare til at et regulært udtryk på et tekstfelt ikke er +%\item \textit{value} - Inidikerer hvilket element pÃ¥ listen som skal være +%  valgt initielt. Hvis udeladt eller ikke-matchende vil ingenting være valgt, +%  hvilket vil svare til at et regulært udtryk pÃ¥ et tekstfelt ikke er  %  opfyldt.  %\end{itemize}  En multiliste indeholder to undergrupper: en gruppe som beskriver @@ -13,19 +14,19 @@ preindsatte strenge, og en gruppe som indeholder widgets.\\  Gruppen med de preindsatte strenge er tagget \texttt{items}, som har  flg. attributer:  %\begin{itemize} -%\item \textit{value} - Inidikerer hvilket element på listen som skal være -%  valgt initielt. Hvis udeladt eller ikke-matchende vil ingenting være valgt, -%  hvilket vil svare til at et regulært udtryk på et tekstfelt ikke er +%\item \textit{value} - Inidikerer hvilket element pÃ¥ listen som skal være +%  valgt initielt. Hvis udeladt eller ikke-matchende vil ingenting være valgt, +%  hvilket vil svare til at et regulært udtryk pÃ¥ et tekstfelt ikke er  %  opfyldt.  %\end{itemize} -\texttt{items} tagget indeholder således \texttt{item} tags som hver -især beskriver en enkelt streng som skal indsættes. \texttt{item} +\texttt{items} tagget indeholder sÃ¥ledes \texttt{item} tags som hver +især beskriver en enkelt streng som skal indsættes. \texttt{item}  tagget har flg. attributer:  \begin{itemize}  \item \textit{value} -   \end{itemize} -Et eksempel på en multilist: +Et eksempel pÃ¥ en multilist:  \begin{verbatim}  <multilist>    <items> @@ -33,10 +34,10 @@ Et eksempel på en multilist:      <item>En streng mere</item>    </items>    <input layout="hbox"> -    <lineedit value="Skriv en værdi her"/> +    <lineedit value="Skriv en værdi her"/>    </input>  </multilist>  \end{verbatim} -Multilisten indeholder en række underwidgets som tilsammen konstruerer +Multilisten indeholder en række underwidgets som tilsammen konstruerer  inputtet til strengkonstruktionen. diff --git a/design/widgets/radiobuttons.tex b/design/widgets/radiobuttons.tex index f071232..e6afc8e 100644 --- a/design/widgets/radiobuttons.tex +++ b/design/widgets/radiobuttons.tex @@ -1,13 +1,14 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{radiobuttons} elementet} -En radiobuttons gruppe bruges til at vælge et element ud af en gruppe +En radiobuttons gruppe bruges til at vælge et element ud af en gruppe  via radiobuttons.\\  Radiobuttons gruppen har flg. attributter:  \begin{itemize} -\item \textit{value} - Inidikerer hvilken radiobutton i gruppen som skal være -  valgt initielt. Hvis udeladt eller ikke-matchende vil ingen radiobutton være -  valgt, hvilket vil svare til at et regulært udtryk på et tekstfelt ikke er +\item \textit{value} - Inidikerer hvilken radiobutton i gruppen som skal være +  valgt initielt. Hvis udeladt eller ikke-matchende vil ingen radiobutton være +  valgt, hvilket vil svare til at et regulært udtryk pÃ¥ et tekstfelt ikke er    opfyldt. -\item \textit{layout} - Vinduets layout engine. Kan have værdierne +\item \textit{layout} - Vinduets layout engine. Kan have værdierne    ``hbox'' eller ``vbox''. Hvis udeladt benyttes et vbox layout.  \end{itemize}  Radiobuttons indeholder \texttt{item} tags som beskriver hvilke valgmuligheder @@ -16,7 +17,7 @@ Et radiobutton item har flg. attributter:  \begin{itemize}  \item \textit{caption} - Den tekst som skal vises i radiobuttonen. Hvis    udeladt vises radiobuttonen uden tekst. -\item \textit{value} - Den værdi som radiobuttonen har og som sendes som værdi +\item \textit{value} - Den værdi som radiobuttonen har og som sendes som værdi    af gruppen hvis denne radiobutton er valgt ved commit.  \end{itemize}  Ved commit returneres radiobutton gruppens navn med den valgte radiobuttons value. diff --git a/design/widgets/spacer.tex b/design/widgets/spacer.tex index d6a919e..dc40a6e 100644 --- a/design/widgets/spacer.tex +++ b/design/widgets/spacer.tex @@ -1,3 +1,4 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{spacer} elementet}  Et spacer element bruges for at pakke andre elementer i et layout.\\  En spacer har ingen attributter. diff --git a/design/widgets/textedit.tex b/design/widgets/textedit.tex index 2b7cdae..4d1368a 100644 --- a/design/widgets/textedit.tex +++ b/design/widgets/textedit.tex @@ -1,16 +1,17 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{textedit} elementet} -En textedit benyttes ligesom lineedit til at læse input fra brugeren i +En textedit benyttes ligesom lineedit til at læse input fra brugeren i  kraft af tekst.\\ -Textediten kan have et regulært udtryk tilknyttet, som validerer input -mens der tastes og ændrer feltets baggrundsfarve afhængig af om feltet +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. attributter:  \begin{itemize}  \item \textit{value} - Den tekst som skal vises i textediten. Hvis -  udeladt vil textediten være tom. -\item \textit{regexp} - Et regulært udtryk som benyttes til at -  validere feltet. Hvis udeladt accepterer feltet alle inputs. Læs -  mere om de regulære udtryk her: +  udeladt vil textediten være tom. +\item \textit{regexp} - Et regulært udtryk som benyttes til at +  validere feltet. Hvis udeladt accepterer feltet alle inputs. Læs +  mere om de regulære udtryk her:    \verb|http://doc.trolltech.com/4.3/qregexp.html#introduction|  \end{itemize} diff --git a/design/widgets/togglebutton.tex b/design/widgets/togglebutton.tex index fb43b48..43d2ecf 100644 --- a/design/widgets/togglebutton.tex +++ b/design/widgets/togglebutton.tex @@ -1,11 +1,12 @@ +% -*- coding: utf-8 -*-  \subsubsection{\texttt{togglebutton} elementet} -En togglebutton bruges til at aktivere eller deaktivere en given værdi ved +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 +\item \textit{value} - Den værdi som knappen har intielt. Kan +  ``true'' eller ``false''. Hvis udeladt vil den fÃ¥ værdien    ``false''.  \end{itemize} diff --git a/design/widgets/window.tex b/design/widgets/window.tex index 369d267..0d67cb0 100644 --- a/design/widgets/window.tex +++ b/design/widgets/window.tex @@ -1,14 +1,15 @@ +% -*- coding: utf-8 -*-  \subsubsection{\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, +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. 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 +  statisk. Kan have værdierne ``true'' eller ``false''. Hvis udeladt    vil vinduet kunne skaleres. -\item \textit{layout} - Vinduets layout engine. Kan have værdierne +\item \textit{layout} - Vinduets layout engine. Kan have værdierne    ``hbox'' eller ``vbox''. Hvis udeladt benyttes et vbox layout.  \end{itemize} diff --git a/design/xmlformat.tex b/design/xmlformat.tex index 9daaf89..00e4ec9 100644 --- a/design/xmlformat.tex +++ b/design/xmlformat.tex @@ -1,8 +1,9 @@ +% -*- coding: utf-8 -*-  \section{XML Formatet}  Al kommunikation mellem serveren og klienten (og vice versa) -foregår ved hjælp af XML.\\ +foregÃ¥r ved hjælp af XML.\\  Dokumenterne skal starte med en header som specificerer hvilken -XML verison som benyttes, efterfulgt af rodknuden som skal være af +XML verison som benyttes, efterfulgt af rodknuden som skal være af  typen \texttt{pracro}.\\  \begin{verbatim}  <?xml version="1.0" encoding="UTF-8"?> @@ -12,7 +13,7 @@ typen \texttt{pracro}.\\      .  </pracro>  \end{verbatim} -Det er vigtigt at pointere at alt data i xml dokumentet skal være i +Det er vigtigt at pointere at alt data i xml dokumentet skal være i  UTF-8 formatering.  \subsection{\texttt{pracro} elementet} @@ -21,18 +22,18 @@ identificerer blandt andet dokumentversionen og kan indeholde alle  typer data forbundet med Pracro systemet.\\  Pracro elementet har flg. attributter:  \begin{itemize} -\item \textit{cpr} - CPR nummeret på den patient som dataene i filen +\item \textit{cpr} - CPR nummeret pÃ¥ den patient som dataene i filen    er knyttet til. Det bruges blandt andet ved genfinding af data og     den afsluttende lagring af data.\\ -  Dette felt må ikke undlades. -\item \textit{version} - Dette felt fortæller hvilken dokument +  Dette felt mÃ¥ ikke undlades. +\item \textit{version} - Dette felt fortæller hvilken dokument    version der er benyttet.\\    Denne variabel skal matche den version klienten forventer.\\ -  Dette felt må ikke udelades. +  Dette felt mÃ¥ ikke udelades.  \end{itemize}  \subsection{Request} -En request sektion sendt til serveren skal bevirke at serveren inlæser og +En request sektion sendt til serveren skal bevirke at serveren inlæser og  sender den angivne makro til klienten.\\  Hvis klienten modtager en request sektion skal den blot ignorere den.  \begin{verbatim} @@ -45,7 +46,7 @@ Hvis klienten modtager en request sektion skal den blot ignorere den.  \subsection{Makro}  En makro definerer en makro som grafisk viser og eller indsamler data.\\  En makro sektion sendt til klienten skal bevirke at den beskrevne -grafisk makro vises på skærmen.\\ +grafisk makro vises pÃ¥ skærmen.\\  Hvis serveren modtager en makro sektion skal den blot ignorere den.  Vi starter med et eksempel:  \begin{verbatim} @@ -75,30 +76,30 @@ Eksemplet illustrerer flg. funktionaliteter: Makroen og den  properties, main vinduet, includes, frames, labels, lineedits og  knapper.\\  \\ -Includes foregår serverside, dvs. klienten modtager det sammensatte +Includes foregÃ¥r serverside, dvs. klienten modtager det sammensatte  dokument og vil dermed aldrig se \verb|<include ...>| tagget.\\  \\  Der skelnes mellem input felter og ikke-input felter. Et input felt er  et felt som ved endt indtastning vil bidrage med input til serveren,  f.eks. LineEdit, Combo eller CheckBox. Ikke-input felter er -felter som udelukkende bidrager til layout og brugerens forståelse af +felter som udelukkende bidrager til layout og brugerens forstÃ¥else af  inputfelterne, f.eks. Frame, Image eler Label.  \subsubsection{\texttt{macro} elementet}  Makro elementet bruges som indpakning til hele makroen. Den -identificerer makroen og angiver en række værdier som skal bruges til -opsætning på klienten.\\ +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 +\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 +  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{version} - Dette felt fortæller hvilken version  +  Dette felt mÃ¥ ikke undlades. +\item \textit{version} - Dette felt fortæller hvilken version     den konkrete makro har.\\ -  Dette felt må ikke udelades. +  Dette felt mÃ¥ ikke udelades.  \end{itemize}  %% @@ -107,36 +108,36 @@ Makroen har flg. attributter:  %\subsubsection{\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.\\ +%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{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''. +%  disables. Kan have værdierne ``true'' eller ``false''. Hvis udeladt +%  benyttes værdien ``false''.  %\end{itemize}  \subsubsection{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 +\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 må ikke undlades. -\item \textit{width} - Et positivt heltal som sætter bredden af +  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{help} - Elementets hjælpetekst. En beskrivende tekst som -  vises på skærmen når elementet er aktivt. Hvis udeladt vises +\item \textit{height} - Et positivt heltal som sætter højden pÃ¥ +  elementet. Hvis den er udeladt benyttes elementets default højde. +\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 +\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''. +  samt alle dets children rekursivt. Hvis undladt benyttes værdien ``false''.  \end{itemize}  \input{widgets/window} @@ -155,7 +156,7 @@ Alle GUI elementerne i xml dokumentet har flg. attributter:  \subsection{Commit}  En commit sektion sendt til serveren skal  bevirke at serveren lagrer de -sendte data i databasen, samt genererer et resumé som kan blive sendt +sendte data i databasen, samt genererer et resumé som kan blive sendt  tilbage til klienten.\\  Hvis klienten modtager en commit sektion skal den blot ignorere den.  \begin{verbatim} @@ -171,26 +172,26 @@ Hvis klienten modtager en commit sektion skal den blot ignorere den.  \subsubsection{\texttt{commit} elementet}  Commit elementet har flg. attributter:  \begin{itemize} -\item \textit{user} - Brugernavnet på den bruger som har udfyldt makroen. -\item \textit{macro} - Navnet på den makro som dataene er indtastet i. -\item \textit{version} - Versionsnummeret på den makro som er blevet udfyldt. +\item \textit{user} - Brugernavnet pÃ¥ den bruger som har udfyldt makroen. +\item \textit{macro} - Navnet pÃ¥ den makro som dataene er indtastet i. +\item \textit{version} - Versionsnummeret pÃ¥ den makro som er blevet udfyldt.  \end{itemize}  \subsubsection{\texttt{field} elementet}  Field elementet har flg. attributter:  \begin{itemize} -\item \textit{name} - Navnet på feltet. -\item \textit{value} - Værdien af feltet. +\item \textit{name} - Navnet pÃ¥ feltet. +\item \textit{value} - Værdien af feltet.  \end{itemize} -%\subsection{Resumé} -%En resumé sektion sendt til klienten skal bevirke at klienten appender den +%\subsection{Resumé} +%En resumé sektion sendt til klienten skal bevirke at klienten appender den  %sendte tekst til PC-Praxis journalfilen.\\ -%Hvis serveren modtager en resumé sektion skal den blot ignorere den. +%Hvis serveren modtager en resumé sektion skal den blot ignorere den.  %\begin{verbatim}  %<?xml version="1.0" encoding="UTF-8"?>  %<pracro version="1.0" cpr="1505050505"> -%  <resume macro="visus" version="1.0">Det objektive synsmål var -%42 dioptri, og det subjektive synsmål var 42 dioptri.</resume> +%  <resume macro="visus" version="1.0">Det objektive synsmÃ¥l var +%42 dioptri, og det subjektive synsmÃ¥l var 42 dioptri.</resume>  %</pracro>  %\end{verbatim} | 
