Flow between completion list tab groups

SyntaxEditor Brainstorming Forum

Posted 14 years ago by Matt Whitfield
Ok - so this is a thought really - have we considered flow between the tab groups on the Intelliprompt completion list (if tab groups are now a 'firm fixture'?)

What I was thinking is, in our previous discussion we had the basic concept of tabs which contained one or more groups of items.

So - I'll put in a worked example from my editor. Say I am writing some SQL and I want to inner join onto another table - my sql editor will first suggest tables that are linked with some sort of foreign key (this will be on the first tab). as I start typing, it becomes clear that I am typing another table from the 'all tables' group which is on the second tab. Do we want the intelliprompt completion list to flow automatically from one tab to the next? What about if I then press backspace and start typing one of the items from the first tab again - should it automatically 'flow back'?

Personally I think it should flow only as necessary - i.e. it needs to flow forward because the first tab doesn't contain the item we're typing, but the second tab does. It would only flow back if the vice versa was true.

Please bear in mind that the concepts above as implemented in SE will probably be more abstract than tabs and groups as simply as laid out above - i'm just trying to talk about how the UI will work for the user, and give a worked example :)

Comments (3)

Posted 14 years ago by Actipro Software Support - Cleveland, OH, USA
Hmm, I'm not sure the best way to configure an object model for auto-switching. I suppose it would need to be event driven somehow on your end. Any thoughts?

A little more background info... one way we're looking at doing items is still having a normal list of items, however each item can be "tagged" with zero or more tags. Then filters can be applied for specific tags.

So a button could be clicked to toggle whether only items with a "Public" access tag are displayed, etc. Tabs in the UI could be similar. You could tag items as foreign key tables in your sample and use that flag as your filter criteria for the one tab. The other tab (all tables one) would remove all filters and would thus show the entire list.

The whole tabs and buttons concept would be UI-specific. So in WPF you could choose to do them or something completely different.

Actipro Software Support

Posted 14 years ago by Matt Whitfield
Yep - that is a thinker isn't it?

I guess the flow events would be at the UI level, and would therefore be different depending on what UI was used?

So, if using tabs and each tab represented a filter then the flow process could be handled reasonably automatically by the tab UI? Or am I missing something?

I definitely agree it's not right to have that sort of thing in the underlying object model...
Posted 14 years ago by Mike Strobel - Software Engineer, CDC Software
This sounds to me like something that would be handled at the UI implementation level. I would envision the flow working like this:

If you have a custom filter tab selected, candidate completion items will be shown in the completion list for the selected tab. If the completion list of the selected tab is empty, the "all items" tab would be activated. The originally selected tab would be restored if any items appear its completion list, and it would be selected again the next time the completion popup appears (unless it falls back to "all items" again).

For the WPF syntax editor, this functionality could be implemented with a simple trigger/setter combination.