[gnome-sudoku/gnome-3-14] SudokuPrinter: store a list instead of an array
- From: Michael Catanzaro <mcatanzaro src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-sudoku/gnome-3-14] SudokuPrinter: store a list instead of an array
- Date: Sun, 5 Oct 2014 18:15:39 +0000 (UTC)
commit e806fc354dce8311cdd32e189af081639476e965
Author: Michael Catanzaro <mcatanzaro gnome org>
Date: Sun Oct 5 12:56:58 2014 -0500
SudokuPrinter: store a list instead of an array
src/gnome-sudoku.vala | 6 +++++-
src/print-dialog.vala | 2 +-
src/sudoku-printer.vala | 10 +++++-----
3 files changed, 11 insertions(+), 7 deletions(-)
---
diff --git a/src/gnome-sudoku.vala b/src/gnome-sudoku.vala
index 02e8a4c..2501edd 100644
--- a/src/gnome-sudoku.vala
+++ b/src/gnome-sudoku.vala
@@ -403,8 +403,12 @@ public class Sudoku : Gtk.Application
return;
print_action.set_enabled (false);
print_multiple_action.set_enabled (false);
- var printer = new SudokuPrinter ({game.board.clone ()}, (Window) window);
+
+ var list = new Gee.ArrayList<SudokuBoard> ();
+ list.add (game.board.clone ());
+ var printer = new SudokuPrinter (list, (Window) window);
printer.print_sudoku ();
+
print_action.set_enabled (true);
print_multiple_action.set_enabled (true);
}
diff --git a/src/print-dialog.vala b/src/print-dialog.vala
index cb0e58e..aa588ba 100644
--- a/src/print-dialog.vala
+++ b/src/print-dialog.vala
@@ -129,7 +129,7 @@ once = true;
spinner.hide ();
sensitive = true;
- var printer = new SudokuPrinter (boards, this);
+ var printer = new SudokuPrinter (new Gee.ArrayList<SudokuBoard>.wrap (boards), this);
if (printer.print_sudoku () == Gtk.PrintOperationResult.APPLY)
{
foreach (SudokuBoard board in boards)
diff --git a/src/sudoku-printer.vala b/src/sudoku-printer.vala
index d8aa4b6..dfc77b5 100644
--- a/src/sudoku-printer.vala
+++ b/src/sudoku-printer.vala
@@ -24,7 +24,7 @@ using Gdk;
public class SudokuPrinter : GLib.Object {
- private SudokuBoard[] boards;
+ private Gee.List<SudokuBoard> boards;
private Gtk.Window window;
private int margin;
@@ -51,12 +51,12 @@ public class SudokuPrinter : GLib.Object {
return Gtk.PrintOperationResult.ERROR;
}
- public SudokuPrinter (SudokuBoard[] boards, Gtk.Window window)
+ public SudokuPrinter (Gee.List<SudokuBoard> boards, Gtk.Window window)
{
this.boards = boards;
this.window = window;
this.margin = 25;
- this.n_sudokus = boards.length;
+ this.n_sudokus = boards.size;
this.print_op = new Gtk.PrintOperation ();
print_op.begin_print.connect (begin_print_cb);
@@ -81,8 +81,8 @@ public class SudokuPrinter : GLib.Object {
var best_square_size = fit_squares_in_rectangle (width, height, margin);
var start = page_nr * SUDOKUS_PER_PAGE;
- var end = int.min ((start + SUDOKUS_PER_PAGE), boards.length);
- SudokuBoard[] sudokus_on_page = boards[start : end];
+ var end = int.min ((start + SUDOKUS_PER_PAGE), boards.size);
+ Gee.List<SudokuBoard> sudokus_on_page = boards.slice (start, end);
double left = (width - best_square_size) / 2;
double top = margin;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]