Review Request: State machine architecture for PMC

Christophe Olinger olingerc at binarylooks.com
Tue Apr 6 09:10:40 CEST 2010


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/3396/
-----------------------------------------------------------

(Updated 2010-04-06 07:10:39.887751)


Review request for Plasma.


Changes
-------

Updated summary and description to be in line with the actual content of the updated patch. I should have made a new one from the start probably.


Summary (updated)
-------

This is the first try to get state machines working. I will of course not forget the previous comments. It builds and runs and state switching is possible. No playbackbuttons or other useful stuff yet, but is easy to get back.

What I did:
Created a mediacenterstate class which contains info about shared (so called Main) subcomponents. subcomponents are little widgets like buttons and sliders which will appear in the control bar. I sublcassed QState for this.
Then I created a picturestate and videostate class, subclasses of the follwoing which are loaded on state switch. The containment does the state switch, the state classes do all the rest: connections, conficurations and hading out subcomponents to the controlbar.
The controlbar now has a class to add widgets to itself.


Diffs
-----

  /trunk/playground/base/plasma/MediaCenterComponents/applets/mediabrowser/abstractmediaitemview.h 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/applets/mediabrowser/abstractmediaitemview.cpp 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/applets/mediabrowser/mediabrowser.h 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/applets/mediabrowser/mediabrowser.cpp 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/applets/mediacontroller/controller.h 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/applets/mediacontroller/controller.cpp 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/applets/mediaplayer/mediaplayer.h 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/applets/mediaplayer/mediaplayer.cpp 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/containments/mediacontainment/mediacontainment.h 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/containments/mediacontainment/mediacontainment.cpp 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/containments/mediacontainment/medialayout.h 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/containments/mediacontainment/medialayout.cpp 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/CMakeLists.txt 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/CMakeLists.txt 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/browser.h 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/browser.cpp 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/mediacenter.h 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/mediacenterstate.h PRE-CREATION 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/mediacenterstate.cpp PRE-CREATION 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/picturestate.h PRE-CREATION 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/picturestate.cpp PRE-CREATION 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/playbackcontrol.h 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/playbackcontrol.cpp 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/player.h 1111411 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/videostate.h PRE-CREATION 
  /trunk/playground/base/plasma/MediaCenterComponents/libs/mediacenter/videostate.cpp PRE-CREATION 
  /trunk/playground/base/plasma/MediaCenterComponents/shells/plasmediacenter/mainwindow.cpp 1111411 

Diff: http://reviewboard.kde.org/r/3396/diff


Testing (updated)
-------

State switchting works.


Thanks,

Christophe



More information about the Plasma-devel mailing list