Common Desktop Environment: Användarhandbok för systemadministratörer

Kapitel 5 Registrera ett program

Det här kapitlet beskriver hur du skapar ett registreringspaket för ett program och hur du registrerar programmet.

När ett program är helt registrerat på skrivbordet har det:

Programregistrering är en icke inträngande åtgärd i programmet:

Du kan behöva skapa ett registreringspaket om du är:

Programregistrering - översikt

I det här avsnittet förklaras:


Obs!

Ett utförligt exempel som visar hur du registrerar ett befintligt program finns i "Exempel på hur du kan skapa ett registreringspaket".


Funktioner som medföljer programregistrering

Programregistrering erbjuder ett grafiskt sätt för användare att:

Figur 5-1 Programgrupper på översta nivån i Programhanteraren

Graphic

Figur 5-2 En programgrupp som innehåller en ikon som startar programmet

Graphic

Figur 5-3 En datafils snabbmeny med "Öppna" and "Skriv ut"

Graphic

Syftet med programregistrering

Ett registrerat skrivbordsprogram innehåller vissa konfigurationsfiler som används av skrivbordet för att visa programmets användargränssnitt:

För att dessa filer ska kännas igen och användas av skrivbordet måste de finnas i vissa mappar som anges i skrivbordets sökvägar.

Det kan vara svårt att administrera ett program om dess konfigurationsfiler är utspridda i flera mappar. Därför kan ett program lagra alla skrivbordskonfigurationsfiler i en och samma mapp. Den här grupperingen av filer kallas registreringspaket.

Om programmet är skrivbordsanpassat innehåller det ett registreringspaket som en del av installationspaketet. Om du är systemadministratör och skapar konfigurationsfilerna själv kan du skapa registreringspaketet själv.

Konfigurationsfilerna i registreringspaketet är inte tillgängliga på skrivbordet eftersom de inte finns i lämpliga sökvägsmappar. Processen att placera de här filerna på lämpliga adresser kallas registrering eller integrering av programmet.

På skrivbordet finns ett verktyg, dtappintegrate, som utför registreringen genom att skapa symboliskt länkade representationer av filerna i de korrekta sökvägsmapparna.

Många skrivbordsanpassade program kör dtappintegrate automatiskt under installationen. Om du är systemadministratör och integrerar ett befintligt program kan du köra det själv när du har skapat registreringspaketet.

När ett program är registrerat på ett systems skrivbord är programmet tillgängligt för alla användare i systemet. Om systemet är konfigurerat som en skrivbordsprogramserver blir programmet också tillgängligt i andra system i nätverket.

Verktyget dtappintegrate har ett kommandoradsalternativ som upphäver processen genom att bryta länkarna. Detta gör det enkelt att ta bort programmet från Programhanteraren så att det kan flyttas till en annan programserver eller uppdateras.

Generella steg för registrering av program


Obs!

Ett utförligt exempel på hur du kan använda de här stegen för att skapa ett programpaket finns i "Exempel på hur du kan skapa ett registreringspaket".


  1. Ändra alla programresurser som anger teckensnitt och färger. Annars kommer inte skrivbordets dynamiska teckensnitt och färger att fungera korrekt.

    Se "Steg 1: Ändra teckensnitts- och färgresurser".

  2. Skapa en rotadress för programmet.

    Se "Steg 2: Skapa skrivbordsprogrammets rot".

  3. Skapa mappstrukturen under programroten.

    Se "Steg 3: Skapa registreringspaketets mappar"

  4. Skapa funktionerna och datatyperna för programmet.

    Se "Steg 4: Skapa funktionerna och datatyperna för programmet".

  5. Placera hjälpfilerna i lämplig mapp.

    Se "Steg 5: Placera hjälpfilerna i registreringspaketet".

  6. Skapa ikonerna för programmet

    Se "Steg 6: Skapa ikoner för programmet".

  7. Skapa programgruppen för programmen.

    Se "Steg 7: Skapa programgruppen".

  8. Registrera programmet med hjälp av dtappintegrate.

    Se "Steg 8: Registrera programmet med hjälp av dtappintegrate".

Steg 1: Ändra teckensnitts- och färgresurser


Obs!

Ett exempel på hur du kan ändra resurser för ett program finns i Steg 1 i "Exempel på hur du kan skapa ett registreringspaket".


Skrivbordet tillhandahåller mekanismer för att ange och ändra gränssnittsteckensnitt och fönsterfärger. För att ett program ska kunna använda de här mekanismerna korrekt kan du behöva ändra programmets programstandardfiler.

Ändra teckensnittsresurser


Obs!

Det här avsnittet gäller program som är skapade med OSF/Motif 1.2(TM) (eller senare versioner). Inställningar kan inte ange gränssnittsteckensnitt för program som är skrivna med tidigare versioner av OSF/Motif.


Inställningar på skrivbordet anger gränssnittsteckensnitt för program som är skrivna med OSF/Motif 1.2 (eller senare versioner) om programmet inte anger programspecifika gränssnittsteckensnitt.

Inställningar tillhandahåller två teckensnitt:

systemteckensnitt - används i systemområden som t ex etiketter, menyer och knappar

användarteckensnitt - används i redigerbara områden, t ex textfält

Varje tillhandahålls i sju storlekar, med etiketten 1 t o m 7 i dialogrutan Teckensnitt. Teckensnitten i Inställningar är anslutna till faktiska teckensnitt i systemet via Inställningar som anges i /usr/dt/app-defaults/språk/Dtstyle.

Om du vill att programmet ska använda teckensnitten i Inställningar, bör du ta bort alla programresurser som anger teckensnitt för gränssnittet. Skrivbordet anger automatiskt korrekta programresurser:

*FontList - ange som systemteckensnitt

XmText*FontList - ange som användarteckensnitt

XmTextField*FontList - ange som användarteckensnitt

Ändra färgresurser

Inställningar erbjuder möjlighet att ändra programfärger dynamiskt. Programmet måste vara en OSF/Motif 1.1- eller OSF/Motif 1.2-klient. Klienter som skrivs med andra verktygslådor kan inte ändra färg dynamiskt. Färgändringarna träder i kraft när klienten startas om.

Det enklaste sättet att använda de dynamiska färger som tillhandahålls av skrivbordet är att ta bort alla programfärgresurser för bakgrunds- och förgrundsfärg.

Steg 2: Skapa skrivbordsprogrammets rot


Obs!

Ett exempel på hur du kan skapa en rotmapp för ett skrivbordsprogram finns i Steg 2 i "Exempel på hur du kan skapa ett registreringspaket".


Registreringspaketets filer för programmet är grupperade under en mapp som kallas programrot, eller programrot. Mappen programrot som används för skrivbordskonfigurationsfilerna kan vara samma mapp som programmets installations-programrot eller någon annan mapp.

Anta exempelvis att ett program är installerat under mappen /usr/BTE. Samma mapp kan användas som programrot för skrivbordskonfigurationsfilerna. Om du däremot integrerar ett befintligt program som inte är skrivbordsanpassat, skapar du en annan programrot-mapp för skrivbordet. Det här förhindrar att konfigurationsfilerna som du skapar blir överskrivna när du uppdaterar programmet.

En systemadministratör kan t ex vilja skapa en mapp som heter /etc/desktop_approots/BTE som skrivbordets programrot-mapp.

Steg 3: Skapa registreringspaketets mappar


Obs!

Ett exempel på hur du kan skapa registreringspaketmappar för ett program finns i Steg 3 i "Exempel på hur du kan skapa ett registreringspaket".


Registreringspaketet är den grupp med skrivbordskonfigurationsfiler som används av skrivbordet för att tillhandahålla ett grafiskt gränssnitt för programmet.

Registreringspaketet - innehåll

Skrivbordskonfigurationsfilerna innehåller:

Figur 5-4 Ett registreringspaket under en programrotsmapp

Graphic

Huvudkategorierna av konfigurationsfält under mappen programrot/dt/appconfig visas i Tabell 5-1.

Tabell 5-1 Konfigurationsfält - huvudkategorier

Undermapp 

Innehåll 

types

Filer för funktions- och datatypsdefinitioner 

help

Skrivbordshjälpfiler 

icons

Bitmapp- och bildpunktsbeskrivningsfiler som används av programmets funktioner och datatyper 

appmanager

Mappen och innehållet som skapar programgruppen 

Var och en av huvudkategorierna har undermappar för språkberoende filer. Filer på standardspråket placeras i mappen C

Skapa registreringspaketet

    Skapa de här mapparna. Om du tillhandahåller språkberoende konfigurationsfiler skapar du en separat mapp för varje språk. Om du bara tillhandahåller ett språk placerar du filerna i mappen C.

Figur 5-5 Programgrupp på högsta nivån i Programhanteraren

Graphic

Verktyget dtappintegrate fungerar bara på skrivbordskonfigurationsfilerna i mapparna types, help, icons och appmanager. Programmets binära körbara programstandardfiler och meddelandemappfiler administreras separat.

Steg 4: Skapa funktionerna och datatyperna för programmet


Obs!

Ett exempel på hur du kan skapa funktionerna och datatyperna för ett program finns i Steg 4 i "Exempel på hur du kan skapa ett registreringspaket".


Funktioner och datatyper tillhandahåller ett användargränssnitt för programmet.

Nödvändiga funktioner och datatyper för ett program

Ett typiskt program kan kräva följande funktions- och datatypsdefinitioner:

Adress för konfigurationsfiler för funktions- och datatypsdefinitioner

Funktioner och datatyper definieras i konfigurationsfiler. Det enda namnkravet för filer som innehåller funktions- och datatypsdefinitioner är att de måste ha ett .dt-suffix. Du kan vilja namnge filen konventionsenligt till funktionsnamn.dt eller prognamn.dt.

Placera filer som innehåller funktioner och datatyper under programroten i mappen programrot/dt/appconfig/types/språk. Standardbeskrivningen för språk är C.

Figur 5-6 Filer med funktions- och datatypsdefinitioner

Graphic

Olika sätt att skapa funktioner och datatyper

Du kan skapa funktions- och datatypsdefinitioner för ett program på två sätt:

Skapa funktioner och datatyper med hjälp av Skapa funktion

Den här proceduren använder hjälpmedlet Skapa funktion för att skapa funktioner och datatyper för programmet.

Mer information om Skapa funktion finns i direkthjälpen och i Kapitel 11.

  1. Öppna programgruppen Skrivbordsprogram och dubbelklicka på Skapa funktion.

  2. Använd Skapa funktion för att skapa funktions- och datatypsdefinitioner för programmet och dess datatyp.

    Konfigurationsfilen som skapas av Skapa funktion kommer att skrivas till Hemmapp/.dt/types/funktionsnamn.dt. Funktionsfilen (den körbara filen med samma namn som funktionen) placeras i din hemmapp.

  3. Testa funktionen med hjälp av funktionsfilen som har skapats i din hemmapp.

  4. Kopiera funktionsdefinitionsfilen Hemmapp/.dt/types/funktionsnamn.dt till mappen programrot/dt/appconfig/types/språk .

  5. När programgruppsmappen har skapats (se "Steg 7: Skapa programgruppen") kopierar du funktionsfilen Hemmapp/funktionsnamn till mappen programrot/dt/appconfig/appmanager/språk/proggrupp.

Skapa funktioner och datatyper manuellt

    Skapa en konfigurationsfil som innehåller funktions- och datatypsdefinitioner för programmet.

Funktions- och datatypsdefinitionsfilerna måste följa namnkonventionen namn.dt.

Du kan placera alla funktions- och datatypsdefinitioner i en fil eller distribuera dem bland flera filer. För varje fil använder du ett filnamn som systemadministratörer enkelt kopplar till ditt program.

Funktions- och datatypsnamn måste bestå av ett ord (inga inbäddade blanksteg). Du kan använda ett understrykningstecken. Enligt konventionen är den första bokstaven i funktions- eller datatypsnamnet versal. Använd inte ett befintligt funktionsnamn eller filnamn. Använd ett namn som avancerade användare och systemadministratörer enkelt kopplar till ditt program.

Om du vill att programmets ikon ska ha ett annat namn än funktionsnamnet inkluderar du fältet LABEL i funktionsdefinitionen.

Mer information om hur du skapar funktioner och datatyper finns i:

Steg 5: Placera hjälpfilerna i registreringspaketet


Obs!

Ett exempel på hur du kan lägga till hjälpfiler i ett registreringspaket finns i Steg 5 i "Exempel på hur du kan skapa ett registreringspaket".


Om programmet innehåller en skrivbordshjälpvolym (en hjälpvolym som är skapad med skrivbordets Help Developer's Kit), bör hjälpvolymens huvudfil (*.sdl) placeras i mappen programrot/appconfig/help/språk.

Grafik som används av hjälpfilerna placeras vanligen i undermappen graphics. Grafiken måste finnas i samma mapp relativt huvudhjälpvolymens (*.sdl)-fil som när hjälpvolymen skapades.

Om programmet inte innehåller en hjälpvolym kan du skapa en sådan, om du har tillgång till Help Developer's Kit.

Det finns två integrationsnivåer för en hjälpvolym:

Steg 6: Skapa ikoner för programmet


Obs!

Ett exempel på hur du kan skapa ikonfiler för ett program finns i Steg 6 i "Exempel på hur du kan skapa ett registreringspaket".


Skrivbordet tillhandahåller standardikoner för funktioner, datatyper och programgrupper. Troligen vill du emellertid skapa unika ikoner för programmet.

Ikoner placeras i mappen programrot/dt/appconfig/icons/språk.

Nödvändiga ikoner för skrivbordet

Programmet använder de här ikonbilderna på skrivbordet:

Tabell 5-2 Namnkonventioner för ikonfiler

storlek 

Bildpunktsstorlek 

Bitmappsnamn 

Bildpunktsmönster 

mycket liten 

16 gånger 16 

basnamn.t.bm

basnamn.t.pm

medelstor 

32 gånger 32 

basnamn.m.bm

basnamn.m.pm

stor 

48 gånger 48 

basnamn .l.bm

basnamn.l.pm

Om du inte tillhandahåller bitmappsfiler anger skrivbordet färgspecifikationerna för bildpunktsbeskrivningsfilerna till svartvitt. Det är dock möjligt att den här tilldelningen inte ger det utseende du vill ha.

Mer information om ikoner finns i "Ikonbildsfiler".

Steg 7: Skapa programgruppen


Obs!

Ett exempel på hur du skapar en programgrupp finns i Steg 7 i "Exempel på hur du kan skapa ett registreringspaket".


När du har skapat funktions- och datatypsdefinitionerna för programmet måste du skapa konfigurationsfilerna som ska skapa det som användaren ser på skärmen - programgruppen och dess innehåll.

Programgruppen är en mapp på högsta nivån i Programhanteraren (se Figur 5-1).

Du skapar programgruppen i tre steg:

Skapa programgruppsmappen

Om du vill skapa en programgrupp skapar du mapparna i registreringspaketet under appmanager, som det visas i Figur 5-7.

Figur 5-7 Mappen appmanager

Graphic

Programgruppnamn

<programgruppnamn> i Figur 5-7 är namnet på programgruppen.

Figur 5-8 Programgruppnamnet (<programgruppnamn>)

Graphic

Namnet kan vara ett valfritt tillåtet fil- eller mappnamn. Använd ett namn som beskriver programmet.

Konfigurera programgruppen så att den använder en unik ikon

Skrivbordet tillhandahåller en standardikon för programgrupper. Troligen vill du emellertid använda en anpassad ikon.

Om du vill använda en unik ikon för programgruppen måste du skapa:

Figur 5-9 Hur en programgrupp får en unik ikon

Graphic

Du bör också skapa en Open- och Print-funktion för programgruppens datatyp:

ACTION Open
 {
 	ARG_TYPE			MediaverktygProggrupp
 	TYPE				MAP
 	MAP_ACTION		OpenAppGroup
 }
ACTION Print
 {
 	ARG_TYPE			MediaverktygProggrupp
 	TYPE				MAP
 	MAP_ACTION		PrintAppGroup
 }

OpenAppGroup- och PrintAppGroup är inbyggda funktioner som finns definierade i /usr/dt/appconfig/types/språk/dtappman.dt.

Skapa innehållet i programgruppen

Det viktigaste elementet i programgruppen är den ikon som startar programmet (en funktionsikon). Om programgruppen innehåller en uppsättning program finns det vanligen en ikon för varje program.

Förutom en eller flera funktionsikoner kan programgruppen innehålla:

Skapa funktionsfilen (programikon)

Programgruppen bör innehålla en ikon som startar programmet. Om gruppen tillhandahåller en uppsättning program bör det finnas en ikon för varje program. De här ikonerna kallas programikoner eller funktionsikoner eftersom de representerar en underliggande funktion.

Du skapar en funktionsikon genom att skapa en körbar fil med samma namn som funktionen den kommer att köra:

programrot/dt/appconfig/appmanager/proggrupp/funktionsnamn

Filen kallas en funktionsfil eftersom dess syfte är att skapa en visuell representation av den underliggande funktionen.

Om du t ex har skapat en funktion som heter BästaTextredigerare som kör programmet BästaTextredigerare, skapar du en körbar fil som heter BästaTextredigerare. I Filhanteraren och Programhanteraren använder funktionsfilen ikonbilden som anges i funktionsdefinitionen.

Figur 5-10 illustrerar förhållandet mellan funktionsdefinitionen, funktionsfilen och faktiska inmatningar i programhanterarfönstret.

Figur 5-10 Programikonen är en fil i programgruppen

Graphic

Readme-filer

Till skrivbordet finns datatypen README som du använder till programmets README-filer. Uttrycket Readme förknippas oftast med något som är viktigt, dvs en fil eller något som ska läsas så snart som möjligt. Använd en av följande namngivningskonventioner:

Skapa en särskild kontroll för Frontpanelen

För det mesta behöver du inte tillhandahålla en kontrolldefinition för Frontpanelen. Användaren kan lägga till programmet i Frontpanelen genom att släppa funktionsikonen på installationsikonen på en panelundermeny.

Du kan vilja skapa en konfigurationsfil för Frontpanelen som innehåller en kontrolldefinition för programmet, om du vill att användare ska kunna installera en kontroll som fungerar annorlunda än funktionsikonen - om exempelvis kontrollen övervakar en fil och ändrar utseende när den övervakade filen ändras.

Frontpanelens konfigurationsfiler placeras i mappen programrot/dt/appconfig/types/språk. Namnkonventionen är namn.fp.

Om du tillhandahåller en konfigurationsfil som innehåller en kontroll kan användaren lägga till kontrollen i en panelundermeny genom att släppa filen *.fp på installationsikonen på panelundermenyn.

Följande definition kan exempelvis placeras i en konfigurationsfil på Frontpanelen i programgruppen. Om användaren släpper den här filen på en installationsikon på en panelundermeny skapas en kontroll i panelundermenyn, som kör en upplaga av programmet BästaTextredigerare. Om BästaTextredigerare redan körs flyttas fönstret högst upp i fönsterstacken på den aktuella arbetsytan.

CONTROL BästaTextredigerareKontroll
 {
 	TYPE						icon
 	ICON						BTEFPanel	
 	PUSH_RECALL				True
 	CLIENT_NAME				BTEd
 	PUSH_ACTION				BTEditor
 	DROP_ACTION				BTEditor
 	HELP_STRING				Startar programmet BästaTextredigerare.
 }

Mer information om hur du skapar konfigurationsfiler för Frontpanelen finns i:

Steg 8: Registrera programmet med hjälp av dtappintegrate


Obs!

Ett exempel på hur du kan registrera ett program finns i Steg 8 i "Exempel på hur du kan skapa ett registreringspaket".


När du har skapat ett registreringspaket under en programrot kan du utföra själva programregistreringen.

Programregistrering skapar länkar mellan registreringspaketet och mapparna som finns i skrivbordets sökvägar (se "Hur dtappintegrate integrerar program").

Registrera ett program med dtappintegrate

Om programmet är skrivbordsanpassat körs vanligen dtappintegrate automatiskt som sista steg i installationsprocessen. Om det inte körs automatiskt, eller om du har skapat konfigurationsfiler för att integrera ett icke skrivbordsanpassat program, kan du köra dtappintegrate manuellt.

  1. Logga in som root.

  2. Kör kommandot:

    	/usr/dt/bin/dtappintegrate -s  programrot
    

    där programrot är skrivbordets programrotsmapp. Mer information finns i direkthjälpen (man) till dtaction(1).

  3. Öppna programgruppen Skrivbordsverktyg och dubbelklicka på Ladda om funktioner.

  4. Kontrollera att programmet är korrekt registrerat:

    1. Visa översta nivån i Programhanteraren. Den nya programgruppen ska visas i Programhanteraren.

    2. Öppna programgruppen och dubbelklicka på funktionsikonen.

Syntax och alternativ för dtappintegrate

dtappintegrate -s programrot [-t målsökväg ] [-l språk ] [-u]

-s programrot

Nödvändig parameter som anger programroten under vilken programmet är installerat. 

-t målsökväg

Valfri parameter. Som standard är systemadressen /etc/dt/appconfig. Anger adressen dit skrivbordets konfigurationsfiler är länkade. Du måste använda en adress i programmets sökväg.

-l språk

Valfri parameter. Som standard alla språk. Anger vilka språkberoende skrivbordskonfigurationsfiler som ska integreras. 

-u

Valfri parameter, avintegrerar programmet och tar bort alla länkar som skapades under integreringen. 

Hur dtappintegrate integrerar program

Funktionen hos dtappintegrate är att skapa länkar mellan de installerade filerna och adresserna där skrivbordet letar efter konfigurationsfiler.

Funktioner och datatyper

dtappintegrate skapar symboliska länkar från funktions- och datatypsdefinitionsfilerna i registreringspaketet till den systemtäckande mappen längs funktionsdatabasens hjälpsökväg. Detta åstadkoms genom att länkar skapas från

programrot/dt/appconfig/types/språk*.dt

till

/etc/dt/appconfig/types/språk*.dt.

Hjälpinformationsfiler

dtappintegrate skapar symboliska länkar från hjälpfilerna i registreringspaketet till den systemtäckande mappen längs hjälpsökvägen. Detta åstadkoms genom att länkar skapas från

programrot/dt/appconfig/help/språk/hjälpfil.sdl

till

/etc/dt/appconfig/icons/språk/hjälpfil.sdl.

Ikonfiler

dtappintegrate skapar symboliska länkar från ikonfilerna i registreringspaketet till den systemtäckande mappen längs ikonsökvägen. Detta åstadkoms genom att länkar skapas från

programrot/dt/appconfig/icons/språk/ikonfiler

till

/etc/dt/appconfig/icons/språk/ikonfiler. 

Programgrupp

För att placera programgruppen för programmet på översta nivån i Programhanteraren skapar dtappintegrate en länk mellan programgruppsmappen i registreringspaketet och den systemtäckande adressen längs programmets sökväg. Detta åstadkoms genom att länkar skapas från mappen

programrot/dt/appconfig/appmanager/språk/proggrupp

till

/etc/dt/appconfig/appmanager/språk/proggrupp.

Exempel på hur du kan skapa ett registreringspaket

Följande steg skapar ett registreringspaket för ett befintligt, icke skrivbordsanpassat program som heter BästaTextredigerare.

Information om "BästaTextredigerare"

I exemplet görs följande antaganden om programmet BästaTextredigerare:

Steg för att registrera "BästaTextredigerare"

Följande stegvisa procedur registrerar BästaTextredigerare.

  1. Ändra teckensnitt- och färgresurser.

    I BästaTextredigerares app-defaults-fil tar du bort resurser som anger:

    • Teckensnitt för text

    • Färger för förgrund och bakgrund

  2. Skapa programroten.

    Skapa mappen:

    	/desktop_approots/BTE

    Om du integrerar ett befintligt program bör du skapa programrotsmappen någon annanstans än på installationsplatsen för programmet. Annars kan konfigurationsfilerna som du skapar tas bort när du uppdaterar programmet.

  3. Skapa registreringspaketets mappar.

    Skapa följande mappar:

     	/desktop_approots/BTE/dt/appconfig/types/C
     	/desktop_approots/BTE/dt/appconfig/help/C
     	/desktop_approots/BTE/dt/appconfig/icons/C
     	/desktop_approots/BTE/dt/appconfig/appmanager/C/BästaTextredigerare
  4. Skapa funktionerna och datatyperna för programmet.

    1. Skapa konfigurationsfilen för funktions- och datatypsdefinitionerna:

      		/desktop_approots/BTE/dt/appconfig/types/C/BTE.dt
    2. Skapa funktionsdefinitionen för att köra BästaTextredigerare:

      		ACTION BTEditor
       		{
       				WINDOW_TYPE				NO_STDIO
       				ICON						BTERun
       				DESCRIPTION				Dubbelklicka på den här ikonen eller släpp \
       											en BTE-datafil på den för att köra \
       											BästaTextredigerare.
       				EXEC_STRING				/usr/BTE/BTEd %Arg_1%
       		}
    3. Skapa datatypen för *.bte-filer:

      		DATA_ATTRIBUTES BTEDataFile
       		{
       				DESCRIPTION				Datafil för BästaTextredigerare.
       				ICON						BTEData
       				ACTIONS					Open,Print
       		}
      
       		DATA_CRITERIA BTEDataFileCriteria1
       		{
       				DATA_ATTRIBUTES_NAME			BTEDataFile
       				NAME_PATTERN						*.bte
       				MODE									f
       		}
    4. Skapa datatypen för *.tpl-filer:

      		DATA_ATTRIBUTES BTETemplateFile
       		{
       				DESCRIPTION			Mallfil för BästaTextredigerare.
       				ICON					BTETempl
       				ACTIONS				Open
       		}
      
       		DATA_CRITERIAL BTETemplateFileCriteria1
       		{
       				DATA_ATTRIBUTES_NAME			BTETemplateFile
       				NAME_PATTERN						*.tpl
       				MODE									f
       		}
    5. Skapa Open-funktionen för *.bte-filer.

      		ACTION Open
       		{
       				ARG_TYPE			BTEDataFile
       				TYPE				MAP
       				MAP_ACTION		BTEditor
       		}
    6. Skapa Print-funktionen för *.bte-filer.

      Här följer enkla Print-funktioner som skriver ut datafiler. De här funktionerna kräver ett värde för miljövariabeln LPDEST och ignorerar utskriftsalternativet -s. (Om LPDEST inte anges kan funktionen misslyckas.)

      		ACTION Print
       		{
       				ARG_TYPE				BTEDataFile
       				TYPE					MAP
       				MAP_ACTION			BTEPrintData
       		}
      		ACTION BTEPrintData
       		{ 		WINDOW_TYPE				NO_STDIO
       				EXEC_STRING				BTEPrint -d $LPDEST %Arg_1%
       		}

      Här följer en annan version av funktionen BTEPrintData och ett medföljande skript. Tillsammans hanterar de situationer där LPDEST inte anges eller tyst utskrift begärs.

      		ACTION BTEPrintData
       		{
       				WINDOW_TYPE				NO_STDIO
       				EXEC_STRING				/usr/BTE/bin/BTEenvprint \
       											%(File)Arg_1%
       		}

      Innehållet i skriptet /usr/BTE/bin/BTEenvprint är:

      		# BTEenvprint
       		#!/bin/sh
       		DEST=""
       		SILENT=""
       		if [ $LPDEST ] ; then
       			DEST="-d $LPDEST"
       		fi
       		BTEPrint $DEST SILENT $1
    7. Skapa Open-funktionen för *.tpl-filer:

      		ACTION Open
       		{
       				ARG_TYPE			BTETemplateFile
       				TYPE				MAP
       				MAP_ACTION		BTEditor
       		}
    8. Skapa Print-funktionen för *.tpl-filer:

      		ACTION Print
       		{
       				ARG_TYPES		BTETemplateFile
       				TYPE				MAP
       				MAP_ACTION		NoPrint
       		}

      NoPrint är en inbyggd funktion som visar en dialogruta där det står att filen inte går att skriva ut.

  5. Placera hjälpfilerna i registreringspaketet.

    1. Placera hjälpfilerna på följande adresser:

       		/desktop_approots/BTE/dt/appconfig/help/C/BTEHelp.sdl
       		/desktop_approots/BTE/dt/appconfig/help/C/graphics/BTE1.xwd
       		/desktop_approots/BTE/dt/appconfig/help/C/graphics/BTE2.xwd
    2. Skapa filen

      		/desktop_approots/BTE/dt/appconfig/types/C/BTEhelp.dt. 

      Placera följande funktionsdefinition i filen:

      		ACTION BTEHelp
       		{
       				WINDOW_TYPE				NO_STDIO
       				EXEC_STRING				/usr/dt/bin/dthelpview -helpVolume \
       											BTEHelp.sdl
       				DESCRIPTION				Öppnar BästaTextredigerares hjälpvolym.
       		}
  6. Skapa ikoner för programmet.

    Använd Ikonredigeraren för att skapa ikonerna. Tabell 5-3 visar vilken storlek på rutnät som ska användas.

    Tabell 5-3 Rutnät för olika storlekar på ikoner

    Namn 

    Storlek 

    basnamn.t.pm

    16 gånger 16 

    basnamn.m.pm

    32 gånger 32 

    basnamn.l.pm

    48 gånger 48 

    Skapa de här ikonfilerna i mappen /desktop_approots/BTE/dt/appconfig/icons/C:

    • Ikoner som representerar funktionen som kör programmet: BTERun.t.pm, BTERun.m.pm, BTERun.l.pm

    • Ikoner som representerar *.bte-filer: BTEData.t.pm, BTEData.m.pm,

    • Ikoner som representerar *.tpl-filer: BTETempl.t.pm, BTETempl.m.pm

    • Ikoner som representerar programgruppen (används i steg 7): BTEApp.t.pm, BTEApp.m.pm

  7. Skapa programgruppen.

    1. Skapa mappen om du inte redan har gjort det.

      	/desktop_approots/BTE/dt/appconfig/appmanager/C/BästaTextredigerare
    2. Det här steget är valfritt. Det skapar en unik ikon för programgruppen genom att skapa en datatyp och associerade funktioner för programgruppen. Om du utelämnar det här steget använder programgruppen standardikonen.

      Lägg till följande datatyp- och funktionsdefinitioner i filen /desktop_approots/BTE/dt/appconfig/types/C/BTE.dt. Datatypen anger vilken ikon som ska användas av programgruppen BästaTextredigerare. Funktionerna ger samma Open- och Print-beteende som hos de inbyggda programgrupperna.

      		DATA_ATTRIBUTES BästaTextredigerareProggrupp
       		{
       				ACTIONS		OpenInPlace,OpenNewView
       				ICON			BTEApp
       		{
      		DATA_CRITERIA BästaTextredigerareProggruppVillkor
       		{
       				DATA_ATTRIBUTES_NAME	BästaTextredigerareProggrupp
       				MODE							d
       				PATH_PATTERN				*/appmanager/*/BästaTextredigerare
       		}
      		ACTION Open
       		{
       				ARG_TYPE				BästaTextredigerareProggrupp
       				TYPE					MAP
       				MAP_ACTION			OpenAppGroup
       		}
      		ACTION Print
       		{
       				ARG_TYPE				BästaTextredigerareProggrupp
       				TYPE					MAP
       				MAP_ACTION			PrintAppGroup
       		}
    3. Skapa en ikon i programgruppen som ska starta programmet. För att göra det skapar du filen:

      		/desktop_approots/BTE/dt/appconfig/appmanager/C \
       		/BästaTextredigerare/BTEditor

      och gör filen körbar.

    4. Skapa funktionsfilen i programgruppen som ska öppna hjälpvolymen. För att göra det skapar du filen:

      		/desktop_approots/BTE/dt/appconfig/appmanager/C \
       		/BästaTextredigerare/BTEHelp

      och gör filen körbar.

    5. Placera andra filer i programgruppen. Exempelvis "Readme"-filer, exempeldata och mallfiler.

  8. Registrera programmet.

    I ett terminalemuleringsfönster:

    1. Logga in som root.

    2. Kör kommandot:

      		/usr/dt/bin/dtappintegrate -s /desktop_approots/BTE
    3. Öppna programgruppen Skrivbordsverktyg och dubbelklicka på Ladda om funktioner.