diff options
| author | git.exe' is not recognized as an internal or external command <git.exe' is not recognized as an internal or external command> | 2009-12-14 18:19:33 -0800 | 
|---|---|---|
| committer | git.exe' is not recognized as an internal or external command <git.exe' is not recognized as an internal or external command> | 2009-12-14 18:19:33 -0800 | 
| commit | 628e34959a5380ee25c73068aa5cbabb41050d04 (patch) | |
| tree | d6d0b2605eb4b6207ae55137ef498252974850b1 | |
| parent | 9e3a36537d07700ec49f432940b95cf2ee9689e8 (diff) | |
Few minor modifications and cleanup.
| -rw-r--r-- | dalos.lua | 40 | 
1 files changed, 35 insertions, 5 deletions
| @@ -45,7 +45,12 @@ dalosp.canvas = {          return obj, ind      end, -    moveobj = function (self, obj, x, y) +    moveobj = function (self, obj, dx, dy) +        obj.x, obj.y = obj.x + dx, obj.y + dy +        self:draw() +    end, +     +    setobjplace = function (self, obj, x, y)          obj.x, obj.y = x, y          self:draw()      end, @@ -61,7 +66,7 @@ dalosp.canvas = {              if moving then                  local ox, oy = self.ox, self.oy                  local dx, dy = x - ox, y - oy -                self:moveobj(moving, moving.x + dx, moving.y + dy) +                self:moveobj(moving, dx, dy)                  self.ox, self.oy = x, y              end          end @@ -104,6 +109,7 @@ dalosp.canvas = {          r.addobj = dalosp.canvas.addobj          r.findobj = dalosp.canvas.findobj          r.moveobj = dalosp.canvas.moveobj +        r.setobjplace = dalosp.canvas.setobjplace          r.objects = {} @@ -133,13 +139,30 @@ dalosp.object = {          cv:Box(x1, x2, cv:InvertYAxis(y2), cv:InvertYAxis(y1))      end, -    create = function (dcanvas, x, y, w, h, c) +    create = function (dcanvas, tab, extra) +        if not tab then tab = {} end          local obj = {              draw = dalosp.object.default_draw, -            color = c or cd.BLACK +            color = tab.color or cd.GRAY, +            inputs = tab.inpus or 0, +            outputs = tab.outputs or 0, +            otype = tab.otype or dalos.objtype.DUMMY, +            extra = extra,          } -        dcanvas:addobj(obj, x or 0, y or 0, w or 50, h or 50) +        if tab.otype and not tab.c then +            if tab.otype == dalos.objtype.DUMMY then +                obj.color = cd.GRAY +            elseif tab.otype == dalos.objtype.HANDLE then +                obj.color = cd.CYAN +            elseif tab.otype == dalos.objtype.LUA_FILTER then +                obj.color = cd.YELLOW +            else +                obj.color = cd.DARK_RED +            end +        end +         +        dcanvas:addobj(obj, tab.x or 0, tab.y or 0, tab.w or 50, tab.h or 50)      end,  } @@ -147,6 +170,13 @@ dalos.canvas = dalosp.canvas.create  dalos.menu = dalosp.menu.create  dalos.object = dalosp.object.create +dalos.objtype = { +    UNKNOWN = 0, +    DUMMY = 1, +    HANDLE = 2, +    LUA_FILTER = 3, +} +  ----------------  d = dalos.canvas {} | 
