Watch, Follow, &
Connect with Us

For forums, blogs and more please visit our
Developer Tools Community.

ID: 22326, Bookmark Viewer Add-In

by Jeremy North Email: Anonymous

Delphi Add-In to view persistent bookmarks. Allows for the clearing, adding and navigating of bookmarks.
Download Details
FTP  download also available
CDN Login Required to Download. (You will be redirected to the login page if you click on the Download Link)
To download this, you must have registered:
A free membership

For Delphi, Version 9.0  to 9.0 311 downloads
Copyright: No significant restrictions

Size: 46,283 bytes
Updated on Wed, 09 Feb 2005 05:07:37 GMT
Originally uploaded on Fri, 17 Sep 2004 10:07:39 GMT
SHA1 Hash: D0236DF51856CB1CD16D6CC19A122FD3A92633AF
MD5 Hash: F380BF8287A51644A5FEF4081BD319E3

    Explore the files in this upload

Bookmark Viewer

Jeremy North 2004

This is an IDE add-in that displays a list of the current units bookmarks.

Version Changes

0.6 When there are no bookmarks in the list. Hide the listbox. The IDE docking was
causing the 'No bookmarks...' prompt (which was on a panel) to not reset anchor
correctly. Now a fake box and the text is drawn on the forms canvas.
Call repaint in the OnResize event for the form to make sure the form is painted
when it is docked and then resized while docked.
Stop IDE from raising an 'Invalid datetime to encode' exception when viewing a form
as text.

0.5 Check for specific IOTAEditorServices interface version (IOTAEditorServices70)
Remove unselecting of current bookmark when timer is activated
Set focus to the actual bookmark list when clicking on the menu item and toolbar
button (if placed on a toolbar)
Support saving View Bookmark button on a customized toolbar
Include precompiled version in download

0.4 Change TPopupMenu to TPopupActionBar for a more consistent look with other IDE windows

0.3 Minor code changes

0.2 [Bug Fixes]
Had to press clear twice to really clear all bookmarks
Made sure the Header Line is at least 16 pixels high (bitmap height)
Remove all Hints and Warnings
Stay On Top and Dockable context menu items work correctly
Make Toggle Selected work correctly and rename to Clear Selected (more appropriate)

[New Features]
Option to color actual bookmarked line when code context is more then 0
Option to customize color indicators of bookmark lines when context shown
Option to display a horizontal scrollbar if the user wants to

0.1 Initial Release

Known Issues

* Autosize functionality only works when the window is not docked.
* When the current project is a CSharp project, no attempt to retrieve the Method
Name that the bookmark resides in. If someone has some code that can retrieve
this information and want to give it to me, I'm all ears. Note your function
should take a TStrings param (the code) and an Index param (the line the bookmark
is on). Check out the GetSourceMethod function.
* The GetSourceMethod implemented for Delphi projects has some shortcomings -
will not cater for embedded methods for instance.
* If the current project is a Delphi project, and a CSharp file is loaded, the
Bookmark Viewer doesn't attempt to determine if the file is in fact a delphi file
before processing.


* Open the bookview.bdsproj file
* Build package
* Select Components | Install Components and then add BookView.bpl
* New Menu Item appears under the View Menu. The menu caption is Bookmarks.
The default shortcut is Alt+Shift+B - it didn't appear to do anything else on my system.
* To confirm installation an entry into the About Box is made.


Daniel Wischnewski created the bookmark images as seen in the list.
James Jacobson shared the code to make sure the editor was active when a bookmark was selected.

Design Time Info

To view the main dockable form at runtime, download and add Allen Bauer's dummy project to a project group.

Code download:

Article about included files available from BDN:,1410,21114,00.html

   Latest Comments  View All Add New

Move mouse over comment to see the full text

Could not retrieve comments. Please try again later.

Server Response from: ETNACDC03