Solaris Common Desktop Environment: Handbok för avancerade användare och systemadministratörer

Begränsa åtgärder för vissa argument

När du begränsar en åtgärd till en viss typ av argument förfinas åtgärden. Du bör t ex begränsa en åtgärd som startar en läsare för PostScript-filer till endast PostScript-filargument. Med en sådan begränsning returnerar åtgärden ett felmeddelande om en icke-PostScript-fil anges.

Du kan begränsa åtgärder baserat på:

Begränsa åtgärder till en viss datatyp

Använd fältet ARG_TYPE för att ange vilka datatyper som åtgärden gäller för. Använd datanamnsattributet.

Du kan ange en lista med datatyper. Avgränsa posterna med kommatecken.

I följande åtgärdsdefinition antas till exempel att en GIF-datatyp har skapats.

ACTION Open_Gif
 {
 	TYPE					COMMAND
 	LABEL					"Visa Gif"
 	WINDOW_TYPE			NO_STDIO
 	ARG_TYPE				Gif
 	ICON					xgif
 	DESCRIPTION			Visar gif-filer.
 	EXEC_STRING			xgif
 }

Begränsa åtgärder med antalet argument

Använd fältet ARG_COUNT för att ange hur många argument som åtgärden ska acceptera. Giltiga värden är:

* (standard) – hur många argument som helst. Andra värden har företräde före *.

n – vilket icke-negativt heltal som helst, även 0.

>n – fler argument än n.

<n – färre argument än n.

Använd ARG_COUNT för att ange olika funktioner för åtgärdsikoner, beroende på om användaren dubbelklickar på ikonen eller släpper en fil på den. Se nästa avsnitt, ”Ange olika funktioner för dubbelklickning och släppning”.

Ange metod för dubbelklickning och släppfunktionen

Använd följande procedur för att skapa en åtgärd som accepterar en släppt fil, men inte frågar efter en fil när någon dubbelklickar på åtgärdsikonen.

  1. Skapa en åtgärdsdefinition för dubbelklickningsfunktionalitet.

    Använd fältet ARG_COUNT för att ange 0-argument. Använd en syntax för EXEC_STRING som inte accepterar släppta argument.

  2. Skapa en andra åtgärdsdefinition för släppfunktionen.

    Använd fältet ARG_COUNT för att ange >0-argument. Använd en syntax för EXEC_STRING som accepterar en släppt fil.

    Anta att följande två kommandorader kan användas för att starta en redigerare med namnet vedit:

    • Starta redigeraren utan filargument:

      	vedit
    • Starta redigeraren med ett filargument som öppnas som skrivskyddat dokument:

      	vedit -R filnamn
      

      Följande två åtgärder skapar släpp- och dubbelklickningsfunktionalitet för en funktion som heter Vedit. Den första åtgärden prioriteras när databasen letar efter en matchning, eftersom ARG_COUNT 0 är mer specifikt än ARG_COUNT * i definitionen av släppfunktionaliteten.

      # Funktionalitet vid dubbelklickning
       ACTION Vedit
       {
       	TYPE						COMMAND
       	ARG_COUNT				0
       	WINDOW_TYPE				PERM_TERMINAL
       	EXEC_STRING				vedit
       }
      
       # Funktionalitet vid släppning
       ACTION Vedit
       {
       	TYPE						COMMAND
       	WINDOW_TYPE				PERM_TERMINAL
       	EXEC_STRING				vedit -R %Arg_1%
       }

Begränsa åtgärder baserat på argumentläge

Använd fältet ARG_MODE för att ange läs- och skrivläge för argumentet. Giltiga värden är:

* (standard) – vilket läge som helst

!w – skrivskyddat

w – skrivbar