# HG changeset patch # User David Bryant # Date 1347848385 -34200 # Node ID be50d20643a167c6af2a861a3ea2f00ed33670b6 # Parent 89e8b0d92f36a3d65669072375e653b0b907acae Depend on only the things we need. diff -r 89e8b0d92f36 -r be50d20643a1 build-tool/configure_functions.d --- a/build-tool/configure_functions.d Thu Aug 02 17:20:52 2012 +0930 +++ b/build-tool/configure_functions.d Mon Sep 17 11:49:45 2012 +0930 @@ -621,7 +621,9 @@ appendBobVar(data, "VALID_ARCHITECTURES", validArchitectures.keys); appendBobVar(data, "ARCHITECTURES", architectures); + /* useExecutable(data, "RST2HTML", ["rst2html.py", "rst2html", "docutils-rst2html.py"]); + */ appendRunVar(data, "LD_LIBRARY_PATH", [`${DIST_PATH}/lib`]); appendRunVar(data, "LD_LIBRARY_PATH", [`${DIST_PATH}/lib/plugins`]); diff -r 89e8b0d92f36 -r be50d20643a1 configure.d --- a/configure.d Thu Aug 02 17:20:52 2012 +0930 +++ b/configure.d Mon Sep 17 11:49:45 2012 +0930 @@ -16,10 +16,12 @@ // open // + /* // libssh2 and dependencies required by net usePackage(data, "libssh2", Constraint.AtLeast, "1.2"); useHeader( data, "gcrypt.h"); useLibrary(data, "libgcrypt.so"); + */ // TAO is required by corba-tao //useTao(data); @@ -29,6 +31,7 @@ // reuse // + /* usePackage(data, "libxml-2.0"); usePackage(data, "libpng"); usePackage(data, "freetype2"); @@ -48,7 +51,9 @@ useExecutable(data, "IMAGE_MAGICK_CONVERT", ["convert"]); useExecutable(data, "ZIP", ["zip"]); + */ + /* appendBobVar(data, "CCFLAGS", ["-DGTKMM_MACRO_SHADOW_ERROR", "-DGTKMM_DISABLE_DEPRECATED", @@ -59,7 +64,9 @@ "-DLIBSIGC_DISABLE_DEPRECATED", "-DGTK_DISABLE_DEPRECATED", "-DGSEAL_ENABLE"]); + */ + /* if (exists("/opt/acacia/ecw")) { string[][Use] dirs; dirs[Use.Inc] = ["/opt/acacia/ecw/include"]; @@ -74,9 +81,12 @@ appendBobVar(data, "CCFLAGS", ["-DUSE_ECW_CHARTING_RASTER_SOURCE"]); appendBobVar(data, "ECW_LIBRARIES", ["NCSEcw", "NCSUtil", "NCSCnet"]); } + */ + /* appendRunVar(data, "GST_PLUGIN_PATH", ["${DIST_PATH}/lib/plugins"]); + */ finalise(data, [/*"open"*/]); diff -r 89e8b0d92f36 -r be50d20643a1 doodle/main/Bobfile --- a/doodle/main/Bobfile Thu Aug 02 17:20:52 2012 +0930 +++ b/doodle/main/Bobfile Mon Sep 17 11:49:45 2012 +0930 @@ -4,4 +4,4 @@ dist-util dupes : dupes.d : ; -dist-util doodler : doodler.d : dl gtkd ; +dist-util doodle : doodle.d : dl gtkd ; diff -r 89e8b0d92f36 -r be50d20643a1 doodle/main/util/doodle.d --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doodle/main/util/doodle.d Mon Sep 17 11:49:45 2012 +0930 @@ -0,0 +1,114 @@ +module main.prog.doodler; + +// XXX bob problem, needs it to be like this... +import doodle.core.backtrace; +import doodle.core.logging; +import doodle.core.backtrace; + +import doodle.dia.standard_tools; +import doodle.dia.page_layer; +import doodle.dia.grid_layer; +import doodle.dia.tool_layer; + +import doodle.fig.diagram_layer; +import doodle.fig.select_tool; + +import doodle.fig.tools; + +import doodle.gtk.palette; + +import doodle.gtk.cairo_canvas; + +private { + /* + import doodle.core.backtrace; + import doodle.core.logging; + import doodle.core.backtrace; + + import doodle.dia.standard_tools; + import doodle.dia.page_layer; + import doodle.dia.grid_layer; + import doodle.dia.tool_layer; + + import doodle.fig.diagram_layer; + import doodle.fig.select_tool; + + import doodle.fig.tools; + + import doodle.gtk.palette; + + import doodle.gtk.cairo_canvas; + */ + + import gtk.Main; + import gtk.MainWindow; + import gtk.VBox; + + import std.stdio; +} + +final class TopLevel : /*private*/ IToolStackObserver { + this(string[] args) { + Main.init(args); + auto window = new MainWindow("Doodle"); + auto vbox = new VBox(false, 0); + + auto palette = new Palette!Tool; + _palette = palette; + + vbox.packStart(palette, false, false, 0); + + Tool[] tools; + tools ~= new PanTool; + tools ~= new ZoomTool; + tools ~= new SelectTool; + auto toolLayer = new ToolLayer(tools, this); + _toolStack = toolLayer; + + auto gridLayer = new GridLayer; + + auto diagramLayer = new DiagramLayer; + _diagram = diagramLayer; + + Layer[] layers; + layers ~= new PageLayer; + layers ~= gridLayer; + layers ~= diagramLayer; + layers ~= toolLayer; + + // assume the screen has PPI of 120.0 + immutable millimetersPerInch = 25.4; + immutable pixelsPerMillimetre = 120.0 / millimetersPerInch; + auto canvas = new CairoCanvas(layers, toolLayer, gridLayer, pixelsPerMillimetre); + + vbox.packStart(canvas, true, true, 0); + + Palette!Tool.Item[] items = [ + { "select.svg", "Select", "Select and modify elements", new SelectTool }, + { "rectangle.svg", "Rectangle", "Create rectangle", new CreateRectangleTool(_diagram) }, + { "ellipse.svg", "Ellipse", "Create ellipse", new CreateRectangleTool(_diagram) }, + { "polyline.svg", "Polyline", "Create polyline", new CreateRectangleTool(_diagram) } + ]; + + palette.configure(items, &_toolStack.use); + window.add(vbox); + window.setDefaultSize(640, 580); + window.showAll(); + Main.run(); + } + + void toolChanged(Tool tool) { + message("Tool changed %s", tool.name); + _palette.activate(tool); + } + + private { + IToolStack _toolStack; + IPalette!Tool _palette; + IDiagram _diagram; + } +} + +void main(string[] args) { + new TopLevel(args); +} diff -r 89e8b0d92f36 -r be50d20643a1 doodle/main/util/doodler.d --- a/doodle/main/util/doodler.d Thu Aug 02 17:20:52 2012 +0930 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,114 +0,0 @@ -module main.prog.doodler; - -// XXX bob problem, needs it to be like this... -import doodle.core.backtrace; -import doodle.core.logging; -import doodle.core.backtrace; - -import doodle.dia.standard_tools; -import doodle.dia.page_layer; -import doodle.dia.grid_layer; -import doodle.dia.tool_layer; - -import doodle.fig.diagram_layer; -import doodle.fig.select_tool; - -import doodle.fig.tools; - -import doodle.gtk.palette; - -import doodle.gtk.cairo_canvas; - -private { - /* - import doodle.core.backtrace; - import doodle.core.logging; - import doodle.core.backtrace; - - import doodle.dia.standard_tools; - import doodle.dia.page_layer; - import doodle.dia.grid_layer; - import doodle.dia.tool_layer; - - import doodle.fig.diagram_layer; - import doodle.fig.select_tool; - - import doodle.fig.tools; - - import doodle.gtk.palette; - - import doodle.gtk.cairo_canvas; - */ - - import gtk.Main; - import gtk.MainWindow; - import gtk.VBox; - - import std.stdio; -} - -final class TopLevel : /*private*/ IToolStackObserver { - this(string[] args) { - Main.init(args); - auto window = new MainWindow("Doodle"); - auto vbox = new VBox(false, 0); - - auto palette = new Palette!Tool; - _palette = palette; - - vbox.packStart(palette, false, false, 0); - - Tool[] tools; - tools ~= new PanTool; - tools ~= new ZoomTool; - tools ~= new SelectTool; - auto toolLayer = new ToolLayer(tools, this); - _toolStack = toolLayer; - - auto gridLayer = new GridLayer; - - auto diagramLayer = new DiagramLayer; - _diagram = diagramLayer; - - Layer[] layers; - layers ~= new PageLayer; - layers ~= gridLayer; - layers ~= diagramLayer; - layers ~= toolLayer; - - // assume the screen has PPI of 120.0 - immutable millimetersPerInch = 25.4; - immutable pixelsPerMillimetre = 120.0 / millimetersPerInch; - auto canvas = new CairoCanvas(layers, toolLayer, gridLayer, pixelsPerMillimetre); - - vbox.packStart(canvas, true, true, 0); - - Palette!Tool.Item[] items = [ - { "select.svg", "Select", "Select and modify elements", new SelectTool }, - { "rectangle.svg", "Rectangle", "Create rectangle", new CreateRectangleTool(_diagram) }, - { "ellipse.svg", "Ellipse", "Create ellipse", new CreateRectangleTool(_diagram) }, - { "polyline.svg", "Polyline", "Create polyline", new CreateRectangleTool(_diagram) } - ]; - - palette.configure(items, &_toolStack.use); - window.add(vbox); - window.setDefaultSize(640, 580); - window.showAll(); - Main.run(); - } - - void toolChanged(Tool tool) { - message("Tool changed %s", tool.name); - _palette.activate(tool); - } - - private { - IToolStack _toolStack; - IPalette!Tool _palette; - IDiagram _diagram; - } -} - -void main(string[] args) { - new TopLevel(args); -}