home *** CD-ROM | disk | FTP | other *** search
/ QBasic & Borland Pascal & C / Delphi5.iso / Basic / Samples / VSVBX / VSVBX.ZIP / VERSION.TXT < prev    next >
Encoding:
Text File  |  1994-02-24  |  15.2 KB  |  418 lines

  1. ==========================================================================
  2. VSVBX - VideoSoft Custom Control Library 
  3. ==========================================================================
  4.  
  5. Vendor Information
  6.         VideoSoft
  7.         2625 Alcatraz Avenue, Suite 271
  8.         Berkeley, California 94705
  9.         Phone (510) 547-7295
  10.         FAX   (510) 547-1084
  11.         Compuserve: 71552,3052
  12.         Internet:   71552,3052@compuserve.com
  13.  
  14. Distributor Information
  15.         Compuserve
  16.                 at the CIS prompt type "go swreg"
  17.                 Product ID 1084
  18.         Public Software Library
  19.                 1-800-242-4775
  20.                 FAX 1-713-524-6398
  21.                 Product ID 10941
  22.                 American Express/MC/VISA/Discover
  23.  
  24. ==========================================================================
  25. Version History
  26.  
  27.       Digit changes indicate new versions.  New versions reflect major 
  28.       changes in functionality; they typically require upgrades and new
  29.       developer's license files (.DEV).
  30.       
  31.       Letter changes indicate maintenance releases with minor bug fixes or
  32.       subtle improvements.
  33.  
  34.       Recent versions are listed before older ones.
  35. ==========================================================================
  36. ----------------------------
  37. 4.0 Feb 1994
  38. ----------------------------
  39.  
  40. NEW LOOK FOR THE INDEXTAB
  41.  
  42.       The new style looks like the tabs used in Word for Windows and Excel.  
  43.       With the new look, adjacent tabs no longer overlap, so we added optional 
  44.       "dog-ears" to allow for tab scrolling with the mouse.
  45.       
  46.       The new IndexTab also allows hot keys to be used with vertical
  47.       text (when the Position property is set to Left, Right, or Right
  48.       Face In).
  49.       
  50. DESIGN-TIME AUTO-SWITCHING FOR THE INDEXTAB
  51.       
  52.       The IndexTab now switches child containers at design time.  This
  53.       makes form design much easier.
  54.       
  55.       When AutoSwitch is True, double-click on any tab with the RIGHT
  56.       mouse button to bring up the appropriate child container, just
  57.       like at runtime.  Then you can easily lay out each container.
  58.       
  59.       To see all containers, double-click on the blank space next to 
  60.       the last tab or on the current tab itself.  All containers will appear
  61.       side-by-side, arranged according to their tab sequence.  To change the
  62.       tab sequnce, just drag the controls around.
  63.       
  64.       If you don't want to use this new feature, set AutoSwitch to False.
  65.       
  66. FOCUS TRACKING FOR THE INDEXTAB
  67.  
  68.       The IndexTab now tracks mouse movements.  When you push the mouse
  69.       button, it starts tracking the mouse.  As you drag, the current tab
  70.       follows the mouse, but you don't get a click event or container
  71.       switch until you release the mouse button.
  72.       
  73.       You can find which tab you the are moving the mouse over by trapping
  74.       the MouseMove event and reading the CurrTab property.  This is useful
  75.       if you wish to display context-sensitive help for each tab.
  76.  
  77. BOLDCURRENT PROPERTY FOR THE INDEXTAB
  78.  
  79.       When this property is set to TRUE, the IndexTab shows the current
  80.       tab's caption using a bold font.
  81.  
  82. BORDER PROPERTY FOR THE INDEXTAB
  83.  
  84.       This property determines the width of the border around the containers
  85.       inside the IndexTab.  This border is in addition to the bevel automatically
  86.       provided when one of the 3D styles is used.
  87.  
  88. DOGEARS PROPERTY FOR THE INDEXTAB
  89.  
  90.       This property determines whether the IndexTab should display "dog-ears"
  91.       at the start and end of a tab row to indicate the user can scroll the
  92.       tabs.  If this property is set to TRUE, the dog-ears appear automatically
  93.       when the tabs spill off the page and you can use the mouse to scroll the
  94.       tabs.
  95.       
  96. TABPICTURE, TABCOLOR, TABENABLED PROPERTIES FOR THE INDEXTAB
  97.  
  98.       These new property arrays allow you to attach a picture (bitmap or icon)
  99.       to each tab, to control the color of individual tabs, and to enable
  100.       and disable specific tabs so they cannot be selected with the mouse
  101.       or keyboard.
  102.       
  103. STYLE PROPERTY FOR THE ELASTIC
  104.  
  105.       This new property makes the Elastic look similar to the standard
  106.       frame control, but retaining its resizing and 3D capabilities.
  107.       The "Style" property has three settings:
  108.       0 - Default:      this is the original Elastic Style.
  109.       1 - Frame Top:    this looks like the standard frame.
  110.       2 - Frame Bottom: this looks like the standard frame but with
  111.                         the caption below the Elastc instead of across 
  112.                         the top.
  113.       
  114. TAGPOSITION PROPERTY FOR THE ELASTIC
  115.       
  116.       This new property allows the TagLabels to be placed either to the
  117.       left or above each tagged control.  In previous  versions, the 
  118.       TagLabels always appeared to the left of the tagged controls. 
  119.       Label sizes are stil determined by the TagWidth property.
  120.       
  121. NEW SETTINGS FOR THE ELASTIC'S BEVELINNER AND BEVELOUTER PROPERTIES
  122.    
  123.       In addition to the Inset and Raised settings, the Elastic
  124.       now has "5 - Fillet", "6 - Groove", and "7 - Shadow" 3D effects.
  125.       Obs: The Shadow effect is available for inner bevels only.
  126.  
  127. SHADOWCOLOR PROPERTY FOR THE ELASTIC
  128.  
  129.       The "ShadowColor" property allows you to define the color for
  130.       the shadow created when the "BevelInner" property is set to
  131.       "7 - Shadow".
  132.  
  133. TABCAPTION BUG IN THE INDEXTAB
  134.       
  135.       The index tab would not change the last tab caption properly
  136.       if the old last tab caption was an empty string.  This was fixed.
  137.       
  138. QUOTE BUG IN THE AWK
  139.  
  140.       The Awk did not handle embedded quotes correctly.  Now it does:
  141.       Only quotes that appear in the beginning of a field are seen as
  142.       quotes.  Embedded quotes are seen as regular characters.
  143.       
  144. FILTERQUOTES PROPERTY FOR THE AWK
  145.   
  146.       The "FilterQuotes" property forces the Awk to remove leading and
  147.       trailing quotes from fields when "MatchQuotes" is set to True.
  148.       
  149.       For example,
  150.         VSAwk1 = "Name 'John McAdam' Age 23"
  151.         VSAwk1.MatchQuotes = True
  152.         VSAwk1.FilterQuotes = False
  153.         ? VSAwk1.F(2)
  154.           'John McAdam'
  155.         VSAwk1.FilterQuotes = True
  156.         ? VSAwk1.F(2)
  157.           John McAdam
  158.           
  159. VAL PROPERTY FOR THE AWK
  160.  
  161.       This new property gives the Awk a powerful function evaluator.
  162.       Set the Caption property to a mathematical expression and the
  163.       "Val" property returns its value.
  164.       
  165.       For example,
  166.         VSAwk1 = "(1+2)*3^2"
  167.         ? VSAwk1.Val
  168.           27
  169.       
  170.       The following operators are supported, according to their
  171.       priority:
  172.       
  173.       Prty Op  Description       Op  Description
  174.       ---- --  ---------------   --  ---------------
  175.        6:  ()  subexpressions
  176.        5:  ^   raise to power
  177.        4:  *   times             /   divide
  178.            %   modulus           \   divide and truncate
  179.        3:  +   plus              -   minus
  180.        2:  >   greater           >=  greater or equal
  181.            <   less              <=  less or equal
  182.            =   equal             <>  not equal
  183.        1:  &   and               |   or
  184.             
  185.       The following built-in functions are supported (they are
  186.       case-insensitive):
  187.       
  188.       abs, sin, cos, tan, atn, log, exp
  189.       
  190.       The Awk evaluator also supports variables.  When the expression
  191.       parser finds a token it cannot interpret, if fires the new Awk
  192.       event "Variable".  This event has three parameters:
  193.       
  194.       Variable - Name of the variable that needs to be evaluated
  195.       Value    - Value of the variable
  196.       Accept   - Flag that indicates the variable is valid
  197.       
  198.       Your event handler will typically read the variable name from
  199.       the "Variable" parameter, supply its value through the "Value"
  200.       parameter, and set the "Accept" flag to indicate the variable
  201.       is valid.  If the variable name is not valid, return without
  202.       setting the"accept" parameter and Awk will generate a "Bad Token"
  203.       error.
  204.       
  205.       For example, if your program defines variables "x" and "y", your
  206.       event handler might look like this:
  207.  
  208.       Sub VSAwk1_Variable (Variable$, Value!, Accept%)
  209.         Accept% = True
  210.         Select Case Variable$
  211.           Case "X", "x"
  212.             Value! = GlobalX!
  213.           Case "Y", "y"
  214.             Value! = GlobalY!
  215.           Case Else
  216.             Accept% = False ' unrecognized variable
  217.         End Select
  218.       End Sub
  219.       
  220.       *Obs: To keep the code fast and compact, reentrant calls are not
  221.       allowed.  This means you may not use the "Val" property while 
  222.       handling the "Variable" event.
  223.       
  224.       If an error occurs while evaluating an expression, the
  225.       "Error" property is set to one of the codes listed below.
  226.       *Always* check the "Error" property after using "Val".
  227.        6 - Syntax               
  228.        7 - Bad Token            
  229.        8 - Unbalanced Brackets
  230.        9 - Division by Zero
  231.       10 - Not Reentrant (see *Obs. above)
  232.  
  233. ----------------------------
  234. 3.0d Nov 1993
  235. ----------------------------
  236.  
  237. VSVBX LOOKS HARDER FOR LICENSE AND HELP FILES
  238.                 
  239.       Previous versions looked for the license file in the directory where
  240.       the VBX was loaded from, and showed the about box if the license
  241.       file was not found or if the license file was invalid.
  242.   
  243.       The new version still looks for license and help files in the
  244.       directory where the VBX was loaded from.  If it doesn't find the
  245.       files there, it looks in the Windows\System directory and then in
  246.       the Windows diretory.
  247.       
  248.       If it can't find the license file anywhere, it shows the about box.
  249.       If it finds an invalid license file (e.g., older version), it
  250.       informs the user.
  251.       
  252. NICER-LOOKING MOUSE POINTERS FOR SPLITTER BARS
  253.  
  254.       We finally gave in and made custom mouse pointers for resizing
  255.       windows with splitter bars.  The new pointers look like the ones
  256.       in the Windows file manager.
  257.  
  258. INDEXTAB ALIGN PROPERTY BUG FIXED
  259.       
  260.       When the IndexTab's Align property was set to anything other than 
  261.       "0 - None", VB sometimes complained of errors while loading the form,
  262.       and created a log file saying that the Width property could not be set.
  263.       
  264.       We have never seen this documented anywhere, but apparently the 
  265.       standard Align property must be declared AFTER the standard Left and
  266.       Width properties.  Note that this has to do with the way the VBX 
  267.       itself is written, not with VB programs.
  268.  
  269.       We moved the Align property to the proper position (after Left and Width)
  270.       and the problem disappeared.  Unfortunately, this may cause problems 
  271.       when loading projects created with previous versions of VSVBX that 
  272.       
  273.       1 - Had IndexTab controls with the Align property set to Align Top or
  274.           Align Bottom AND
  275.       2 - Were saved in binary format or compiled as EXEs.
  276.  
  277.       The solution to this is as follows:
  278.         
  279.       1 - Load the old project with the old VBX (3.0c or older).
  280.       2 - Save the project in text format.
  281.       3 - Quit VB.
  282.       4 - Load the new VBX (3.0d or newer).
  283.       5 - Restart VB and reload the project.
  284.       6 - Save or compile as you wish.
  285.       
  286.       We realize this may cause problems to some of our users and wish we
  287.       could have fixed this problem without affecting older projects,
  288.       but it really was not possible.
  289.       
  290. PROPORTIONAL SPACING BUG IN THE ELASTIC
  291.  
  292.       ** Fixed in 3.0d:
  293.       Set the Elastic's AutoSizeChildren property to '7 - Proportional', then
  294.       to '0 - None'.  Move the child controls around the Elastic.  Set
  295.       AutoSizeChildren back to Proportional.  The controls return to their
  296.       original position.  This has been fixed in 3.0d.
  297.  
  298. ----------------------------
  299. 3.0c Oct 1993
  300. ----------------------------
  301.  
  302. NEW SETTING FOR INDEXTAB POSITION
  303.  
  304.       Due to popular demand, we added the Right Face In tab position.
  305.       This is the same as the original Right position but with text
  306.       facing into the form instead of out.
  307.       
  308. INDEXTAB DID NOT FIRE THE CLICK EVENT
  309.  
  310.       ** Fixed in 3.0c:
  311.       The IndexTab did not fire the Click event if you set the CurrTab
  312.       property to the same value it already had.
  313.  
  314. ELASTIC RESIZING WHEN BORDERWIDTH AND CHILDSPACING = 0
  315.  
  316.       ** Fixed in 3.0c:
  317.       Sometimes the Elastic failed to resize itself when the BorderWidth
  318.       and ChildSpacing properties were set to zero.
  319.  
  320. ----------------------------
  321. 3.0b Oct 1993
  322. ----------------------------
  323.  
  324. ELASTIC RESIZING IN MDI FORMS
  325.  
  326.       ** Fixed in 3.0b:
  327.       The Elastic did not get along with MDI forms.  Now it does.
  328.         
  329. BETTER LOOKING 3D FOR THE INDEXTAB
  330.  
  331.       The new 3D appearance follows Microsoft's new standard style
  332.       for IndexTabs.
  333.         
  334. ----------------------------
  335. 3.0a Oct 1993
  336. ----------------------------
  337.  
  338. INDEXTAB REPAINTING WAS OVER-OPTIMIZED
  339.  
  340.       ** Fixed in 3.0a:
  341.       The IndexTab sometimes skipped a few steps when repainting the
  342.       screen.  This was done to improve speed, but it worked only 99%
  343.       of the time, and sometimes left parts of the window blank.
  344.   
  345. UNLOADING FORMS DURING INDEXTAB CLICK EVENT
  346.  
  347.       ** Fixed in 3.0a:
  348.       Unloading a form during an IndexTab Click event procedure sometimes
  349.       caused a GPF.
  350.  
  351. ==========================
  352. VERSION 3.0 Sep 1993
  353. ==========================
  354.  
  355. GENERAL IMPROVEMENTS
  356.       
  357.       Faster loading forms, smaller VBX, new manual, 20+ new features.
  358.  
  359. INDEXTAB IMPROVEMENTS
  360.  
  361.       ** New Properties and Settings:
  362.       BackSheets, TabCaption, TabsPerPage, TabOutLineColor,
  363.       Chamfered Style
  364.       
  365.       ** Other improvements:
  366.           Enhanced 3D look, smoother tab scrolling, faster flicker-free redraws,
  367.           set tab order based on position rather than ZOrder, automatic TrueType
  368.           font conversion for side tabs.
  369.  
  370. ELASTIC IMPROVEMENTS
  371.  
  372.       ** New Properties and Settings:
  373.       AccessKey, BevelChildren, MaxChildSize, MinChildSize, WordWrap.
  374.           AutoSizeChildren has three new settings: 'Elastics Horizontally',
  375.           'Elastics Vertically', and 'Proportional'.
  376.  
  377. AWK IMPROVEMENTS
  378.  
  379.       ** New Properties and Settings:
  380.       Match Quotes, PosAt, FileMode.
  381.       The FS property has improved features, and the maximum line length
  382.       was increased from 255 bytes to 64k.
  383.  
  384.  
  385. -------------------
  386. 2.2c Jul 1993
  387. -------------------
  388.  
  389. MISSING PROPERTIES ADDED TO ELASTIC AND INDEXTAB
  390.  
  391.       The properties are Hwnd and ContextID.  We also added a ShowFocusRect
  392.       property to the IndexTab.
  393.  
  394. UNEVEN SPACING SCRAMBLING CHILDREN
  395.  
  396.       ** Fixed in 2.2c:
  397.       Shrinking and growing an Elastic with AutoSizeChildren set to Uneven
  398.       sometimes changed to order of the child controls.
  399.         
  400.  
  401. -------------------
  402. 2.2a Jul 1993
  403. -------------------
  404.  
  405. ELASTIC HANDLING GRAPHICAL CONTROLS
  406.  
  407.       Reduced flicker and improved speed when stretching graphical
  408.       controls (Image, Shape, and Label controls).
  409.  
  410. MULTIPLE ACCESS KEYS IN TABS
  411.  
  412.       Each tab can have its own access (alt, &) key.
  413.  
  414. ==========================
  415. VERSION 2.2 May 1993
  416. ==========================
  417.       
  418.