-
Data: 2018-12-31 21:36:52
Temat: Re: Projektowanie dla pluginów
Od: Borneq <b...@a...hidden.pl> szukaj wiadomości tego autora
[ pokaż wszystkie 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?
Następne wpisy z tego wątku
- 31.12.18 22:08 Borneq
- 01.01.19 20:16 Mateusz Bogusz
Najnowsze wątki z tej grupy
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-11-08 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-08 Warszawa => Key Account Manager <=
- 2024-11-08 Szczecin => Key Account Manager (ERP) <=
- 2024-11-08 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-11-08 Wrocław => Senior PHP Symfony Developer <=
- 2024-11-08 Warszawa => QA Engineer <=
- 2024-11-08 Warszawa => QA Inżynier <=
- 2024-11-08 Warszawa => Key Account Manager <=
- 2024-11-08 Gdańsk => Software .Net Developer <=
- 2024-11-08 Akumulator Hyundai
- 2024-11-08 Warszawa => Manager/Specialist e-commerce (B2C) <=
- 2024-11-08 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-08 Gdańsk => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-11-08 znaj podstawe
- 2024-11-08 Chrzanów => Specjalista ds. public relations <=