Solaris Common Desktop Environment: Handbok för systemadministratörer

Kapitel 16 Anpassa arbetsytehanteraren

I följande avsnitt beskrivs hur du anpassar skrivbordets arbetsytehanterare.

Arbetsytehanteraren är en fönsterhanterare som finns på skrivbordet. På samma sätt som andra fönsterhanterare hanterar den följande:

Arbetsytehanteraren hanterar dessutom följande skrivbordskomponenter:

Flera av dessa komponenter kan ändras med Inställningar. Med Inställningar går det snabbt och lätt att redigera sådant som du behöver ändra ofta. Övriga resurser måste anges manuellt.

Arbetsytehanteraren är dtwm. Den bygger på Motif-fönsterhanteraren.

Mer information om hur du anger resurser finns i "Ange programresurser".

Arbetsytehanterarens konfigurationsfiler

Arbetsytehanteraren hämtar information om Fönster-menyerna, arbetsytemenyerna samt knapp- och tangentkopplingar från en konfigurationsfil.

Den använder någon av följande filer:

Arbetsytehanteraren söker efter en konfigurationsfil enligt ovan nämnda ordning och använder den första som den hittar.

För användare som använder mer än ett sessionsspråk, kan en egen språkberoende konfigurationsfil med namnet Hemkatalog/.dt/språk/dtwrmc skapas. Den prioriteras över Hemkatalog/.dt/dtwmrc.

Skapa och ändra en egen konfigurationsfil

Den egna konfigurationsfilen för arbetsytehanteraren är Hemkatalog/.dt/dtwmrc. Om den här filen finns är det den som används.

  1. Dubbelklicka på Redigera Dtwmrc i tillbehörsgruppen Skrivbordsverktyg.

    Om det redan finns en egen dtwmrc-fil hämtas den till redigeraren. Annars kopieras sys.dtwmrc till Hemkatalog/.dt/dtwmrc och hämtas sedan till redigeraren.

  2. Redigera filen.

  3. Avsluta redigeraren.

    Filen sparas som din egen dtwmrc, oavsett ursprungskälla.

Skapa en systemtäckande konfigurationsfil

Den systemtäckande konfigurationsfilen för arbetsytehanteraren är /etc/dt/config/språk/sys.dtwmrc.

    Kopiera /usr/dt/config/språk/sys.dtwmrc till /etc/dt/config/språk/sys.dtwmrc.


Obs!

Den här filen används inte om Hemkatalog/.dt/dtwmrc finns.


Inkludera andra filer

    Använd syntaxen:

	include
 	{
   	   sökväg
  	   sökväg
 	  ...
 	}

Följande rader lägger t ex till filen /users/ellen/mymenu:

include
 	{
   	 /users/ellen/mymenu
 	}

Använd programsatserna Include när du vill skaffa ytterligare funktionalitet utan att hela konfigurationsfilen behöver kopieras. En användare vill kanske skapa en ny tangentkoppling utan att administrera hela konfigurationsfilen. Användaren skapar då filen Hemkatalog/.dt/dtwmrc med följande innehåll:

include
 {
  /etc/dt/config/C/sys.dtwmrc
 }
Keys DtKeyBindings
 {
   Alt<Key>F5 root  f.menu  Applications

 }
Menu Applications
 {
   "GraphicsApp" f.exec "/usr/bin/GraphicsApp/GApp"
   ...
 }

Starta om arbetsytehanteraren

Arbetsytehanteraren måste startas om för att ändringarna i konfigurationsfilen ska träda i kraft.

    Välj Starta om arbetsytehanteraren på menyn Arbetsyta (klicka på tredje musknappen när pekaren befinner sig över bakgrunden).

Anpassa arbetsytor

De flesta anpassningar av arbetsytor, t ex ändring av namn och antalet arbetsytor, kan göras av användaren med hjälp av skrivbordets gränssnitt. Arbetsytehanteraren omfattar dock resurser för att ange systemtäckande standardvärden.

Ändra antalet systemtäckande arbetsytor

Standardskrivbordskonfigurationen omfattar fyra arbetsytor. Användaren kan lägga till och ta bort arbetsytor med hjälp av menyerna som hör till arbetsyteomkopplaren.

I filen /usr/dt/app-defaults/C/Dtwm anges följande standardantal arbetsytor för resursen workspaceCount:

Dtwm*0*workspaceCount: 4
	Dtwm*workspaceCount:  1

Flera arbetsytor anges på skärm 0. Enstaka arbetsytor anges på övriga skärmar.

Du kan skapa filen /etc/dt/config/C/sys.resources (eller redigera den om den redan finns) för att ändra det förvalda antalet arbetsytor för alla nya användare på en arbetstation.

    Använd resursen 0*workspaceCount om du vill använda den förvalda systemtäckande inställningen på den primära skärmen:

    Dtwm*0*workspaceCount: tal
    

Följande resurs ställer in antalet systemtäckande arbetsytor på den primära skärmen till sex:

Dtwm*0*workspaceCount: 6

Mer information om hur du anger arbetsytehanterarens resurser finns i"Ange programresurser" .

Följande resurs ställer in antalet arbetsytor till sex:

	Dtwm*workspaceCount: 6

Namnge systemtäckande arbetsytor

Arbetsytor numreras internt med numreringskonventionen wsn, där n är 0, 1, 2 osv. De fyra standardarbetsytorna numreras internt från ws0 till ws3.

    Använd resursen title om du vill ändra namnet på en angiven arbetsyta:

	Dtwm*wsn: namn

Mer information om hur du anger arbetsytehanterarens resurser finns i "Ange programresurser".

Följande resurser kopplar de fyra förvalda arbetsytorna till de angivna namnen:

Dtwm*ws0*title:  Anna
Dtwm*ws1*title:  Dan
Dtwm*ws2*title:   Julia
Dtwm*ws3*title:   Patrik

Skapa ytterligare bakgrunder

  1. Skapa bakgrundsbilderna. De kan vara i bitmapps- eller pixmappsformat.

  2. Placera bakgrunden i någon av följande kataloger. (Du kanske först måste skapa katalogen.)

    • Systemtäckande bakgrunder: /etc/dt/backdrops

    • Egna bakgrunder: Hemkatalog/.dt/backdrops

  3. Välj Starta om arbetsytehanteraren på menyn Arbetsyta.

    Systemtäckande och egna bakgrunder läggs till de inbyggda bakgrunderna i /usr/dt/backdrops.

    Du kan ersätta en befintlig inbyggd bakgrund genom att skapa en egen eller systemtäckande bakgrund med samma namn.

Ersätta bakgrunden med en grafisk bild

Bakgrunder läggs som skikt ovanpå skärmens rotfönster. I dialogrutan Inställningar - Bakgrund finns inställningen NoBackdrop som gör bakgrunden genomskinlig.

Det finns bara ett rotfönster bakom alla arbetsytebakgrunder. Därför finns en grafisk bild som har placerats på rotfönstret kvar för alla arbetsytor. Du kan ange vilka arbetsytor som ska täcka rotfönstret med en bakgrund. Bilden som visas när NoBackdrop är aktivt är dock densamma för alla arbetsytor.

  1. Skapa den grafiska bilden.

    Bilden måste vara i ett format som det finns ett verktyg till för att den ska kunna visas i rotfönstret. Om du t ex tänker använda xsetroot, måste du skapa en bitmappsfil.

  2. Om den inte redan finns, skapar du den körbara filen Hemkatalog/.dt/sessions/sessionetc.

    Filen sessionetc körs varje gång som användaren loggar in.

  3. Placera kommandot som visar bilden i filen sessionetc.

    Följande kommando visar rotfönstret sida vid sida med angiven bitmappsfil:

    	xsetroot -bitmap /users/ellen/.dt/icons/root.bm

Arbetsytehanterarens menyer

Arbetsytehanteraren har tre standardmenyer:

menyn Arbetsyta - kallas även rotmenyn. Den visas när du trycker på musknapp 3 med pekaren placerad över bakgrunden. Menyn är kopplad till musknappen med en knappkoppling.

Fönster-menyn - menyn visas när användaren trycker ned musknapp 1 eller musknapp 3 med pekaren på fönstermenyknappen (i övre vänstra hörnet i fönsterramen). Menyn är kopplad till knappen med windowMenu-resursen.

Huvudgrupp-menyn - menyn visas när användaren trycker ned musknapp 1 eller musknapp 3 med pekaren på fönstermenyknappen i huvudgruppen.

Arbetsytehanterarens menysyntax

Arbetsytehanterarens menyer har följande syntax:

Menu Menynamn
 {
    val1 [kortkommando] [snabbkommando] funktion [argument]
    val2 [kortkommando] [snabbkommando] funktion [argument]
    ...
 }

där:

val är den text eller bitmappsbild som visas på menyn. Om texten innehåller blanksteg innesluter du texten med citattecken. För bitmappsbilder använder du syntaxen @/sökväg.

kortkommando är ett tecken som fungerar som ett snabbkommando när menyn visas. Det anges enligt mönstret _tecken.

snabbkommando - ett kortkommando som är aktiverat även om inte menyn visas. Snabbkommandon har följande syntax: modifieringstangent<Tangent> Tangentnamn. Modifieringstangenterna är Ctrl, Skift, Alt (tecken) eller Skiftlås. En lista över alla tangentnamn finns i filen keysymdef.h i katalogen "X11 include".

funktion - den funktion som ska utföras när markeringen har gjorts. En lista över funktioner finns i direkthjälpsavsnittet dtwmrc (4).

argument - funktionsargument. Se sidan (4) i dtwmrc för mer utförlig information.

Följande objekt med etiketten Återställ återställer fönstret. När menyn visas kan du återställa fönstret genom att trycka på "R". Du kan även återställa fönstret genom att trycka på Extend char F5.

Restore   _R   Alt<Key> F5   f.normalize

Obs!

Fullständig information om arbetsytehanterarens menysyntax hittar du i direkthjälpsavsnittet dtwmrc (4).


Så här lägger du till ett nytt menyalternativ på menyn Arbetsyta

  1. Klicka på kontrollen Lägg till objekt på meny på panelundermenyn Verktyg i huvudgruppen.

    Dialogrutan Lägg till objekt på menyn Arbetsyta visas.

    Graphic

  2. Skriv en fullständig sökväg, eller klicka på Bläddra och markera sökvägen till den fil som du vill att det nya menyalternativet ska köra.

    Den fil som du använder bör vara tillgänglig för den aktuella värden. Den måste vara en körbar fil eller en fil av en datatyp som är registrerad hos värden (t ex ljud eller direkthjälp).

    Den fullständiga sökvägen med filnamnet visas i textrutan.

  3. Klicka på Lägg till om du vill lägga till filen på menyn.

    Filen läggs till på den första platsen på menyn Arbetsyta. Standardikonen för filen (om den har en sådan) och filnamnet används som ikon och text i menyalternativet.


Obs!

Information om hur du ändrar menyalternativets placering på menyn Arbetsyta finns i "Så här anpassar du menyn Arbetsyta".


Så här anpassar du menyn Arbetsyta

  1. Klicka på kontrollen Anpassa menyn Arbetsyta på panelundermenyn Verktyg i huvudgruppen.

    I filhanteraren visas konfigurationsmappen för menyn Arbetsyta. Observera att filerna i den här mappen representerar alla menyalternativ, och undermapparna representerar undermenyerna. Genom att ordna innehållet i mappen ändrar du ordningen på menyn Arbetsyta.

    Graphic

  2. Dra ett menyalternativ som du vill flytta och släpp det där du vill placera det.

    Information om hur du använder filhanteraren i trädvyläge finns i Solaris Common Desktop Environment: Användarhandbok.

  3. Ta bort menyalternativ som du inte vill använda genom att dra motsvarande filer till papperskorgen i huvudgruppen.

  4. Du kan också byta namn på menyalternativ genom att redigera fil- eller mappnamnen.

  5. När du är nöjd med ändringarna väljer du Uppdatera menyn Arbetsyta på Fil-menyn i filhanteraren och avslutar sedan filhanteraren.

    På menyn Arbetsyta visas nu de ändringar som du har gjort i mappen för menyn Arbetsyta.

Skapa en ny Arbetsyta-meny

  1. Öppna en lämplig fil för redigering:

  2. Skapa den nya menyn:

    	Menu menynamn
     	{
     	        ...
     	}

    Se "Arbetsytehanterarens menysyntax".

  3. Skapa eller redigera knappkopplingarna för att visa den nya menyn.

    Om menyn ersätter den befintliga menyn redigerar du knappkopplingen som visar menyn Arbetsyta.

    	<Btn3Down> root  f.menu  menynamn
    

    Om menyn är en tilläggsmeny skapar du en ny musknappskoppling. Den följande knappkopplingen visar menyn när Skift och musknapp 3 hålls ned över bakgrunden:

    	Shift<Btn3Down> root  f.menu  menynamn
    
  4. Välj Starta om arbetsytehanteraren på menyn Arbetsyta.

Skapa en ny Fönster-meny


Obs!

Fönster-menyn är inbyggd i arbetsytehanteraren och anpassas normalt inte. Om du vill att fönstrens uppträdande i de olika programmen ska vara konstant bör du inte ändra inställningarna på Fönster-menyn.


  1. Öppna en lämplig fil för redigering:

  2. Skapa den nya menyn:

    	Menu menynamn
     	{
     	        ...
     	}
  3. Använd resursen windowMenu för att ange den nya menyn:

    	Dtwm*windowMenu: menynamn
    
  4. Välj Starta om arbetsytehanteraren på menyn Arbetsyta.

Anpassa knappkopplingar

Med en musknappkoppling kopplas en musknapp, eventuellt tillsammans med en modifieringstangent, till en fönsterhanterarfunktion. Knappkopplingar gäller i alla arbetsytor.

Skrivbordets standardknappkopplingar definieras i konfigurationsfilen för arbetsytehanteraren i en knappkopplingsuppsättning som heter DtButtonBindings:

Buttons DtButtonBindings
 {
   ...
 }

Syntax för knappkoppling

Syntaxen för knappkoppling är:

Buttons Knappkopplingsnamn
 {
     [ändringsbar_parameter]<knappnamnMusåtgärd>   kontext  funktion  [argument]
     [ändringsbar_parameter]<knappnamnMusåtgärd>   kontext  funktion  [argument]

där:

knappnamn - Btn1 är vänster musknapp, Btn2 är mittenknappen (mus med tre knappar) eller båda knapparna (mus med två knappar), Btn3 är höger musknapp, Btn4 är knapparna 1 och 2 tillsammans på en mus med tre knappar och Btn5 är knapparna 2 och 3 tillsammans på en mus med tre knappar

ändringsbar_parameter - Ctrl, Shift (Skift), Alt och Lock (Skiftlås)

musåtgärd - Down - hålla ned en musknapp, Up släppa en musknapp, Click trycka på och släppa en musknapp, Click2 dubbelklicka med en musknapp och Drag dra musen medan du håller ned musknappen

kontext - visar var pekarens måste vara placerad för att kopplingen ska fungera. Dela upp innehållet med tecknet "|".

root - arbetsytefönstret, window - klientfönster eller klientfönsterram, frame - fönsterram utan innehåll, icon - ikon, title - namnlist och app - klientfönster (utan ramen)

funktion - en av arbetsytehanterarens funktioner. En lista över giltiga funktioner finns i direkthjälpsavsnittet dtwmrc (4).

argument - funktionsargument för fönsterhanteraren som behövs. Mer information finns i direkthjälpsavsnittet dtwmrc (4).

Följande rad gör t ex att menyn som beskrivs i DtRootMenu visas när musknapp 3 trycks ned och pekaren är i arbetsytefönstret (men inte i ett klientfönster).

<Btn3Down>      root     f.menu     DtRootMenu

Obs!

Fullständig information om syntax för knappkopplingar hittar du i dtwmrc(4) i direkthjälpen.


Lägga till knappkopplingar

  1. Öppna en lämplig fil för redigering:

  2. Lägga till knappkopplingen i DtButtonBindings-definitionen

    Koppla inte samma knapp till olika funktioner och koppla inte fler än en funktion till samma knapp eller sammanhang.

  3. Välj Starta om arbetsytehanteraren på menyn Arbetsyta.

Skapa nya knappkopplingsuppsättningar

  1. Öppna en lämplig fil för redigering:

  2. Skapa en ny knappkopplingsuppsättning. Se "Syntax för knappkoppling".

  3. Ange det nya namnet i resursen buttonBindings:

    	Dtwm*buttonBindings: Knappbindningsnamn 
    
  4. Välj Starta om arbetsytehanteraren på menyn Arbetsyta.


    Obs!

    De nya knappkopplingarna ersätter de befintliga. Kopiera de knappkopplingar som du vill behålla från DtButtonBindings.


Anpassa tangentkopplingar

Med en tangentkoppling (kallas också tangenttilldelning) kopplas olika kombinationer av tangentnedtryckningar till funktioner i arbetsytehanteraren. Tangentkopplingar gäller för alla arbetsytor.


Obs!

Använd inte en vanlig tangentkombination som tangentkoppling. Om du trycker på Skift+A infogas vanligen bokstaven "A" i det aktuella fönstret. Om du kopplar Skift+A till en funktion förlorar du möjligheten att skriva "A".


Förinställda tangentkopplingar för skrivbordet

De förinställda tangentkopplingarna anges i konfigurationsfilen för arbetsytehanteraren i en tangentkopplingsuppsättning som heter DtKeyBindings:

Keys DtKeyBindings
 {
  ...
 }

Syntax för tangentkopplingar

Syntaxen för tangentkopplingar är:

Keys Tangentbindningsnamn
 {
    [ändringsbara_parametrar]<Key>tangentnamn   kontext   funktion  [argument]
    [ändringsbara_parametrar]<Key>tangentnamn   kontext   funktion  [argument]
    ...    
 }

där:

Ändringsbara_parametrar - Ctrl, Shift (Skift), Alt och Lock (Skiftlås). Flera styrtangenter är tillåtna, dela av dem med blanksteg.

tangentnamn är tangenten som funktionen kopplas till. Namnet på tangenter med bokstäver eller siffror står oftast på tangenten. Tangenten "a" heter till exempel "a" och "2"-tangenten heter "2". Tab-tangenten heter "Tab". F3-tangenten heter "F3".

För övriga tangenter skrivs namnet oftast ut, till exempel plus för "+"-tangenten. Filen keysymdef.h, som finns i en systemberoende katalog, innehåller mer information om tangentnamn.

kontext - det element som måste vara aktivt för att operationen ska fungera. De kan slås ihop om kopplingen ska gälla i mer än ett sammanhang. Olika sammanhang delas upp med tecknet "|".

root - arbetsytebakgrund, window - klientfönster och icon - ikon

funktion - en av arbetsytehanterarens funktioner. En lista över giltiga funktioner finns i direkthjälpsavsnittet dtwmrc (4).

argument - funktionsargument för fönsterhanteraren som behövs. Mer information finns i direkthjälpsavsnittet dtwmrc (4).

Följande tangentkoppling gör att användaren kan byta tangentbordsfokus till nästa fönster i ett program genom att trycka på Alt+F6.

Alt<Key>F6     window     f.next_key     transient

Obs!

Om du behöver mer information om syntax för tangentkopplingar läser du dtwmrc(4) i direkthjälpen.


Skapa en anpassad tangentkopplingsuppsättning

  1. Öppna en lämplig fil för redigering:

  2. Skapa en ny tangentkopplingsuppsättning med ett unikt namn (Tangentbindningsnamn). Använd skrivbordets förinställda tangentkopplingsuppsättning, DtKeyBindings, som förebild.

  3. Ange namnet på den nya uppsättningen i resursen keyBindings:

    	Dtwm*keyBindings: Tangentbindningsnamn 
    
  4. Välj Starta om arbetsytehanteraren på menyn Arbetsyta.


    Obs!

    De nya tangentkopplingarna ersätter de befintliga tangentkopplingarna. Kopiera de tangentkopplingar som du vill behålla från DtKeyBindings till den nya uppsättningen.


Växla mellan förinställda och egna uppsättningar

Växla mellan Motif-standardfunktioner och CDE-funktioner för skrivbordsfönster:

  1. Tryck på Alt+Skift+Ctrl+!

  2. Klicka på OK i dialogrutan.

    Om du växlar till den förinställda metoden tas huvudgruppen samt de anpassade tangent- och knappkopplingarna bort.