Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic Documentation and Ease of Programming (Read 3095 times)
petersonmh
YaBB Newbies
*
Offline


I love YaBB 1G - SP1!

Posts: 1
Joined: Aug 10th, 2009
Documentation and Ease of Programming
Aug 12th, 2009 at 12:22am
Print Post  
BPMN shapes:
The description in the What's New in this Release is sketchy.  The description of how to use these shapes or what their purpose is, is not described.

Getting Started in a one-page document that simply shows you how to drop a non-Microsoft control on the WPF design surface.  There is no descripton of  how to set up a program, no prerequisite declarations that need to be done, and no step by step guide in how to do common tasks.

How do you use standard UI elements in a diagram and have them behave as a WpfDiagram object that can be draggged or dropped?

Some examples, notably FCDemo cannot be displayed in design mode, FormDesigner.xaml shows the error "Could not create an instance of type 'String' in <s:String x:Key="StepTitle"></s:String>.  The flow chart program throws an exception when you try to put a table on the design surface.


The brevity of the introduction drops the user into immediate minutia of studying the classes rather than how and why each class is used and how to implement them in a broad sense.  The documentation  goes from a subjective "Why WpfDesigner is Good" to a cursory introduction to excrutiating detail.  There is a huge leap of understanding that has to be jumped right there.

Using WPF controls as nodes
' Default type of hosted controls is GridView
diagram.CustomNodeType = GetType(GridView)
Does this imply that you can only use one type of UIElement in a diagram?

WpfDiagram is one monolithic control to which you must add objects into its collections if I am correct.  Rather than one giant WPF control, it would be much simpler use if there was a  Design Surface and a set of tools that work together.  So there might be a toolbox/toolbar of some sort,  WpfDiagram objects that are already supplied, and some method of automatically wrapping standard WPF objects so they have all of the   WPFdiagram functionality.  This would be similar to Visual Studio.Net making and automatic Run Time Callable Wrapper.  Normal objects would then conform to the WpfDiagram paradigm of operation.

As it stands now, you have to Hand-O-Matically (not Automatically) write a pile of procedural code to make the most simple things happen.  At a minimum, there should be functions and procedures that do this for you.  Ideally this wrapped into each separate WpfDiagram control so they interact smoothly with each other.  In the near term, there should be a library of fully documented/commented program templates.

If any of this functionality is already there, it is not apparent in the Programmer's Guide.  The help file form of the guide is fine for help as you go, but there is no programmer's manual in document form that takes you through the use of the product.
  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Documentation and Ease of Programming
Reply #1 - Aug 12th, 2009 at 6:28am
Print Post  
Thank you for your suggestions, we'll try to add some introductory how-to topics for the next release.

We've implemented the BPMN shapes after a customer's request and don't know what their purpose is. You can find out more about BPMN at http://bpmn.org/ if you are interested. You can use the shapes by setting ShapeNode.Shape = Shapes.Bpmn*.

CustomNodeType lets you specify what types of nodes are created if the user draws with the mouse. You can add any UIElement type programmatically, and can change CustomNodeType in response to UI commands to let the user choose other node types that should be drawn interactively.

If you directly add an UIElement to the diagram, there is a DiagramNodeAdapter wrapper created implicitly. You could create the DiagramNodeAdapter explicitly if you need to immediately set diagram-related properties on it, or can get it from the UIElement by calling the static Diagram.GetDiagramItem(UIElement item) method.

There are some other tools included that are not featured very prominently in the docs indeed; check the NodeListView, Overview and Ruler controls.

I hope that helps,
Stoyan
  
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint