Re: redesign of layers?



At 06.08.2011 08:21, Arigead wrote:
On Friday 05 Aug 2011 23:05:06 Hans Breuer wrote:
[...]
That change would break a lot of things. Not only forward/backward
compatibility of exisiting diagrams. But also drawing order, layer specific
selections, ...

Forward/backward compatibiliy of diagrams could easily be handled by code.
Backward compatibility yes, forward compatibility no. Please read and understand http://en.wikipedia.org/wiki/Forward_compatibility
For  all its simplicity code can be very flexible.
Sorry, parser error. Maybe again you should look at the code first ...
Dia could easily read both
formats and perhaps either save to a newer format or to the existing format.
... and maybe try to clearly and simply fix a problem which already exist with part of the solution Lars proposed. (connections between layers are already possible, but see https://bugzilla.gnome.org/show_bug.cgi?id=600571 )

If the format is locked in stone then Dia is inflexible and not really future
proof. Things change and most file formats have changed over time.
The format of course got extended over the years, but IIRC there was only once breaking in forward compatibility.

I'm not sure what you mean by drawing order, or don't see how this is
effected.

Maybe you should read the link about layers I gave.

I would not even design it that way if starting from scratch for your use
case. If I understand correctly there are only some objects which would be
available on every (or many) layers. In a multi layer circuit board the
circuit pathes are on a dedicated layer. Only at some spots there would be
a connection between layers.

Good example, a multi layer PCB is composed of a number of layers but for the
thing to work there has to be some communication, or crossover, between
layers. Yes this only occurs at a number of specific points in the circuit but
it does happen. At present Dia's layers are completely seperate drawings and
serve no other purpose then to unclutter a complicated overall diagram.
Not true. Connections between are already possible, with issues though (see above).

>> [...]
Sorry I don't get why you call the layers "pages". What's wrong with layers
[ http://en.wikipedia.org/wiki/2D_computer_graphics#Layers ]

Layers is fine I have no problem with semantics of it at all. My problem is
the functionality and flexibility of layers as currently implemented.I haave
no doubt that the changes would be major but that's not a reason not to do
something, if it leads to a more flexible solution, in my mind.
I have doubts that the change to fullfill your use case _needs to be_ major. But you currently seem to be locked moving in the wrong direction. Please try a step back and let's analyze the problem you want to solve, and interrupt for a moment discussing a wrong solution. (It's just my expert opinion that the model of
  - diagram has layers,
  - layers have objects
is the right one.)

Yes it will be
difficult to change the code from one way of working to another but you've not
given me a reason why it should not be changed.
Sorry, I thought I gave you multiple reasons. But if you want more reading the code would certainly help. Just assuming how it is modelled and jumping to conclusion does not look right. Or if you want to: show me the code (you have written) and I'll tell you what's wrong with it ;-)

Compatability could be coded for and difficult is not really a reason.

Really? Please understand forward compatibility.

I can well understand the resistance to changing things. I'm only trying to
apply Dia's functionality to a specific problem. I'll think over it some more
and see if I can bend Dia to a solution.

An acceptable solution would not have to bend Dia. But of course you are free to code what ever you want. But to me the problem does not seem too specific, just your approach is. Back to requirements:

 1) you want to have some objects rendered with every layer
 2) you want to have them connectable from any other layer
 3) you want to have the usual layer/object behaviour for other objects
 4) you want to have them always active (e.g. moveable, selectable)
    no matter which is the active layer ??
 5) ... ?

For 2) see my answer above or Lars' answer in the other mail. For 1) just use a 'master' layer you combine with every other layer to render.

Thanks a million for getting back to me, and taking the time to respond. I'll
mull over things with a coffee.

I know taking a step back and clearly articulating the requirements is hard, but still it would be a better approach than just assuming what the current design is and how the future implementation is supposed to look like.

-------- Hans "at" Breuer "dot" Org -----------
Tell me what you need, and I'll tell you how to
get along without it.                -- Dilbert



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]