[MonoDevelop] Suggested change to navigation drop-down behaviour

Mike Krüger mkrueger at novell.com
Mon Jul 5 01:55:32 EDT 2010


Hi

> The logical behaviour of a breadcrumb bar is to show the current
> position in the outline structure, isn't it?
The logical behaviour is showing the poisition ... and it does: show the 
position.
But the #regions are not a part of the c# language therefore there is no 
defined way showing them. Logically the current solution is better 
because it reflects the c# pre-processor more (it's separate from the 
logical structure of the file).
It's simply not correct showing the regions in the structure.

Example:
#region Test
void Bar ()
{
# endregion
}

int a,
#region B region
b
#endregion;

This could mess up the logical structure - pre processor directives are 
file based not part of the c# tree. If people use it this way it's their 
decision - but that doesn't mean that is the only way using it.
The implementation now has the advantage to QUICKLY SWITCH between all 
regions in the file ... this is nothing what your solution could do.

I've thought about it and I'll just change it to :
[REGION] | [CLASS] > ... > [MEMBER]

This makes it more visible but doesn't change anything at the current 
behavior.

>   Why doesn't it make sense
> to replicate the outline view in the quick navigator?
>
>    
Because then you don't need the outline view ...
The quick navigator is a different control with a different purpose - it 
doesn't give you an overview of the file it shows your caret position. 
The only thing that these two have in common is allowing to switch to a 
specific entry in a file.
If we're making these two exactly the same it would be replicating a 
feature - that's not good program design.

Regards
Mike


More information about the Monodevelop-list mailing list