|X-Dock is a new dock application for the Amiga. It is part of the Enhancer Software package for AmigaOS.|
The application allows single or multiple docks to be created and placed on the Workbench Screen with each containing icons for applications, scripts or even directories (drawers).
Docks can be customised in visual look and appearance by the user with orientation, position, different colours, transparency levels, rounded corners, highlighted edges and label fonts.
When a dock is locked, the dock cannot be changed and icons cannot be added.
The dock can be locked or unlocked by using the Lock checkbox option in the menu or the Amiga-C keys. Once unlocked, icons can be dragged and dropped over the dock to add them or alternatively the buttons tab in the X-Dock Preferences can be used to manage the icons on the dock. This includes adding, removing and arrange the order of icons as well as adding separators between icon groups.
If a dock is locked and an icon from the Workbench is dragged and dropped over an icon on the dock, the dock application will try to open or process that file associated with the Workbench icon. For example if you have a text document you wish to open to edit, then you could drag it and drop it over the MultiEdit icon. MultiEdit will then open and automatically load that document file. Multiple files dropping is additionally supported: for example, you can drop multiple picture files over Multiviewer to open them all.
Unlocking a dock allows the user to move and modify it. Unlocking a dock can be done through standard menu or PopupMenu (or Amiga-C keys). A quick unlock mode is available too by keeping Ctrl key pressed in locked mode.
When unlocked, a red border will be displayed surrounding the dock if Borders Unlock option is activated in the X-Dock Preferences Misc tab.
X-Dock can handle 3 different type of buttons:
- standard program button: button that starts a program when pressed. This button is created by adding/dragging a standard program in an unlocked Dock
- drawer/volume button: button that opens the drawer/volume location when pressed. This button is created by adding/dragging a drawer or a volume in an unlocked Dock
- subdock button: button that opens a subdock when pressed. This button is created by using Insert subdock Popup menu option in an unlocked Dock.
Drawer/Volume buttons have a special feature. In Locked mode, if you drop file(s) or drawer(s) on it, the element(s) will be copied in the destination. If the element still exists in destination location, a confirmation requester will be displayed. At end of the copy, the destination drawer is opened with copied file selected.
Two different menus are displayable in X-Dock, a standard menu and a PopupMenu one. When Right-Mouse-Button (RMB) is pressed outside of X-Dock window, the standard menu is opened. When RMB is pressed inside X-Dock window, a PopupMenu is opened.
1) Standard menu
Project sub-menu Unlocked mode
Open: Open an existing Dock by selecting his XML file in ENVARC:A-Eon by default
Save: Save settings/position of this Dock if modified
New Dock: Create a new empty Dock
Iconify: Iconify this Dock
About: About X-Dock and display the ARexx port of this Dock
Quit: Quit ALL opened X-Dock not only the current one.
Edit sub-menu Unlocked mode
Undo: Undo last change
Redo: Redo last “undoed” change
Last saved: Reload the Dock with latest settings file before last changes
Revert to defaults: Restore defaults settings
Dock sub-menu Unlocked mode
Lock: Switch between Lock and Unlock mode. See Lock/Unlock Modes section above
Identify: Blink the current Dock
Label: Display/hide names of the buttons
Label preferences: Open Preferences window at Labels settings section
Dragbar: Display/hide dragbar. Dragbar can be used to move the Dock in Unlocked mode. When Dragbar is inactive, Dock can be moved using middle mouse button.
Dragbar position: Position of the Dragbar when Dragbar is active
Orientation: Switch between Vertical or Horizontal Dock
Snap To: Choose to snap or unsnap the position of the Dock and the snapped position.
Preferences: Open Preferences window
Rename this dock: Change the name of this Dock
Delete selected dock: Delete this Dock. The first Dock cannot be deleted.
2) Popup menu
Popup menu Unlocked mode
Lock / Unlock: Switch between Lock and Unlock mode. See Lock/Unlock Modes section above
Add item: Open an ASL requester to add an item (file or drawer)
Remove selected: Remove the selected element
Remove: Remove one of the element that is displayed in the list
Remove all: Remove all the elements.
Insert Separator: Insert a Separator before or after the current element
Insert subdock: Open the “Add subdock” window to insert a Subdock before or after the current element.
Modify subdock: Select an existing subdock in the list and open the “Modify subdock” window (see “Modify button” below)
Show / Hide: Hide the Dock by displaying only a Dragbar and redisplay it
Rotate: Switch between Vertical or Horizontal Dock
Reveal in Workbench: Open the location where reside the current element and highlight it
Icon information: Open the Workbench information of the current element
Modify button: Modify the current element.
If the current element is a standard button, not a subdock, the “Modify button” window is opened.
Button name and opening type (Workbench, CLI or Rexx) can be changed
If the current element is a subdock button, the “Modify subdock” window is opened.
Subdock orientation, position relative the parent Dock and picture can be modified. Picture can be selected from an ASL requester or by dragging a .INFO file ins the window
Iconify: Iconify this Dock
Close: Close the current Dock
Dock Icon Dragging
Whilst the dock is in unlock mode, hover the mouse pointer over the icon you wish to move to a new location on the dock so that it is highlighted. Hold down the Shift key and the mouse pointer will change to a hand icon. Keep the Shift key depressed and click the left mouse button (but do not release). Move the mouse pointer to the new location that you wish the icon to be moved to and release the Shift key and left mouse button. The dock will be redrawn with the icon in the new location.
X-Dock can handles the following ARexx commands on it's ARexx message port:
(where n = the instance number of the targeted X-Dock)
NAME return name of the program "X-Dock"
VERSION return version number "0.33 (10.04.2016)"
ABOUT open About window
SAVE save the currents X-Dock settings
UNDO undo last change
REDO redo last change
HIDE hide the X-Dock (only Dragbar is visible)
SHOW show the hiddent X-Dock
IDENTIFY identify the X-Dock by bringing it to front and by blinking twice his buttons
HORIZONTAL make the X-Dock horizontally oriented
VERTICAL make the X-Dock vertically oriented
ICONIFY iconify X-Dock
MOVE_WINDOW x y move X-Dock window to x,y coordinates
CLOSE close this X-Dock
QUIT quit all running X-Dock
HIDE_DRAGBAR hide the drag area if displayed
SHOW_DRAGBAR show the drag area if hidden
LOCK lock X-Dock
UNLOCK unlock X-Dock
HIDE_LABEL hide the labels below the buttons
SHOW_LABEL show the labels below the buttons
ACTIVATE activate the X-Dock window
TOFRONT bring X-Dock window to the front (call ACTIVATE to activate it)
TOBACK send X-Dock window behind others
DELETE_XDOCK delete the corresponding X-Dock
REMOVE_ALL remove all buttons
OPEN n open X-Dock n (if not opened)
NEW creates a new empty X-Dock
RINGHIO_ON turns ON the Ringhio notifications
RINGHIO_OFF turns OFF the Ringhio notifications
MOVE a b move button at position a to position b
ADD [index_num program_name] icon_name program_label start_mode icon_selected_name"
Add a program at specified index. index_num and program_name are both required.
Add MultiEdit application icon at the fifth position with .info as button picture in WB start mode and a dummy selected icon (not needed in .info mode):
ADD "5 SYS:Utilities/MultiEdit/MultiEdit.info MultiEdit WB DUMMY"
Add a Separator at fourth position:
ADD "4 Separator"
Remove the specified index button:
The following example with remove the second element of the dock:
See X-Dock.rx for a ARexx sample.
XDock ARexx port can too be addressed by using the CLI:
rx 'ADDRESS XDock ADD 4 Separator' rx 'ADDRESS XDock REMOVE 4' rx 'ADDRESS XDock save'