Foi lançado o Dear PyGui 1.0.0 (DPG), um toolkit multiplataforma para o desenvolvimento de interfaces gráficas de usuário na linguagem Python. A característica mais importante do projeto é o uso de multithreading e a transferência de operações para a GPU para acelerar o desenho. O principal objetivo da versão 1.0.0 é estabilizar a API. Mudanças que quebram a compatibilidade agora serão oferecidas em um módulo separado chamado "experimental".
Para garantir alto desempenho, a maior parte do código do DearPyGui é escrita em C++ utilizando a biblioteca Dear ImGui, desenvolvida pelos mesmos autores, mas destinada à criação de aplicações gráficas em C++ e oferecendo um modelo de trabalho fundamentalmente diferente. O código fonte do Dear PyGui é distribuído sob a licença MIT. É garantido o suporte às plataformas Linux, Windows 10 e macOS.
O toolkit é adequado tanto para a criação rápida de interfaces simples quanto para o desenvolvimento de GUIs especializadas e complexas para jogos, aplicações científicas e de engenharia, onde alta responsividade e interatividade são necessárias. Os desenvolvedores de aplicações são apresentados a uma API simples e um conjunto de elementos tradicionais, como botões, sliders, interruptores, menus, formulários de texto, exibição de imagens e diversos métodos de disposição de elementos da janela. Entre as funcionalidades avançadas, destaca-se o suporte à criação de gráficos, diagramas e tabelas.

Adicionalmente, estão disponíveis um conjunto de visualizadores de recursos, um editor de links de nós, um sistema de inspeção de temas e elementos para desenho arbitrário, adequados para a criação de jogos 2D. Para simplificar o desenvolvimento, várias utilitários são fornecidos, incluindo um depurador, um editor de código, um visualizador de documentação e um visualizador de logs.
O Dear PyGui implementa um modo de operação abstracto típico de bibliotecas GUI (Retained mode), mas é construído sobre a biblioteca Dear ImGui, que opera no modo IMGUI (Immediate mode GUI). O modo Retained implica que a biblioteca assume a responsabilidade pela formação da cena, enquanto no modo Immediate, o modelo de visualização é processado no lado do cliente, e a biblioteca gráfica é utilizada apenas para a saída final, ou seja, o aplicativo emite continuamente comandos de desenho para todos os elementos da interface a fim de gerar o próximo quadro pronto.
No DearPyGui, não são utilizados widgets nativos fornecidos pelo sistema, mas sim a renderização de widgets personalizados por meio da interface gráfica OpenGL, OpenGL ES, Metal e DirectX 11, dependendo do sistema operacional atual. No total, são oferecidos mais de 70 widgets prontos.



Fonte: opennet.ru
