Click here to Skip to main content
Click here to Skip to main content
Add your own
alternative version

Classic Shell

, 23 Feb 2010
Classic Start menu and other shell features for Windows 7 and Vista.
Prize winner in Competition "Windows 7 "Windows @ Work" Article Contest"
ClassicShellSetup.zip
ClassicShellSrc.zip
ClassicShell
ClassicExplorer
ClassicCopyExt.rgs
ClassicExplorer.rgs
ClassicExplorer32.def
ClassicExplorer64.def
Explorer.ini
ExplorerBand.rgs
ExplorerBHO.rgs
ExplorerL10N.ini
up.ico
up2Disabled.ico
up2Hot.ico
up2Normal.ico
up2Pressed.ico
upDisabled.ico
ClassicShellSetup
ClassicShell.ico
ClassicShellBanner.jpg
ClassicShellSetup.manifest
ClassicShellSetup32
ClassicShellSetup32.vdproj
ClassicShellSetup64
ClassicShellSetup64.vdproj
ClassicStartMenu
ClassicStartMenu.manifest
ClassicStartMenuDLL
StartMenu.ini
StartMenuItems.ini
StartMenuL10N.ini
Docs
ClassicExplorer_files
after.png
before.png
ClassicShell.png
FolderView.gif
iconoffset.png
statusbar.png
titlebar.png
toolbar.png
ClassicShellEULA.rtf
ClassicShellReadme.rtf
ClassicStartMenu_files
ClassicShell.png
screenshot.png
skins.gif
ParseSettings
Skins
ClassicSkin
main_bitmap.bmp
selection.bmp
VistaAero
main_bitmap.bmp
selection.bmp
Win7Aero
main_bitmap.bmp
selection.bmp
Win7Basic
main_bitmap.bmp
selection.bmp
// Microsoft Visual C++ generated resource script.
//
#include "resource.h"

#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#ifndef APSTUDIO_INVOKED
#include "targetver.h"
#endif
#include "winres.h"

/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS

/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32

#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//

1 TEXTINCLUDE 
BEGIN
    "resource.h\0"
END

2 TEXTINCLUDE 
BEGIN
    "#ifndef APSTUDIO_INVOKED\r\n"
    "#include ""targetver.h""\r\n"
    "#endif\r\n"
    "#include ""winres.h""\r\n"
    "\0"
END

3 TEXTINCLUDE 
BEGIN
    "1 TYPELIB ""ClassicExplorer.tlb""\r\n"
    "\0"
END

#endif    // APSTUDIO_INVOKED


/////////////////////////////////////////////////////////////////////////////
//
// Version
//

VS_VERSION_INFO VERSIONINFO
 FILEVERSION 1,0,1,0
 PRODUCTVERSION 1,0,1,0
 FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
 FILEFLAGS 0x1L
#else
 FILEFLAGS 0x0L
#endif
 FILEOS 0x4L
 FILETYPE 0x2L
 FILESUBTYPE 0x0L
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "040904e4"
        BEGIN
            VALUE "CompanyName", "IvoSoft"
            VALUE "FileDescription", "Adds classic Windows Explorer features"
            VALUE "FileVersion", "1, 0, 1, 0"
            VALUE "InternalName", "ClassicExplorer.dll"
            VALUE "LegalCopyright", "Copyright (C) 2009-2010, Ivo Beltchev"
            VALUE "OriginalFilename", "ClassicExplorer.dll"
            VALUE "ProductName", "Classic Shell"
            VALUE "ProductVersion", "1, 0, 1, 0"
        END
    END
    BLOCK "VarFileInfo"
    BEGIN
        VALUE "Translation", 0x409, 1252
    END
END


/////////////////////////////////////////////////////////////////////////////
//
// REGISTRY
//

IDR_CLASSICEXPLORER     REGISTRY                "ClassicExplorer.rgs"
IDR_EXPLORERBAND        REGISTRY                "ExplorerBand.rgs"
IDR_EXPLORERBHO         REGISTRY                "ExplorerBHO.rgs"
IDR_CLASSICCOPYEXT      REGISTRY                "ClassicCopyExt.rgs"

/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//

IDD_FILE DIALOGEX 0, 0, 266, 136
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Confirm File Replace"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    DEFPUSHBUTTON   "&Yes",IDOK,149,115,53,14
    PUSHBUTTON      "&No",IDNO,206,115,53,14
    ICON            "",IDC_STATICICON,7,7,20,20
    LTEXT           "This folder already contains a file called 'blah.txt'.",IDC_STATICFNAME,35,7,224,23,SS_NOPREFIX
    LTEXT           "Do you want to replace the existing file:",IDC_STATICPROMPT1,35,34,224,8,SS_NOPREFIX
    ICON            "",IDC_STATICDSTICON,43,46,20,20
    LTEXT           "Static",IDC_STATICDSTSIZE,69,47,190,8,SS_NOPREFIX
    LTEXT           "Static",IDC_STATICDSTTIME,69,57,190,8,SS_NOPREFIX
    LTEXT           "with this one?",IDC_STATICPROMPT2,35,74,224,8,SS_NOPREFIX
    ICON            "",IDC_STATICSRCICON,43,86,20,20
    LTEXT           "Static",IDC_STATICSRCSIZE,69,87,190,8,SS_NOPREFIX
    LTEXT           "Static",IDC_STATICSRCTIME,69,97,190,8,SS_NOPREFIX
    CONTROL         "<a>&More...</a>",IDC_LINKMORE,"SysLink",WS_TABSTOP,7,120,57,10
END

IDD_FILEMULTI DIALOGEX 0, 0, 285, 136
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Confirm File Replace"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    DEFPUSHBUTTON   "&Yes",IDOK,55,115,53,14
    PUSHBUTTON      "Yes to &All",IDYES,112,115,53,14
    PUSHBUTTON      "&No",IDNO,169,115,53,14
    PUSHBUTTON      "Cancel",IDCANCEL,226,115,53,14
    ICON            "",IDC_STATICICON,7,7,20,20
    LTEXT           "This folder already contains a file called 'blah.txt'.",IDC_STATICFNAME,35,7,243,23,SS_NOPREFIX
    LTEXT           "Do you want to replace the existing file:",IDC_STATICPROMPT1,35,34,243,8,SS_NOPREFIX
    ICON            "",IDC_STATICDSTICON,43,46,20,20
    LTEXT           "Static",IDC_STATICDSTSIZE,69,47,209,8,SS_NOPREFIX
    LTEXT           "Static",IDC_STATICDSTTIME,69,57,209,8,SS_NOPREFIX
    LTEXT           "with this one?",IDC_STATICPROMPT2,35,74,243,8,SS_NOPREFIX
    ICON            "",IDC_STATICSRCICON,43,86,20,20
    LTEXT           "Static",IDC_STATICSRCSIZE,69,87,209,8,SS_NOPREFIX
    LTEXT           "Static",IDC_STATICSRCTIME,69,97,209,8,SS_NOPREFIX
    CONTROL         "<a>&More...</a>",IDC_LINKMORE,"SysLink",WS_TABSTOP,7,120,45,10
END

IDD_SETTINGS DIALOGEX 0, 0, 263, 228
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Settings for Classic Explorer"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    GROUPBOX        "Navigation pane tweaks:",IDC_STATIC,7,7,249,73
    LTEXT           "Navigation pane style:",IDC_STATIC,16,19,77,12,SS_CENTERIMAGE
    COMBOBOX        IDC_COMBOSTYLE,94,19,85,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
    CONTROL         "Don't fade buttons",IDC_CHECKNOFADE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,38,76,10
    CONTROL         "Full-size offset for sub-folders",IDC_CHECKOFFSET,
                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,112,38,112,10
    CONTROL         "Enable Alt+Enter to show properties",IDC_CHECKBHO,
                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,51,137,10
    CONTROL         "Always navigate to the selected folder",IDC_CHECKAUTO,
                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,64,139,10
    GROUPBOX        "Toolbar buttons:",IDC_STATIC,7,85,249,74
    CONTROL         "Use big buttons",IDC_CHECKBIG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,97,69,10
    CONTROL         "Up One Level",IDC_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,110,59,10
    CONTROL         "Cut",IDC_CHECK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,86,110,27,10
    CONTROL         "Copy",IDC_CHECK3,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,150,110,33,10
    CONTROL         "Paste",IDC_CHECK4,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,110,34,10
    CONTROL         "Delete",IDC_CHECK5,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,123,37,10
    CONTROL         "Properties",IDC_CHECK6,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,86,123,49,10
    CONTROL         "Email",IDC_CHECK7,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,150,123,32,10
    CONTROL         "Settings",IDC_CHECK8,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,123,42,10
    LTEXT           "Note: If you hide the Settings button you can still access the settings by right-clicking on any other button",IDC_STATIC,13,140,236,17
    CONTROL         "Enable classic copy UI",IDC_CHECKCOPY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,167,89,10
    CONTROL         "For folders too",IDC_CHECKCOPYFOLDER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,167,63,10
    CONTROL         "Show Up button in the title bar",IDC_CHECKUP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,180,114,10
    CONTROL         "Show free space and file size in status bar",IDC_CHECKSIZE,
                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,193,151,10
    CONTROL         "<a>Help...</a>",IDC_LINKHELP,"SysLink",WS_TABSTOP,7,212,40,10
    DEFPUSHBUTTON   "OK",IDOK,148,207,50,14
    PUSHBUTTON      "Cancel",IDCANCEL,206,207,50,14
END

IDD_FILEMULTIR DIALOGEX 0, 0, 285, 136
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "Confirm File Replace"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    DEFPUSHBUTTON   "&Yes",IDOK,55,115,53,14
    PUSHBUTTON      "Yes to &All",IDYES,112,115,53,14
    PUSHBUTTON      "&No",IDNO,169,115,53,14
    PUSHBUTTON      "Cancel",IDCANCEL,226,115,53,14
    ICON            "",IDC_STATICICON,7,7,20,20
    LTEXT           "This folder already contains a file called 'blah.txt'.",IDC_STATICFNAME,35,7,243,23,SS_NOPREFIX
    LTEXT           "Do you want to replace the existing file:",IDC_STATICPROMPT1,35,34,243,8,SS_NOPREFIX
    ICON            "",IDC_STATICDSTICON,43,46,20,20
    LTEXT           "Static",IDC_STATICDSTSIZE,69,47,209,8,SS_NOPREFIX
    LTEXT           "Static",IDC_STATICDSTTIME,69,57,209,8,SS_NOPREFIX
    LTEXT           "with this one?",IDC_STATICPROMPT2,35,74,243,8,SS_NOPREFIX
    ICON            "",IDC_STATICSRCICON,43,86,20,20
    LTEXT           "Static",IDC_STATICSRCSIZE,69,87,209,8,SS_NOPREFIX
    LTEXT           "Static",IDC_STATICSRCTIME,69,97,209,8,SS_NOPREFIX
    CONTROL         "<a>&More...</a>",IDC_LINKMORE,"SysLink",WS_TABSTOP,7,120,45,10
END

IDD_FILER DIALOGEX 0, 0, 266, 136
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "Confirm File Replace"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    DEFPUSHBUTTON   "&Yes",IDOK,149,115,53,14
    PUSHBUTTON      "&No",IDNO,206,115,53,14
    ICON            "",IDC_STATICICON,7,7,20,20
    LTEXT           "This folder already contains a file called 'blah.txt'.",IDC_STATICFNAME,35,7,224,23,SS_NOPREFIX
    LTEXT           "Do you want to replace the existing file:",IDC_STATICPROMPT1,35,34,224,8,SS_NOPREFIX
    ICON            "",IDC_STATICDSTICON,43,46,20,20
    LTEXT           "Static",IDC_STATICDSTSIZE,69,47,190,8,SS_NOPREFIX
    LTEXT           "Static",IDC_STATICDSTTIME,69,57,190,8,SS_NOPREFIX
    LTEXT           "with this one?",IDC_STATICPROMPT2,35,74,224,8,SS_NOPREFIX
    ICON            "",IDC_STATICSRCICON,43,86,20,20
    LTEXT           "Static",IDC_STATICSRCSIZE,69,87,190,8,SS_NOPREFIX
    LTEXT           "Static",IDC_STATICSRCTIME,69,97,190,8,SS_NOPREFIX
    CONTROL         "<a>&More...</a>",IDC_LINKMORE,"SysLink",WS_TABSTOP,7,120,57,10
END

IDD_FOLDERMULTI DIALOGEX 0, 0, 285, 100
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Confirm Folder Replace"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    DEFPUSHBUTTON   "&Yes",IDOK,55,79,53,14
    PUSHBUTTON      "Yes to &All",IDYES,112,79,53,14
    PUSHBUTTON      "&No",IDNO,169,79,53,14
    PUSHBUTTON      "Cancel",IDCANCEL,226,79,53,14
    ICON            "",IDC_STATICICON,7,7,20,20
    LTEXT           "This folder already contains a folder called 'blah'.",IDC_STATICFNAME,35,7,243,65,SS_NOPREFIX
    CONTROL         "<a>&More...</a>",IDC_LINKMORE,"SysLink",WS_TABSTOP,7,84,45,10
END

IDD_FOLDER DIALOGEX 0, 0, 266, 100
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Confirm Folder Replace"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    DEFPUSHBUTTON   "&Yes",IDOK,149,79,53,14
    PUSHBUTTON      "&No",IDNO,206,79,53,14
    ICON            "",IDC_STATICICON,7,7,20,20
    LTEXT           "This folder already contains a folder called 'blah'.",IDC_STATICFNAME,35,7,224,65,SS_NOPREFIX
    CONTROL         "<a>&More...</a>",IDC_LINKMORE,"SysLink",WS_TABSTOP,7,84,57,10
END

IDD_FOLDERR DIALOGEX 0, 0, 266, 99
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "Confirm Folder Replace"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    DEFPUSHBUTTON   "&Yes",IDOK,149,78,53,14
    PUSHBUTTON      "&No",IDNO,206,78,53,14
    ICON            "",IDC_STATICICON,7,7,20,20
    LTEXT           "This folder already contains a folder called 'blah'.",IDC_STATICFNAME,35,7,224,65,SS_NOPREFIX
    CONTROL         "<a>&More...</a>",IDC_LINKMORE,"SysLink",WS_TABSTOP,7,83,57,10
END

IDD_FOLDERMULTIR DIALOGEX 0, 0, 285, 100
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "Confirm Folder Replace"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    DEFPUSHBUTTON   "&Yes",IDOK,55,79,53,14
    PUSHBUTTON      "Yes to &All",IDYES,112,79,53,14
    PUSHBUTTON      "&No",IDNO,169,79,53,14
    PUSHBUTTON      "Cancel",IDCANCEL,226,79,53,14
    ICON            "",IDC_STATICICON,7,7,20,20
    LTEXT           "This folder already contains a folder called 'blah'.",IDC_STATICFNAME,35,7,243,65,SS_NOPREFIX
    CONTROL         "<a>&More...</a>",IDC_LINKMORE,"SysLink",WS_TABSTOP,7,84,45,10
END


/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//

#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO 
BEGIN
    IDD_FILE, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 259
        TOPMARGIN, 7
        BOTTOMMARGIN, 129
    END

    IDD_FILEMULTI, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 278
        TOPMARGIN, 7
        BOTTOMMARGIN, 129
    END

    IDD_SETTINGS, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 256
        TOPMARGIN, 7
        BOTTOMMARGIN, 221
    END

    IDD_FILEMULTIR, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 278
        TOPMARGIN, 7
        BOTTOMMARGIN, 129
    END

    IDD_FILER, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 259
        TOPMARGIN, 7
        BOTTOMMARGIN, 129
    END

    IDD_FOLDERMULTI, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 278
        TOPMARGIN, 7
        BOTTOMMARGIN, 93
    END

    IDD_FOLDER, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 259
        TOPMARGIN, 7
        BOTTOMMARGIN, 93
    END

    IDD_FOLDERR, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 259
        TOPMARGIN, 7
        BOTTOMMARGIN, 92
    END

    IDD_FOLDERMULTIR, DIALOG
    BEGIN
        LEFTMARGIN, 7
        RIGHTMARGIN, 278
        TOPMARGIN, 7
        BOTTOMMARGIN, 93
    END
END
#endif    // APSTUDIO_INVOKED


/////////////////////////////////////////////////////////////////////////////
//
// Icon
//

// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDI_APPICON             ICON                    "..\\ClassicShellSetup\\ClassicShell.ico"
IDI_UP2DISABLED         ICON                    "up2Disabled.ico"
IDI_UP2HOT              ICON                    "up2Hot.ico"
IDI_UP2NORMAL           ICON                    "up2Normal.ico"
IDI_UP2PRESSED          ICON                    "up2Pressed.ico"
IDI_UP                  ICON                    "up.ico"
IDI_UPDISABLED          ICON                    "upDisabled.ico"

/////////////////////////////////////////////////////////////////////////////
//
// Dialog Info
//

IDD_SETTINGS DLGINIT
BEGIN
    IDC_COMBOSTYLE, 0x403, 14, 0
0x6957, 0x646e, 0x776f, 0x2073, 0x6956, 0x7473, 0x0061, 
    IDC_COMBOSTYLE, 0x403, 19, 0
0x6957, 0x646e, 0x776f, 0x2073, 0x5058, 0x4320, 0x616c, 0x7373, 0x6369, 
"\000" 
    IDC_COMBOSTYLE, 0x403, 18, 0
0x6957, 0x646e, 0x776f, 0x2073, 0x5058, 0x5320, 0x6d69, 0x6c70, 0x0065, 

    0
END


/////////////////////////////////////////////////////////////////////////////
//
// String Table
//

STRINGTABLE 
BEGIN
    IDS_PROJNAME            "ClassicExplorer"
END

#endif    // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////



#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
1 TYPELIB "ClassicExplorer.tlb"

/////////////////////////////////////////////////////////////////////////////
#endif    // not APSTUDIO_INVOKED

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The MIT License

About the Author

Ivo Beltchev
Software Developer (Senior)
United States United States
Ivo started programming in 1985 on an Apple ][ clone. He graduated from Sofia University, Bulgaria with a MSCS degree. Ivo has been working as a professional programmer for over 12 years, and as a professional game programmer for over 10. He is currently employed in Pandemic Studios, a video game company in Los Angeles, California.

| Advertise | Privacy | Mobile
Web04 | 2.8.140721.1 | Last Updated 23 Feb 2010
Article Copyright 2009 by Ivo Beltchev
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid