Variações de tipo de tema

Ao projetar uma interface de usuário, pode haver momentos em que um nó Control precisa ter uma aparência diferente do que normalmente é definido por um Theme. Cada nó de controle tem substituições de propriedade de tema, que permitem redefinir o estilo de cada elemento de interface do usuário individual.

../../_images/themecheck.png

Essa abordagem rapidamente se torna difícil de gerenciar, se você precisar compartilhar a mesma aparência personalizada entre vários controles. Imagine que você usa variantes cinza, azul e vermelho de Button em todo o seu projeto. Configurá-lo toda vez que você adiciona um novo elemento de botão à sua interface é uma tarefa tediosa.

Para ajudar na organização e aproveitar melhor o poder dos temas você pode usar variações de tipo de tema. Eles funcionam como tipos de tema normais, mas em vez de serem autossuficientes e autônomos, eles estendem outro tipo básico.

Seguindo o exemplo anterior, seu tema pode ter alguns estilos, cores e fontes definidas para o tipo Button, personalizando a aparência de cada elemento de botão em sua interface do usuário. Para ter um botão cinza, vermelho ou azul, você criaria um novo tipo, por exemplo, GrayButton, e marque-o como uma variação do tipo base Button.

As variações de tipo podem substituir alguns aspectos do tipo base, mas mantêm outros. Eles também podem definir propriedades que o estilo base não definiu. Por exemplo, seu GrayButton pode substituir o estilo normal da base Button e adicionar font_color que o Button nunca definiu. O controle usará uma combinação de ambos os tipos dando prioridade à variação do tipo.

Nota

A maneira como os controles resolvem quais itens de tema eles usam de cada tipo e cada tema é melhor descrita na seção Personalizando um projeto do artigo "Introduction to GUI skinning".

Criando uma variação de tipo

Para criar uma variação de tipo, abra o editor de temas e clique no ícone de adição próximo ao menu suspenso Tipo no lado direito do editor. Digite o nome que deseja para a variação do tipo de tema na caixa de texto e clique em Adicionar tipo.

Abaixo do menu suspenso Tipo estão as abas de propriedade. Mude para a aba com um ícone de chave inglesa e chave de fenda.

../../_images/base_type.png

Clique no ícone de adição ao lado do campo Tipo de base. Você pode selecionar o tipo base lá, que normalmente seria o nome de uma classe de nó de controle (por exemplo, Button, Label, etc). As variações de tipo também podem encadear e estender outras variações de tipo. Isso funciona da mesma forma que os nós de controle herdam o estilo de sua classe base. Por exemplo, CheckButton herda estilos de Button porque os tipos de nós correspondentes se estendem entre si.

Depois de selecionar o tipo base, você poderá ver suas propriedades nas outras abas do editor de temas. Você pode editá-los normalmente.

Usando uma variação de tipo

Agora que uma variação de tipo foi criada, você pode aplicá-la aos seus nós. No dock do inspetor, na propriedade Theme de um nó de controle, você pode encontrar a propriedade Theme Type Variation. Ele está vazio por padrão, o que significa que apenas o tipo base tem um efeito sobre esse nó.

Você pode selecionar variações de tipo em uma lista suspensa ou inserir seu nome manualmente. As variações aparecem na lista apenas se o tipo de variação pertencer ao tema geral do projeto, que você pode configurar nas configurações do projeto. Para qualquer outro caso, você deve inserir o nome da variação manualmente. Clique no ícone de lápis à direita. Em seguida, digite o nome da variação de tipo e clique no ícone de marca de seleção ou pressione enter. Se existir uma variação de tipo com esse nome, ela agora será usada pelo nó.