Skip to content
CodeByDesign
Menu
  • Software
  • Blog
  • About
Menu

Big Merge

Posted on March 11, 2023March 11, 2023 by pharvey

In the Bahamas splitting my time between vacation and coding.

I started implementing the vector drawing layer. This started with just doing it from scratch and then switched to using Merva diagramming as a reference (as I felt like I was redoing a lot of work I had in Merva), then trying to merge Merva diagramming in… and then not. I even considered merging Euphemia into Merva (as Merva is a larger – more feature rich application). So a few attempts that I was not happy with. At this point I have done enough work that I feel committed to the path I am on… merging in a good chunk of Merva diagramming. Its a big code mash-up at the moment with not much working. The scope of changes is large – even after I reduced the merge from Merva considerably. I am flirting with the boundary of what I can wrap my head around for a single change.

A side affect is that I will be introducing new features to the existing raster/painting layer. Such as;

  • ruler with user defined guides
  • automatic canvas enlargement/shrinking
  • cross-hair
  • snap to grid with user defined grid size
  • a standardized interface for a layer
  • shape alignment (before commit)

And a bunch of new stuff that really only applies to vector such as;

  • resize – by class
  • select – by class
  • toggle visible – by class
  • align shapes
  • group shapes
  • layout for shapes

Examples of what I am leaving out from Merva (in addition to all of the non-digramming stuff like ODBC interface etc);

  • the whole custom object hierarchy management including..
    • searching the hierarchy (spanning memory and files)
    • validating the objects in the hierarchy
    • workspace as root object in hierarchy
  • transactions
  • the many derived diagrams (org chart etc) – for now

I created an ‘Object Registry’ to cover some functionality lost when I ‘chopped off’ the custom object hierarchy that Merva uses. The main thing the ‘Object Registry’ is used for is to provide OID’s which in turn allows references to be saved/loaded (ie; a line-end connected to a shape).

My guess is that this will take about a week to get the code to build again and possibly another week getting it all working. Kinda depends upon how much vacationing I get up to.

Leave a Reply Cancel reply

You must be logged in to post a comment.

  • github
    • Applications
      • Euphemia
      • Merva
    • Library's
      • Euphemia-SDK
      • Classic-SDK
© 2023 CodeByDesign | Powered by Minimalist Blog WordPress Theme