Commands or messages


#1

Just a quick question:

I can’t find any easy way of passing some parameters with my commands, for instance; open this url. The command sent from a button would be something like “openUrl” but now I have to do some ugly code to save the url in a static class known by both the sender and the receiver, and I don’t know if this is correct either? (is there any race conditions possible?)

There is a message framework, should I use that instead of commands in cases like this?


#2

App commands aren’t really supposed to carry data, they’re just for button pushes, keypresses, etc, rather than passing data around your app. Maybe you could use an ActionListener or a Message object to send your info?


#3

Thanks for answering.

OK, I will implement my own little command framework with support for data (and with history).

Maybe something like:

CommandFramework::execute(new OpenUrlCommand(url));
CommandFramework::executePrevCommand();

I will check out the message classes and see if I can use it as a base for the commands, at least for the async parts.


#4

I have many classes where I broadcast messages, I have created a message structure which takes a void*, a string and integer value. The integer value is the message identifier.

And I use ChangeListener and ChangeBroadcaster to receive and deliver change messages.


#5