Visit Gigasoft's Web Site
ProEssentials v6 Help

Chapter 3: ActiveX Charting - OCX Charting Overview

 

OCX Charting File Names

ProEssentials includes 5 ActiveX interfaces: Graph, Scientific Graph, 3D Scientific Graph, Pie Chart, and Polar Chart controls.

 

ProEssentials Pro

"PEGRP32D.DLL"

ProEssentials Standard

"PEGRPDS.DLL"

ProEssentials Lite

"PEGRPDL.DLL"

"PEGO32D.OCX"

"PEGODS.OCX"

"PEGODL.OCX"

Graph

"PESGO32D.OCX"

"PESGODS.OCX"

"PESGODL.OCX"

Scientific Graph

"PE3DO32D.OCX"

"PE3DODS.OCX"

"PE3DODL.OCX"

3D Scientific Graph

"PEPCO32D.OCX"

"PEPCODS.OCX"

"PEPCODL.OCX"

Pie Chart

"PEPSO32D.OCX"

"PEPSODS.OCX"

"PEPSODL.OCX"

Polar / Smith / Rose

 

Note that the OCX file names (and DLL filenames) have changed from version 3, 4 and version 5. The class-ids have changed also. This means you can have a v3, v4, v5, and v6  ProEssentials based application on the same system with no worry of conflict.

 

We mention the DLL file names above because the ActiveX interfaces derive their core charting functionality from the ProEssentials' DLL.  Anytime you distribute the ActiveX Charting interfaces, you will need to include the DLL.  More on this later when we discuss deployment.

 

Program and Class IDs

 

ProEssentials Pro

ProEssentials Standard

ProEssentials Lite

PEGOD.Pegodctrl.1

"clsid:31B42C4B-E28C-4E46-95C2-472203402550"

PEGODSTD.PegodStdCtrl.1

"clsid:4353AC94-21AB-4156-85ED-06EE3A33E8FB"

"PEGODLITE.PegodLiteCtrl.1

"clsid:F740ECFA-1AAA-4CC8-9094-EED8454A56C5"

Graph

PESGOD.Pesgodctrl.1

"clsid:1B8E3821-AFBE-4D0F-9E64-CE082131074A"

PESGODSTD.PesgodStdCtrl.1

"clsid:6C150DFC-4B97-4054-A440-E66AF3F6C700"

PESGODLITE.PesgodLiteCtrl.1

"clsid:6E469E64-CA85-42FB-8C3A-347965653430"

Scientific Graph

PE3DOD.Pe3dodctrl.1

"clsid:795184D9-3362-4B6D-99C2-761AAEAB93CC"

PE3DODSTD.Pe3dodStdCtrl.1

"clsid:5DE0BAB4-889D-4D20-8BA2-D2515BF68CB6"

PE3DODLITE.Pe3dodLiteCtrl.1

"clsid:ED3C6351-6D4A-4C6A-9EF1-DCDCE97A7F5B"

3D Scientific Graph

PEPCOD.Pepcodctrl.1

"clsid:6939BDD0-7B59-4EFD-A44F-E853ED1F692E"

PEPCODSTD.PepcodStdCtrl.1

"clsid:16967D64-5880-4234-A54D-CAFA7D07DD06"

PEPCODLITE.PepcodLiteCtrl.1

"clsid:05F94E97-C266-4036-8039-9638391CC18B"

Pie

PEPSOD.Pepsodctrl.1

"clsid:AE4EFD9B-E57D-484E-A0EF-F181184C2D96"

PEPSODSTD.PepsodStdCtrl.1

"clsid:F8F09E97-A714-4449-ACB0-705D289EB920"

PEPSODLITE.PepsodLiteCtrl.1

"clsid:5B84C7E0-4020-449C-B020-67A214B0C1B3"

Polar

 

If you're wondering what a [Program ID] and [Class ID] are: The [Program ID] is used within ASP or Visual Basic in conjunction with the CreateObject function call.  Essentially its programmatic name.  [The Class ID] is a similar naming convention used within HTML. The following HTML Object tag will create an instance of a control within a web page.

 

<OBJECT

CLASSID="clsid:31B42C4B-E28C-4E46-95C2-472203402550"

ID=Pego1

HEIGHT=200

WIDTH=400>

</OBJECT>

 

 

ActiveX Charting Model

The ActiveX Charting interfaces have a simple object model that closely resembles our DLL interface.  Within the property reference material, at the top of each property topic, you'll see a table with various property attributes.  For example, the property FontSize has such an entry.

 

Scope

All ProEssentials Objects.

Type

Int32

Default

PEFS_MEDIUM

.NET

PeFont.FontSize

Ocx|Vcl

FontSize

DLL

PEP_nFONTSIZE

 

If developing with either OCX or VCL interfaces, you'll refer to this property via the OCX|VCL row heading.

 

Ocx|Vcl

FontSize

 

For a control named Pego1, to programmatically control the FontSize property within code, you'll write...

 

Pego1.Fontsize = PEFS_LARGE

 

 

Don't use property windows!

We recommend that you set only a few properties (if any) in the property window/object browser. This has many advantages: 1) If you have problems, you can email/fax us your code and we have a record of what properties you are setting; 2) If you go back to your code a couple months later, or someone else inherits your project, they have a documented list of properties you have set; 3) If you ever port your code to another IDE, its very easy to just reformat your current code; 4) In the case where a VB or Delphi form-file gets corrupted (this does happen occasionally) you won't lose your property adjustments; and 5) You will avoid potentially hard-to-find bugs due to setting a property both in the property window and in code.

 

The bottom line is that property windows may seem to be faster, yet, in the long run, coding your property settings will definitely result in the fastest, safest, and most maintainable implementation.