Re: Skojarzenia.

Autor: Jan Stożek (jasio_at_nowhere.pl)
Data: Wed 26 Jan 2000 - 14:02:42 MET


On Sun, 24 Jan 2000 22:44:52 Ninik_at_alpha.net.pl ( X M a ) wrote:

> Np próbuje sobie zmienić żeby bmp odczytywał zamiast systemowego
> viewera jview, wchodzę w opcje o menu i tam jako "default"
> ustawiam jview, wszystko oki, zmienia ikonkę, wychodzę i
> wtedy okazuje się że to nic nie dało, i wszystko po staremu,
> nic się nie zmieniło...

        To jest stary błąd...

> Z htm'ami jest gorzej bo nawet nie "udaje"
> że zmieniłem...
> Albo jest coś źle albo coś robię źle...

        Rozwikłanie skojarzeń nie jest takie proste, jakby się na
pierwszy rzut oka wydawało. Skojarzenie pliku z aplikacją może
pochodzić z kilku źródeł:

        - klasy obiektu
        - typu pliku (nie mylić z rozszerzeniem)
        - maski (filtra) na nazwę, która obejmuje również
rozszerzenie

        Na skojarzenie klasy wielkiego wpływu nie masz, bo zostało
określone podczas rejestracji klasy. Możesz co najwyżej
wyrejestrować obiekt z danej klasy (zakładka "Become" w
preferencjach obiektu - o ile się pojawia, bo nie dla wszystkich
obiektów jest dostępna). Samodzielnie klasy nie zarejestrujesz,
chyba, że jesteś programistą.

        Typ pliku możesz określić w preferencjach obiektu. Jest
pewna grupa typów systemowych (niestety - w polskiej wersji
systemu ich nazwy zostały przetłumaczone, a typ jest rozpoznawany
po nazwie, więc jest np. "text/html" i "tekst/html" (a także HTML)
oraz np. "Plain text" i "Zwykły tekst". Możesz też zdefiniować
własne typy (w preferencjach pliku danych, a nie aplikacji!).

        Filtr na nazwę jest odpowiednikiem skojarzenia z Wingrozy
i Nortonoklonów. Zwykle ma postać np. *.EPS, ale można też
inaczej, np. KASA*.XLS może mieć inne (czy raczej w tym wypadku -
dodatkowe) skojarzenie, co *.XLS. Ja np. zdefiniowałem sobie filtr
MAKEFILE i dodałem go do obiektu związanego z programem MAKE.
Filtry definiujesz dla konkretnych aplikacji - czy raczej
związanych z nimi obiektów.

        Najlepszym chyba sposobem globalnego zapanowania nad
powiązaniami jest Edytor Skojarzeń (jest na hopsie), ale on
obsługuje tylko

        W menu obiektu pojawiają się wszystkie skojarzenia, w
kolejności priorytetów - pierwszeństwo mają skojarzenia przez
klasę obiektu. Obawiam się, że powiązanie przez klasę działa
zawsze, niezależnie od tego, co ustawisz w menu obiektu. W
drugiej kolejności działa skojarzenie przez typ, a na końcu -
przez filtr. Ponadto skojarzenia przez typy i filtry mogą się na
siebie nakładać (plik może mieć kilka typów i oczywiście może
przejść przez wiele filtrów). Dodatkową komplikacją jest fakt, że
system sam nadaje klasę i typ niektórym obiektom (np. właśnie
bitmapom) rozpoznając je po rozszerzeniu. Rozpoznanie, skąd
efektywnie pochodzi dane skojarzenie nie jest takie proste. Np.
Netszkapa jest związana i z typem HTML i z text/html i z
UniformResourceLocator i do tego jeszcze z filtrami *.HTM i
*.HTML.

        Inna rzecz, że zmiana preferencji w menu obiektu
przynajmniej dla Netszkapy powinna działać - sam to wielokrotnie
robiłem (ja mam globalne skojarzenie plików HTML z WebExplorerem,
bo się szybciej ładuje, a tylko dla plików korzystających np. z
ramek zmieniam preferencję na Szkapę. Zobacz, czy w preferencjach
pliku masz zakładkę "Become" (nie wiem, jak to jest w polskiej
wersji, bo mam system zafiksowany angielskim fikspakiem) i spróbuj
zmienić typ pliku na "WPDataFile" - wtedy przestaną działać
skojarzenia przez klasę i powinno dać się efektywnie związać plik
z inną aplikacją. Notabene, to samo jest np. ze starofisem, które
bodaj wszystkie pliki nagrywane przez siebie wiąże ze swoją
klasą i bez jej zmiany na dwójtupnięcie zawsze odpalisz SO - a
inne programy tylko z menu obiektu.

        BTW - może coś trochę pokręciłem, ale tak to mniej więcej
wygląda z punktu widzenia użytkownika.

--
Pozdrawiam,
Jan.
PS. Mój adres: nowhere = Polbox.


To archiwum zostało wygenerowane przez hypermail 2.1.7 : Tue 18 May 2004 - 15:25:48 MET DST