# Manual til MateDialog

## Introduktion

MateDialog lader dig oprette følgende typer af simple dialogvinduer:

- Kalender

- Filvælger

- Liste

- Påmindelsesikon

- Meddelelse

  - Fejl

  - Information

  - Spørgsmål

  - Advarsel

- Statusbjælke

- Tekstfelt

- Tekstinformation

## Brug

Hvis du skriver et script, kan du bruge MateDialog til at oprette simple dialogvinduer, der interagerer grafisk med brugeren på følgende vis:

- Du kan oprette et dialogvindue for at indhente information fra brugeren. For eksempel kan du bede brugeren om at vælge en dato fra et kalendervindue, eller om at vælge en fil fra en filvælger.

- Du kan oprette et dialogvindue for at vise information til brugeren. For eksempel kan du bruge en statusbjælke til at angive status for en operation, eller vise en advarsel til brugeren.

Når brugeren lukker dialogvinduet, vil MateDialog udskrive teksten, der blev produceret af vinduet, til standard output.

Når du skriver MateDialog-kommandoer, så sikr dig, at du skriver anførselstegn omkring hvert argument.

For example, use:

    matedialog --calendar --title="Holiday Planner"

Do not use:

    matedialog --calendar --title=Holiday Planner

Hvis du ikke bruger anførselstegn, kan du få uventede resultater.

### Genvejstaster

En genvejstast er en tast, der lader dig foretage en handling ved hjælp af tastaturet, frem for at bruge musen til at vælge en kommando fra en menu eller et dialogvindue. Hver genvejstast markeres ved et understreget tegn i en menu eller ved et dialogvalgmulighed.

Visse MateDialog-dialogvinduer understøtter genvejstaster. Genvejstaster angives ved at placere en bundstreg umiddelbart før det tegn, der svarer til genvejstasten, i dialogteksten. Følgende eksempel viser hvordan man angiver bogstavet "C" som genvejstast:

    "_Choose a name".

### Afslutningskoder

MateDialog returnerer følgende afslutningskoder:

Afslutningskode | Beskrivelse
`0` | Brugeren har trykket enten O.k. eller Luk.
`1` | Brugeren har trykket enten Annullér eller brugt vinduesfunktionerne til at lukke dialogvinduet.
`-1` | Der opstod en uventet fejl.
`5` | Dialogvinduet er blevet lukket, fordi tiden er løbet ud.

### Generelle tilvalg

Alle MateDialog-dialogvinduer understøtter følgende generelle tilvalg:

`--title`=`titel`

- Angiver titel på et dialogvindue.

`--window-icon`=`ikonsti`

- Angiver det ikon, der skal vises i dialogvinduets ramme. Der er fire standardikoner, der kan bruges ved at angive følgende nøgleord: "info", "warning", "question" eller "error".

`--width`=`bredde`

- Angiver dialogvinduets bredde.

`--height`=`højde`

- Angiver dialogvinduets højde.

`--timeout`=`tidsudløb`

- Angiver tidsudløbet i sekunder, hvorefter dialogvinduet lukkes.

### Hjælpetilvalg

MateDialog stiller følgende hjælpetilvalg til rådighed:

`--help`

- Viser en kort hjælpetekst.

`--help-all`

- Viser den fulde hjælpetekst for alle dialogvinduer.

`--help-general`

- Viser hjælpetekst til de generelle dialogtilvalg.

`--help-calendar`

- Viser hjælpetekst for kalenderdialogvinduets tilvalg.

`--help-entry`

- Viser hjælpetekst for tilvalg til tekstindtastningsfelter.

`--help-error`

- Viser hjælpetekst for tilvalg til dialogvinduer med fejlmeddelelser.

`--help-info`

- Viser hjælpetekst for tilvalg til dialogvinduer med informationsmeddelelser.

`--help-file-selection`

- Viser hjælpetekst til filvælgerdialogvinduer.

`--help-list`

- Viser hjælpetekst til listedialogvinduer.

`--help-notification`

- Viser hjælpetekst til påmindelsesikoner.

`--help-progress`

- Viser hjælpetekst til statusbjælkedialogvinduer.

`--help-question`

- Viser hjælpetekst til spørgsmålsdialogvinduer.

`--help-warning`

- Viser hjælpetekst til advarselsdialogvinduer.

`--help-text-info`

- Viser hjælpetekst til informationsdialogvinduer.

`--help-misc`

- Viser hjælpetekst til diverse tilvalg.

`--help-gtk`

- Viser hjælp til GTK+-tilvalg.

### Diverse tilvalg

MateDialog stiller yderligere følgende "diverse" tilvalg til rådighed:

`--about`

- Viser dialogvinduet Om MateDialog, som indeholder versionsinformation, ophavsretsinformation samt udviklerinformation om MateDialog.

`--version`

- Viser versionsnummeret for denne udgave af MateDialog.

### GTK+-tilvalg

MateDialog understøtter standard-GTK+-tilvalgene. Kør kommandoen `matedialog -?` for at få yderligere information om GTK+-tilvalg.

### Miljøvariable

Normalt vil MateDialog detektere terminalvinduet, hvorfra det er blevet kørt, og holde sit eget vindue over dette vindue. Denne opførsel kan slås fra ved at nulstille miljøvariablen `WINDOWID`.

## Kalenderdialogvindue

Brug `--calendar`-tilvalget til at oprette et kalenderdialogindue. MateDialog returnerer den valgte dato til standard output. Hvis ingen dato angives på kommandolinjen, bruger dialogvinduet den aktuelle dato.

Kalenderdialogvinduet understøtter følgende tilvalg:

`--text`=`tekst`

- Angiver teksten, der vises i kalenderdialogvinduet.

`--day`=`dag`

- Angiver den dag, der markeres i kalenderdialogvinduet. `dag` skal være et tal mellem 1 og 31 inklusive.

`--month`=`måned`

- Angiver måneden, der markeres i kalenderdialogvinduet. `måned` skal være et tal mellem 1 og 12, inklusive.

`--year`=`år`

- Angiver året, der markeres i kalenderdialogvinduet.

`--date-format`=`format`

- Angiver formatet, der returneres fra kalenderdialogen efter datoen er blevet valgt. Standardformatet afhænger af regionaldata. `format` skal være et format, som accepteres af `strftime`-funktionen, såsom `%A %d/%m/%y`.

The following example script shows how to create a calendar dialog:

            #!/bin/sh

            if matedialog --calendar \
            --title="Select a Date" \
            --text="Click on a date to select that date." \
            --day=10 --month=8 --year=2004
              then echo $?
              else echo "No date selected"
            fi

### Eksempel på kalenderdialog

MateDialog calendar dialog example

## Filvælgerdialogvindue

Brug tilvalget `--file-selection` til at oprette et filvælgerdialogvidue. MateDialog returnerer de valgte filer eller mapper til standard output. Standardtilstanden for filvælgeren er åbn.

Filvælgerdialogvinduer understøtter følgende tilvalg:

`--filename`=`filnavn`

- Angiver den fil eller mappe, som er valgt i filvælgeren, når dialogvinduet først vises.

`--multiple`

- Tillader valg af flere filnavne i filvælgeren.

`--directory`

- Tillader kun valg af mapper i filvælgeren.

`--save`

- Sæt filvælgerdialogen til gemmetilstand.

`--separator`=`skilletegn`

- Angiver strengen, der bruges til at dele listen af returnerede filnavne.

The following example script shows how to create a file selection dialog:

            #!/bin/sh

            FILE=`matedialog --file-selection --title="Select a File"`

            case $? in
                     0)
                            echo "\"$FILE\" selected.";;
                     1)
                            echo "No file selected.";;
                    -1)
                            echo "No file selected.";;
            esac

### Eksempel med filvælgerdialogvindue

MateDialog file selection dialog example

## Påmindelsesikon

`--text`=`tekst`

- Angiver teksten, der vises i påmindelsesområdet.

The following example script shows how to create a notification icon:

            #!/bin/sh

            matedialog --notification\
              --window-icon="info" \
              --text="There are system updates necessary!"

### Eksempel på påmindelsesikon

MateDialog notification icon example

## Listedialogvindue

Brug tilvalget `--list` til at oprette et listedialogvindue. MateDialog returnerer elementerne i første kolonne af teksten i de valgte rækker til standard output.

Data for dialogvinduet skal angives kolonne efter kolonne, række efter række. Data kan gives til dialogen gennem standard input. Hvert element skal adskilles af et linjeskiftstegn.

Hvis du bruger tilvalget `--checklist` eller `--radiolist`, skal hver række starte med enten "TRUE" eller "FALSE".

Listedialogvinduet understøtter følgende tilvalg:

`--column`=`kolonne`

- Angiver kolonneoverskrifterne, der vises i listedialogvinduet. Du skal angive et `--column`-tilvalg for hver kolonne, du vil have vist i dialogvinduet.

`--checklist`

- Angiver at første kolonne i listedialogvinduet indeholder afkrydsningsfelter.

`--radiolist`

- Angiver at første kolonne i listedialogvinduet indeholder radiofelter.

`--editable`

- Tillader redigering af de viste elementer.

`--separator`=`skilletegn`

- Angiver den streng, der bruges når listedialogvinduet returnerer de valgte elementer.

`--print-column`=`kolonne`

- Angiver den kolonne, der skal udskrives når der vælges. Standardkolonnen er "1". "ALL" kan bruges til at udskrive alle kolonner i listen.

The following example script shows how to create a list dialog:

            #!/bin/sh

            matedialog --list \
              --title="Choose the Bugs You Wish to View" \
              --column="Bug Number" --column="Severity" --column="Description" \
                992383 Normal "GtkTreeView crashes on multiple selections" \
                293823 High "MATE Dictionary does not handle proxy" \
                393823 Critical "Menu editing does not work in MATE 2.0"

### Eksempel med listedialogvindue

MateDialog list dialog example

## Meddelelsesdialogvinduer

MateDialog kan oprette fire typer af meddelelsesdialogvinduer:

- Fejl

- Information

- Spørgsmål

- Advarsel

For hver type, kan du bruge tilvalget `--text` til at angive den tekst, der vises i dialogvinduet.

### Fejldialogvindue

Brug tilvalget `--error` til at oprette et fejldialogvindue.

The following example script shows how to create an error dialog:

              #!/bin/bash

              matedialog --error \
              --text="Could not find /var/log/syslog."

#### Eksempel på fejldialogvindue

MateDialog error dialog example

### Informationsdialogvindue

Brug tilvalget `--info` til at oprette et informationsdialogvindue.

The following example script shows how to create an information dialog:

              #!/bin/bash

              matedialog --info \
              --text="Merge complete. Updated 3 of 10 files."

#### Eksempel på informationsdialogvindue

MateDialog information dialog example

### Spørgsmålsdialogvindue

Brug tilvalget `--question` til at oprette et spørgsmålsdialogvindue.

The following example script shows how to create a question dialog:

              #!/bin/bash

              matedialog --question \
              --text="Are you sure you wish to proceed?"

#### Eksempel på spørgsmålsdialogvindue

MateDialog question dialog example

### Advarselsdialogvindue

Brug tilvalget `--warning` til at oprette et advarselsdialogvindue.

The following example script shows how to create a warning dialog:

              #!/bin/bash

              matedialog --warning \
              --text="Disconnect the power cable to avoid electrical shock."

#### Eksempel på advarselsdialogvindue

MateDialog warning dialog example

## Dialogvindue med statusbjælke

Brug tilvalget `--progress` til at oprette et dialogvindue med en statusbjælke.

MateDialog læser data linjevis fra standard input. Hvis en linje starter med #, vil teksten blive opdateret med den efterfølgende tekst på den pågældende linje. Hvis en linje kun indeholder et tal, vil vil procenttallet blive opdateret med dette tal.

Statusbjælkedialogvinduet understøtter følgende tilvalg:

`--text`=`tekst`

- Angiver teksten, der vises i statusbjælkedialogvinduet.

`--percentage`=`procentdel`

- Angiver det procenttal, der fra starten vises i statusbjælkedialogvinduet.

`--auto-close`

- Lukker statusbjælken, når den har nået 100%.

`--pulsate`

- Angiver at statusbjælken pulserer indtil der læses et EOF-tegn fra standard input.

The following example script shows how to create a progress dialog:

            #!/bin/sh
            (
            echo "10" ; sleep 1
            echo "# Updating mail logs" ; sleep 1
            echo "20" ; sleep 1
            echo "# Resetting cron jobs" ; sleep 1
            echo "50" ; sleep 1
            echo "This line will just be ignored" ; sleep 1
            echo "75" ; sleep 1
            echo "# Rebooting system" ; sleep 1
            echo "100" ; sleep 1
            ) |
            matedialog --progress \
              --title="Update System Logs" \
              --text="Scanning mail logs..." \
              --percentage=0

            if [ "$?" = -1 ] ; then
                    matedialog --error \
                      --text="Update canceled."
            fi

### Eksempel på dialogvindue med statusbjælke

MateDialog progress dialog example

## Tekstfelt

Use the `--entry` option to create a text entry dialog. MateDialog returns the contents of the text entry to standard output.

Tekstfeltsdialogvinduet understøtter følgende tilvalg:

`--text`=`tekst`

- Angiver teksten, der vises i dialogvinduet.

`--entry-text`=`tekst`

- Angiver teksten, der vises i tekstfeltets indtastningsfelt.

`--hide-text`

- Skjuler teksten i tekstfeltet.

The following example script shows how to create a text entry dialog:

            #!/bin/sh

            if matedialog --entry \
            --title="Add an Entry" \
            --text="Enter your _password:" \
            --entry-text "password" \
            --hide-text
              then echo $?
              else echo "No password entered"
            fi

### Eksempel på dialogvindue med et tekstindtastningsfelt

MateDialog text entry dialog example

## Tekstinformationsdialogvindue

Brug tilvalget `--text-info` til at oprette et dialogvindue med tekstinformation.

Tekstinformationsdialogvinduet understøtter følgende tilvalg:

`--filename`=`filnavn`

- Angiver en fil, der indlæses i tekstinformationsdialogvinduet.

`--editable`

- Tillader redigering af den viste tekst. Den redigerede tekst returneres til standard output, når dialogvinduet lukkes.

The following example script shows how to create a text information dialog:

            #!/bin/sh

            FILE=`matedialog --file-selection \
              --title="Select a File"`

            case $? in
                     0)
                            matedialog --text-info \
                              --title=$FILE \
                              --filename=$FILE \
                              --editable 2>/tmp/tmp.txt;;
                     1)
                            echo "No file selected.";;
                    -1)
                            echo "No file selected.";;
            esac

### Eksempel på dialogvindue med tekstinformation

MateDialog text information dialog example