Hier folgen die Erklärungen zu den neuen WPS-Startlogos (V0.85).

Während die WPS hochfährt und XFolder initialisiert wird, schaut XFolder nach der Datei bootlogo\bootlogo.bmp (vom XFolder-Installationsverzeichnis ausgehend). Diese Datei wird geladen und als "Shape"-Fenster gezeigt, dh. mit Transparenz. Diese Funktionalität basiert auf dem hervorragenden Paket "ShapeWin", das kürzlich auf Hobbes erschienen ist. Schauen Sie in die Quellcodes von XFolder für Details.

Das Startlogo bleibt sichtbar, bis sich die WPS komplett initialisiert hat. Dann verschwindet es und wird keinerlei Systemressourcen mehr verbrauchen.

Ich habe Ihnen zwei Startlogos beigelegt:

Sie können das Startlogo frei durch Ihre eigene Lieblingsgrafik ersetzen, wenn Sie zB. lieber ein Foto von Bill Gates beim WPS-Start sehen wollen. Ich habe jedoch einige Zeit auf die bestehenden Grafiken verwendet, und ich hoffe, daß Sie sie mögen. (Diese sind übrigens mit GIMP/2 entstanden.)

Wenn Sie aber Ihre eigenen Bitmaps verwenden wollen, beachten Sie die folgenden, wichtigen Hinweise:

  1. bootlogo.bmp muß eine unkomprimierte OS/2-1.3-Bitmap-Datei sein. V2.0-Bitmaps können nicht geladen werden. Ich mußte meinen eigenen Code für das Laden von Bitmaps einbauen, weil die WPS-Multimediaklassen beim Hochfahren der WPS noch nicht funktionieren. Sie können PMView oder die WPS-Multimediaklassen verwenden, um bestehende Dateien ins 1.3-Format zu konvertieren.

  2. Die Transparenz wird basierend auf dem Pixel ganz links unten in der Bitmap berechnet. Das heißt, alle Pixel, die dieselbe Farbe haben wie Pixel (0, 0) werden transparent gemacht.

  3. Sie sollten äußerst vorsichtig sein, wenn Sie die Bitmaps ersetzen. Die Transparenz-Berechnungen sind extrem prozessor-intensiv. Wenn Sie eine Grafik mit 500 mal 500 Pixel verwenden, bei der die Hälfte der Pixel transparent sind, kann dies Ihr System für viele Minuten blockieren. Und das heißt tatsächlich blockieren, denn es ist der Presentation Manager (PM), der hier die meiste Zeit verbraucht, und das "Killen" von Prozessen hängt hier normalerweise das ganze System auf.

    Da PM für die Anzeige nur von rechteckigen Fenstern entworfen wurde, funktionieren diese "Shape"-Fenster wie folgt: die Bitmap wird Pixel für Pixel analysiert, und es werden so viele rechteckige PM-Unterfenster erzeugt, wie nicht-rechteckige transparente Flächen in der Bitmap existieren.

    Aus diesem Grund müssen Sie mit der Transparenz sehr vorsichtig sein. Je mehr nicht-rechteckige transparente Flächen in der Bitmap sind, desto mehr Unterfenster werden erzeugt.

    Beispiel:

             ┌────────────────────┐
             │                    │
             │   11111111111111   │
             │   11111111111111   │
             │   2222      3333   │
             │   44444444444444   │
             │   44444444444444   │
             │                    │
             └────────────────────┘
    (wobei " " für einen transparenten Pixel steht) würde genau vier Unterfenster erzeugen (als "1"-"4" markiert).

    Wenn Sie jedoch "diagonale" oder andere nicht-rechteckige transparente Flächen haben, muß für jede Zeile der Bitmap mindestens ein Unterfenster erzeugt werden, was PM wirklich eine Weile beschäftigen kann.

    Noch ein Beispiel:

             ┌────────────────────┐
             │                    │
             │   111111111        │
             │    2222  333       │
             │     44     55      │
             │      666 777777    │
             │       8888888888   │
             │        9999999999  │
             │                    │
             └────────────────────┘
    Dies würde bereits neun Fenster erzeugen: eins für die oberste Zeile, dann jeweils zwei für die folgenden, und noch je eines für die unteren Zeilen. Stellen Sie sich nun eine Bitmap dieser Art mit 500 Zeilen vor: das würde mindestens 500 Fenster erzeugen.

    Um dies klarzustellen: es ist nicht die Analyse der Bitmap, die die CPU belegt, sondern das Erzeugen der Unterfenster. Folglich schaden große Bitmaps nicht, wenn sie keine oder nur rechteckige Transparenz enthalten.

    Ich habe dies auf eine unangenehme Art und Weise herausgefunden, als ich versehentlich eine Bitmap für die Systemfarbenpalette konvertiert habe und diese dabei "gedithert" wurde. Plötzlich waren da Hunderte von transparenten und nicht-transparenten Pixeln, die sich ständig abwechselten, weil der Hintergrund, den ich eigentlich wollte, gedithert worden war.

    Die Bitmap hatte ungefähr 100 Zeilen, und ich bekam mehrere tausend Unterfenster. Nach zwei Minuten habe ich Strg-Alt-Entf gedrückt, weil gar nichts mehr ging.

    Seien Sie also gewarnt. Beginnen Sie mit kleinen Bitmaps und testen Sie, was Ihr System aushält. Für größere Bitmaps sollten Sie versuchen, die transparenten Bereiche rechteckig zu halten.

Schließlich kann das Logo vollständig abgeschaltet werden, indem Sie die Bitmap löschen oder die Anzeige im Objekt "Workplace Shell", "XFolder" Seite 2 abstellen.

Wenn alles schiefläuft und Ihre WPS nicht mehr hochfahren will, können Sie beim Start der WPS die Umschalt-(Shift-)Taste gedrückt halten, wodurch die Berechnungen komplett übergangen werden. Wenn die WPS dann gestartet ist, können Sie die Bitmap löschen.