How to: Open project-specific editors (Jak otworzyć edytory specyficzne dla projektu)

Jeśli plik elementu otwierany przez projekt jest wewnętrznie powiązany z określonym edytorem dla tego projektu, projekt musi otworzyć plik za pomocą edytora specyficznego dla projektu. Pliku nie można delegować do mechanizmu ide do wybierania edytora. Na przykład zamiast standardowego edytora map bitowych można użyć tej opcji edytora specyficznego dla projektu, aby określić konkretny edytor map bitowych, który rozpoznaje informacje w pliku, który jest unikatowy dla projektu.

Ide wywołuje metodę OpenItem , gdy określa, że plik powinien zostać otwarty przez określony projekt. Aby uzyskać więcej informacji, zobacz Wyświetlanie plików za pomocą polecenia Otwórz plik. Skorzystaj z poniższych wskazówek, aby zaimplementować metodę , OpenItem aby projekt otwierał plik przy użyciu edytora specyficznego dla projektu.

Aby zaimplementować metodę OpenItem za pomocą edytora specyficznego dla projektu

  1. Wywołaj FindAndLockDocument metodę ( ), aby RDT_EditLock określić, czy plik (obiekt danych dokumentu) jest już otwarty.

    Uwaga

    Aby uzyskać więcej informacji na temat danych dokumentu i obiektów widoku dokumentu, zobacz Document data and document view in custom editors (Dane dokumentu i widok dokumentu w edytorach niestandardowych).

  2. Jeśli plik jest już otwarty, ponownie wywołuj plik, wywołując metodę i określając wartość IsDocumentOpen IDO_ActivateIfOpen grfIDO parametru .

    Jeśli plik jest otwarty, a dokument jest własnością projektu innego niż projekt wywołujący, użytkownikowi zostanie wyświetlone ostrzeżenie, że otwierany edytor pochodzi z innego projektu. Zostanie wtedy otwarte okno pliku.

  3. Jeśli bufor tekstowy (obiekt danych dokumentu) jest już otwarty i chcesz dołączyć do niego inny widok, odpowiadasz za podłączanie tego widoku. Zalecane podejście do wystąpienia widoku (obiektu widoku dokumentu) z projektu jest następujące:

    1. QueryServiceWywołaj SLocalRegistry wywołanie w usłudze, aby uzyskać wskaźnik do ILocalRegistry2 interfejsu.

    2. Wywołaj CreateInstance metodę , aby utworzyć wystąpienie klasy widoku dokumentu.

  4. Wywołaj CreateDocumentWindow metodę , określając obiekt widoku dokumentu.

    Ta metoda służy do lokacji obiektu widoku dokumentu w oknie dokumentu.

  5. Wykonaj odpowiednie wywołania metody InitNew lub Load .

    W tym momencie widok powinien być w pełni zainicjowany i gotowy do otwarcia.

  6. Wywołaj Show metodę , aby wyświetlić i otworzyć widok.

Zobacz też