Script, um "befreundete" Ordner zu öffnen

Forum zur Erstellung von Anwendungen der erweiterten Scripting-Funktion
Info: Diese Schalter und Script-Anwendungen funktionieren erst ab der Version 11
Antworten
abr
Berater
Beiträge: 783
Registriert: 10. Apr 2007 02:50
Betriebssystem: Win 10 Home 64bit
Produkt: neueste Betaversion
Version DOpus: Pro
Wohnort: Hamburg

Script, um "befreundete" Ordner zu öffnen

Beitrag von abr » 30. Mär 2014 15:16

Folgendes Script ermöglicht es, Ordnerpaare zu definieren, so daß der eine der Ordner den anderen, dazugehörigen Ordner in der gegenüberliegenden Dateianzeige öffnet, wenn die festgelegte
Hilfstaste (zum Beispiel Alt, Win oder Strg) beim Öffnen des Ordners gedrückt werden. Das kann vor allem dann nützlich sein, wenn man beispielsweise regelmässig von einem der Orte zu einem anderen Ort kopiert, etwa vom Downloadordner zu einem bestimmten Verzeichnis auf auf einem USB-Stick.

Das Script kann man hier herunterladen: http://resource.dopus.com/download/file.php?id=9969

Zur Erläuterung habe ich aus dem englischen Forum die Erklärung des Autors dieses Scripts, Steje, übersetzt:
Do11: Script zum automatischen Öffnen/Schließen zusammengehöriger Ordnerregister


Anmerkung: Dieses Script benötigt mindestens die Betaversion 1 von Opus 11.1, um zu funktionieren.
Sie wurde ebenfalls unter der Betaversion 2 unter Opus11.1 getestet.

Dieses Script wurde geschrieben als Antwort auf die Anfrage des Benutzers abr im fogenden Posting:

Do11: scripting, triggering new tab by opening folder?
http://resource.dopus.com/viewtopic.php?f=3&t=20953

Was bewirkt dieses Script?

Der Einsatzzweck dieses Scripts besteht darin, einen Weg anzubieten, um Benutzern das Verbinden zweier Ordner zu ermöglichen: wenn ein bestimmter Ordner, etwa durch Anklicken, geöffnet wird, wird automatisch der andere, dazugehörige Ordner geöffnet.

Eine Einzelanzeige wird dabei automatisch in eine Dual-Dateianzeige umgeschaltet. Diese beiden Ordner sind dann in der Folge als Slave-Register verbunden. Die Weise der Ordneröffnung, um dieses Verhalten zu bewirken, ist dabei zweitrangig. Das Script reagiert, wenn der Ordner durch einen Doppelklick geöffnet wird, aber auch durch das Drücken der Eingabetaste auf dem entsprechenden Ordner, durch ein Anklicken in der Ordnerstruktur oder andere Befehle Im Format Go.

Alle diese Öffnungsweisen erzeugen ein Event des Form OnAfterFolderChange, auf welche das Script in der Folge reagiert. Das Script prüft dabei auch nach bereits bestehenden verbundenen Registern, um das Öffnen doppelter Register zu vermeiden, wenn man sich in einem der betroffenen Ordner vor- oder zurück bewegt. Zusätzlich existiert ein Hilfsscript, welches automatisch ein an das andere Register gebundene Register schließt, sobald der Benutzer eines davon schließt. Dieses Hilfsscript kann also auf Wunsch auch unabhängig für diese spezielle Funktion genutzt werden, obwohl es nur ein Teil des gesamten Pakets ist.

Wie wird das Script installiert und benutzt?

Dieses Script wird hier in Form eines Opus Script Package angeboten (http://resource.dopus.com/viewtopic.php?f=1&t=20481#9), das eigentlich nur eine ZIP-datei ist, die zwei VBScripts beinhaltet:


Downloadlink: http://resource.dopus.com/download/file.php?id=9896


Es kann entweder manuell installiert werden, indem man die OSP-Datei nach /dopusdata\Scriptaddins kopiert, oder durch Drag-and-Drop in die Seite in den Voreinstellungen Einstellungen > Symbolleisten > Scripte. Wie im Screenshot zu sehen ist, beziehungsweise. Auch weiter oben erläutert wurde, enthält das Paket eigentlich zwei voneinander unabhängige Scripts - jedes mit eigenen Konfigurationsoptionen:

OnAfterFolderChange_LinkedTab_AutoOpen.vbs: Das Script, welches das Verhalten der automatisch öffnenden Ordner kontrolliert.

OnCloseTab_LinkedTab_AutoClose.vbs: Das Script, das automatisch ein verbundenes Register schließen kann, sobald das andere durch den Benutzer geschlossen wird.

<Bild: Clipboard Image.png>


Nach der Installation des Scriptpakets muß der Benutzer die vollen Ordnerpfade der zu verbindenden Ordner angeben. Dies geschieht im Konfigurationsdialog des ersten Scripts.

<Bild: Clipboard Image(1).png)






Der Konfigurationsdialog zeigt die Eigenschaften für objLinkedTabList an, wo der benutzer dann mindestens einen Eintrag (also jeweils zwei Pfade) angeben kann:

<Bild: Clipboard Image (2).png)>

Das Script erlaubt einseitig, wie auch beidseitig funktionierende Verbindungen...
Beispiele für die beiden Typen von Verbindungen:

<Bild: Clipboard Image (3).png)>

Einseitig: benutzen Sie &&, um die beiden Ordnerpfade zu trennen:

Das Öffnen des ersten Ordnerpfades bewirkt, dass der zweite Ordnerpfad in einem neuen Register geöffnet wird, aber nicht anders herum:

Codebeispiel: C:\Temp && D:\Temp


Beidseitig: benutzen Sie || (zwei „Pipe“-Symbole), um beide Pfade zu trennen:

Das Öffnen eines der beiden Ordner, egal welchen, bewirkt, dass auch der andere Ordner in einem neuen Register geöffnet wird:

Codebeispiel: lib://My/My Media/My Music/~new || D:\Music


Das Hilfsscript hat ebenfalls eine eigene Konfigurationsoption:

<Bild: Clipboard Image (4).png)>

... Um entweder das Debuglogging zu aktivieren, oder selbst deaktiviert werden zu können:

<Bild: Clipboard Image (5).png)>


Vorschläge und Meinungen zu diesem Script sind erwünscht.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast