Will SyntaxEditor work for me?

SyntaxEditor for WPF Forum

Posted 8 years ago by Robert Hurd
Version: 11.2.0552
Avatar
Hi there,

I'm very interested in your SyntaxEditor suite for WPF but I have a few questions about whether it would fit my needs.

I don't intend to use your syntax editor to write software code, but rather to use it to build a specification for a sales order form where the Inteliprompt would show the available options i.e. following a logical tree.

Let me give you this scenario. Suppose I was building a house. A house is made of many rooms which contain many products.

Is it possible to use your syntax editor to display options drawn from an SQL database to guide the user through the available options?

This example may help you better understand what I mean.

BUILDING A HOUSE MADE OF MANY ROOMS AND PRODUCTS:

<b>LOUNGE</b>

Sofa: Size: 2 Seater   <i>(3 Seater OR Armchair) ** other Inteliprompt options</i>
      Colour: Cream    <i>(Red OR Blue OR Black) ** other Inteliprompt options</i>
      Fabric: Leather  <i>(Suede OR Fabric) ** other Inteliprompt options</i>

Carpet > Colour > Brown

<b>MASTER BEDROOM</b>

Bed: Size: 4'6"

Carpet: Colour: Blue

Curtains: Fabric: Blue Stripe
          Tie Backs: Blue Stars
          Fixings: Chrome Eyelets

etc etc
Notice how each element has a logical tree to follow. I need something that prompts the user of the available options depending on what their previous selection was. i.e. Curtains have the options of Fabric, Tie Backs and Fixing which each in turn have their own subset of options.

Obvious the editor needs to be clever enough to know that if the user deleted for example "Fabric" from the curtains section but not its "Blue Stripe" sub option it needs to react in a perticular way. Either to delete its subset of options or not to allow "Fabric" to be deleted until "Blue Stripe" has been deleted. Something along those lines.

Once the user has fully completed the spec, the items then need to be uploaded to an SQL database to be stored as logical tree relating to the item ID they originated from and not as one single RichText document etc.

When I firgure out how to upload an image to this forum I think my requirements will become a lot clearer.

Thank you for your time.

Rob

*** UPDATE ***
Here is the link if you would like to see an image of what I'm roughly trying to achieve.

http://stately.comgem.com/images/rob-temp/spec-editor-with-autocomplete.jpg

[Modified at 02/07/2012 06:37 PM]

[Modified at 02/07/2012 06:38 PM]

[Modified at 02/07/2012 06:38 PM]

Comments (3)

Posted 8 years ago by Actipro Software Support - Cleveland, OH, USA
Avatar
Hi Rob,

SyntaxEditor normally is designed to handle "languages" that have a specific lexical structure. From what you've pasted, the lexical structure of these options appear to be rather ambiguous. From your screenshot, it seems like you're looking for a RichTextBox but with IntelliPrompt-like features.

SyntaxEditor can highlight ranges of text but it's mostly done by a lexer that can tokenize the text and determine how to color everything. If you would want to do that with SyntaxEditor then you'd probably have to modify your language syntax.

Like make your "LOUNGE" be something like "{LOUNGE}" and an item in there like "Sofa" be more like "[Sofa]". Then your options can still be like "Size: 2 Seater". If you have distinct section and subsection headers that can be lexically parsed, then you can more easily do things like implement a token scanner to determine what to show in IntelliPrompt.

As for the deleting, we do fire events on text changes that tell you what the document looked like before and after the change. You also have the option to cancel a text change if you detect that it shouldn't be allowed.


Actipro Software Support

Posted 8 years ago by Robert Hurd
Avatar
Hi,

thanks for your response.

Rather than encasing words such as "Curtains" in braces {}. Would it be possible to define it so that a colon ":" at the end of each item triggers the next set of Inteliprompt options?

i.e.

Curtains: Fabric: Green
          Tie Backs: Rope Cord
Notice how each item is seperated by a colon ":" marker unless the item is at the end of its logical tree.
Posted 8 years ago by Actipro Software Support - Cleveland, OH, USA
Avatar
The problem here is that you have no way to know when you are entering another scope. Nothing here really associates "Tie Backs" with "Curtains". If "Tie Backs" were not indented, I might think it were a higher level item, like at the level of "Curtains".

Another thing you could do is something like:
Curtains {
  Fabric: Green
  Tie Backs: Rope Cord
}
So that the scope is properly defined.


Actipro Software Support

The latest build of this product (v2019.1 build 0683) was released 1 month ago, which was after the last post in this thread.

Add Comment

Please log in to a validated account to post comments.