10139 : I loose date information when zooming.

Question

When I zoom in by sliding the scaler, I loose some very useful information on dates and Times. Let me explain…. Lets say I start showing the chart with a period of 2 months, when I zoom in down to the hour level, i loose the date information at some point. First line shows 2000 March-April, second line shows time of the day and third line shows minutes in the hours. But where is my current date? I expected this information climbing on the first line like ‘2000 March 06′, second line ’21:00:00′ and third line ’00 10 20 30 40 50 00’. Any way to keep the complete date/time cascade ?

Answer

These are good points. Currently the overview info is put in the extra text called “date scale info” in the top left corner. And also remember that all texts that are generated in the date scale can be overriden, extended or replaced with numerous events… We will put this on our attention list for constructive feedback. Thank you.

 

10147 : How can I make a tree node selected in phGantX?

Question

How can I make a tree node selected, I use ‘Selected = True’ but it’s not doing anything.

Example here:

Private Sub phGantX_OnDblClickGantArea(ByVal theGant As phGantXControl.IphGantX, ByVal theDataEntity As phGantXControl.IphDataEntity_GantTime)
  Dim phActivity As IphDataEntity_Tree2
  ‘open / close tree nodes
  If Not (theDataEntity Is Nothing) Then
    Set phActivity = theDataEntity.Row.TreeNode
    phActivity.Expanded = True
    phActivity.Selected = True ‘<–No tree row highlight ?
  End If
End Sub

Answer

The Selected property works if you use the tree (not recommended, deprecated), but you use the grid (good choice), and then the selection is per cell rather than per row.

To select an individual cell you call IphGantX3.SetGridCellSelected(x,y,true/false). But the grid handles multi-select, so there is a difference between select and focus.
You probably want to set the focused cell, and you do this with the properties IphGantX3.GridCellFocusedX and IphGantX3.GridCellFocusedY.

So in the case above you would go:

Private Sub phGantX_OnDblClickGantArea(ByVal theGant As phGantXControl.IphGantX, ByVal theDataEntity As phGantXControl.IphDataEntity_GantTime)
  Dim phActivity As IphDataEntity_Tree2
  ‘open / close tree nodes
  If Not (theDataEntity Is Nothing) Then
    Set phActivity = theDataEntity.Row.TreeNode
    phActivity.Expanded = True

    theGant.GridCellFocusedX=0
    theGant.GridCellFocusedY=theDataEntity.Row.TreeNode.GridRowIndex

  End If
End Sub

10137 : How should I handle time zone discontinuities?

Question

How should I handle time zone discontinuities?

E.g. straight Flight from SYD/LAX arrives before it leaves in local time.

User does not want to display date time in UTC/GMT.

Answer

A bit tricky… Depending on what you really want I would suggest one of the following:

Create two time items for each flight, with two different TimeItemCellLayout colors. Say that you choose Green for flight start and Yellow for flight landing… Then you can allow the Landing to take place before the start. I’m not sure if the average user would understand this behaviour, but you can clarify it with tooltips or TimeItemTexts.

or

Implement the OnDateScalerDrawString event and extra info into the date scale showing seperate time zones… Maybe you want to ovveride the entire DateScale presentation for this, then implement the Gantt.OnDateScalerPaintForeground event…

10138 : We are asked to convert it into a vb.net app. Can i do this with the COM module or do i have to use GTP.NET?

Question

We have a phGantTimePackage COM developer license and developed an application for one of our customers using vb6.
Now we were asked to convert it into a vb.net app. They also want
to use this application within browsers (asp.net). My question is: Can i do this with the COM module or do i have to use GTP.NET?
And if we have to use GTP.NET: do we have to buy a new license?

Answer

You can use the phGantTimePackage in VB.NET, the .NET interop functionality makes this just as easy as in vb6.

Depending on what your customer has in mind, you can choose to integrate the phGantTimePackage into IE as an client side activeX control. This will limit the potential users due to security settings etc.

Or you can choose to switch to GTP.NET. GTP.NET can act as a server side ASP.NET control that will show up in any html browser but with limited edit possibilites (out of the box, with your extensions it can still be used for editing). GTP.NET has a much fuller Object-oriented api than the com version of phGantTimePackage has, so it has more possibilies and is more flexible.

If you choose to go with GTP.NET you can still upgrade your phGantTimePackage license for only half the price of a new GTP.NET license.

10136 : What is the SubCol field of TimeItem and how is it used?

Question

What is the SubCol field of TimeItem and how is it used?

Answer

The SubCol property of phDataEntity_GantTime and  phDataEntity_SchemaTime in the phGantTimePackage and on the GTP.TimeItem in GTP.NET controls sub-columns or, in the Gantt case, sub-rows of a single GanttRow.

The SubCol property is the one set by the CollisionDetection logic (when CollisionDetect=true) to visualize the time items side by side rather than on top of each other.

You may also use the SubCol property yourself if you turn off the CollisionDetecion. Setting the SubCol property to Zero is equal to “no subcolumn” and 1 is the first of the SubColumns. You can control the number of sub columns by setting GTP.GanttRow.SubColumns=x or in the phGantTimePackage you would use IphGantRow3.SetUseSubCols(x)

10133 : CurrentDataEntityGantArea does not return object that was set to selected using code.

Question

I set a time element using objTimeElement.selected = True.  The handles appear on the object showing that it is indeed selected.  However, the method CurrentDataEntityGantArea does not return a reference to that object.  I think I understand why – multiple items can be selected, but only one of them can be the current data item.  The question then is how can I set the currentDataEntityGantArea from Code?

Answer

Correct. The selection is one thing, and the Focused or Current time item is another thing.

Selection state is controlled with dataEntity.Selected=true/false
And Focus/Current is controlled with IphGantX3.SetCurrentDataEntityGantArea(dataentity).

10134 : Delphi2005

Delphi2005 Runs both .NET and win32.

To get the phGantTimePackage VCL for win32 Delphi2005, download this: https://plexityhide.com/pub/d2005dcu.zip

To run the .NET components in GTP.NET download the normal GTP.NET installation https://plexityhide.com/pub/GTP.NET.msi

To tap into some truly powerfull stuff, download our ECOII Samples for Delphi2005 and GTP.NET; https://plexityhide.com/pub/SamplesECO.zip

10127 : How far off are you from having a version of the components to work with Delphi 2005?

Question

How far off are you from having a version of the components to work with Delphi 2005?

Answer

Its already working; take a look at this ECOII sample https://plexityhide.com/pub/SamplesECO.zip

This is made with the newer GTP.NET

To Get the phGantTimePackage compiled for Delphi2005 ; download this: https://plexityhide.com/pub/d2005dcu.zip

 

10125 : Is there any better documentation that explains what each property, method, and event is used for. I have been working on a sample app in demo mode for two days and am needing to do some very specific things but cannot get the right answers from the help.

Question

 Is there any better documentation that explains what each property, method, and event is used for.  I have been working on a sample app in demo mode for two days and am needing to do some very specific things but cannot get the right answers from the help.

Answer

The VCL components has a complete but very very brief help file. This is true and we are aware of this. Hopefully this can be compensated somewhat by the samples that are available here: https://plexityhide.com/pub/VCLNative.zip

10126 : Why the treeview shows the plus (+) sign on nodes that do not have children?

Question

I am testing the VCL gantt components and am wondering why the treeview shows the plus (+) sign on nodes that do not have children?

Answer

As long as the Expanded property on the dataentities is set to false it will show the plus sign. Simply set Expanded=true on the nodes; if the childnode list have items the minus will show, otherwise the standard “nothing” will show.