Projecto de GUI multi-plataforma, a minha própria GUI, criada em C++
Aqui está o começo da minha própria GUI, feita do zero em C++.
Epá, parece outra coisa, mas é um cão com 4 patas no chão, tentei disfarçar mas deu nisto, era difícil desenhar pois era um simples teste de desenhar pontos onde tenho o rato.
No Windows, temos o próprio sistema de janelas do Windows, no Linux normalmente usa-se o Qt, WTK, nana, wxWidgets, etc.
Mas eu pergunto-me: porque raios vou usar uma libraria de GUI criada por outros se posso criar a minha?
Nas dos outros tenho de aprender como funcionam, etc, e eu não preciso de ninguém nos computadores, literalmente, faço tudo o que me apetecer, por isso porque não crio a minha? 😛
Por isso decidi criar a minha própria libraria de GUI, para eu criar janelas, menus, etc.
Ela criará os menus, status bars, opções, paineis, e até controlos posteriormente, tudo do zero, píxel a píxel, à pata, sem usar nada do sistema.
Desta forma, funcionará em qualquer plataforma onde a use.
Crio uma vez, depois uso em todo o lado, Windows, Linux, MacOS, sempre com aspecto igual.
E notem que usei as scanlines que uso no Game Engine. 🙂
Ela será usada nos meus trading systems, como no meu software de análise técnica:
Nos meus simuladores de Física:
Nos meus trading systems’ backtesters:
Nos meus softwares de formação, como o Knowledge Tester:
E até no meu Game Engine, se um dia criar jogos que tenham menus, tipo jogos de estratégia, etc:
Por isso, crio uma vez, e reutilizo em todo o lado.
Por agora foco-me na sua aplicação ao Knowledge Tester, para termos um sistema de exames e estudo mais agradável.
Mais tarde trarei notícias sobre isto tudo, até lá ficam com o cão que desenhei acima com o rato. 😛
O estado final do meu software de Análise Técnica antes de o deixar de lado uns tempos e partir para o back-tester gráfico. Aqui podem ver a última novidade, que são Fibonacci Retracements, um estudo de linhas muito usado na Análise Técnica, que como podem ver está bem mais giro do que os mais famosos
Aqui têm as minhas novas adições ao meu software de Análise Técnica: Linhas de tendência já funcionais e agarradas aos preços; Canais de tendência animadas também; Quanto às linhas de tendência, antes eram agarradas ao ecrã e não aos preços, pelo que quando eu movia o mapa, elas ficavam presas ao ecrã e agora podem
Com mais umas horitas, já adicionei um sistema de botões para neste caso adicionar linhas de tendência aos gráficos. Convém lembrar que é tudo feito do zero píxel a píxel, sem bibliotecas de gráficos ou afins, e píxel a píxel, e em C++ e não noutras linguagens mais fáceis como Javas ou afins, não vá
Este é o projecto do meu software de Formação e Auto-Estudo, que permite aos alunos aprenderem muito rápido, memorizar facilmente centenas de comandos, praticar para exames e certificações, em todo o tipo de áreas, com vários tipos de questões, encriptação, possibilidade de fazer exames remotos, e outras 1001 funcionalidades, que uso no dia-a-dia enquanto formador,
Só para não pensarem que estou há meses sem fazer nada nas horas livres. Relembro que isto tem dezenas de milhares de linhas de código, tem dezenas de funcionalidades, tudo feito do zero em C++, letras ou paineis desenhados píxel a píxel, sem usar librarias gráficas como Qt, etc, tem a minha libraria GUI que
Como é 25 de Abril, o dia em que o meu tinha nascido, fiz algumas melhorias ao programa de formação Knowledge Tester. Nada de especial, uns temas para cada um fazer exercícios ou exames mais ao seu gosto, e a possibilidade de definir a opacidade das scanlines com atalhos. É de lembrar que como é
Pequenas melhorias ao Knowledge Tester, neste caso um sistema de exportação em CSV para outros sistemas de ensino, aproveito algumas horitas livres para o meu software que uso na Formação me ajude a fazer mais coisas e mais facilmente. Como ando sem tempo para nada ultimamente, não posso mexer em coisas mais complexas como o
Tenho andado super ocupado ultimamente, mas arranjei algum tempo para melhorar o Knowledge Tester, pois tenho de o terminar de forma a funcionar como quero, antes de me dedicar aos trading systems para a missão no trading de 2024. O objectivo é fazer a minha GUI toolkit ter os mínimos dos mínimos para fazer isto
Aqui estão os meus retoques finais ao sistema de perguntas e respostas do Knowledge Tester, agora já com tudo pronto. Podem ver que já tem Ajuda, dá tem ajudas, já dá para tirar e colocar grids tal como as scanlines, tudo direito píxel a píxel, pronto a funcionar, mas “na vida real” terá ou a
Adeus Editor de Texto, já estava farto de ti! Agora com scroll. Já não tenho paciência, tem ainda pequenos bugs, mas são milhares de linhas de código e preciso de voltar a outros projectos, mas já dá para desenrrascar para usar no Knowledge Tester. Tem milhares de linhas pois é feito tudo à pata, as
Tenho tido poucas horas livres, mas hoje mostro o que meti a funcionar há uns 2 dias atrás, do histórico de CTRL+Z e CTRL+Y para a minha libraria de GUI, criada do zero em C++ para usar em todos os meus projectos: Agora os editores de texto que aplicar nas minhas aplicações (isto parece um
Mostro-vos na imagem acima o sistema que escolhi para criar os jogos. Ao invés de ser tudo por código, uso um software gratuito chamado Tiled (para quê recriar algo que funciona super bem?), onde crio os maps dos jogos. Eu tenho de ter claro os sprites e tiles que usarei no jogo (tenho usado os
Hoje mostro mais uns retoques no meu Editor de Texto, construído do zero, píxel a píxel, em C++, não é como muitos em Java e C# etc, que com uma linha de código têm um editor de texto, este tem milhares de linhas de código, isto é programação old-school, tudo à pata. Nada de usar
Só para mostrar o desenvolvimento do meu editor de texto em C++, para ser incluído na minha libraria de GUI, programas como Knowledge Tester, e até game engines. Neste caso começo com a partilha de um erro estanho, que me faz ao seleccionar textos, não marcar uns certos espaços antes da Rússia, o que é
Aqui está como se cria e testa um Text Editor low level em C++. Low level porque isto não é adicionar um controlo qualquer que faz a edição do texto, aqui tudo é feito do zero, píxel a píxel, não é como se faz hoje em dia em que basta adicionar um controlo já pré-feito
Fica aqui um exemplo do modelo de testes que criei para desenvolver e testar o meu editor de texto, criado do zero em C++, para ser usado na minha GUI, no meu Knowledge Tester, e no meu Game Engine. Criado do zero, pois é desenhado no ecrã píxel a píxel, como expliquei em tópicos anteriores,
A interface gráfica para o Knowledge Tester está quase feita. Ela pode conter pequenos textos no ecrã, perfeitamente justificados e com um cursor 100% funcional com modo de insert ou overwrite; Pode conter imagens para os exames; Modo de escolha múltipla ou resposta directa (este com o editor acima), com cursores incluídos; Marcação de opções
Um cursor e edição de texto, feitos do zero, há que lembrar que o cursor é desenhado píxel a píxel, e a edição não depende do sistema operativo, é tudo feito do zero, é low-level, não se usa nenhuma libraria ou controlo ou GUI, ou etc. É tudo desenhado píxel a píxel. No caso do
Update mais recente e completo em: Aqui estive a criar um cursor ao meu gosto, para tanto o meu Game Engine como para o meu software Knowledge Tester. Eu optei por um cursor que ocupasse um caractere inteiro, quando está em modo de overwrite, e por um reduzido a uma fina linha vertical de 2
Este foi o próximo passo, meter o programa a mostrar uma pergunta de cada vez, para o Knowledge Tester passar a ser gráfico (qualidade de vídeo muito baixa a 640×480, na realidade tem muito mais detalhe). Na realidade estiveram a ser criadas classes para gerar paineis de opções que posso usar no game engine também,
O passo seguinte foi embeber imagens nos formulários do software Knowledge Tester, para que possam ser incluídas imagens nos exames e exercícios. Relembro que é feito do zero em C++, todos os menus serão desenhados à mão, até o cursor será desenhado píxel a píxel no terminal, nos modos de inserção. Isto calha ser também
No meu pouquíssimo tempo, preparei um seleccionar de opções, que é super configurável, e que poderá ser usado tanto em jogos como em programas, e que fará parte da minha GUI, criada em C++. Primeiro, um pequeno vídeo e resumo de 2022-10-23 com pequenas melhorias: «Pequenas melhorias: – Ajuste da janela já ajusta o texto
Quero mostrar neste post como vai o desenvolvimento da minha GUI, feita do zero em C++, porque quero evitar usar GUIs de terceiros nos meus softwares, como a Qt, etc. Em simultâneo, esta GUI servirá para jogos meus, e aplicações. Comecei pelo caso do Knowledge Tester, o meu software de exames e auto-estudo com todo
Aqui está o começo da minha própria GUI, feita do zero em C++. Epá, parece outra coisa, mas é um cão com 4 patas no chão, tentei disfarçar mas deu nisto, era difícil desenhar pois era um simples teste de desenhar pontos onde tenho o rato: No Windows, temos o próprio sistema de janelas do