cores no gtk

Iniciado por kcnp, 12 de Dezembro de 2007, 18:40

tópico anterior - próximo tópico

kcnp

eu tô com uma dúvida. É que eu estou aprendendo a programar em gtk (em linguagem c mesmo) e eu não estou conseguindo achar funçoes que alterem as cores dos widgets, como por exemplo a cor do titulo de uma janela, a cor de um botão, das letras de uma label e etc.Eu gostaria de ajuda.
Desde já obrigado.
kcnp

nitrofurano

Duvido um bocado que consigas mudar a cor de só um botão ou coisa parecida no GTK - sou a favor de uma configurabilidade melhor do GTK, mas não tanto, por acreditar que as normas do genero Human Interface Guidelines (que o Gnome se baseou na Apple) tentem garantir uma interface minimamente sóbria - claro que cada um tem a sua opinião.

O desenvolvimento do GTK acho que tem alguma preocupação com limpeza, leveza, e utilização de normas, em codigo e em desempenho, o que é muito saudavel para o open-source

Um bom exemplo de uma excelente configurabilidade a nivel de uma cor para cada controle de GUI é do 4DWM da SGI (IRIX), só que mudas a cor para todos os botões, textcontrols, progressbars, etc... - confesso que gostava de ver isso no GTK, já que estão a tentar fazer isto passo a passo (no Feisty eram 6 cores, agora no Gutsy são 8, etc...)

o KDE já tem isso a muito tempo, mas confesso ter deixado de utilizar desde a versão 2.0 - na minha opinião o KDE é um gestor de janelas que precisava renascer da versão 1.0, mais limpa, e a criar menos ou nenhuns conflitos com o Gnome

Utilizar o wxWidgets (a versão que usa GTK2) ao inves do GTK directamente pode ser uma tentativa, não sei...

E existem os tiros-no-pé do costume, que é utilizarmos outras bibliotecas, como Motif, KDE, etc.

Não sei, é uma questão de experimentares, sugerires, esperares, investigares, etc...

Não deixa de procurar os pdfs antigos do HIG do MacOS Classic (7, 8 e 9), que de certeza podem ser bastante inspiradores com o essencial que uma interface deva ter...


alessandro_ufms

Não sei se o GTK permite esse tipo de mudança, pois vejo que quem controla as cores dos botões são os temas escolhidos pelo usuário.

kcnp

O que acontece é que eu tó tentando criar programas com interfaces gráficas com a biblioteca gtk, e eu gostaria de saber mudar a cor de uma janela, botao e etc. Eu ate consegui mudar o fundo de uma janela depois de fuçar nos cabelhos diversos de gtk, e inclusive fuçando nos cabeçalhos da biblioteca do gdk, porem nao consegui fazer mais coisa. Pelo que eu pude entender a biblioteca gdk ajuda a definir cores com uma struct que tem lá, acho que GdkColor, e as funções de manipulação de cor dos widgets em gtk tem como um dos parâmetros um apontador para uma struct dessas, mas possuem outros parametros também, eu achei algumas funções desse tipo mas só consegui algum sucesso com uma delas que muda a cor fundo dos widgets, e mesmo assim só consegui com as janelas(windows),eu tentei com mais um ou dois widgets mas não deu certo. Essas funções eu achei o protótipo no cabeçalho gtkwidget.h, se não me falha a memória. Um outro parametro desas funções é uma enumeração que esta declarada no cabeçalho gtkenums.h, sed não me falha a memória, e acho que é ai que está o x da questão. Bom, pelo que eu pude perceber tutoriais de gtk em português são raros e incompletos, o que é uma infelicidade, pois é uma biblioteca interessante, e que se torna mais fácil de aprender devido a regularidade do nome das funções. Bom, se alguém puder me ajudar eu fico agradecido. Há, como eu tô de férias eu tô programando em Gtk no windows, por que aqui onde meus pais moram não tem linux, e o meu computador(onde eu tenho o ubuntu instalado) tá lá em Campinas, onde eu faço faculdade. Mas eu acho que não há grandes diferenças do gtk no linux e no windows(provalvelmente nenhuma).
kcnp