eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingProjektowanie dla pluginów › Re: Projektowanie dla pluginów
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.P
    OSTED!not-for-mail
    From: Borneq <b...@a...hidden.pl>
    Newsgroups: pl.comp.programming
    Subject: Re: Projektowanie dla pluginów
    Date: Mon, 31 Dec 2018 21:36:52 +0100
    Organization: ATMAN - ATM S.A.
    Lines: 34
    Message-ID: <q0dul5$c21$1@node1.news.atman.pl>
    References: <q0d5hj$s27$1@node2.news.atman.pl>
    <0...@g...com>
    NNTP-Posting-Host: public-gprs361510.centertel.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=utf-8; format=flowed
    Content-Transfer-Encoding: base64
    X-Trace: node1.news.atman.pl 1546288613 12353 37.47.43.103 (31 Dec 2018 20:36:53 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Mon, 31 Dec 2018 20:36:53 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101
    Thunderbird/60.4.0
    In-Reply-To: <0...@g...com>
    Content-Language: pl
    Xref: news-archive.icm.edu.pl pl.comp.programming:213110
    [ ukryj nagłówki ]

    W dniu 31.12.2018 o 21:00, s...@g...com pisze:
    > Proponuję ściągnąć źródła Qt Creatora (są na Git hubie:
    https://github.com/qt-creator/qt-creator ), otworzyć je w Qt Creatorze (skompilowanym
    - z pakietu biblioteki Qt). To bardzo inspirujące działanie.

    Tak, ale sam katalog src/ to 57 mega

    >
    > Ja wzorując się na tym zrobiłem w swoim programie coś takiego jak fabrykę pluginów
    Plugins. Zajmuje się ona ładowaniem pluginów (z uwzględnieniem zależności i wersji -
    tak jak w Qt Creator), ale najważniejsze jest to, że ta fabryka pełni również rolę
    zwrotnicy: pluginy rejestrują w niej swoje zdarzenia (std::function - zobacz sobie
    przykłady w dokumentacji: https://en.cppreference.com/w/cpp/utility/functional
    /function , w stosowaniu upierdliwe jak diabli, ale za to intuicyjne w użyciu i
    bardzo szybkie w działaniu), a okno główne i edytory wywołują na nich swoje kluczowe
    zdarzenia (np po otwarciu pliku, przed zamknięciem, przed wyświetleniem menu
    kontekstowego, przy tworzeniu paska nawigacyjnego (przyciski, zakładki i dowolne inne
    kontrolki), przy tworzeniu paska menu, tworzenie kart opcji itp.). Oczywiście
    parametry funkcji się zmieniają w każdym przypadku i to wymusza utrzymanie wielu list
    tych funkcji, ale nie znam lepszego rozwiązania w C++.
    >

    Moduł główny to m.in. fabryka pluginów, bez edytora, który też jest w
    pluginie?
    czy da się wykonać taką rzecz, by plugin zmieniał kolejność
    przechodzenia tabów przez control+tab?
    Normalnie bez plugina przechodzenie jest kolejne, plugin miałby
    przesuwać tab na początek przy zwolnieniu klawisza control.
    Wtedy jednak jak w pluginie podczepić filtr zdarzeń, który teraz jest
    metodą w głównym oknie oraz jak plugin miałby mieć dostęp do widgetu z
    tabami?

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: