Excellent for the new Windows 8
Classic Powershell brings back the start button and fixes our gripes with the new power options. We've got a few more tips and peripherals to improve the new Windows 8 experience.
http://classicshell.sourceforge.net/
http://classicshell.sourceforge.net/
Classic Start Menu
Classic Start Menu is a clone of the original Start menu, which you can find in all versions of Windows from 95 to Vista. It has a variety of advanced features:
- Drag and drop to let you organize your applications.
- Options to show Favorites, expand Control Panel, etc.
- Shows recently used documents. The number of documents to display is customizable.
- Translated in 35 languages, including right-to-left support for Arabic and Hebrew.
- Does not disable the original Start menu in Windows. You can access it by Shift+Click on the Start button.
- Right-click on an item in the menu to delete, rename, sort, or perform other tasks.
- Available for 32 and 64-bit Operating Systems.
- Has support for skins, including additional third party skins.
- Fully customizable in both looks and functionality.
- Support for Microsoft’s Active Accessibility
- And last but not least – it's free!
If you have used the Start menu in older versions of Windows, you’ll feel right at home:
Classic Explorer
Classic Explorer is a plug-in for Windows Explorer that:
- Adds a toolbar to Explorer for some common operations (Go to parent folder, Cut, Copy, Paste, Delete, Properties, Email). More buttons can be added manually.
- Replaces the copy UI in Vista and Windows 7 with the more user-friendly “classic” version similar to Windows XP.
- Handles Alt+Enter in the folder panel of Windows Explorer, and shows the properties of the selected folder.
- Has options for customizing the folder panel to look more like the Windows XP version or to not fade the expand buttons.
- Can show the free disk space and the total file size in the status bar.
Toolbar for Windows Explorer
Windows Explorer in Vista doesn’t have a toolbar like the one in Windows XP. If you want to go to the parent folder, you have to use the breadcrumbs bar. If you want to copy or delete a file with the mouse, you have to right-click and look for the Delete command. The right-click menu gets bigger and bigger the more shell extensions you have installed, and finding the right command can take a while.
To solve the problem, the Classic Explorer plug-in adds a new toolbar:
Hold the Control key when clicking the Up button to open the parent folder in a new Explorer window.
Hold the Shift key when clicking the Delete button to permanently delete a file.
Additional Up Button
Some people have asked if I can make a small Up button and put it next to the Back/Forward buttons in the title bar of Explorer. If Up is the only button you need from the toolbar, this will save you screen space:
Right-click on the button to bring up the Classic Explorer settings.
New Copy UI
In Vista, when you copy files and there is a conflict, you are presented with this:
What’s wrong with it?
Well, for starters, it is half a screen full of text that you have to read. Also, it is not immediately clear what parts of it are clickable. You have to move the mouse around to discover the UI, like in a Lucas Arts adventure game. And finally, the keyboard usability is awful. To tell it “yes, I know what I’m doing, I want to overwrite all files”, you have to pressAlt+D, up, up, up, Space! It is harder than performing the Akuma Kara Demon move in Street Fighter 3. There is a time and a place for that stuff, and copying files is not it.
The Classic Explorer plug-in brings back the simpler dialog box from Windows XP:
It is immediately clear what is clickable (clue – the buttons at the bottom), there is easy keyboard navigation (press Yfor “Yes”, A to copy all files), and you can still see which file is newer and which is larger. And of course, just like in Windows XP, holding down Shift while clicking on the No button means "No to All" (or just press Shift+N).
If you click on More…, you will get the original dialog from Windows. From there, you will see all the details, and you’ll get an extra option to “Copy, but keep both files”.
Important note: Only the UI is replaced. The underlying system that does the actual copying is not affected.
Alt+Enter in the Folder Panel
Alt+Enter is a universal shortcut across Windows to bring up the properties of the selection. But in Vista and Windows 7, it doesn’t work in the left panel that shows the folders. It works fine on the right where the files are. This is broken compared to Windows XP where Alt+Enter works in both places.
To solve the problem, the Classic Explorer plug-in detects when you press Alt+Enter, and shows the properties for the currently selected folder.
Status Bar
In Windows 7, the status bar in Explorer doesn't show the free disk space and the size of the selected files. Classic Explorer fixes that:
When no files are selected, the total size of all the files in the folder is shown.
Alternative Start Menu Implementations
Before I decided to develop my own Start menu, I tried to look for alternatives. I couldn’t find something that is free, supports reordering of programs, shows the recent documents, etc. This article will not be complete without listing the “competition” with some (hopefully objective) pros and cons:
CSMenu – http://www.csmenu.com/
CSMenu is free, and provides the basic functionality – open the Programs menu, click on a program to run. It lacks advanced functions like keyboard navigation, drag/drop, recent documents, customizability, etc. Also, the localization is not quite right – for example, Help and Support, Calculator, etc., are not localized, and there is no support for right-to-left languages.
Update: Looks like development has stopped on this project and it has been abandoned by the authors.
Classic Windows Start Menu – http://usuarios.lycos.es/coreaffinity/classicwinstartmenu.htm
Classic Windows Start Menu is also free, and only has basic functionality. No drag/drop, very few languages are supported, and doesn’t quite work correctly when the taskbar is not at the bottom.
Update: The latest beta supports drag/drop, and better handles the different positions of the taskbar. There is still room for improvement (drag/drop is a bit buggy, Unicode support is lacking), but looks like the project is active, and effort is being made to fix the existing problems.
Classic Start Menu – http://www.classicstartmenu.com/index.html
Classic Start Menu, while not free (20 bucks), has a variety of advanced features. You can use drag/drop to rearrange your menus (I found it to be a bit buggy), and it has two skins to choose from (Aero and Classic). On the negative side, there is almost no keyboard navigation because there is a search box that steals all typed characters. There is some sort of shortcut system using the numeric keys, but I couldn’t get it to work reliably. There is no proper "Recent documents" menu. Also, the localization is a bit off, and right-to-left support is a bit lacking.
Vista Start Menu – http://www.vistastartmenu.com/index.html
Vista Start Menu is another version done by the same guy as Classic Start Menu above. It tries to be much fancier, but the UI was way too busy for my taste. I gave it a quick look and found the keyboard shortcut system to work a bit more reliably. There is a free version, and a PRO version (20 bucks) that adds some more customization features. I would rate this one the highest of the bunch because of its features, if you are into this sort of UI.
Seven Classic Start – http://www.sevenclassicstart.com/
Seven Classic Start is probably the worst of the bunch. It is the most expensive (25 bucks!) and only offers basic functionality. Even though it is advertised as “Complete with everything that makes the original Start menu beloved by so many users”, there is no drag and drop, expanding Control Panel, Recent documents, localization, or right-to-left support.
P.S. When you try to uninstall the trial, you get an offer to use it for free if you agree to try some other software as well.
If you are not a programmer, you can stop reading now. Just download the binaries and install them.
The rest of the article discusses how the different features are implemented.
I’ll try to keep it short and not repeat information that is readily available in other CodeProject articles or the MSDN.
How Classic Start Menu Works
So, how do we create a Start menu replacement? Let’s start from the beginning.
Implementing the Menu
Just like with the original Start menu, our implementation uses a vertical toolbar control. This gives us some advantages over a regular menu:
- the toolbar supports images directly without the need to fiddle with owner-drawn menus
- the toolbar can be placed in a pager control to make it scrollable if the items don’t fit on screen
- you can right-click on a toolbar but not on a menu
- the toolbar offers some drag/drop functionality that will come handy later
Of course, there are downsides. We need to simulate parts of the menu behavior ourselves. We need to take care of opening a sub-menu when the mouse hovers over an item, handle focus, activation, and Z-order issues, etc.
There are some problems with the toolbar control that I haven't solved yet:
- The toolbar is not compatible with glass. When it draws itself, it messes up the alpha channel. This makes it impossible to make a transparent menu.
- The toolbar doesn't handle the
WM_PRINTCLIENT
message correctly when used in right-to-left mode. Makes things likeAnimateWindow
difficult. - Having multiple toolbars in one window to simulate a multi-column menu confuses screen readers like JAWS.
Because of these problems, I'm seriously considering creating my own control for the next version of Classic Shell.