From 6efcf57640b7f43365ecc8af003cfe6e0cf13d58 Mon Sep 17 00:00:00 2001 From: dakkar Date: Wed, 22 Dec 2010 13:37:35 +0000 Subject: different "colours" --- lib/GridFiller/Result/Pango.pm | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/lib/GridFiller/Result/Pango.pm b/lib/GridFiller/Result/Pango.pm index cfb2947..28c697b 100644 --- a/lib/GridFiller/Result/Pango.pm +++ b/lib/GridFiller/Result/Pango.pm @@ -155,6 +155,17 @@ sub _center_adj { return +($rounded-$w)/2; } +sub colour_for_string { + my ($self, $word, $x, $y, $dir) = @_; + + if ($self->source_grid->[$y][$x] eq '*') { + return (1,1,1); + } + else { + return (0,0,0); + } +} + my $PI=3.1415926; sub place_word_at { @@ -163,6 +174,7 @@ sub place_word_at { $self->log->debug("Placing $word at ${x}:${y} ($dir)"); my $p = $self->layout_for_string($word); + my @colour = $self->colour_for_string($word,$x,$y,$dir); my $size = $self->cell_size; my $cr = $self->_cairo_c; $x*=$size;$y*=$size; @@ -180,7 +192,7 @@ sub place_word_at { $cr->rotate($PI/2); } Pango::Cairo::update_layout($cr,$p); - $cr->set_source_rgb(1,1,0); + $cr->set_source_rgb(@colour); Pango::Cairo::show_layout($cr,$p); $cr->restore; -- cgit v1.2.3