summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2010-12-22 13:37:35 +0000
committerdakkar <dakkar@thenautilus.net>2010-12-22 13:37:35 +0000
commit6efcf57640b7f43365ecc8af003cfe6e0cf13d58 (patch)
treeb3e23959d29d693f6f340e7d61e147194278d27b
parentmakefile (diff)
downloadqr-builder-6efcf57640b7f43365ecc8af003cfe6e0cf13d58.tar.gz
qr-builder-6efcf57640b7f43365ecc8af003cfe6e0cf13d58.tar.bz2
qr-builder-6efcf57640b7f43365ecc8af003cfe6e0cf13d58.zip
different "colours"
-rw-r--r--lib/GridFiller/Result/Pango.pm14
1 files changed, 13 insertions, 1 deletions
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;