locked
How to create custom task list RRS feed

  • Question

  • I would like to create a custom task list view to be used in a VS Isolated Shell 2010. What I would like to do is to hide some columns in the Error List (Line and Column columns) and add a few custom columns. Is that possible and is there an example that I could look at? So far I only found Creating Custom Task List Views. I updated the registry, implemented the IVsTaskItem2 and IVsTaskProvider3 interfaces, but I cannot get the whole thing to work.

    If Error List cannot be easily modified is there maybe a way to implement my own? What should be done beside implementing and proffering the IVsTaskList?

    If someone has a suggestion or could point me the right way..? Thanks in advance.

    Simon

    Thursday, October 21, 2010 6:10 AM

Answers

  • Hi Simon,

    The Error List toolwindow doesn't implement any sort of functionality that will allow you to add additional columns. The Error List toolwindow is still implemented as a native Win32/COM component, and implements the following interfaces:

    IVsTaskList
    IVsTaskList2
    IVsErrorList
    IVsWindowPane
    IVsWindowFrameNotify
    IOleCommandTarget
    IVsExtensibleObject
    IVsBroadcaseMessageEvents
    IVsCommentTaskInfo

    Additionally, we proffer the IVsTaskList and IVsErrorList as services. SVsTaskList and SVsErrorList, respectively. You can't really do that, because the SVsTaskList and SVsErroList services are automatically proffered by the IDE. I haven't seen this sort of request before, so there really aren't any guidelines or samples. About the best suggestion I can make is use the IDE sources available through the VSIP program, for guidance.  Attempting to reverse engineer the relevant classes and provide consultation on implementing a feature like this, isn't something we're set up to do through the forums.

    Advisory/consulting support is available, but it runs $210/hour and it would probably become quite expensive, quite quickly; as noone (to the best of my knowledge) has attempted to reimplement this feature. Ultimately, you might be better off implementing a custom solution here, by proffering your own service, and then use it from your editor, to log errors, warnings, etc from a custom toolwindow.

    Sincerely,

     


    Ed Dore
    Friday, October 29, 2010 2:54 AM

All replies

  • Hi Simon,

    The Error List toolwindow doesn't implement any sort of functionality that will allow you to add additional columns. The Error List toolwindow is still implemented as a native Win32/COM component, and implements the following interfaces:

    IVsTaskList
    IVsTaskList2
    IVsErrorList
    IVsWindowPane
    IVsWindowFrameNotify
    IOleCommandTarget
    IVsExtensibleObject
    IVsBroadcaseMessageEvents
    IVsCommentTaskInfo

    Additionally, we proffer the IVsTaskList and IVsErrorList as services. SVsTaskList and SVsErrorList, respectively. You can't really do that, because the SVsTaskList and SVsErroList services are automatically proffered by the IDE. I haven't seen this sort of request before, so there really aren't any guidelines or samples. About the best suggestion I can make is use the IDE sources available through the VSIP program, for guidance.  Attempting to reverse engineer the relevant classes and provide consultation on implementing a feature like this, isn't something we're set up to do through the forums.

    Advisory/consulting support is available, but it runs $210/hour and it would probably become quite expensive, quite quickly; as noone (to the best of my knowledge) has attempted to reimplement this feature. Ultimately, you might be better off implementing a custom solution here, by proffering your own service, and then use it from your editor, to log errors, warnings, etc from a custom toolwindow.

    Sincerely,

     


    Ed Dore
    Friday, October 29, 2010 2:54 AM
  • Hi Ed,

    Thanks for the answer. We will probably try a custom solution or leave the error list as it is.

     

    Regards,

    Simon

    Thursday, November 4, 2010 10:59 AM