Caro PyGui 1.0.0 (DPG), um kit de ferramentas multiplataforma para desenvolvimento de GUI em Python, foi lançado. A característica mais importante do projeto é o uso de operações multithreading e offloading para o lado da GPU para acelerar a renderização. Um objetivo principal da versão 1.0.0 é estabilizar a API. Mudanças que quebram a compatibilidade agora serão oferecidas em um módulo “experimental” separado.
Para garantir alto desempenho, a parte principal do código DearPyGui é escrita em C++ utilizando a biblioteca Dear ImGui, desenvolvida pelos mesmos autores, mas projetada para criar aplicações gráficas em C++ e oferecendo um modelo operacional fundamentalmente diferente. Caro código-fonte do PyGui é distribuído sob a licença do MIT. Suporte declarado para plataformas Linux, Windows 10 e macOS.
O kit de ferramentas é adequado para criar rapidamente interfaces simples e para desenvolver GUIs especializadas complexas para jogos, aplicações científicas e de engenharia que exigem alta capacidade de resposta e interatividade. Os desenvolvedores de aplicativos recebem uma API simples e um conjunto de elementos tradicionais prontos, como botões, controles deslizantes, interruptores, menus, formulários de texto, exibição de imagens e vários métodos de layout de janela. Entre os recursos avançados, destaca-se o suporte para a formação de tabelas, gráficos e tabelas.
Além disso, estão disponíveis um conjunto de visualizadores de recursos, um editor de nós, um sistema de inspeção de temas e elementos de formato livre adequados para a criação de jogos 2D. Para simplificar o desenvolvimento, vários utilitários são fornecidos, incluindo um depurador, editor de código, visualizador de documentação e visualizador de log.
Dear PyGui implementa o modo API abstrato (modo retido) típico de bibliotecas GUI, mas é implementado sobre a biblioteca Dear ImGui, que opera no modo IMGUI (modo imediato GUI). O modo Retido significa que as tarefas de criação da cena são assumidas pela biblioteca, e no modo Imediato, o modelo de visualização é processado no lado do cliente, e a biblioteca gráfica é utilizada apenas para a saída final, ou seja, Cada vez que o aplicativo emite comandos para desenhar todos os elementos da interface para formar o próximo quadro finalizado.
DearPyGui não usa widgets nativos fornecidos pelo sistema, mas sim renderiza seus próprios widgets chamando as APIs gráficas 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