Pular para o conteúdo

Visão geral do editor ​

Esta página é a referência completa da interface do editor do Lopaka. Cada seção principal tem um guia dedicado vinculado a partir dos títulos abaixo. Use esta página para se orientar e encontrar o caminho para os detalhes.

Layout ​

O editor combina uma árvore de camadas do projeto, um espaço de trabalho e um painel de código:

┌──────────┬──────────────────────────┬─────────────┐
│          │        Top bar           │             │
│  Layers  ├──────────────────────────┤  Inspector  │
│  panel   │        Screens + tools   │    panel    │
│          ├──────────────────────────┴─────────────┤
│          │  Code panel          │  Code settings  │
└──────────┴──────────────────────┴─────────────────┘
RegiãoFinalidade
Painel de camadasTelas, camadas e grupos expansíveis, redimensionável
Barra superiorDetalhes e ações do projeto
Tela de desenhoAs telas e a arte do projeto
Painel do inspetorPropriedades da camada selecionada
Painel de códigoAbas de código da tela, redimensionável
Configurações de códigoAlternadores e downloads da saída de código

Redimensionar os painéis ​

O painel de Camadas e o painel de código são redimensionáveis. Arraste a alça de redimensionamento na borda de um painel para alterar o tamanho dele.

Barra superior ​

A barra superior contém Detalhes do projeto e Ações. As ferramentas de desenho ficam acima do espaço de trabalho, com controles de zoom à sua direita.

Detalhes do projeto ​

Mostra informações sobre o projeto e a tela atuais.

  • Navegação estrutural — Nome do projeto › Nome da tela. Os dois rótulos são truncados se forem longos.
  • Distintivo da plataforma — mostra a plataforma ativa (por exemplo, tft-espi). Exibição somente leitura; a plataforma é escolhida quando o projeto é criado e não pode ser alterada depois.
  • Distintivo do tamanho do display — mostra a resolução configurada do display (por exemplo, 128×64).
  • Configurações (ícone de engrenagem) — abre a janela de Configurações do projeto.
  • Projeto público — um rótulo verde exibido quando o projeto fica visível para todos os usuários na Galeria.

A zona de detalhes do projeto só é exibida quando você está conectado ou visualizando no modo somente leitura.

Barra de ferramentas ​

A barra de ferramentas acima do espaço de trabalho contém o botão Selecionar e as ferramentas de desenho da plataforma ativa.

Selecionar (nenhuma ferramenta ativa) ​

Clique no ícone do cursor ou pressione Escape para voltar ao modo de seleção. No modo de seleção, o cursor é o ponteiro padrão; clicar em uma camada na tela de desenho a seleciona. Clicar em um espaço vazio desmarca todas as camadas.

Ferramentas de desenho ​

As ferramentas não compatíveis com a plataforma ativa ficam ocultas. As seguintes ferramentas existem na base de código:

FerramentaComo usar
ImagemAbre o assistente de imagens: envie uma imagem, GIF ou vídeo; escolha entre pacotes de ícones integrados; cole um array de bytes bruto; ou adicione uma animação em plataformas compatíveis
PintarDesenho à mão livre em nível de pixel em uma camada de bitmap; o clique direito apaga; segure Shift para desenhar linhas retas
TextoClicar ativa a ferramenta; uma camada de texto é posicionada no centro da tela automaticamente, selecionada, e o campo de texto do inspetor recebe o foco
RetânguloClique e arraste para definir cantos opostos
CírculoClique e arraste a partir do centro; o raio acompanha o arraste
ElipseClique e arraste para definir a caixa delimitadora
LinhaClique e arraste do ponto inicial ao ponto final
TriânguloVários cliques em três pontos: clique em cada vértice, clique duas vezes ou Escape para concluir
PolígonoVários cliques: posicione quantos vértices quiser, clique duas vezes ou Escape para concluir; clique duas vezes em um polígono existente para editar os vértices
ArcoSomente TFT_eSPI; adiciona um arco centralizado com raio, ângulos, largura, cores e suavização de bordas editáveis

Somente LVGL

FerramentaComo usar
Área de textoO mesmo que Texto, mas produz uma camada de texto de várias linhas
PainelDesenha um widget de contêiner de painel
BotãoDesenha um widget de botão
Caixa de seleçãoDesenha um widget de caixa de seleção
InterruptorDesenha um widget de interruptor
Controle deslizanteDesenha um widget de controle deslizante
Arco LVGLAdiciona um widget de arco LVGL com valor e trilha

Ferramentas de arco ​

A TFT_eSPI e a LVGL usam ferramentas de arco separadas porque seus modelos de desenho são diferentes. O Arco na TFT_eSPI é uma primitiva de desenho controlada por raio, ângulos inicial e final, largura, cor de primeiro plano, cor de fundo e um alternador Suave. Ângulos inicial e final iguais produzem um círculo completo.

O Arco LVGL cria um widget com largura, altura, rotação, ângulos inicial e final, valor, cor do indicador e cor da trilha. O valor é limitado a 0–100. Cada ferramenta de arco é exibida apenas em sua plataforma compatível.

Assistente de importação de imagens ​

Consulte o guia completo Importando imagens para todos os modos de importação, controles do editor e fluxos passo a passo.

Dica: você também pode arrastar um arquivo PNG ou BMP diretamente para a tela de desenho para pular o assistente por completo — a imagem é importada com as configurações padrão.

Controles do pincel de pintura ​

Quando a ferramenta Pintar está ativa, controles extras aparecem na barra de ferramentas:

  • Menu suspenso de padrão — escolha Quadrado, Xadrez, Linhas horizontais, Linhas verticais ou Círculo. A pré-visualização é atualizada antes de você desenhar, e os padrões se alinham à grade da tela entre traços separados.
  • Alternador do modo borracha — faz a pintura normal apagar pixels. O clique direito também apaga, e os dois caminhos de borracha usam o padrão de pincel selecionado.
  • Alternador do modo de cor — alterne entre os modos de pincel Monocromático (1 bit) e RGB.
  • Seletor de cor do pincel — visível no modo RGB; define a cor atual da pintura.
  • Recortar — aparece para camadas de pintura grandes o suficiente para recortar. O modo de recorte mostra alças laranja e escurece a área fora do recorte; arraste a região ou as alças e então aplique ou cancele. Escape sai do modo de recorte antes de sair da ferramenta Pintar, e os recortes aplicados podem ser desfeitos.

Escala ​

Um controle de escala à direita do espaço de trabalho ajusta o zoom da tela de desenho. O mesmo zoom pode ser alterado com Ctrl + / Ctrl - ou rolando a roda do mouse enquanto segura Ctrl/Cmd.

Ações ​

Ações em nível de projeto, visíveis quando conectado ou visualizando no modo somente leitura.

  • Estrela — favorita o projeto. O botão mostra a quantidade atual de estrelas.
  • Copiar — cria uma cópia do projeto na sua própria conta e a abre imediatamente. Exige acesso.
  • Compartilhar — menu suspenso com as seguintes opções:
    • Copiar o link público — copia um URL direto da galeria para a área de transferência. Desativado se o projeto ou a tela atual for privado.
    • Apresentação — abre uma apresentação em tela cheia de todas as telas do projeto.
    • Salvar como — Arquivo de texto exporta a aba de código aberta, incluindo o código personalizado. Imagem PNG e Imagem BMP exportam a tela selecionada, ou a tela da aba de código se nenhuma tela estiver selecionada.

Tela de desenho ​

O espaço de trabalho mostra as telas do projeto juntas na escala selecionada. Cada tela pré-visualiza a arte para o display de destino.

Grade ​

Clique em Grade à direita do espaço de trabalho para alternar entre uma grade de 1 pixel, uma grade de 10 pixels e nenhuma grade. A grade padrão de 1 pixel aparece com zoom de 300% ou mais; a grade de 10 pixels aparece com 30% ou mais. A grade é apenas visual e não tem comportamento de encaixe.

Interações com o mouse ​

InteraçãoEfeito
Clicar em uma área vaziaDesmarcar todas as camadas
Clicar em uma camadaSelecionar essa camada
Shift + cliqueAdicionar ou remover uma camada da seleção
Clicar e arrastar em área vaziaDesenhar um retângulo de seleção com elástico
Clicar e arrastar camada selecionadaMover a camada
Clicar e arrastar alça de redimensionamentoRedimensionar a camada selecionada
Segurar Shift ao redimensionarRestringir à proporção original
Segurar Alt ao redimensionarRedimensionar a partir do centro
Clicar em uma camada agrupadaSeleciona todas as camadas do grupo
Clicar duas vezes em camada agrupadaSeleciona somente essa camada individual
Shift + clique em camada agrupadaAdiciona todos os membros do grupo à seleção
Clique duplo em Polígono / TriânguloEntrar no modo de edição de vértices
Clique direito (ferramenta Pintar)Apagar pixels
Ctrl/Cmd + roda do mouseAumentar / reduzir o zoom, centrado no cursor
Roda do mouse (sem modificador)Deslocar a tela de desenho
Arrastar com o botão do meioDeslocar a tela de desenho

Soltar imagens ​

Você pode arrastar um arquivo PNG ou BMP diretamente para a tela de desenho. A imagem é importada imediatamente usando as configurações padrão e posicionada como uma camada de bitmap (Pintura).

Lista de telas ​

As telas aparecem como entradas expansíveis na árvore de Camadas à esquerda, com suas camadas e grupos aninhados abaixo.

Adicionar telas ​

Clique em Adicionar tela no cabeçalho de Camadas para adicionar uma nova tela. O nome é gerado automaticamente como Screen N com o próximo número disponível.

Clique em uma linha de tela na árvore de Camadas para selecionar e focar essa tela. Use sua seta de expansão para mostrar ou ocultar suas camadas.

Reordenar telas ​

Arraste uma linha de tela para uma nova posição. A ordem é salva imediatamente.

Renomear uma tela ​

Clique duas vezes no título acima de uma tela no espaço de trabalho para editá-lo em linha.

Menu contextual (clique direito) ​

Clique com o botão direito no título acima de uma tela para abrir seu menu contextual:

AçãoDescrição
DuplicarCria uma cópia da tela e a anexa à lista.
PublicarTorna uma tela privada visível na Galeria.
Tornar privadoOculta a tela da Galeria.
ExcluirRemove a tela. Exige um segundo clique para confirmar.

Lista de camadas ​

A árvore de Camadas lista as telas, camadas e grupos do projeto. Expanda uma tela para ver suas camadas em ordem de renderização (topo da lista = topo da pilha = desenhado por último).

Ações da lista de camadas ​

AçãoComo
Selecionar uma camadaClique em sua linha
Selecionar um intervaloClique em uma camada e então Shift + clique em outra
Alternar a seleçãoCtrl/Cmd + clique em uma camada
Selecionar tudoCtrl A
ReordenarArraste e solte uma linha em uma nova posição
Reordenar com o tecladoSelecione uma camada e então Ctrl ↑ / Ctrl ↓
Mostrar / ocultarClique no ícone de olho ao passar o cursor
Travar / destravarClique no ícone de cadeado ao passar o cursor
ExcluirSelecione e então Delete ou o botão Excluir no Inspetor

Grupos ​

As camadas podem ser agrupadas. Um grupo aparece como uma entrada recolhível na lista de camadas. Clique no cabeçalho do grupo para selecionar todas as camadas membros de uma vez. Ctrl/Cmd + clique no cabeçalho de um grupo alterna todos os membros desse grupo na seleção atual. Clique na seta de expansão para mostrar ou ocultar as camadas membros dentro da linha do grupo; a seleção por intervalo ainda inclui camadas dentro de grupos recolhidos.

AçãoAtalho
Agrupar camadas selecionadasCtrl G
DesagruparCtrl Shift G
Renomear grupoClique duplo no nome do grupo no Inspetor

Você pode arrastar camadas individuais para dentro e para fora de grupos soltando-as dentro ou fora do contêiner do grupo na lista.

Inspetor ​

O painel do inspetor fica no lado direito. Seu conteúdo muda dependendo do estado da seleção. Use Ocultar o inspetor ou Mostrar o inspetor à direita do espaço de trabalho para alterná-lo; a escolha é lembrada neste navegador.

Resumo de atalhos ​

Quando nada está selecionado, o inspetor mostra uma referência de atalhos de teclado. Esse é um lembrete rápido; a lista completa está na referência de Atalhos de teclado.

Uma camada selecionada ​

O inspetor mostra:

  • Ícone + nome da camada — passe o cursor para revelar o ícone de edição e então clique nele para renomear em linha.
  • Botões de alinhamento — seis botões que posicionam a camada em relação às bordas e ao centro do display:
BotãoUma camadaVárias camadas
Alinhar à esquerdaMover para a borda esquerda do displayAlinhar todas as bordas esquerdas à camada mais à esquerda
Alinhar os centros horizontaisCentralizar horizontalmente no displayAlinhar todos os centros horizontais ao centro compartilhado
Alinhar à direitaMover para a borda direita do displayAlinhar todas as bordas direitas à camada mais à direita
Alinhar ao topoMover para a borda superior do displayAlinhar todas as bordas superiores à camada mais alta
Alinhar os centros verticaisCentralizar verticalmente no displayAlinhar todos os centros verticais ao centro compartilhado
Alinhar à baseMover para a borda inferior do displayAlinhar todas as bordas inferiores à camada mais baixa

Com várias camadas selecionadas, o alinhamento é relativo à caixa delimitadora de todas as camadas selecionadas, não ao display. Cada camada se move para corresponder à borda ou ao centro correspondente desses limites combinados.

  • Campos de propriedades — todas as propriedades editáveis do tipo de camada selecionada. Campos comuns:
CampoTipoCamadas
X, YNúmeroTodas as camadas posicionáveis
W, HNúmeroTodas as camadas com tamanho
X1, Y1, X2, Y2NúmeroLinha
Raio / RX / RYNúmeroCírculo, Elipse
Raio / Início / Fim / LarguraNúmeroArco
Rotação / Início / Fim / ValorNúmeroArco LVGL
PreenchimentoBooleanoRetângulo, Círculo, Elipse, Triângulo
Invertido (XOR)BooleanoA maioria das camadas de formas
Cor / Preenchimento / Fundo / BordaCorDependente da plataforma; o fundo do texto fica oculto ou é ignorado em plataformas sem suporte
FonteSeletor de fonteTexto, Área de texto, Botão, Caixa de seleção
TextoTextoTexto, Área de texto, Botão, Caixa de seleção
MarcadoBooleanoCaixa de seleção
SobreposiçãoBooleanoEscurece a camada e a pula na geração de código
TransparênciaBooleanoImagens RGB com pixels transparentes; os mantém translúcidos em vez do fundo da tela

Para camadas de texto em U8g2, Flipper, CircuitPython e LVGL, o inspetor também mostra botões de rotação para 0°, 90°, 180° e 270°. A rotação é no sentido horário, mantém o centro dos limites da camada fixo e é preservada em projetos salvos e no código gerado. Os botões ficam ocultos em plataformas sem suporte nativo à rotação de texto.

  • Alternador de variável (pequeno interruptor ao lado de campos numéricos e de cor) — marca uma propriedade como variável em vez de um literal no código gerado.
  • Ações — botões de operações de imagem disponíveis em camadas de bitmap (Pintura):
    • Espelhar horizontalmente — espelha o bitmap ao longo do eixo vertical.
    • Espelhar verticalmente — espelha o bitmap ao longo do eixo horizontal.
    • Girar no sentido horário — gira o bitmap 90° para a direita.
    • Inverter as cores — inverte cada pixel do bitmap.
  • Mesclar em bitmap — renderiza todas as camadas selecionadas em uma única camada de bitmap (Pintura). As camadas de origem são removidas e substituídas por uma imagem plana do tamanho do display inteiro. Camadas XOR/invertidas são compostas corretamente durante a mesclagem.
  • Excluir — remove a(s) camada(s) selecionada(s).

Várias camadas selecionadas ​

O inspetor mostra a quantidade de camadas selecionadas, botões de alinhamento (para distribuir em relação umas às outras), o botão Mesclar em bitmap e o botão Excluir.

Se todas as camadas selecionadas pertencerem ao mesmo grupo, o nome do grupo é exibido e pode ser renomeado em linha.

Código ​

O painel de código fica na parte inferior do editor. Para projetos com várias telas, selecione a aba de uma tela para ver seu código-fonte gerado em tempo real.

O painel usa destaque de sintaxe para a linguagem da plataforma ativa (C, C++, YAML etc.).

  • Botão Copiar — copia o código gerado completo para a área de transferência, incluindo qualquer prefixo e sufixo personalizados que você tenha escrito (consulte abaixo).
  • Botão Importar — importa um arquivo de origem para a tela da aba de código aberta em plataformas compatíveis. Funciona melhor com código que o próprio Lopaka gerou.

Modelo de código editável ​

O painel de código é dividido em três zonas separadas por comentários marcadores:

// [BEGIN lopaka generated]
  … generated draw calls …
// [END lopaka generated]

A zona de prefixo (acima do marcador BEGIN) e a zona de sufixo (abaixo do marcador END) são totalmente editáveis. Digite ali qualquer código de que você precise — diretivas #include, declarações de variáveis, uma função setup() ou qualquer outra coisa que seu sketch exija. A seção gerada no meio é somente leitura e é atualizada automaticamente conforme você edita as camadas.

Seu prefixo e sufixo são salvos localmente no seu navegador por tela e restaurados ao recarregar a página. Alternar as abas de código carrega o modelo que pertence a cada tela.

Configurações de código ​

O painel de configurações de código fica à direita do painel de código. Ele controla como o código-fonte é gerado.

Alternadores de saída ​

Os alternadores disponíveis dependem da plataforma. Os comuns são:

ConfiguraçãoEfeito
Função wrapperEnvolve todas as chamadas de desenho em uma função nomeada
ComentáriosEmite um comentário // nome da camada antes de cada chamada de desenho
Incluir fontesEmite #include ou declarações de fontes
Declarar imagensEmite declarações de arrays de bitmap
Declarar variáveisExtrai propriedades mutáveis das camadas para variáveis C tipadas
Limpar/preencher o displayColoca uma chamada para limpar a tela no topo da função
Declarar como PROGMEMSomente U8g2 — coloca arrays de bitmap na memória flash

Seletor de sintaxe ​

Em plataformas com mais de um modelo de código, um menu suspenso Sintaxe aparece acima dos alternadores:

PlataformaOpções
U8g2Arduino (Cpp), ESP-IDF (C)
AdafruitGFX Color, AdafruitGFX Mono, ArduinoGFX, TFT_eSPIArduino (C++), ESP-IDF (C++)

A opção Arduino é o padrão. As opções ESP-IDF emitem código que você pode colocar em um componente ESP-IDF: os arrays são declarados sem PROGMEM, e nenhum setup() / loop() (ou app_main()) é gerado, então você chama as funções de desenho geradas a partir da sua própria tarefa. Outras plataformas têm um único modelo e não exibem menu suspenso.

Downloads de fontes e imagens ​

Quando fontes ou imagens bitmap são referenciadas por camadas, links de download aparecem na parte inferior do painel de configurações de código. Clique em um link de fonte para baixar o arquivo .h ou .bdf. Clique em um link de imagem para baixar o bitmap como um arquivo .bmp ou .h, dependendo da plataforma.

Salvamento automático ​

O editor salva seu trabalho automaticamente enquanto você desenha. As alterações são persistidas na nuvem a cada segundo após a última edição. Não há um botão de salvamento manual; fechar a aba ou sair da página é seguro depois que a tela de desenho para de mudar.

Ao abrir um projeto que não é seu (galeria ou link compartilhado), o editor é renderizado no modo somente leitura. As ferramentas ficam ocultas, o inspetor é somente visualização e o código pode ser copiado, mas não importado. A lista de camadas ainda é navegável.