2022-11-15 – O meu editor de texto low-level, criado do zero em C++, em funcionamento, com vídeo…
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 e tem-se um text-editor:
O cursor é desenhado píxel a píxel, as teclas lidas do teclado/hardware e controlado o premir por cada x ms, letras renderizadas, o cálculo do tamanho das linhas, o justificar o texto, movimentação do cursor, as grids, etc, tudo feito do zero a nível do hardware.
Após esta grid de testes, posso com segurança aplicar isto em qualquer aplicação minha futura, tanto na minha GUI em desenvolvimento, como até no meu Game Engine, em que poderei usar isto para colocar textos no ecrã, e conversas, e Hi-Scores de jogos, etc.
Todo o mecanismo está abstraído do hardware, com componentes em separado para lidar com o hardware, de forma a que é facílimo para mim agora colocar um text-editor em jogos, aplicações, etc, e criar um controlo de text-editor na minha futura GUI. 🙂
Só falta seleccionar textos, essa parte não precisava, deixei de lado, mas tem ampliação ou redução do tamanho das letras, tem resize das janelas, tem shortcuts de arrow keys e CTRL+HOME e outros, modo de insert e normal, tudo.
A primeira aplicação será para o Knowledge Tester, agora basta-me dizer que quero que a janela tenha um tamanho de 640×480, e a posição no ecrã, tipo 100×100, e terei um text editor nessa posição a funcionar. 🙂
Partilhei para verem como é programar estilo anos 80/90, em que tínhamos de fazer tudo do zero, não é como hoje em dia em que tudo está já feito.
Está aqui um exemplo do desenvolvimento do mesmo:
Programar do zero, é prática comum em quem mexe em C ou C++ e é old-school como eu. 😀
Mais notícias um dia.
Publicado no mesmo dia no LinkedIn, em:
https://www.linkedin.com/feed/update/urn:li:ugcPost:6998405581862514688/
2022-11-15.