.
                      OBJECT VARIABLES
                      ================
.
                      *** IMPORTANT ***
   TAKKY will find and return, the *first* object variable
                  that it gets a "hit" on!
                      *** IMPORTANT ***
.
If you have a firm grasp of the INSTR function? You have a
 *perfect* idea of how TAKKY resolves object variables. 
.
When you reference an object variable, TAKKY maintains an
 otherwise ordinary string array. This string array contains
 the object variable names, in their *complete* form. A
 *matching* otherwise ordinary string array contains the
 corresponding values those object variables contain at that
 moment in time.
.
SIMPLE EXAMPLE: the following short text, is the "LastRun"
 file of a simple, one-form project start-up.  after the
 definition file as the header, and a mid-portion of
 environment information... the final section is the actual
 OBJECT VARIABLES that TAKKY had to create.
.
NOTE: that is the PRE-startup definition file. TAKKY closed
 with *considerably* more object variables, which got saved
 to the same definition file, which is the second text file
 here 
.
       [[[I opened TAKKY-IDE on this 1 form start-up]]] 
.
pphead.begin;     project name
 .form1.begin;  name of form
  .title=form1;
  .label1.begin; name of label
   .text=label1;
  .label1.end;
 .form1.end;
pphead.end;
================================================================
[LINUX][64BIT]
09-23-2021 01:30:21
----------------------------------------------------------------
CodeBase = TakkyIDE v0.0.2 (pre-BETA)
----------------------------------------------------------------
     QB64 start = /home/sedstar/Desktop/qb64
    Takky start = /home/sedstar/Desktop/qb64/programs/CODENAME.Takky
================================================================
================================================================
Last Run Object Variables @ initialization
================================================================
 1                          pphead.form1.title = form1;
 2                    pphead.form1.label1.text = label1;
 3                                 pphead.wide = 640;
 4                                 pphead.tall = 480;
==================================================================================
here's what it saved:
[[[I more or less just opened it and immediately saved it.
 you can see here, the IDENTICAL *structure*, just with
 vastly more PROPERTIES... Due to TAKKY setting defaults
 opening a new bare-bones project. ]]]
==================================================================================
pphead.begin;
.wide=640;
.tall=480;
;--->insert head;
  .form1.begin;   pphead
    .title=form1;   pphead.form1
    .visible=1;   pphead.form1
    .x1=0;   pphead.form1
    .y1=0;   pphead.form1
    .x2=100;   pphead.form1
    .y2=100;   pphead.form1
    .color=255255255;   pphead.form1
    .backcolor=000000000;   pphead.form1
    .killswitch=1;   pphead.form1
    .label1.begin;   form1
      .text=label1;   pphead.form1.label1
      .visible=1;   pphead.form1.label1
      .x1=0;   pphead.form1.label1
      .y1=0;   pphead.form1.label1
      .x2=50;   pphead.form1.label1
      .y2=25;   pphead.form1.label1
      .color=255255255;   pphead.form1.label1
      .border=1;   pphead.form1.label1
    .label1.end;   form1
;--->insert ctrl
  .form1.end;   pphead
;--->insert tail 
pphead.end;
================================================================
[LINUX][64BIT]
09-24-2021 22:30:36
----------------------------------------------------------------
CodeBase = TakkyIDE v0.0.2 (pre-BETA)
----------------------------------------------------------------
     QB64 start = /home/sedstar/Desktop/qb64
    Takky start = /home/sedstar/Desktop/qb64/programs/CODENAME.Takky
================================================================
================================================================
Last Run Object Variables @ initialization
================================================================
 1                                 pphead.wide = 640;
 2                                 pphead.tall = 480;
 3                          pphead.form1.title = form1;
 4                        pphead.form1.visible = 1;
 5                             pphead.form1.x1 = 0;
 6                             pphead.form1.y1 = 0;
 7                             pphead.form1.x2 = 100;
 8                             pphead.form1.y2 = 100;
 9                          pphead.form1.color = 255255255;
 10                     pphead.form1.backcolor = 000000000;
 11                    pphead.form1.killswitch = 1;
 12                   pphead.form1.label1.text = label1;
 13                pphead.form1.label1.visible = 1;
 14                     pphead.form1.label1.x1 = 0;
 15                     pphead.form1.label1.y1 = 0;
 16                     pphead.form1.label1.x2 = 50;
 17                     pphead.form1.label1.y2 = 25;
 18                  pphead.form1.label1.color = 255255255;
 19                 pphead.form1.label1.border = 1;
.
You will note, that the STRUCTURE is IDENTICAL, only the
 number of properties has increased. This is due to "opening
 and saving" and re-closing the first start-up.
 (Takky naturally assigns defaults)
.
Also note, that TAKKY has "marked" the definition file, for
 faster future use, with special ;REMarks.
 The "--->insert ctrl" is a perfect location to "add" more
 controls by code-editing the DEF$() array. Each form has a
 "ctrl insert" location marked. "HEAD" and "TAIL" locations
 likewise, are the perfect places to add a form in code,
 again, by code editing the definition file.
.
NOTE: it wouldn't take much time to learn, by looking at
 definition files... that a person *could* write some CODE
 that writes a text file out, that just "happens" to be a
 perfect definition file. You could "spontaneously" write
 out the text file, then fire up TAKKY on it.
.
adjust the properties before you display the forms. Bingo,
 spontaneously generated forms.
.
Also note, the way TAKKY "proves" *each* and *every*
 definition file entry, with a Takky-auto-generated
 ;REMarks that list the parent objects to the full name of
 the definition property... while maintaining pretty-printing
 for easy HUMAN viewing and intuitively understanding.
.
If you are interested in more technical information on
 OBJECT VARIABLES, thats the next section.
.
