Short Documentation (version of apr.26,1992) ------------------- Well most of the properties are self explanatory but some probably need additional documentation ( if you buy the control you will receive full documentation, but for evaluation this should help you enough to understand the SuperButton CC: First of all the Button has currently two states. SHORT "Value": Value delivers the state of the button. Press the shift key and the right mouse button to toggle state at design time. This also sets the wakeup state of the button. SHORT "PictureTop, PictureLeft, PictureRight, PictureBottom" These four define a picture rectangle of the picture. You can alway have one or two pictures for the two states. The button has two planes where the pictures may appear. Either behind/below the geometric button or on top. "PicturePlane" controls where and, if you only have one picture, wheather the picture should substitute each other or not. Look at the Superbutton Playground to see the effect. You can of course alter the picture rectangle values via the property combo BUT I have created a faster way, which I would like to explain in more detail next. Press the control key and a click (always with the RIGHT mousebutton) sets the upper lefthand corner. If you press control and shift you set the lower righthand corner. This is only important for bitmaps, which are clipped to the resulting rectangle. Icons are always displayed in full beauty. Due to the fact that VB does not send any WM_MOUSEMOVE in design mode I was unable to implement a typical drag type set option. But this is second best and you will see, it's easy and versatile. If anyone has an idea how to improve this option I would welcome your proposals. Events: The CHANGE event is created when ClickEvent=automatic in contrast to ClickEvent=manual which only creates CLICK events whenever the button was clicked without leaving the button rectangle. (Please look at the ? button in EXAMPLE.MAK) The CHANGE Event has an additional parameter which informs you, what activity caused the change. byUserEdit is nonzero when the change is the result of the user entering something to the specific control. byUserEdit=1 change results from mouse action byUserEdit=2 change results from keyboard action These can be: Space=left mouse click Up or down arrow = toggle state byUserEdit=0 change is result of value assignment statement in VB There's a new Event HELP which is controlled by the Helpevents property. The Object parameter is always zero and has been added to be consistent with our FormText Custom Control. The hot area for help is in the center of the button. In contrary to the help area in the upper right hand corner in FORMTEXT and CBOXLIST. Always keep in mind, that you can turn off the BorderStyle and alter the Colors Background,Foreground,BackgroundON and ForeGroundON. The BaseColor property is necessary because the button can be smaller that the control rectangle. If Basecolor is zero the underlying parent's backcolor is used. I hope this short introduction helps you evaluate our button control. The final release will also contain a "multistate" sibling, which is currently in progress. Enjoy Manfred Waldmeyer