GoSubGraph


#1
Question 1: There's an object GoSubGraph in GoView. Its properties are set as following: Sizeable = true Collapsible = false While trying to change the object's size, the indicator of collapsing and uncollapsing doesn't stay in the upper left corner. What can I do to make the indicator stay fixed at the same place? See at the pic.1 Question 2: The previous situation. Is it possible to mark (make Selected) the GoSubGraph object after the left-click on it's blank space? Now it is possible to make such a selection obly by clicking the collapsing/uncollapsing indicator. Question 3: What should I do to make the GoSubGraph object unscrollable while the map scrolling, so that the user can keep an eye on that object all the time. I.e. the position of its upper left corner remains fixed relatively to GoView Control while the other diagram is scrolled. Question 4: May I change the scale only for the GoSubGraph while the diagram's scale is not changed? Question 5: May I use a layout for objects inside the GoSubGraph object so that: 1. It's size won't change. 2. The layout doesn't effect on other diagram objects.

#2
  1. I assume you meant .Resizable is true. Look at the override of GoSubGraph.LayoutHandle that is commented out in the CustomSubGraph example class.
  2. Set GoSubGraph.PickableBackground to true.
  3. What do you want to do when there are two views, at different positions, looking at the same document with a subgraph? If you’re only going to have one view, you’ll need to implement a GoView.PropertyChanged event handler that looks for a “DocPosition” property change, and sets the subgraph’s position to the new GoView.DocPosition value.
  4. No, but you could change the size and position of the subgraph’s children.
  5. Along with #4, you’re starting to go beyond what GoSubGraph is supposed to do. But:
    5.1. Yes, you can define such a layout. By default GoSubGraph.LayoutChildren does not change the size or position of any of the subgraph’s child objects, other than the Handle and the Label.
    5.2. An override of GoGroup.LayoutChildren shouldn’t affect any objects besides that group’s child objects, so this is not an issue.