What: initial proposal to restructure JVCL 1.3
Qho: Peter Thrnqvist [peter3@peter3.com]
When: 2002-05-15

Criteria:
=========
* Cannot be used at design-time, all work is done at run-time
* Work can be duplicated with very few lines of code or by calling a single function
* Duplicates of other components in the JVCL


SUGGESTED CHANGES TO JVCL:
==========================

JvFlashApplication,JvFlashForm - remove (call FlashWindow directly)
JvTransparentForm, JvTransForm - merge?
JvMemo, JvMemoEx, JvDisplayMemo, JvCaretMemo, JvPopUpMenu - merge?
JvEdit, JvSingleLineMemo,JvAlignedEdit,JvCaretEdit, JvExEdit - merge?
JvCDUtils - change into functions(Open / Close CD Drive)
JvScreenCapture - change into functions (CaptureScreen, CaptureRect)
JvDeviceChanged - change to TObject?
JvWavePlayer   - change to TObject?
JvCreatedWith - (basically a collection of 15 different "Powered with Delphi" images) - remove? put images in jvcl\images folder?
JvImageSplit - change to TObject?
JvJoystick - change to TObject?
JvScreenResolution - change to TObject?
JvScreenCanvas - change to TObject/TCanvas?
JvAutoSizeCompo - obsolete (forms have AutoSize property) - remove?
JvFormButton, JvCaptionButton - merge?
JvChrono  - change to TObject or remove?
JvComplex - change to TObject?
JvCPLLauncher - change to function (LaunchCPL)?
JvCreateShortcut - change to TObject? Isn't this available in JCL?
JvFileUtils,JvShFileOperation - merge?
JvAlarms - change to use TCollection so the individual alarms can be edited in the OI?
JvExitWindows - remove, call ExitWindowsEx directly
TJvTraybar - change to TObject? (hides / shows the traybar etc)
TJvInstances - change to TObject? JCL?
JvDirectories - change to TObject? JCL?
JvDrivePresent - change to function (DiskInDrive)
JvExecute - change to functions? already in JCL?
JvSerialMaker - change to TObject? JCL?
JvSafeMode - change to TObject? JCL?
JvSendKey  - change to function (SendKey) or use Delphi supplied SendKeys unit?
JvRecentDocs  - change to TObject? JCL?
JvFileInformations, JvFileInfo  - merge/change to function (GetFileInformation)? JCL?
JvAssociateExtension - change to TObject? JCL?
JvKeyboardStates - change to TObject? JCL?
JvSearchFile,JvSearchFiles,JvFileTreeScan - merge?
JvApplication - remove (call Application properties directly)?
JvClipboardViewer - add an Enabled property?
JvSystemColors - remove - use color variables directly (i.e clBtnFace, clInactiveBorder etc)?
JvRunOnStartup - change to functions / TObject?
JvDirectorySpy,JvChangeNotify - merge?
JvWindowsTitle - change to functions / TObject?
JvLogFile  - change to TObject?
JvRle - change to TObject?
JvCABFile - change to TObject?
JvRegion - change to TObject?
JvCaesarCipher - change to TObject?
JvVigenereCipher - change to TObject?
JvXorCipher - change to TObject?
JvPasswordForm, JvLoginDlg, JvSerialDlg - replace with "DualInputBox" function?
JvFatalAppExit - remove (call FatalAppExit directly)
JvMessageBeep - remove (call Messagebeep directly)
JvTipsOfDay,JvTipWindow - merge?
JvFindFiles,JvFindFilesDialog2 - merge?
JvBrowseFolder,JvSelectDirectory,JvShellBrowser - merge?
JvInputBox - remove (call InputBox directly)
JvDisconnectNetwork, JvConnectNetwork - remove (call WNetConnectionDialog/WNetDisconnectDialog directly)
JvClock - remove
JvScrollText,JvContentScroller - merge?
JvFontComboBox,JvFontBox,JvFontComboBox2 - merge?
JvImageListBox,JvReorderListbox,JvAlignListbox,JvListBox,JvBMPListBox,JvExListBox,JvMultiLineListBox,JvListBox3 - merge?
JvImageComboBox,JvComboBox3 - merge?
JvOutlookPanel - remove?
JvRegistryViewer, JvRegistryTreeView - merge?
JvMonthCalendar,JvMonthCalendar2 - merge?
JvHotKey, JvHotKeyEx - merge?
JvSurfTo - remove, use ShellExecute directly
JvMailTo - remove, use JvMail instead
JvImageSurfTo, JvImageMailTo - remove, use ShellExecute directly w. TImage
JvCurrencyEdit,JvYearEdit,JvIntegerEdit,JvFloatEdit,JvFloatEdit2 - merge?
JvStringListToHtml - change to TObject?
JvRichEditToHtml - change to TObject?
JvRgbToHtml - change to TObject?
JvStrToHtml - change to TObject?
JvFormToHtml - change to TObject?
JvPageControl, JvPageControl2, JvButtonPageControl - merge?
JvTabControl, JvExTabControl, JvOwnerDrawPageControl - merge?
JvIpAddress, JvIPBox - merge?
JvProgressBar, JvProgressBar2 - merge?
JvFormatDrive2- remove (duplicate of JvFormatDialog)
JvStringGrid,JvControlStringGrid,JvExStringGrid,JvScrollEVStringGrid - merge?
JvTreeView, JvTreeView2 - merge?
"Jv WinDialogs" tab - replace all with direct function calls
JvYesNoPicker  - remove - don't see a reason for keeping this component
JvDateTimeNullPicker - remove - don't see a reason for keeping this component

