This article is about a small application that keeps code snippets organized and handy, even when you are offline or in a remote location without connectivity.
Folders view
Snippet view
Black Office Skin with new skinned CListView
Office 2003 skin with skinned splitter
Introduction
CodezBank is just a small application that stores source code snippets organized in a hierarchical manner with basic search ability. You just copy and paste the code snippet into or from this application via the Clipboard. If you have a bag of coding tricks, then you want to keep them in this app.
Background
Every time I work on some project, I always find myself digging through books and my old files to see how I did one or another piece of code. Although it works, it usually requires a lot of time. Sites like CodeProject keep code always available, but if I am offline or in a remote location without connectivity, then I have always wanted a small application that keeps the code snippets organized and handy.
Features
- Added sorting arrows to columns:
- Created options property pages to load last file on startup:
- Created text editor configuration property page instead of using the hardcoded values:
- Fonts and colors are now configurable:
Points of Interest
This application is a medium to advanced MFC project that covers advanced usage of libraries provided by Microsoft.
- Storing data in a binary tree
- SDI Explorer like interface with multiple views in the right pane (Color syntax and List view)
- Colored syntax editor
- Tree drag drop that rearranges the data in the binary tree
Usage of Regular Expressions provided by the vbscript.dll #import
. Replaced with std::regex
classes
History
Version 1.0.0.1 - 7th April, 2008
Version 1.0.0.2 - 22nd April, 2008
- Fixed undo bug in the code editor. Thanks to ndrsoft for pointing out a solution.
1.0.0.3 - 30th June, 2008
- Added more C++/C keywords as was suggested by the readers
- Changed tool bar to have a 256 color bitmap instead of 16 color
- Added documentation panel to the Source view. You can put all the explanation down there instead of comments so the code looks cleaner for the eye. I found it useful to paste there the whole MSDN or other documentation page(s) and links. Then, you will have the whole shebang in one tree node.
- Moved to GitHub
- Upgraded the solution file to Visual Studio 2022
13th August, 2022
- Updated the project to include 64 bit build
- Changed main windows to incorporate latest MFC skin styles
- Cleaned up some old junk code
22nd August, 2022
- Added option to automatically load last file on startup
- Removed VBScript regular expressions and replaced it with
std::regex
classes - Moved syntax parser into the separate class
- Added configuration property sheets to replace hardcoded values
Bugs
Syntax editor very limited as far as undo actions. (I am figuring this out. If anyone knows how to fix that, drop me a note) So do not Ctrl+Z, it won't work. Fixed. - Syntax editor currently highlights a subset of C and C++ keywords. I will add VB and C# later.