Difference between ActionModel and ButtonModel

Aug 17, 2009 at 3:55 PM


I could do some research on the source code but hopefully I can shortcut this and get a quick answer here: what is the purpose of distingusishing between the ButtonModel and ActionModel? Is this just to have two distinct places where links/buttons appear in the UI? I would prefer to have both show up in the footer of the screen.

For a quick test, I removed the action tab and show the the actions using the button model. Right now the framework will add actions by default to the action model, which will never be used in my case. I could change that behaviour in a way, that new buttons are added to the button model instead. Would that make sense or does it break the general concept of this framework?

Kind regards



Aug 17, 2009 at 4:13 PM

Hi Benno

These two (almost) same pieces - Actions and Buttons come from our experience with users.
Action means: Something (like create new Entity) is to the user offered as available action (if needed)
Button means: User, Do decision! Store or cancel.

But as said - it comes from the experience. The Catharsis framework is intended as the Framework for your adjusting. If the action and button for could be meant as the same - change it.

I would say: it is easier for any "adjuster" to remove (or combine) existing things, then to create new from the scratch. That's the reason for current implementation.
I am simply not sure which solution will be suitable for everybody. So one should be in there, and any developer can change it.

Do you think that this is an answer to your note?
Enjoy that Architecture

Thanks for any (such an above) notes! They are priceless
Radim Köhler

Aug 17, 2009 at 4:24 PM

Dear Radim,

thank you for the answer and explanation why this is separated. My question is answered. I agree, changing this is much easier than adding the functionality myself. In fact, I can live with letting the framework add the actions just fine. If I later decide to show the action tab or something equivalent, the functionality will be available immediately.

Kind regards