MBTools MbMRUList Component for Delphi 3.

------------------------------------------------
Installation Instructions for Evaluation Version
------------------------------------------------

Install the MbMRUList component in the Delphi IDE:
	1. Open then Install Components dialog box:
		- Select Install Packages from the Components menu
	2. Add the Component
		- Browse to locate the MRU30.DPL file.
	3. Click the OK Button. Delphi will add the MbMRUList component to the MBTools page of the component palette.


-----------
Description
-----------

The TMbMRUList component is a decendent of the TMbCustomMRUList. This is a decendent of the TComponent component. The TMbMRUList component is intended to 
be used for managing, saving and loading an Most Recently Used File List (MRU list).

The TMbMRUList component may only be dropped on TForm descendents. It is designed to automatically save and load
the MRU list to a savelocation, like the Registry or IniFile. You can specify the length of the list (in items),
the view properties of the items and the TMenuItem from whitch the MRU List descends.


------
Types:
------

Type TMbMRULength = 1..16;
Type TMbMRUClickEvent = procedure(Sender: TObject; MenuItem: TMenuItem;
                              Const FileName: String; MRUIndex: integer; var CanDelete: boolean) of object;
Type TMbMRUDisplay = (mdFullPath, mdFileOnly, mdAbbPath);
Type TMbSaveLocation = (slRegistry, slIniFile, slUser);
Type TMbRegistryRootKey = (rrCurrentUser, rrLocalMachine);


-----------
Properties:
-----------


Property SaveLocation: TMbSaveLocation;

	Specifies where to store the MRUList. 
	- Selecting slRegistry will cause the MRUList to be stored in the Registry.
	- Selecting slIniFile is similar to slRegistry, but saving the MRUList to IniFile.  
	- Selecting slUser will cause the TMbMRUList component to trigger OnUserLoad and OnUserSave events for the MRUList. The events could be used in combination with the LoadFromStream and SaveToStream methods.


Property RegistryRootKey: TMbRegistryRootKey 

	Specifies the root key when the save location is the Registry.


Property CompanyName: String 

	This is used to create the base key for the Registry.  
	If the MRUList is not going to be saved in the Registry, this value has no meaning.  


Property Software Name: String 

	This is used to create the base key for the Registry.  
	If the MRUList is not going to be saved in the Registry, this value has no meaning.  


Property Software Version: String

	This is used to create the base key for the Registry.  
	If the MRUList is not going to be saved in the Registry, this value has no meaning.  


Property MRUDisplay: TMbMRUDisplay

	Specifies how each MRU item will appear in the menu.


Property MRUDisplayWidth: integer

	Specifies the maximum width (in pixels) of a MRU item appearing in the menu.  
	This value is only meaningful if the MRUDisplay property is set to mdAbbPath.


Property MRULength: TMbMRULength

	Specifies the length of the MRU list in number of items.  
	The valid range is 1 - 16.  
		

Property MRUMenuItem: TMenuItem

	Specifies the menu item to which the MRU list will be appended.  
	If the menu item is not empy, a separator will be placed before the items.
	

Property MRUCount: integer

	Number of MRUItems in the MRUList


Property MRUFileValidate: boolean

	Check if Added FileName exists. If the File doesn't exist, the FileName will not
	be added to the MRUList. When checked, this also applies when loading the MRUList.


-------
Events:
-------

Event OnMRUClick: TMbMRUClickEvent

	This event is triggered whenever one of the MRU menu items is clicked.  

		
Event OnUserLoad: TNotifyEvent

	This event is triggered when you have selected User-Defined for the storage location in the MRUList component and the MRUList is being restored.  
	You can use this to create your own save and Load method such as storing the MRUList in a database or in an initialization file. 
	This event could also be used in combination with the LoadFromStream methode.


Event OnUserSave: TNotifyEvent

	This event is triggered when you have selected User-Defined for the storage location in the MRUList component and the MRUList is being restored.  
	You can use this to create your own save and Load method such as storing the MRUList in a database or in an initialization file. 
	This event could also be used in combination with the LoadFromStream methode.
	

--------
Methods:
--------

Mehod MRUAdd(Const FileName: String)

	This method adds a new MRU filename to the MRU list.  


Method MRUAddFiles(FileNames: TStrings)

	This method adds new MRU filenames to the MRU list.  


Method MRUClear
	
	This method clears the MRUList.


Method LoadFromStream(Stream: TStream)

	This method is used to Load the MRUList from a TStream.  
	The caller must provide a valid TStream object as the parameter to the method.  
	The MbMRUList component will begin reading from the current stream position and will not seek for the information in the TStream.  
	Therefore, you must use caution when saving to and restoring from TStreams.


Mehod SaveToStream(Stream: TStream)

	This method is used to save the MRUList to a TStream.  
	The caller must provide a valid TStream object.  
	Use caution when saving and restoring information in TStreams.  
	The MbMRUList will begin writing to the TStream at the current location.  
	It will not seek to the beginning or end of the TStream.


Method LoadMRUList

	This method us used to load the MRUList from a SaveLocation.
	

Method SaveMRUList

	This method us used to Save the MRUList to a SaveLocation.	




If you would like to purchase the full version of MbMRUList (including source code), 
please contact MBTools at:

E-Mail: sales@buitenkamp.demon.nl


Comments, suggestions etc are also welcome at:

E-Mail: mruList@buitenkamp.demon.nl



Thanks for your interest in MbMRUList.