I spent more time than I was expecting to select an item then...
There isn't a function SelectItem or similar.
If you are using HierarchyLib you can just call ExtExpand(EXPF_SelectItem) on a HierarchyNode. If you are not using this library then you can see the code from hu_node.cpp.
Basically the steps to select an item are:
1) Find the solution explorer tool window
2) Get the document view for the tool
3) Query the document for IVsUIHierarchyWindow
4) Call ExpandItem( , itemid, EXPF_SelectItem)
I was using WTL 3.1 in my C++ project with Visual Studio 7.0 treating warning as errors, when I converted the project to 7.1 I got a lot of warnings in WTL files then I couldn't compile my project.
I solve this problem using WTL 7.0. Now I can treat warning as error again :)
The windows in Longhorn are cool, but i have a problem, my stupid mind always think that the favorites button is the close button !!!
Then i tell to my mind "It's to big to be a close button !!!" But it insist :)
BTW: the search icon is the same that the zoom icon.
Mom: Gaston How can I implement a task list window ?
Me: Wow Mom, what are you doing ?!!!
Mom: I'm doing a "new" IDE.
Me: But you should think first Mom.
Mom: No son, making a new IDE is a like cooking for me. You need a TreeView to navigate your project
, an OutputWindow, you have to implement a command based architecture, implement IMemento pattern to save workspace,
, a Property Inspector, toolbars, statusbar, etc. Everything is done!!!
Me: Let me think mom...
Think about GUI Components in a IDE, think about Eclipse, Visual Studio, SharpDevelop, etc
I know there are differences but all of them have similar components,
if you make a new interface for your IDE today almost for sure you are going to do something
similar to one of them and this is not bad.
Obviously the answer to Is everything Done? is : No, it isn't.
I don't know if only me have this problem but navigation in the knowledge of a project is really
What's the main classes of your project? Yep, I known look for your [STAThread] attribute
Can I stack the methods of a class by modifier (like in Longhorn) ?, etc
All IDE are based in something like a Solution Explorer (Visual Studio), to navigate the knowledge of a project
, I think the tree view is not good enough, it has usability problems when the project is big, in the tree it is difficult to find items and more.
I think that the tree should be a component of something bigger like a ProjectNavigator, the ProjectNavigator should be an object that manages
a couple of components: a browser, a treeview, a listview, and others. Using metadata it should be available to stack the classes or whatever for
different properties (WinFS like :), when i enter to my project it could have links to my recent classes, last compile errors, etc.
My Navigator :)
In some way I miss stdafx.h when I have to add the using clauses in C# code, I often use the namespaces System, System.Text, System.Collections, System.Xml then I have to write the "usings" every time I create a new class.
Then I would like to have a global using section...