INFO: Application Wizard Basic Architecture

ID: Q191924


The information in this article applies to:
  • Microsoft Visual FoxPro for Windows, version 6.0


SUMMARY

This article describes the core components and classes used by the application framework. The application framework is the foundation for new applications generated by the Visual FoxPro 6.0 Application Wizard.

The Visual FoxPro 6.0 help topic entitled "Developing Applications Using the Application Framework" is the source of this information.


MORE INFORMATION

The following table lists files created and/or used by the Application Wizard for an application named Wines that tracks a wine collection. The Application Wizard creates files using a naming convention that incorporates the name of the application, as shown in the table.


   Application File          Description
   -------------------------------------------------------------------

   Wines.app                 This is your application created from the
                             Build dialog box.

   Wines.pjx(pjt)            This is your project file.

   Wines_app.dbf(fpt, cdx)   This is the meta-table which stores form and
                             report information entered into the
                             Application Builder.

   Wines_app.h               This include file contains a number of
                             settings controlling the application
                             framework, each of which you can set.

   Wines_app.log             This is a log file you can use to record
                             changes during application development.

   Appuser.dbf(fpt, cdx)     If you choose to include User Login dialog
                             boxes, this file is created to store password
                             and user preferences (option settings and
                             favorites).

   Config.fpw                Contains run-time startup settings including
                             the ability to hide the Visual FoxPro desktop
                             if the Top-Level form option is selected.

   Libs\Wines_app.vcx(vct)   These are the classes used by your
                             application. They are subclassed from the
                             framewk library enabling you to modify these
                             at will. Avoid editing the classes
                             in _FRAMEWK if possible.

   Menus\Wines_main.mnx(mnt) This menu is used when you set the application
                             type to Normal.

   Menus\Wines_go.mnx(mnt)   This is the navigation menu used by forms when
                             the navigation menu option is selected in the
                             Forms tab of the Application Builder.

   Menus\Wines_top.mnx(mnt)  This menu is used when you set the application
                             type to Top-Level.

   Menus
   \Wines_append.mnx(mnt)    This menu is used when you set the application
                             type to Module.

   Progs\Wines_app.prg       This is the main program, the point from which
                             an application starts. It performs the
                             following functions:

                                - Displays Splash screen.

                                - Creates the application object.

                                - Sets the application paths and settings.

                                - Starts the application.


   Vfp\Wizards
   \_Framewk.vcx(vct)        The framework contains the core set of classes
                             used by the application framework. These
                             include common classes such as: splash and
                             aboutbox dialog boxes, application object,
                             userlogin, and the standardtoolbar to name a
                             few. Most of these classes are subclassed in
                             the Wines_app.vcx library. If you make changes
                             at all, change classes in Wines_app and not in
                             _framewk.

   Vfp\Ffc\_app.vcx(vct)     This foundation class library contains classes
                             used to manage an application environment.

   Vfp\Ffc\_base.vcx(vct)    This is the class library containing base
                             classes from which all foundation classes are
                             subclassed.

   Vfp\Ffc\setobjrf.prg      This file is used internally by the classes in
                             _base.

   Vfp\Ffc\_reports.vcx(vct) This foundation class library contains classes
                             used to handle reporting and output.

   Vfp\Ffc\_table.vcx(vct)   This foundation class library contains classes
                             used to perform all data querying and
                             navigation.

   Vfp\FFC\_UI.vcx(vct)      This foundation class library contains classes
                             used to manage various user interface routines
                             such as Windows management. 
In this example, the class library in which you would most likely want to modify the application framework is Wines_app.vcx. The following table lists the classes:

   Application-Specific Class     Description
   -------------------------------------------------------------------

   App_aboutbox                   Provides an About dialog box.

   App_application                Manages all operations and events in the
                                  application.

   App_changepassword             Provides a Password dialog box.

   App_errorlogviewer             Provides an Error Log dialog box.

   App_favoritepicker             Provides a Favorites menu and item
                                  picker.

   App_navtoolbar                 Provides data Navigation toolbar
                                  functionality.

   App_newopen                    Provides New and Open dialog box
                                  functionality.

   App_options                    Provides an Options dialog box.

   App_reportpicker               Displays a dialog box to select reports
                                  for printing.

   App_splash                     Provides an application Splash screen.

   App_standardtoolbar            Provides Standard toolbar functionality.

   App_topform                    Provides a form frame object with menus
                                  for Top-Level applications.

   App_userlogin                  Provides a User Login dialog box. 
These classes enable you to create or access supporting forms and dialog boxes in your application.

Because the Application Wizard adds Foundation Classes to your application project, you can also change the basis of the form and reports that comprise your application.

You can use wizards to create new databases, tables, forms and reports for the project from which you create your application. You can use the Class Browser to subclass the classes from which your forms and other application objects and functionality are generated.


REFERENCES

Visual FoxPro 6.0 Help; search on: "Developing Applications Using the Application Framework"

Additional query words: PGFest600 kbVFp600 kbwizard kbFFC

Keywords :
Version : WINDOWS:6.0
Platform : WINDOWS
Issue type : kbinfo


Last Reviewed: August 12, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.