CONTENTS: Readme and intro to TPack 2.0, 5/16/95
AUDIENCE: Delphi programmers and dedicated component users.
SYNOPSIS: Outlines ideas, scope and contents of package of
          32 delphi components with full source code.
STEP
ONE:      Install 'REGTPACK.PAS' into your favorite library.
DO
NOT:      Do not save changes to tPack forms until it's installed.
ALSO:     Open and compile tpDLL.dpr to make a dll out of the about box.

>SKIP THE INTRO, BRIEF DESCRIPTIONS OF THE COMPONENTS ARE IN REGPACK.PAS
>OR SKIP TO THE LEGALESE AT THE BOTTOM OF THIS FILE.
>OR READ ON:

STEP BY STEP INSTRUCTIONS FOR A QUICK DEMO OF AN IMPORTANT FEATURE @ LINE 40.

Hi,

My Name is Michael Ax and I am an applications developer looking for people
who can get excited about objects and writing code. If you're relatively local,
email me some delphi work. I want to talk to you. Nothing Virtual at this time.
If you are a delphi shareware author who'd like to register this package in trade,
please trade. I'm uncomfortable asking but I do want to learn from your stuff.
email: 71560,1754.

I'm publishing the enclosed components with hopes that perhaps there are some
dedicated hackers out there who will give back some code in turn. I have not
been as excited about programming in my entire career and want to dip my toes
into the water to see if releasing the components and extensions this pack has
will not inspire other more sophisticated components to crop up.

Besides, a demo of how to do form wrappers, information gathering components
and the misc ui elements might just clear up many questions that people are
bound be asking as they are get started.

When you get beyond that level you'll find that using the component extensions
can save you from linking components manually. and can even create components
for you. TRY THIS:

  Open a new form
  Select Page TPack2
  Select the seventh component from the left: TWindowsShell.
  Place the component on the form
  Double click the Flags property.
  Turn on the shlMsgTillReady flag.
  Enter 'NotePad' for the command property.
  Double Click Test.
  Close Notepad.
  There will now be a TWorkingComponent on the form and WindowsShell1 will be
    pointing at it.


  with components descended from TExtendedComponent you can at almost any time use

     cx.MakeIfNil(fFieldName,TClassName);

  to insure that your field is pointing to the first found component of
  that type OR that a new component of that type has been created and prepared.


I hope there are no really bad problems with this code and can only say it's the
best I knew when I wrote it and that I am constantly expanding, consolidating and
improving our code-base. Bug fixes will be released as they are reported. Registered
users can expect 12..36hr email question turnaround time during the week.

Please let me in on anything you could improve and how.

To use this code for hire or in a corporation you must register it.

Without registering you will spend more than $125 to fully realize the
effort put into this code than you would by ordering the help files.

By registering you will get the component/property help file and source to the
component extension, retry, interval and property viewer components. Icons too.

(Component extensions? Yes, they can point components to one-another and
 create needed components on the form they are needed.)

(Retry/Interval? Yes, Check out the IniLink Component and open its file in
 NotePad. blocking it. See the retry? Try 'RetryEdit' on TTableWithRetry.
 Same effect. Same on RetryOpen. Any questions?)

(Viewer component? Yup, a run-time object inspector if you will.)

**Register before August'95 to also get the source for our '75%' effective
group/panel based re-entrant report engine that's been used pretty much as
is since 1/95. we promise, you do not 'print' to the report. (the panels do.)

You absolutely must not include the this code in commercial software without
registering.

Again, if you are just playing, studying, learning, or picking code apart,
you can keep these files around. Register when you realize value.

(watch for design time activity where components create other required
components. the interface only is included in xtension.int)

So, Since I released MAXPACK and then TPack, they've been downloaded over
1700 times. I'm genuinely blown away by that number and have expanded the
orignal TPack to tripple it's scope while barely scratching the surface of
what Delphi has afforded us to create since December.

The time has changed in that Delphi's depth makes it possible to graduate
to component writer in order to produce systems of seemingly endless
sophistication. If you pay the price in study upfront that is. Add to that
the cost and effort of ongoing analysis, design and learning.
So, a seminar won't do and while this explorer's 21 weeks with delphi have
added up to over 1000hrs of actual computer time and have proved to be very
productive, I want to send out the big CAUTION that the sales people leave
out: Numerous 60hr weeks ahead! This stuff is not always cheaper than before!
Not always quicker! Not always easier to do! If you get it right it can and
will snap together and incredible synergies can happen quickly. BUT Design
and Analysis MUST take up large amounts of time. They are required evermore.

READ: Bruce Webster's 'PitFalls of Object Oriented Development'.
 I've stepped into most of his traps and think it's the most relevant
book any object designer could read.

     (Again, I'd really appreciate your opinion and thoughts
     on this package and will be open to return the favor.)

   Comments/Thoughts/Code of interest  71560,1754.

   Beta/N.D. Ok.

  Oh!  FWIW, If you are in the Westchester/Stamford region, email me!
  We're running the oldest Delphi user group in existance out east in
  (since January'95 :) and meet every other wednesday from 6:30 till
  10 or so. We're just about to get to big to get technical but call!


{---------------------------------------------------------------------}
I already have copious notes about what I will do to evolve some of
the components included here:

Next revision will positively:
  use pStrings everywhere, elimating some remaining strings and zstrings.
  use Readonly property editors rather than 'SetNoString' type procs
  use resources for strings and graphics
  correct every bug reported by users.

Other packages that might make it:

  The Datasource reporter outlined above.

  A 8 layer descendant of TTAble incorporating journaling, add/edit
  delete logging, purge, rollback and multi-site/notebook  support.
  SQL tested and in production use.

  Numerous database integrated dialogs and smart lists that build
  menus and userinterfaces on the fly. Sortof like an application
  shell, done not with an expert but rather by having components link
  and tango with each other as they start.

  ( ^^ does it make sense now that I'm looking for help? If you
    can return phonecalls and show up on time, I need an apprentice.
    Short of that I'll need people's registrations to publish more.)

{---------------------------------------------------------------------}
5/16 lots of changes and many new pieces. added invoice!
4/11 Rzlabel bug/reference removed; Added TiniFileLink w demo page
      removed graphics from splash screen to make dfm much smaller.
4/10 Initial release

{---------------------------------------------------------------------}

Last but not least, here is the disclaimer for TPack 2.0  5/16/95:

THESE COMPONENTS ARE DELIVERED AS IS. THERE IS NO REASON TO THINK THAT
THEY SHOULD NOT WORK AS CLAIMED, BUT JUST IN CASE, LET ME DISCLAIM THAT
THEY DO ANYTHING BUT TAKE UP SPACE ON YOUR DISK. NEITHER MICHAEL AX NOR
AX-SYSTEMS CAN OR SHOULD BE HELD LIABLE IF YOU LOOSE TIME, MONEY, PRESTIGE
FOR EVEN KNOWING ABOUT THIS CODE MUCH LESS RUNNING IT. EVERYTHING IN HERE
IS EITHER MY OWN IDEA OR COPYRIGHTED BY BORLAND OR SOMEONE I DID MY BEST TO
IDENTIFY. YOU DO NOT OWN THESE IDEAS. YOU MUST UNDERSTAND THAT YOU CAN LOOSE
SERIOUS AMOUNTS OF TIME WHEN MESSING AROUND WITH COMPONENTS. USE AT YOUR OWN
RISK. FIGURE IT OUT. SMILE. HAVE FUN. GOOD CODE COMES FROM WRITING BAD CODE.

{---------------------------------------------------------------------}
COPYRIGHT: (C)'1995 Michael/Ax-Systems.
  (Authors.. please recognize this and give credit when due. thanks.)
