[MonoDevelop] SourceEditorDisplayBinding.patch

James Fitzsimons james.fitzsimons at gmail.com
Mon Jul 10 17:22:19 EDT 2006

Hi Lluis,

Thanks for your comments!

On Mon, 2006-07-10 at 12:33 +0200, Lluis Sanchez wrote:
>       * You need to unsubscribe the ParseInformationChanged event in the
>         Dispose method, or you'll keep references to all opened editors
>         forever.
Good catch, done.

>       * The idea of the 1 sec delay is to avoid updating the combo at
>         every key press, but you are only delaying the updates, not
>         avoiding them. That is, if you get a ParseInformationChanged
>         event, and a combo update is already scheduled, you should not
>         schedule a new update.
Doh! Yep that was pretty silly. Fixed now.

>       * Instead of using a dictionary to store name->IClass relations,
>         you can add a new data item in the list store of type Object,
>         and directly store the IClass or IMember reference there.
I was trying to think of a way to remove these. I never thought of using
the list store, I've changed it to use this method now.

>       * We need the corresponding ChangeLog entries.
This was already at the bottom of the first patch, or did you mean
something else?

>       * It would be nice to add an option to the editor configuration
>         panel to enable/disable the class bar.

>       * It would be nice to always show in the method combo the method
>         on which the editor cursor is positioned.
These last two look a little more challenging. I have been looking at
the second one this evening and my main challenge has been trying to
find a way to tell what line number the cursor is currently positioned
on. Once I have this figured out I thought I would use
member.Region.BeginLine and member.Region.EndLine to figure out if the
cursor was inside a members region, however beginline and endline always
seem to return the same line number!

I haven't had a chance to look into the configuration panel yet.
Hopefully later this week.

I'll submit a new version of the patch once I get these last two
features finished.

Thanks very much for some great feedback!

> Lluis.
> El dg 09 de 07 del 2006 a les 22:28 +0100, en/na James Fitzsimons va
> escriure:
> > Hi all,
> > 
> > Attached is a patch I hope people will find useful. It adds a couple of
> > combos to the top of the editor that provide quick access to classes and
> > their methods/properties/members in the same  manner as VS.NET allows.
> > 
> > The combos are rebuilt dynamically as the parse information changes, so
> > as you type in a new method signature it will appear in the method
> > combo.
> > 
> > If the file doesn't provide any valid parse information e.g it is
> > an .aspx file rather than a .cs file the combos disappear.
> > 
> > This is my first real contribution to MonoDevelop so please go easy on
> > me! I hope I have followed coding conventions properly. Also I didn't
> > know what the etiquette around adding my name to the Authors list was so
> > if it isn't appropriate please remove it.
> > 
> > Cheers,
> > James Fitzsimons
> > _______________________________________________
> > Monodevelop-list mailing list
> > Monodevelop-list at lists.ximian.com
> > http://lists.ximian.com/mailman/listinfo/monodevelop-list
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: This is a digitally signed message part
Url : http://lists.ximian.com/pipermail/monodevelop-list/attachments/20060710/927a7c99/attachment.bin 

More information about the Monodevelop-list mailing list