by Brian Capson
Internet: [email protected]
Special thanks to Morgan T. Savage for his great icon!
Special thanks also to Gordon Harris who graciously provided the code for parsing the Load= and Run= lines, for reading in the Startup group, and for the grayed and Run dialog boxes.
This is a little app I put together (which has now gown into a kind of big app) to try out the new drag-drop capabilities of Win3.1 and to provide a more convenient facility for launching applications. I've seen a couple of other versions of similar apps floating around, but they all require too much effort to do the job efficiently - the thing is pretty much useless without drag-drop.
Copy the DROP.INI file and the DOCKDLL.DLL file to your windows directory, and put the executable anywhere you want.
There are several new features in this version of WinDock. They include:
-Enhanced support for making WinDock the Shell. It will now read the Load= and Run= lines in WIN.INI, and will run everything in the Progman Startup group when launched if it is the shell.
-New drag-drop support for miscellaneous files. You can now drop a file onto an app on the dock, and that app will be started using the dropped file as a parameter. Thus, if you have notepad on the dock, you can drag any ASCII file on to the notepad icon, and notepad will be launched with the file. Two things to note here:
-WinDock does no validation of the files you drag to an app. Thus, you could drag an executable, say, to notepad, and notepad will try to load it. The same for any other application on the dock.
-The file that is dragged to an icon gets APPENDED to any current command line parameters that have been specified. This allows you to put something like pkunzip on the dock, and when you drag a ZIP file to it, it will unzip it. In the future I'll probably change this so that you can specify an entire command line with a placeholder that will be replaced by the dropped file.
-You can now save the status of the dock at any time by clicking on the "Save Dock" button in the General Options dialog.
-A new feature, called MaxView has been added that will ensure that WinDock is always available when you need it. If you turn this on in the General Options dialog, any application windows that you maximize while running WinDock will only maximize to the edge of the dock. WinDock will not cover any part of your window, and your window will not cover WinDock.
-Now you can launch arbitrary apps using the Run Dialog box, accessible by double-clicking on the WinDock icon at the top of the dock. This dialog allows you to browse your disk to find the app you want to run, or you can type it in at the command line. The dialog also has a command history, so the last several commands that you executed can be repeated. Access this by pressing the 'down' arrow beside the "Filename" textbox. This will drop down a combo box listing your last commands.
Note that the behavior of the WinDock icon (at the top) has now changed. Instead of double-clicking on the icon to exit the dock, there is now an exit button on the About dialog which you can access the same way as before, by right-clicking on the WinDock icon.
What to do and how to do it.
- You can drag executable files from the File Manager (not the Program Manager) to the dock to place them there (sorry, one at a time for now). This can be any executable file, or a data file that has been associated with a file. Data files initially display the icon of the associated executable, DOS apps display the DOS icon by default. Icons can be easily changed in the Application Options Dialog, accessible by clicking the right mouse button on any of the application icons on the dock.
- You can launch an app by double clicking on its icon. Launching behavior can also be modified by the Application Options Dialog. You can set any parameters you want your app to be launched with, you can set the default directory that the app starts up with, and you can set the "state" of the app (ie maximized/minimized/normal) through this dialog.
Some apps remember their own "last window state", this overrides windows API's and may provide some unexpected behavior when launching these apps. Experimentation will provide the best results.
- You can move apps around by dragging them with the left mouse button. If you drop an app on top of another one, WinDock will beep, and the app will pop back to where it came from.
- You can delete an app by dragging it off of the dock and letting it go. (If you drag off without releasing, you can drag back on again).
- You can drag the dock out of your way by dragging the Windows Logo button at the top of the dock.
- You can view the WinDock About dialog box and change some general options by clicking the right mouse button on the Windows Logo button.
- You can change whether the dock is on the left or right side of the screen by setting the radio buttons in the About dialog box.
- You can make the dock stay on top of all windows by setting the checkbox in the About dialog box.
-You can exit WinDock by clicking the Exit button on the About dialog box
WinDock will automatically save its layout and options when you exit it, or exit windows.
-WinDock now will properly release its "Always on Top" status when the box is unchecked.
-WinDock will now remember its vertical position between sessions.
-WinDock will now remember the icon attached to documents between sessions.
-Right-clicking on an empty spot on the dock won't crash it.
-Starting WinDock with an ini file that contains pointers to apps that don't exist won't crash it.
-Parameters can now be added to apps in the Application Options dialog.
-Better reporting of errors when an app can't be launched.
-Default directory of an app now defaults to the directory in which the app resides.
-Using taskman to tile or cascade windows will now not effect WinDock
-WinDock can now be made the shell, and will exit windows properly. However, it will not yet automatically load the apps found in the progman startup group, or in the load= or run= lines in win.ini.
-Exiting WinDock will not crash on exit now, as it was on some systems.
-WinDock no longer redraws when you click or double click on it.
-You can now drag a document to the dock that has been associated with an executable that doesn't contain an icon. Before, this would cause WinDock to crash.
Bugs not yet Fixed
-There are some questions about the behavior of the Application Options Dialog. This should probably exit when you press Enter, unless you've changed the icon. I'll work on this.
-When a DOS app is minimized, it assumes the standard DOS icon, not the one that had been associated with it like the new Progman does. I've figured out how to do this, and it will be forthcoming.
-There is a bug such that when you click the right mouse button while you are dragging an icon, the icon freezes where it is, and cannot be accessed.
-If WinDock cannot find an app when it is starting up, it pops up a dialog to complain, then removes the app from the dock. On a network, where all icons may not always be available, WinDock shouldn't throw away the app, but should keep trying to load the app each time WinDock is started, until the app is physically removed. This way, starting up WinDock without your network connected wouldn't result in losing all your icons for apps on the network.
-There are a few more very spurious bugs that I haven't been able to reproduce, and I'm going to need more information on. If you've got a bug that you don't see here, please let me know.
-WinDock needs more room! This will be fixed ASAP, by one of the many means that have been suggested. Everyone seems to have a different opinion as to how this should work, so I guess I'll try implementing several of them and let the registered users try them out, then we'll pick a winner. One of the options is the capability of specifying an app as a 'group', that will pop up a horizontal dock when clicked, and hide it either when clicked again, or when an app is chosen from the pop-up dock. This would look like the toolbar on CorelDraw. (Tell me what you think of this)
-Ability to align WinDock with Top and Bottom of screen.
-I'll be adding an option to allow you to turn off the shadows on the dialogs, and make them their normal color.
-Soon, icons will automatically shuffle themselves down a row when you try to add a new icon between two existing ones.
I've gotten some great feedback from people about improvements to WinDock, hopefully I'll be able to address all of them while still maintaining the programs simplicity. Keep them coming!
PLEASE LET ME KNOW IF YOU FIND BUGS IN THIS PROGRAM! I want to try and keep it as robust as possible, so I want stamp any bugs out as soon as they crop up.
I'm always looking for comments or suggestions for improving WinDock, so please forward these to me either at 73467,1453 on Compuserve, or at [email protected]
on the internet. Or you can phone me at 514-848-9659 if neither of these means are suitable.
Sorry these docs are so sparse, I've been spending so much time on the app that the docs have become secondary. It's quite a simple concept anyway, so hopefully most won't need the docs.
Remember, WinDock is SHAREWARE! If you intend to use it, you must register it by sending $15 to the author at the address below. You will be added to the WinDock mailing list and automatically be sent future upgrades, bug fixes, and information. You will also be entitled to free support for WinDock, and priority for suggestions for improvements to the program.
It will also give you the satisfaction in knowing that you support independant software development.
- Brian Capson
900 Sherbrooke St. West #92, 8 Marlin Terrace
Montreal, Quebec Saint John, New Brunswick
Canada H3A 1G3Canada E2K 2B6
(514) 848-9659(506) 648-9299