mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-28 02:31:15 +00:00
StartAction match
This commit is contained in:
parent
3856dc625a
commit
ab1704b883
@ -62,7 +62,15 @@ MxResult MxCompositePresenter::StartAction(MxStreamController* p_controller, MxD
|
|||||||
MxDSAction* action;
|
MxDSAction* action;
|
||||||
|
|
||||||
if (MxPresenter::StartAction(p_controller, p_action) == SUCCESS) {
|
if (MxPresenter::StartAction(p_controller, p_action) == SUCCESS) {
|
||||||
while (cursor.Next(action)) {
|
// The usual cursor.Next() loop doesn't match here, even though
|
||||||
|
// the logic is the same. It does match when "deconstructed" into
|
||||||
|
// the following Head(), Current() and NextFragment() calls,
|
||||||
|
// but this seems unlikely to be the original code.
|
||||||
|
// The alpha debug build also uses Next().
|
||||||
|
cursor.Head();
|
||||||
|
while (cursor.Current(action)) {
|
||||||
|
cursor.NextFragment();
|
||||||
|
|
||||||
MxBool success = FALSE;
|
MxBool success = FALSE;
|
||||||
|
|
||||||
action->CopyFlags(m_action->GetFlags());
|
action->CopyFlags(m_action->GetFlags());
|
||||||
|
|||||||
@ -95,6 +95,13 @@ class MxListCursor : public MxCore {
|
|||||||
void Reset() { m_match = NULL; }
|
void Reset() { m_match = NULL; }
|
||||||
void Prepend(T p_newobj);
|
void Prepend(T p_newobj);
|
||||||
|
|
||||||
|
// TODO: Probably shouldn't exist
|
||||||
|
void NextFragment()
|
||||||
|
{
|
||||||
|
if (m_match)
|
||||||
|
m_match = m_match->GetNext();
|
||||||
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
MxList<T>* m_list;
|
MxList<T>* m_list;
|
||||||
MxListEntry<T>* m_match;
|
MxListEntry<T>* m_match;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user