10495 : Selecting a link

Question

How can I find the Link between two phDataEntity_GantTime?
I want to use mouse double click the Link in GA, and then I can get the Link Object,but now I got nothing,how can I get it.

I found a example on plexityHide’s site,but I can’t open it ,please help me ,thanks!

Answer

The links in phGantTimePackage are not selectable in the current release. The links in GTP.NET are selectable.

The workaround that is commonly used in phGantTimePackage is to select a time item and produce a context menu containing the links that start or end in this time item, and have the user choose in this menu instead.
If you were to use owner drawn links you would have full control over how the links are drawn and can then catch a click to see if it is on such a link.

Selectable links is a candidate for version 4 of the product (no date set yet). Sorry for the bad news.

10344 : Autoscroll when moving time items

Question

I Use phGantXControl.ocx 2.5.1.31 With Delphi

when time Item move to left most of the Gantt Area, Gantt Area scrolls left but when time item move to right most or top most or bottom most gantt area does not scrolls to these directions.

Answer

The ability to scroll up and down was added in a late 3.x version. You can upgrade your license to gain access to this function (and many other developments).

10304 : Underline from code in phGantX

Question

I cannot set an item to be underlined from code. ( I am trying to use the underline to indicate which item is being dragged over on a drag drop operation).  Here is my code:< ?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

Answer

  When you use the grid you must use the CellLayouts to control the cell appearance. If you declare two cellLayouts, one to look normal, and one to look underlined, you can change the layout on a given cell with the IphGantX3.SetGridCellLayoutPropIndex call…

10302 : I need to know the rownumber of the created row to fill the gridcells?

Question

I am using your Gant Time Package with grid under VFP9.

When i’m adding a new row with Thisform.phGantX1.AddDataEntityTree(de) i need to know the rownumber of the created row to fill the gridcells with Thisform.phGantX1.gridcellValueSet(x,row,”test”,0)…

How can I do it?

Answer

On the IphDataEntity_Tree2 interface there is a property called GridRowIndex. Go like this:

Dim tn As IphDataEntity_Tree2

  Set tn = Thisform.phGantX1.AddDataEntityTree(de)

  phGantX1.GridCellValueSet 2, tn.GridRowIndex, “v1”, -1

 

10297 : I want to a time Gantt block with a simple text:”ABC” and .style=tsPipe. If set the text, the style desappear?

Question

I am using VB6 with your phgantTime.ocx.
I want to  a time Gantt block with a simple text:”ABC” and .style=tsPipe.
If set the text, the style desappear. DO you have a solution?

Answer

The text was drawn with a solid brush. In the latest patch download the text is drawn with a clear brush. Hence it will work with the newest version

10663 : Customize the grid rows with image or color.

Question

I’d like to know if it is possible, using ActiveX version, to customize the grid rows with image or color.

Answer

Each cell can be assigned its own CellLayout (IphGridLayoutPropX). In this object you can set properties as BackColor (and font, frame and align options ).

It is currently only possible to assign an image to a Cell when it shows the tree expand/collapse buttons. The image is then controlled with the properties IphDataEntity_Tree2.ImageIndex and IphDataEntity_Tree2.SelectedIndex.

10634 : How I can remove all schematime from a phschema?

Question

How I can remove all schematimes from a phschema? It is not sufficient to remove column from phschema, the schematime remain in memory of the schemaTime.

Answer

Correct. You will need to call IphSchemaX3.RemoveSchemaTime on each time item.

To access them all you must iterate over the IphSchemaX3.Layers collection and for each Layer you iterate all phDataEntity. Remeber to iterate backwards if you are about about to Detele the time items (the list will shrink when a time item is removed)

10499 : Virtual load in phGantTimePackage

Question

I’m trying to figure out the virtual load stuff. I saw the word doc “virtualload.doc”, and the sample event was helpfull… however it never fires. I assume I need to tell the grid I have 50 rows, and then it’ll fire the event 50 times, once for each row?

You make mention of a function “AddUnloaded(x)”, but I cannot find it anywere. How do I use it?

And one last question. If I add a root node in a normal fasion, can I use virtual load to load its children? Do I have to know up front how many children it will have?

Answer

The methods to call in the ActiveX version is IphGantX3.GridAddUnloaded(50) and then IphGantX3.OnVirtualLoadGrid will get called for each row that needs to be put on screen.

And then IphGantX3.OnVirtualUnLoadGrid will get called whenever a row does not show anymore.

10496 : Versions of phGantTimePackage

Question

I just purchased and installed the COM edition of the GantTime package, and i do not really understand the versionning.

It was supposed to be version 3.2.1, but the installer just speaks about 3.0.

I found a patch on your site, but should i just replace the OCX in program files/plexityhide.com directory ?

And then, how can i know which version is in use under visual studio 2005 projects ? Because the version that is displayed in the references files “AxphGantXControl” and “phGantXControl” is “2.5.0.0” .

Please help me.

Answer

The first number (currently 3 for phGantTimePackage) is the major version and we usually ask for an update fee when this changes.

The second number shows new releases normally introducing some new functionality.

The third number is increased for bug fixes. Currently the install package has a fully functional version, but the patch available here https://plexityhide.com/pub/phGantXControl.zip contains more functionality and also has bug fixes.

You should download the latest patch.
You can simply replace your ocx with the new one.
If you put the new one in a new location you must register it with Regsvr32.exe <theocx> (standard com).

Your registration with us; that you have a license, will not be lost by this operation.

The version of your ocx can always be checked by finding the ocx in the explorer, choose properties, and click the version tab. The number displayed will be the correct version number for that ocx.

The version number 2.5 you see in VS2005 is the version of the typelibrary. The typelibrary is not given new version numbers when we extend it. If we make larger changes to the structure of the component so that the type library will not be backwards compatible its version will be updated (not in our current plans).