To much to go into details Wed, Oct 29. 2008
Another day of work on the project. My major attention is at the algorithms, that check the workflow. It's still work in progress, but I don't have to pay attention to the order in which the units are listed. It's checked and sorted automatically.
I also did some work on the connections. Reconnecting nodes automatically creates new connections and deletes the old ones.
I added some simple FileDropper to the GPanel, so I can Drag'n drop image files and it creates a suited source unit. Obviously I develop on Mac, so these things look always nice while being handy.
Work will continue the next 4 days.
Here is the current GUI:
I also did some work on the connections. Reconnecting nodes automatically creates new connections and deletes the old ones.
I added some simple FileDropper to the GPanel, so I can Drag'n drop image files and it creates a suited source unit. Obviously I develop on Mac, so these things look always nice while being handy.
Work will continue the next 4 days.
Here is the current GUI:

The lower source was dragged on the GUI and manually connected to the nodes.
Connect() Tue, Oct 28. 2008
I can connect all units by hand and it still works at the end. 
I reworked some of the ways the connections are handled. It's not yet nice and not yet safe, but it works.
I reworked some of the ways the connections are handled. It's not yet nice and not yet safe, but it works.
Slightly off, but you see where it goes Thu, Oct 23. 2008
After a long and busy weekend and two days off, I continued the last two days. Here is the current status.

The nodes are being drawn and can be attached in the graph, though as you can see, the positioning is still off and I haven't yet figured out why. Also, if you do connect graphs, this new connection is not yet added to the backend representation of the flow-graph.
It can be noted, that I work iterative as you can see. I always keep a running version and and new features to this build. I refactor every now and then, but I guess I should do this more often. At the moment is function the main priority.
So far the application doesn't have any actions, during the weekend I will work on the implemenation of the "run"-button. Once this is done, you can start the app, it shows your hardcoded graph and on click you can make it work. I have some scribbles for the GUI, but I haven't spent much time on it yet.

The nodes don't attach correctly, but they attach, the GUI is starting to get some shape.
The nodes are being drawn and can be attached in the graph, though as you can see, the positioning is still off and I haven't yet figured out why. Also, if you do connect graphs, this new connection is not yet added to the backend representation of the flow-graph.
It can be noted, that I work iterative as you can see. I always keep a running version and and new features to this build. I refactor every now and then, but I guess I should do this more often. At the moment is function the main priority.
So far the application doesn't have any actions, during the weekend I will work on the implemenation of the "run"-button. Once this is done, you can start the app, it shows your hardcoded graph and on click you can make it work. I have some scribbles for the GUI, but I haven't spent much time on it yet.
Bridging the gap Fri, Oct 17. 2008
Ok, first small victories.
The last few days I spent analysing the VisualAp code structure and how everything fits together. The business-logic is different to the one I'll be using, although the basic workings are very very similar. So what I did is trying to find common points and to make the implementation in VisualAp more abstract. I tried to change as few as possible, I should contact the author of visualap. It's open source, so no problem there, but maybe he finds some of my changes usefull.
The basic structure in VisualAp is like this: you got a Bean, a small jar file, which is read and which contains the functions that are offered by this unit. This bean is encapsulated in a BeanDelegate. This beandelegate is stored in an array. The BeanDelegate was split into a Delegate Interface and the usual BeanDelegate for VisualAp and my NodeDelegate for ImageFlow. This is one example.
Another one would be, how to draw the flow-graph. That was much more tricky, because of different dependencies. First, the graph is painted by the GPanel, this accesses the list of BeanDelegates, as well as a list of all Nodes. I had to change a few things in the GPanel, so I can actually access the Node-list, add my own nodes, which extend the same Nodes-Interface as VisualAp. My nodes then get some nice new painting-methods, that I mentioned in the post before. So I create a UnitElement, I add it to a new Node, which has an origin on the panel and this Node draws it's NodeIcon. VisualAp already brings functions to select and move it. Very nice.
Actually, I wanted to post a screenshot, but a screenshot doesn't show anything, except for the things I showed in the last post.
Well anyway …

Next thing will be to extend this. Now it's only one single node, I'll add more and work on the methods to connect them.
May aim is to have a fully working graph asap. This means I have a bunch of nodes, I can connect them and somewhere a run button.
The last few days I spent analysing the VisualAp code structure and how everything fits together. The business-logic is different to the one I'll be using, although the basic workings are very very similar. So what I did is trying to find common points and to make the implementation in VisualAp more abstract. I tried to change as few as possible, I should contact the author of visualap. It's open source, so no problem there, but maybe he finds some of my changes usefull.
The basic structure in VisualAp is like this: you got a Bean, a small jar file, which is read and which contains the functions that are offered by this unit. This bean is encapsulated in a BeanDelegate. This beandelegate is stored in an array. The BeanDelegate was split into a Delegate Interface and the usual BeanDelegate for VisualAp and my NodeDelegate for ImageFlow. This is one example.
Another one would be, how to draw the flow-graph. That was much more tricky, because of different dependencies. First, the graph is painted by the GPanel, this accesses the list of BeanDelegates, as well as a list of all Nodes. I had to change a few things in the GPanel, so I can actually access the Node-list, add my own nodes, which extend the same Nodes-Interface as VisualAp. My nodes then get some nice new painting-methods, that I mentioned in the post before. So I create a UnitElement, I add it to a new Node, which has an origin on the panel and this Node draws it's NodeIcon. VisualAp already brings functions to select and move it. Very nice.
Actually, I wanted to post a screenshot, but a screenshot doesn't show anything, except for the things I showed in the last post.
Well anyway …

First view of the Imageflow application
Next thing will be to extend this. Now it's only one single node, I'll add more and work on the methods to connect them.
May aim is to have a fully working graph asap. This means I have a bunch of nodes, I can connect them and somewhere a run button.
« previous page
(Page 1 of 1, totaling 4 entries)
next page »
