FoxPro Developer's Conference '94

Session 124
Power Tools eXtensions:
Rebuilding The Power Tools

Andrew Ross MacNeill
PC Edge Inc.


A Roadmap of the PTX Editor

PTX Editor Screen Builder
ValidationRule Valid
FocusMessage Message
WhenRule When
General Comment Snippet
ErrorMessage Error
This table is used to identify the various PTXs that may be run from the PTX Editor.
Field Name Type/Length Description
PTXCODE N/3 Code that identifies when the PTX is run.

1 - Standard PTXs
11 - Before PTX performs copy of file
21 - After Copy is performed but before the main PTX screen appears

PTXNAME C/20 PTX Name that appears on list
PTXPROGRAM M The application that is run when the user chooses the PTX. If the application is not found in the path or the field is empty, the PTX will not show up on the list.

The CLASS of PTX. Classes identify what Power Tool a PTX may be used with. Classes can be one of the following:

* - All Power Tools
MENU - Menus
SCREEN - Screens
REPORT - Reports
PROJECT -Projects
PROGRAM - Program
QUERY - Queries

PTXs can be used for multiple classes by placing commas between classes.

PTXs: Opening Up The Power Tools


Windows 3D Driver PTX

This PTX was written by Ken Levy for use with his GENSCRNX 3D driver. It provides a interface by which the user is able to select the type of 3D effect to use for a particular object.

Of particular interest is the interface for specifying 3D effects for lines and boxes. The slider on the screen will show an example of the effect on a box. This effect changes as the user moves from right to left on the slider.

As the GENSCRNX 3D driver is a Windows-only driver, this PTX is also platform-specific for Windows.

INTL/PTX Steven Black’s INTL Toolkit PTX

This PTX was written for use with Steven Black’s INTL Toolkit. The INTL Toolkit provides multilingual support for FoxPro through the use of a GENSCRNX driver. The PTX provides an interface through which users can specify the various directives that control how the driver runs.

For Text and SAY objects, the INTL/PTX shows the existing translation in a list box. This gives developers a good indication of how wide a particular object needs to be to hold the various translations.


This PTX provides access to the various GENSCRNX directives. In GENSCRNX, there are so many directives that is easy to forget the proper syntax for a particular directive. This PTX uses check boxes and lists to make it easier to implement the various directives.


Just as the GENSCRNX/PTX provides access to the GENSCRNX directives, this PTX provides the same functionality for GENMENUX.


TABS is a GENSCRNX driver designed by Steven Black to provide "page frames" or tabs in FoxPro screens. As with most GENSCRNX drivers, there are many directives that provide additional features. This PTX provides an interface to the various directives.


POPPTX is a special kind of PTX that runs before the main PTX Editor screen appears. It displays a popup menu where the mouse was last clicked and shows a list of PTXs that can be run directly, without using the main PTX Editor screen.

This functionality makes PTX EDT act similar to the right mouse clicks available in Access and Visual Basic.

FMT/PTX Text Styles PTX

The basic PTXEDT doesn’t provide a mechanism for users to change object text or formatting; only code snippets are able to be changed. FMT/PTX provides an interface similar to the one in other products for controlling the appearance of objects.

As well, FMT/PTX introduces "styles" to FoxPro, allowing developers to identify a specific format as a "style" and then applying the style to other objects. This is similar to "styles" in Word and other MS products.

PROPS/PTX Properties PTX

It seems that as Windows 95 approaches, every product is offering "property sheets" as a means of changing the various attributes of objects. The Properties/PTX is no different. It displays a property sheet for any object in a FoxPro Power Tool (Screen, menu, project or report) and allows the developer to change the property. The property sheet is similar to those seen in Visual Basic and Access.

Power Tools eXtensions
(c)1994 Andrew Ross MacNeill