Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Activity Forums VEGAS Pro Basic CustomCommand DLL main window design question

  • Basic CustomCommand DLL main window design question

    Posted by Gary James on May 15, 2011 at 4:43 pm

    I’m new at designing Vegas custom command DLLs, and there are essentially zero examples available showing how to do it. So I may have taken the wrong approach in my design.

    My UI design is laid out on my own UserControl. This is added to the DockableControl at creation time in the OnLoad Event. This approach works well, but I’m experiencing missing and un-routed Key Events that UserControl’s are known for.

    The Vegas DockableControl class is derived from a Windows.Forms UserControl. So then I thought “OK, I’ll just use the Vegas DockableControl directly as my host window. Maybe they handle the Key event issues in their subclassed version of a UserControl” But I found out I can’t display a DockableControl derived class in the Visual Studio designer because the public constructor in not accessible.

    So, what is the preferred way of laying out the UI of a custom command dll in the Visual Studio designer? Is it to create my own UI Control and add it to the Vegas DockableControl, like what I’ve already done? Or use the DockableControl directly and use some black magic to view it in the Visual Studio designer?

    Thanks,

    Gary …

    John Rofrano replied 15 years ago 2 Members · 3 Replies
  • 3 Replies
  • John Rofrano

    May 16, 2011 at 3:18 am

    [Gary James] “So, what is the preferred way of laying out the UI of a custom command dll in the Visual Studio designer? Is it to create my own UI Control and add it to the Vegas DockableControl, like what I’ve already done? Or use the DockableControl directly and use some black magic to view it in the Visual Studio designer?”

    In all of the VASST Command Extensions that I write I’ve taken your first approach. I create a UserControl that is the main window that I design in Visual Studio and I add it to the DockableControl in the OnLoad() method with myControl.Dock = DockStyle.Fill to make sure it fills the DockableControl.

    ~jr

    http://www.johnrofrano.com
    http://www.vasst.com

  • Gary James

    May 16, 2011 at 2:51 pm

    John, just for the sake of curiosity I tried a little experiment with the Sony DockableControl.

    I put some conditional compilation statements in the code so while using the Debug project configuration setting, my UserControl was the DockableControl (and not editable in Visual Studio). But when I switched to the Release configuration, my UserControl behaved like my original design.

    I wanted to see if there would be any difference in Navigation and Appearance of the controls in the Command Extension dll. Specifically, would my UserControl gain any benefit by being the only DockableControl.

    It turns out there was no difference. In either case Tabbing around the controls isn’t supported. Nor is the appearance of a focus rectangle on the active control. Even if I override code to navigate the active control myself, I still don’t see a focus rectangle.

    In your experience, is this what I can expect as Normal behavior in a Vegas Pro Command Extension dll?

    Thanks,

    Gary …

  • John Rofrano

    May 16, 2011 at 6:10 pm

    [Gary James] “It turns out there was no difference. In either case Tabbing around the controls isn’t supported. Nor is the appearance of a focus rectangle on the active control. Even if I override code to navigate the active control myself, I still don’t see a focus rectangle.

    In your experience, is this what I can expect as Normal behavior in a Vegas Pro Command Extension dll?”

    Yes, unfortunately this is a limitation that drives me crazy also. I have never been able to get tabbing to work correctly. So it’s not only your code. 😉

    ~jr

    http://www.johnrofrano.com
    http://www.vasst.com

We use anonymous cookies to give you the best experience we can.
Our Privacy policy | GDPR Policy