Futurescale, Inc. PureMVC Home

The PureMVC Framework Code at the Speed of Thought


Over 10 years of community discussion and knowledge are maintained here as a read-only archive.

New discussions should be taken up in issues on the appropriate projects at https://github.com/PureMVC

Show Posts

| * |

  Show Posts
Pages: [1]
1  PureMVC Manifold / Demos and Utils / EmployeeAdmin - A PureMVC Python / wxPython Demo on: March 18, 2008, 05:33:30
hi Guys,

I have completed the Employee admin demo, The UI stuff is a bit slap dash and needs some tidying.

Toby.
2  PureMVC Manifold / Standard Version / PureMVC Python 0.4 on: March 15, 2008, 08:04:20
Hi,

I have Tageged version 0.4 in the repository. It is fully documented and passs all unit tests.

To install run:
python setup.py install

Demos on their way.

:)
3  PureMVC Manifold / Standard Version / Python Port 0.0.1 All Tests Passed :) on: March 12, 2008, 03:17:50
Hi,

I have ported and passed all of the unit tests. See below:

PyMate r8111 running Python 2.5.1 (python)
>>> unit.py

ControllerTest: Test instance not null ... ok
ControllerTest: Test instance implements IController ... ok
ControllerTest: Test registerCommand() and executeCommand(0) ... ok
ControllerTest: Test registerCommand() and removeCommand() ... ok
ControllerTest: Test hasCommand() ... ok
ModelTest: Test instance not null ... ok
ModelTest: Test instance implements IModel ... ok
ModelTest: Test registerProxy() and retrieveProxy() ... ok
ModelTest: Test registerProxy() and removeProxy() ... ok
ModelTest: Test hasProxy() ... ok
ModelTest: Test onRegister() and onRemove() ... ok
ViewTest: Test instance not null ... ok
ViewTest: Test instance implements IView ... ok
ViewTest: Test registerObserver() and notifyObservers() ... ok
ViewTest: Test registerMediator() and retrieveMediator() ... ok
ViewTest: Test hasMediator() ... ok
ViewTest: Test registerMediator() and removeMediator() ... ok
ViewTest: Test onRegsiter() and onRemove() ... ok
ViewTest: Test Successive registerMediator() and removeMediator() ... ok
ViewTest: Test removeMediator() and subsequent nofity() ... ok
ViewTest: Test removing one of two Mediators and subsequent notify() ... ok
CommandTest: Test MacroCommand execute() ... ok
CommandTest: Test SimpleCommand execute() ... ok
FacadeTest: Test instance not null ... ok
FacadeTest: Test instance implements IFacade ... ok
FacadeTest: Test registerCommand() and sendNotification() ... ok
FacadeTest: Test removeCommand() and subsequent sendNotification() ... ok
FacadeTest: Test registerProxy() and retrieveProxy() ... ok
FacadeTest: Test registerProxy() and removeProxy() ... ok
FacadeTest: Test registerMediator() retrieveMediator() and removeMediator() ... ok
FacadeTest: Test hasProxy() ... ok
FacadeTest: Test hasMediator() ... ok
FacadeTest: Test hasCommand() ... ok
MediatorTest: Test getMediatorName() ... ok
MediatorTest: Test getViewComponent() ... ok
ObserverTest: Test Observer Accessors ... ok
ObserverTest: Test Observer Constructor ... ok
ObserverTest: Test compareNotifyContext() ... ok
NotificationTest: Test Name Accessors ... ok
NotificationTest: Test Body Accessors ... ok
NotificationTest: Test Constructor ... ok
ProxyTest: Test Name Accessor ... ok
ProxyTest: Test Data Accessors ... ok
ProxyTest: Test Constructor ... ok

----------------------------------------------------------------------
Ran 44 tests in 0.009s

OK



The framework still needs a lot of improvement. I used the import "as" functionality as we discussed in the previous post... it is slightly better but still not perfect.

I had lots of other issues and things to mention but i have completely forgotten them... probably because i have been typing unit tests for the past 5 hours!!

When they come back to be i will discuss them.

I would also like to take over as project lead, if that is ok with everyone?

Toby.
4  Announcements and General Discussion / Architecture / stage logic in a proxy on: March 07, 2008, 06:06:01
Hi Cliff,

David Knape did a presentation on PureMVC using a Gallery application he had built.

In this application he uses a Proxy to store Stage logic such as the Stage "resize" event along with the scale and align properties etc. I would have considered a StageMediator to be the correct place for this logic.

He also retrieves the Stage object from the Proxy and calls its update() method, I can't help but feel that he should have dispatched a STAGE_UPDATE notification instead of gaining reference to the Stage object?

What are your thoughts to his approach? Does the Stage need a Proxy?

Source is available here: http://bumpslide.com/blog/2008/01/16/puremvc_demo_src/
5  Announcements and General Discussion / Architecture / Proxy registration / Stage child management on: March 04, 2008, 02:59:39
Hello I have a couple of questions...

1) Should all proxies be instantiated and registered together when the application starts? Or can this be done as and when they are needed?

2) I work in a pure AS method, i do not use flex and i am trying to decide the best way to handle the creation and addition of new children to the stage etc...

if my AssetProxy executes:
facade.registerMediator(new ProgressBarMediator(new MovieClip()));

How should i handle the addition to the stage? Is it a bad idea for the Mediator to gain a reference to the stage? Should i send the child as the body of a notification? Should i create the movieclip and attach it to the stage from the command and THEN create the mediator with a reference to the new child?

I cannot seem to find an elegant solution to the management of children.

Many thanks in advance.

6  Announcements and General Discussion / Architecture / Preloader logic placement on: March 03, 2008, 08:55:37
I have a separate swf that contains all graphic assets for my app.

I cannot decide where the logic for preloading should go...

Somewhere it has to interact with a view to display the load progress.

Should the loading logic be placed into a proxy and dispatch a progress notification  ????

If so how would you use the "data" property of the proxy? to hold the "LoaderContentInfo" of the loaded swf and then provide a getAsset() method?

any thoughts?

Thanks.
7  Announcements and General Discussion / Architecture / Load View & Mediator based on Remote Proxy result on: January 23, 2008, 06:57:25
Hi,

I am having trouble making a design decision...

When a user clicks on a category from the menu the following needs to occur:

1) The MenuMediator sends a notification which is bound to a LoadCategoryCommand

2) The LoadCategoryCommand needs to check which view and mediator to load

2 a) LoadCategoryCommand asks the CategoryProxy if the selected category owns any child categories. If so load the category view. If not -> 2b
2 b) LoadCategoryCommand asks the ProductsProxy if the selected category
owns any products. If so load the product view. if not -> 2c
2 c) LoadCategoryCommand asks the PageProxy is the selected category owns a page. If so load the page view. If not redirect the user / display error.

My problem is that the LoadCategoryCommand cannot listen for updates from the proxies, and the proxies must dispatch an event because they are loading XML from a remote URL...

Where should I handle the updates from the Proxies, and then decide which view to load.

8  Announcements and General Discussion / Architecture / sendNotification EventListener Bug on: January 21, 2008, 05:26:38
Hello,

When using the following syntax there appears to be a problem.

var notification:String = "notificationString"
var data:Object = {'myVar':10}
menuItemMC.btnBitmap.addEventListener(MouseEvent.MOUSE_UP,function()
{
    sendNotification(notification,data);
});

When this notification is caught i add a child to the display list. The actionscript inside that child is ignored.

If i simply send the notification outside of the addEventListener everything works as expected.

There appears to be a bug in adding children to the display list from the onNotification method when the notification was dispatched from a native flash event.

I have also tried to define the function instead of typing it inline and the problem still occurs.

Pages: [1]