Repozytorium



W tym artykule postaram się Wam przedstawić opis działanie i wykorzystania repozytorium (ang. Object Repository) w Delphi.


Wstęp do repozytorium


Co tak naprawdę można robić za pomocą repozytorium?

  • Możesz wybierać wcześniej stworzone przez siebie formularze, okna dialogowe i używać ich w swoim programie.
  • Możesz tworzyć nowe komponenty, pakiety, kontrolki ActiveX, biblioteki DLL.
  • Możesz dodawać do swojej aplikacji dodatkowe moduły czy pliki tekstowe.
  • Kreatory pomogą Ci przy wygenerowaniu odpowiednich formularzy, okien dialogowych.

    Do repozytorium można też dodawać własne formularze, pliki tekstowe, moduły, okna dialogowe!
    Wszystko to jest naprawdę bardzo proste i pomaga przy częstym pisaniu aplikacji lub przy pisaniu aplikacji, które wymagają szerokiego formatowania pod względem wyglądu!

    Pewnie teraz zadasz sobie pytanie "Ale jak wyświetlić to repozytorium?"
    Wystarczy wejść w menu File | New | Other... (Rysunek 1.2).

    Rysunek 1.2



    Po otwarciu powinieneś zobaczyć takie okno jak na rysunku 1.3

    Rysunek 1.3


    Bardzo mylący jest fakt, iż okno repozytorium nazywa się 'New Items', a prawdziwą nazwę, którą powinno zawierać to okno (Object Repository) zawiera okno z właściwościami repozytorium! Wystarczy samemu zobaczyć, klikając przykładowo prawym przyciskiem myszy na zakładce 'New' i wybrać z menu opcję 'Properties' na samym dole. Otworzy nam się omylne 'Object Repository' :)

    Teraz postaram się po krótsze opisać poszczególną zawartość zakładek w repozytorium:

  • New
      Na tej zakładce możesz utworzyć nową aplikację, plik wsadowy, komponent, bilbliotekę DLL, aplikacje usługowe NT, aplikacje serwerów sieci i moduły danych.
  • ActiveX
      Tu możesz utworzyć obiekty ActiveX (kontrolki, aktywne formularze), obiekty typu COM.
  • Multitier (Zakładka dostępna tylko w wersji Enterprise!)
      Pozwala na stworzenie obiektów typu CORBA i MTS, a także modułów danych.
  • Forms
      Pozwala na stworzenie formularza już gotowego do wykorzystania (okno o programie, zakładki, podwójne listy).
  • Dialogs
      Pozwala na utworzenie gotowych okien dialogowych z przyciskami lub na hasło. Można też wykorzystać kreator dialogów (Dialog Wizard).
  • Projects
      Tu są projekty wzorcowe aplikacji, zakładka zawiera też kreator aplikacji.
  • Data Modules
      Pozwala na wybór modułów danych dla Twojej aplikacji.
  • IntraWeb
      Pozwala na tworzenie aplikacji IntraWeb.
  • WebServices
      Pozwala na stworzenie aplikacji serwera SOAP.
  • Business
      Zawiera kreatory przeznaczone dla formularzy baz danych, sieciowych aplikacji baz danych, raportów, wykresów, a także przykładową aplikację wykorzystującą komponent Decision Cube.
  • WebSnap (Zakładka dostępna tylko w wersji Enterprise!)
      Zawiera kreatory aplikacji, modułu danych i modułu strony dla platformy WebSnap, służącej do tworzenia rozbudowanych aplikacji sieciowych.
  • WebDocuments
      Pozwala na stworzenie dokumentów HTML, WML, XHTML i arkusza stylów XSL.

    Wiesz już mniej więcej co do czego można wykorzystać. Jeśli nie podoba Ci się sposób w jaki wyświetla się zawartość poszczególnych zakładek, możesz to zmienić! Kliknij prawym przyciskiem myszy w obrębie okna repozytorium. W menu powinny widnieć cztery pozycje w tym aktualna zaznaczona:

  • View Large Icons - pokaż duże ikony
  • View Small Icons - pokaż małe ikony
  • View List - pokaż listę
  • View Details - pokaż szczegóły


    Na dole okna repozytorium zauważyłeś pewnie 3 przyciski opcji: Copy, Inherit, Use. Każdy z tych przycisków odpowiada za inne wykorzystanie obiektu, który znajduje się w repozytorium. Przykładowo przycisk Copy kopiuje wybrany element z repozytorium do naszego projektu nie naruszając orginału. Przycisk Inherit jest bardzo podobny do Copy, ale działa trochę inaczej. Mianowicie kopiuje wybrany obiekt do naszego projektu, ale nie narusza zawartości orginału. Gdy zaś w orginale zmienimy pewne elementy to zmiany odzwierciedlą się w naszym programie. Ostatni przycisk o nazwie Use służy do użycia danego obiektu w naszym programie w postaci orginalnej, czyli to co zmienimy w obiekcie w naszym programie, zostanie zmienione w orginale.

    To, co dokładnie dzieje się w chwili, gdy wybierasz obiekt z repozytorium, zależy od kilku czynników: typu wybranego obiektu, stanu otwartego projektu, a także sposobu implementacji obiektu (Copy, Inherit albo Use).
    I tak na przykład - jeżeli wybierzesz z repozytorium polecenie utworzenia nowej aplikacji, mając otwartą aplikację, to przed wyświetleniem nowego projektu zostaniesz poproszony o zapisanie ewentualnych zmian poczynionych w projekcie bieżącym.


    Dodawanie własnych obiektów do repozytorium


    Repozytorium nie jest jednym wielkim zamkniętym "centrum dowodzenia". Dzięki temu możemy sami przechowywać własne obiekty w repozytorium! W ten sposób możesz usprawnić pisanie swojej aplikacji nie tracąc czasu na tworzenie w każdym nowym projekcie okna 'O programie...' od samego początku!

    Aby móc dodać formularz do repozytorium musisz najpierw zapisać projekt, jeśli tego nie zrobisz, zostaniesz o to poproszony. Gdy już to zrobiłeś, czas wkońcu zacząć konkretnie działać :) Kliknij prawym przyciskiem myszy w dowolnym punkcie na formularzu i z menu kontekstowego wybierz pozycję Add to repository.... Powinieneś zobaczyć okno takie jak na rysunku 1.4

    Rysunek 1.4



    Po lewej stronie na liście Forms widzisz zawartość Twojego projektu. Chcemy dodać główną formę więc kliknij na pozycję Form1 (Standardowo zaznaczoną jeśli nic nie mamy w projekcie oprócz pustego formularza). Teraz należy wypełnić odpowiednie pola:

    Title - nazwa Twojego obiektu.
    Description - opis Twojego obiektu.
    Page - strona w repozytorium, na której ma być umieszczony obiekt. Możesz wpisać taką nazwę, której jeszcze nie ma w repozytorium, wtedy Delphi utworzy nową zakładkę, np. Moje formularze.
    Author - informacje o autorze, imię, nazwisko, wpisz co chcesz :)
    Jak pewnie zauważyłeś pod polami tekstowymi znajduje się przycisk 'Browse'. Dzięki niemu możesz wybrać ikonę, która będzie reprezentować Twój obiekt. Jeśli tego nie zrobisz obiekt będzie miał standardową ikonę jak ta obok przycisku 'Browse'.

    Ważne!
    Należy pamiętać, że Delphi w specjalnych plikach zapisuje informacje o naszym obiekcie: opis, ścieżkę do kodu źródłowego formularza. Jeżeli usuniesz pliki tego formularza to niestety, ale nie będziesz mógł korzystać ze swojego obiektu w repozytorium!

    W ten oto sposób dodałeś swój formularz do repozytorium!

    Możesz też dodać cały projekt aplikacji! Wystarczy z menu Project wybrać pozycję Add to Repository.... Zostanie wyświetlone okno podobne do tego na rysunku 1.4 z tym, że bez listy Forms po lewej stronie! Reszta jest bez zmian. Gdy wszystko wypełnisz wystarczy kliknąć przycisk OK i voila.


    To wszysko co chciałem przedstawić w artykule na temat podstaw korzystania z repozytorium. Można jeszcze wykonać pare innych czynności jak np. zarządzanie stronami repozytorium, ale to już nie jest tak potrzebne w projektowaniu aplikacji, a najważniejsze cechy repozytorium zostały opisane.




    ...powrót