XFolder registrerar och/eller ersätter ett stort antal Skrivbordsklasser. Ta en titt i INSTALL.CMD i XFolders installationskatalog för att få reda på mer.

De viktigaste XFolder klassöverlagringarna är:

  1. XFolder för vanliga mappar ger den huvudsakliga funktionaliteten för XFolder,
  2. XFldDisk för "enhet" objekt som finns i "Enheter" mappen,
  3. XFldObject, Skrivbordets rotklass för att kunna accessa ett stort antal Skrivbords interna,
  4. XFldDesktop för de nya Skrivbordsfunktionerna särskilt den Utökade Avstängningen.
Alla dessa klasser ersätter de ursprungliga Skrivbordsklasserna.

I den betydelse som beskrevs på föregående sida, är XFolderklass en avkomling till WPFolderklassen. Därför kan den göra allting en vanlig mapp kan. Som en ny funktion adderas för mappar, menyalternativ, snabbkommandon, namn i fönster etc.

Genom att använda polymorfism redefinierar XFolder vissa WPFolder metoder, som beskrivs nedan.

Emellertid, XFolder är då registrerad hos Skrivbordet som en WPFolder ersättning, vilket innebär att Skrivbordet använder XFolderklassen som sin standard mappklass istället för WPFolder. När detta sker, är WPFolder klassen inte längre använd direkt utan bara genom sin ersättnings (och avkomlings) klass XFolder. Titta i "Skrivbordsklasser"  i "Introduktion" sektionen för mer.

Några av WPFolder metoderna som XFolderklassen överskuggar är (detta kommer förmodligen bara intressera programmerare):

XFldDisk klassen, som ersätter WPDisk klassen, gör inte så mycket, frånsett att dirigera sina metoder till XFolder metodens motsvarigheter, så att visning av en enhet sker precis som för normala (X)mappar. IBM har av någon orsak valt att inte göra enhetsobjekt till vanliga mappar, utan tillämpat en annan klass för dem (kallas WPRootFolder), så XFolder behöver också en separat klass.

XFldObject gör inte mycket synligt heller, utom att undertrycka OS/2:s standard menyalternativ och addera "Kopiera filnamn" funktionen. Den är dock nödvändig för att andra XFolder delar internt underrättas om några interna Skrivbords händelser, särskilt XStäng av, som beskrivs i detalj på nästa sida.

XFldDesktop klassen tillåter ändring av Skrivbordets menyalternativ och XStäng av.

Tidigare versioner ersatte också WPSystem klassen så att "System" objektet i "Systemkonfiguration" mappen innehöll fler inställningsblocksidor för XFolder∩s Globala Inställningar. Med V0.80 har detta ändrats och nu registrerar XFolder två nya klasser som härstammar från WPSystem utan att ersätta dem. De två klasserna är XFldSystem och XFldWPS för respektive "OS/2 Kärna" och "Skrivbord" objekten. Inställningarna som du specifierar här är (vanligen) lagrad i OS2.INI och utvärderad varje gång XFolder behöver dem (t.ex. när du öppnar en meny). I motsats lagras de "lokala" XFolder inställningarna för en individuell mapp i dess .CLASSINFO Utökade Attribut, där Skrivbordet också lagrar andra mappinställningar. Det görs efter XFolder klass.

Notera att alla XFolder klasser är gjorda för att interagera. Försök inte att avlägsna bara några av dem, för XFolder kan då uppträda underligt (om du har tur). Alla XFolder∩s funktioner har gjorts ganska konfigurerbara, så du skall kunna bli av med det du inte gillar -- eller så du kan göra dig av med XFolder självt.