ButtonMaker Fixed Bugs


Select the Edit->Find menu option at the top of this page to search for a particular keyword or update number.

Technical Issues Addressed -- Release Date 7/17/98 -- Version 1.1.00

Button Designer
  • Button templates applied to the button are now scaled properly to fit the button size. (JOK5310)
vaBtn control
  • An error no longer occurs when you have a group of buttons on a form and you unload the form in the Click event. (JAP7602)
  • The fpBtn control no longer receives the focus when you change the Visible property from False to True. (GIL1676)
  • When one button overlaps another button and the button on top displays a gray area, you can no longer see the window or bitmap in the gray area. (JOK5108)
vaBln control
  • Visual Basic no longer GPFs when you stop the project before it creates the fpBln control. (JAP7693)
  • The balloon no longer pops up when the user selects a item from a menu that overlaps the target control. (JOK1931)
  • The BlnSetParent function now works correctly when you have target controls on more than one form and you change the parent window. (JOK2992)

Technical Issues Addressed -- Release Date 5/06/97 -- Version 1.0.10

Both controls
  • When using AppStudio in Visual C++, pictures now load without causing an API call message. (SEL8173)
vaBtn control
  • Setting the CellOrientation property to 2 (Rotate Down) or 3 (Rotate Up) now works correctly and no longer causes a Smart Heap error. (BOJ3909)
  • Setting the SegmentIndex property using the property pages no longer causes a GPF. (GRB1915)
  • When the Button control is accessed from Visual Text, the button now generates a Click event. (GRB5144)
  • In Visual Basic, the Button ActiveX control now prints properly when you choose Print, Form Image from the File menu. (JAP3509)
  • The button now paints properly when background color is changed for the default cell. (JAP5907)
  • When the BackStyle property is set to 0 (Transparent), thebutton no longer has a redraw problem with the three-dimensional border. (JAP6459)
  • The Default and Cancel properties are not available for the VBX controls. These properties are available for DLL controls through window styles and for ActiveX controls if the container supports them. (JOK772)
  • The Button control will no longer try to paint the portion of text or a picture that extends outside the boundaries of a cell. That portion will no longer be visible. (KEM99)
  • A button with a transparent background style that is drawn on top of another button now redraws correctly when the Picture property is set for the button underneath the transparent button.(SCS2902)
  • The GroupSelect property setting 3 (One and Only One) now works properly. (SCS3732)
  • When the button has segment shapes other than default, assigning an integer to a variable that is declared as a double no longer causes an overflow message. (SCS4733)
  • The NoPointerFocus property now works correctly. (SCS5033)
  • Changing the BackColor property no longer causes a memory leak. (SEL3739)
  • The Button control now correctly processes all queued button clicks (resulting from quickly clicking the button many times). (SEL5963)
  • When text wrap is on and the button width changes, single character words now display correctly. (SEL5985)
  • The Button control no longer flickers when two 256-color bitmaps with compatible palettes are loading in two different button controls. (SEL6780) (TEL1818)
vaBln control
  • The balloon no longer displays over the form that has the focus if the form the balloon is scanning becomes inactive before the balloon is displayed. (AAR472)
  • When the UseTag property is set to True, the balloon now displays over controls that are on an MDI form or other container.(GRB2022)
  • When using the Balloon VBX control and the HideOnFocus property is set to True, the balloon no longer displays over a Picture control. (GRB2304)
  • The property browser now displays changes made to balloon properties while the Balloon control is physically hidden behind another form. (GRB5531)
  • After converting a VBX project to a 16-bit ActiveX project, the Balloon now displays the text specified in the Tag property. (GRB5620)
  • The Balloon now displays all text characters when the Tag property is used to specify the balloon text. (GRB5662)
  • A Windows error no longer occurs in 16-bit VB when the environment option is set to save before running, when a Balloon control is on the form, and when you have another control on the form that contains a picture or the Icon property of the form is set at design time. (JAP3137)
  • The Balloon control now fires the ShowPopup event with the correct parameters when the mouse is positioned over a disabled control within a container control and when the ScanDisabledControls and ScanAllDescendents properties are set to True. (JAP4666)
  • The UseTagProp property for the Balloon control only works with the TabTag property of the vaTabPro control in Tab Pro builds and maintenance releases dated after January, 1997. (JAP5690)
  • The balloon no longer displays when the mouse pointer is over a target control's popup menu. (JOK1931)
  • The balloon no longer causes a GPF if you use the BlnSetParent function to move the balloon from form to form. (SCS3937)
  • The CtrlName parameter for the Scan event now returns the correct data. (SCS4001)
  • The 32-bit ActiveX control now passes the hWnd parameter for the ShowPopup and Scan events as a long integer (See Special Note for 32-bit ActiveX Balloon Control Users). (SCS4563)
  • The CtrlName parameter for the ShowPopup event now returns the correct data. (SEL5878)
  • Hot keys now fire the Click event for a button. (TEL3794)
Special Note for 32-bit ActiveX Balloon Control Users 4/12/97

The 32-bit ActiveX Balloon control now passes the hWnd parameter as a long integer, rather than a short integer. The short integer is not sufficient to accomodate a 32-bit window handle.

Visual Basic users can simply change the type for this parameter from "As Integer" to "As Long" in the event handler and it will work. However, if the project is loaded into 16-bit VB4, the 16-bit ActiveX still passes this parameter "As Integer". As a solution, you could use the preprocessor directives available in Visual Basic. For example:

#If Win16 Then

Private Sub vaBln1_ShowPopup(CtlName As String, hWnd As Integer, HelpContextID As Long, ShowPopup As Integer, MouseX As Integer, MouseY As Integer)

#Else

Private Sub vaBln1_ShowPopup(CtlName As String, hWnd As Long, HelpContextID As Long, ShowPopup As Integer, MouseX As Integer, MouseY As Integer)

#End If

Visual C++ users must change type of the second parameter of the handler from "short far *" to "long far *". You must change this in three places:

  1. The declaration for the handler function in the H file
  2. The implementation of the handler function in the CPP file.
  3. The entry in the EVENTSYNC map for the event, where "VTP_PI2" needs to be changed to "VTS_PI4". You should change the entry only in the second parameter for the event . For example,

ON_EVENT(CBalloonDlg, IDC_BLN, 3 // ShowPopup //, OnShowPopupBln, VTS_PBSTR VTS_PI2 VTS_PI4 VTS_PI2 VTS_PI2 VTS_PI2)

would change to

ON_EVENT(CBalloonDlg, IDC_BLN, 3 // ShowPopup //, OnShowPopupBln, VTS_PBSTR VTS_PI4 VTS_PI4 VTS_PI2 VTS_PI2 VTS_PI2)

Special Note for DLL Users 4/12/97

The DLLs (BTNDLL10.DLL, BTN32D10.DLL) now use a different structure for loading pictures. You must modify your existing source code to use this new structure. This makes ButtonMaker consistent with FarPoint's other products. It also gives FarPoint more flexiblity in the future.

The original DLLs used the following structure and associated #defines:

typedef struct tagFP_PICT
{
WORD wStyle;
HPALETTE hPalette; /* Used only for bitmaps */
union
{
HANDLE hPict; /* HBITMAP, HICON, or HMETAFILE */
LPSTR lpszResName;
} hnd;
} FP_PICT, FAR *LPFP_PICT;

The new DLLs use the following structure and associated #defines:

typedef struct fp_text_info
{
LPSTR lpsz;
UINT maxlen;
} FP_TEXT_INFO, FAR *LPFP_TEXT_INFO;

Structure for getting & setting the picture:

typedef struct fp_pict_info
{
short pictType;
#define FP_PICT_TYPE_NONE 0
#define FP_PICT_TYPE_BITMAP 1
#define FP_PICT_TYPE_METAFILE 2 /* not yet implemented */
#define FP_PICT_TYPE_ICON 3
short hndType;
#define FP_HNDTYPE_HANDLE 0 /* for HBITMAP, HICON, HMETAFILE */
#define FP_HNDTYPE_RESID 1
#define FP_HNDTYPE_RESNAME 2
HPALETTE hPalette;
union
{
HANDLE handle; /* HBITMAP, HICON, or HMETAFILE */
WORD resID;
FP_TEXT_INFO resName; /* When GETTING property */
} u; /* ptr to buffer for name */
} FP_PICT_INFO, FAR *LPFP_PICT_INFO;

To integrate this new structure into your existing source code:

  1. Search the file(s) for "FP_PICT" and replace this with "FP_PICT_INFO".
  2. Search the file(s) for "wStyle" and replace this with "pictType". The #defines used for the picture type have changed, and the valid types are FP_PICT_TYPE_NONE, FP_PICT_TYPE_BITMAP, or FP_PICT_TYPE_ICON. Note that FP_PICT_TYPE_METAFILE is not yet implemented.
  3. The handle type is now passed in a separate member of the structure called "hndType" rather than being bitwised Or'd with the "wStyle" member. The #defines used for this have changed to FP_HNDTYPE_HANDLE, FP_HNDTYPE_RESID, or FP_HNDTYPE_RESNAME.
  4. The handle or resource name is now passed in a different union within the structure, called "u" rather than "hnd", and there is now an additional member of this union called "resID" that can be used to pass a resource identifier rather than a string name.

Technical Issues Addressed -- Release Date 8/13/96 -- Version 1.0.05

vaBtn control
  • When you have overlapping Button controls, setting the BackStyle property to transparent no longer causes a GPF. (JAP4087)
  • For 32-bit ActiveX controls, deleting a button control for which the BackStyle property is set to transparent no longer causes a GPF. (JAP4786)
  • For 32-bit ActiveX controls in Visual Basic 4.0, loading and unloading a project with numerous Button controls no longer causes Windows 95 to GPF. (SEL5660)
vaBln control
  • Using the ShowPopup event to display a balloon over a combo box control no longer causes a GPF. (JAP4116)

Technical Issues Addressed -- Release Date 4/12/96 -- Version 1.0.01

Both controls
  • The About windows for the controls now display the correct dates. (JIS24)
  • If you have encountered problems setting the font name in Visual C++ 4.0, the problem is now corrected. (KEM3155)
vaBtn control
  • The Button control no longer causes a GPF when it is the first control in the tab order in a dialog in AppStudio. (JAP3114)
  • The Button control now redraws properly when the BackStyle property is set to Transparent and the segments change shape or are flipped. (JAP3169)
  • The DLL header files for MFC now include a define for SetBackStyle. (JAP3269)
  • The Button control now repaints correctly when it is in a container, the BackStyle property is set to 0, and the Visible property is set to False. (JAP3314)
  • You can now return a bitmap from a Picture control to use for the picture in the Button control without encountering a GPF. (JAP3470)
  • In Visual C++ (v. 1.5) the Button control no longer keeps the focus when the user tabs to the control. (JAP292)
  • The ThreeDAppearance property is now working correctly for all environments. (SEL917)
  • The property browser now correctly displays the current setting of the Text property. (SEL3556)
  • The arrow button templates in the Button Designer now display the button as the same size and scale. (GRB737)
  • The Button control now correctly displays focus highlighting and receives and loses the focus properly in Visual C++ 4.x. (GRB753)
vaBln control
  • You can now run a 16-bit application along with a 32-bit application and the balloon will appear correctly for both. (JAP41)
  • If you are using the Balloon control with FarPoint Technologies' Tab Pro Tab control, the balloon now appears correctly for individual tabs in the tab control. (JIS3088)
  • A blank window no longer appears in the Windows 95 taskbar when the balloon is displayed for a control and the UseTagProp property is set to True. (SEL3178)
  • You can now run two 16- or 32-bit applications that use the Balloon ActiveX control without GPFs. (SEL3364)
  • The balloon no longer "flashes" when it is first displayed in an application created in Visual C++ v. 1.5. (GRB2)
  • The hWnd properties for the AWARE fpBoolean control and the ButtonMaker Ballon control no longer share the same define in the *MFC.H files. (GRB810)