pygtk: inverter cores de um widget de visão de texto
Pergunta
Finalmente consegui alterar o plano de fundo de um widget TextView no pygtk. Acontece que eu precisava usar o widget.modify_base(gtk.STATE_NORMAL, gtk.gdk.Color(0, 0, 0, 0))
Isso resulta no fundo preto desejado.
Agora, o resto do problema ... agora quero alterar a cor do texto para branco.
Eu tentei de tudo, incluindo widget.modify_fg
e widget.modify_text
E, no entanto, nada parece mudar a cor do texto nesta visualização de texto.
Aqui está o meu código para o TextView que tenho agora
import gtk
tv = gtk.TextView()
tv.modify_base(gtk.STATE_NORMAL, gtk.gdk.Color(0,0,0,0))
tv.modify_text(gtk.STATE_NORMAL, gtk.gdk.Color(255,255,255,0))
Isso resulta no TextView com o preto BG ... eu quero isso ... mas o texto para o campo precisa ser branco.
Alguma idéia do que eu preciso fazer?
Solução
Encontrei a resposta. É muito mais simples do que eu estava indo.
# Textview with inverted colors
import gtk
tv = gtk.TextView()
tv.modify_base(gtk.STATE_NORMAL, gtk.gdk.color_parse('black'))
tv.modify_text(gtk.STATE_NORMAL, gtk.gdk.color_parse('white'))
Isso é tudo!!!
Outras dicas
Você também pode usar gtk.gdk.Color("#FFFFFF")
para branco.