Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / desktop / MFC

Codez Bank: A Code Snippet Bank Application

4.88/5 (56 votes)
22 Aug 2022CPOL3 min read 4   3.7K  
An application that stores and manages useful code snippets and keeps them always handy
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.

codez_bank/codezbankfolders.png

Folders view

codez_bank/codezbankcode.png

Snippet view

Image 3

Black Office Skin with new skinned CListView

Image 4

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:

    Image 5

  • Created options property pages to load last file on startup:

    Image 6

  • Created text editor configuration property page instead of using the hardcoded values:

    Image 7

  • Fonts and colors are now configurable:

    Image 8

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

  • Initial code

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.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)