Microsoft Visual Studio (2008) - фильтры в обозревателе решений

В обозревателе решений при работе с проектами C ++ есть стандартные фильтры файлов заголовков, файлов ресурсов и исходных файлов. То, что я хочу достичь, - это, по сути, фильтры по папкам.


Допустим, структура файлов была такой:

  • ../Folder1/Source1.cpp
  • ../Folder1/Header1.h
  • ../Folder1/Source2.cpp
  • ../Folder1/Header2.h
  • ../AnotherFolder/Source1.cpp
  • ../AnotherFolder/Header1.h
  • ../AnotherFolder/Source2.cpp
  • ../AnotherFolder/Header2.h
  • ../SomeOtherSource.cpp

В обозревателе решений это будет выглядеть так:

  • Заголовочные файлы / Header1.h
  • Заголовочные файлы / Header1.h
  • Заголовочные файлы / Header2.h
  • Заголовочные файлы / Header2.h
  • Исходные файлы / SomeOtherSource.cpp
  • Исходные файлы / Source1.cpp
  • Исходные файлы / Source1.cpp
  • Исходные файлы / Source2.cpp
  • Исходные файлы / Source2.cpp

И хотелось бы, чтобы это выглядело так:

  • Заголовочные файлы / AnotherFolder / Header1.h
  • Заголовочные файлы / AnotherFolder / Header2.h
  • Заголовочные файлы / Folder1 / Header1.h
  • Заголовочные файлы / Folder1 / Header2.h
  • Исходные файлы / AnotherFolder / Source1.cpp
  • Исходные файлы / AnotherFolder / Source2.cpp
  • Исходные файлы / Folder1 / Source1.cpp
  • Исходные файлы / Folder1 / Source2.cpp
  • Исходные файлы / SomeOtherSource.cpp

Как бы этого добиться?


person xian    schedule 15.02.2009    source источник


Ответы (4)


Вы можете самостоятельно создавать папки и перемещать файлы. Я согласен, что это гораздо более удобный способ упорядочивания файлов, но, как ни странно, нет способа заставить VS делать это автоматически.

person shoosh    schedule 15.02.2009
comment
Но когда вы создаете фильтр, он не создает папку. Таким образом, при перемещении файлов в нее вам также нужно будет создать папку и переместить файл в эту папку. - person xian; 15.02.2009

Для этого вы можете создать подключаемый модуль Visual Studio. Я не знаю, как программно получить доступ к «Обозревателю решений».

person Vinay    schedule 16.02.2009

показать все файлы?

person zeus    schedule 16.11.2009

Единственный метод, который я нашел для этого, - полностью ручной. Я создал иерархию фильтров для соответствия папкам. Затем я перехожу к представлению «Показать все файлы» и выбираю одну папку. Я добавляю в решение все файлы из этой папки, которых нет в моем решении. Затем оставляю «Показать все файлы».

На данный момент VS, похоже, не обновляет мой список файлов должным образом. Поэтому мне нужно «Закрыть решение» и повторно открыть решение. На данный момент новые файлы находятся в решении, но не в фильтре. Они находятся на верхнем уровне внизу проекта. В этот момент я перетаскиваю их в правильный фильтр.

Это утомительно, подвержено ошибкам и пустая трата времени. Но поскольку мой проект построен с использованием внешней системы make, это единственный способ поддерживать проект в актуальном состоянии и при этом получать приличное поведение при поиске и просмотре в Visual Studio. Затраты времени окупаются производительностью позже, но я по-прежнему жалею об этом.

person PlayTank    schedule 12.10.2011