From 0b46922d6d64675fe60e61e5eefa548a094502a6 Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Thu, 3 May 2012 17:14:39 -0700 Subject: [PATCH] Rename lister to layout --- src/servo/layout/layout.rs | 57 +++++++++++++++++++++++++++--- src/servo/layout/lister.rs | 71 -------------------------------------- src/servo/servo.rc | 1 - src/servo/servo.rs | 8 ++--- 4 files changed, 55 insertions(+), 82 deletions(-) delete mode 100644 src/servo/layout/lister.rs diff --git a/src/servo/layout/layout.rs b/src/servo/layout/layout.rs index 0eddee4c568..f99bf57de9b 100644 --- a/src/servo/layout/layout.rs +++ b/src/servo/layout/layout.rs @@ -1,17 +1,65 @@ +#[doc = " + +Builds display lists on request and passes them to the renderer + +"]; + import task::*; import comm::*; +import display_list::*; +import gfx::geom; +import gfx::geom::*; +import gfx::renderer; enum msg { - do_layout, + build, exit } -fn layout(lister: chan) -> chan { +fn layout(renderer: chan) -> chan { + spawn_listener:: {|po| + let mut x1 = 100; + let mut y1 = 100; + let mut w1 = 200; + let mut h1 = 200; + let mut x2 = 200; + let mut y2 = 200; + let mut w2 = 300; + let mut h2 = 300; + loop { alt recv(po) { - do_layout { - send(lister, lister::build) + build { + let dlist = [ + display_item({ + item_type: solid_color, + bounds: geom::box( + int_to_au(x1), + int_to_au(y1), + int_to_au(w1), + int_to_au(h1)) + }), + display_item({ + item_type: solid_color, + bounds: geom::box( + int_to_au(x2), + int_to_au(y2), + int_to_au(w2), + int_to_au(h2)) + }) + ]; + + send(renderer, gfx::renderer::draw(dlist)); + + x1 += 1; + y1 += 1; + x2 -= 1; + y2 -= 1; + if x1 > 800 { x1 = 0 } + if y1 > 600 { y1 = 0 } + if x2 < 0 { x2 = 800 } + if y2 < 0 { y2 = 600 } } exit { break; @@ -19,4 +67,5 @@ fn layout(lister: chan) -> chan { } } } + } diff --git a/src/servo/layout/lister.rs b/src/servo/layout/lister.rs deleted file mode 100644 index da6b0efa644..00000000000 --- a/src/servo/layout/lister.rs +++ /dev/null @@ -1,71 +0,0 @@ -#[doc = " - -Builds display lists on request and passes them to the renderer - -"]; - -import task::*; -import comm::*; -import display_list::*; -import gfx::geom; -import gfx::geom::*; -import gfx::renderer; - -enum msg { - build, - exit -} - -fn lister(renderer: chan) -> chan { - - spawn_listener:: {|po| - let mut x1 = 100; - let mut y1 = 100; - let mut w1 = 200; - let mut h1 = 200; - let mut x2 = 200; - let mut y2 = 200; - let mut w2 = 300; - let mut h2 = 300; - - loop { - alt recv(po) { - build { - let dlist = [ - display_item({ - item_type: solid_color, - bounds: geom::box( - int_to_au(x1), - int_to_au(y1), - int_to_au(w1), - int_to_au(h1)) - }), - display_item({ - item_type: solid_color, - bounds: geom::box( - int_to_au(x2), - int_to_au(y2), - int_to_au(w2), - int_to_au(h2)) - }) - ]; - - send(renderer, gfx::renderer::draw(dlist)); - - x1 += 1; - y1 += 1; - x2 -= 1; - y2 -= 1; - if x1 > 800 { x1 = 0 } - if y1 > 600 { y1 = 0 } - if x2 < 0 { x2 = 800 } - if y2 < 0 { y2 = 600 } - } - exit { - break; - } - } - } - } - -} diff --git a/src/servo/servo.rc b/src/servo/servo.rc index 9a56dcf044f..3f5145bb57c 100755 --- a/src/servo/servo.rc +++ b/src/servo/servo.rc @@ -30,7 +30,6 @@ mod image { mod layout { mod base; mod display_list; - mod lister; mod layout; } diff --git a/src/servo/servo.rs b/src/servo/servo.rs index eaa206b9ece..4f4a5d7c62c 100644 --- a/src/servo/servo.rs +++ b/src/servo/servo.rs @@ -12,24 +12,20 @@ fn main() { // The compositor let renderer = gfx::renderer::renderer(osmain); - // The display list builder - let lister = layout::lister::lister(renderer); - // The layout task - let layout = layout::layout::layout(lister); + let layout = layout::layout::layout(renderer); // The keyboard handler let key_po = port(); send(osmain, osmain::add_key_handler(chan(key_po))); loop { - send(layout, layout::layout::do_layout); + send(layout, layout::layout::build); std::timer::sleep(10u); if peek(key_po) { comm::send(layout, layout::layout::exit); - comm::send(lister, layout::lister::exit); let draw_exit_confirm_po = comm::port(); comm::send(renderer, gfx::renderer::exit(comm::chan(draw_exit_confirm_po)));