void SaveStateTransitionPortGlyph(TextWriter sw, IStateTransitionPortGlyph glyph) { SaveBounds(sw, "STATETRANSITIONPORT:", glyph); SaveGlyphCommon(sw, glyph); IStateTransitionPortGlyph port = glyph; SaveText(sw, "NAME", port.Name); SaveTextIfNotDefault(sw, "ISMULTIPORT", port.IsMultiPort.ToString(), false.ToString()); }
protected virtual void PrepareGlyphs() { _Glyphs = (ArrayList)_SourceGlyphs.Clone(); _Glyphs.Sort(new ConvertToCodeGlyphSorter()); _States = new ArrayList(); _Transitions = new ArrayList(); _Ports = new ArrayList(); foreach (IGlyph glyph in _Glyphs) { IStateGlyph state = glyph as IStateGlyph; if (state != null) { _States.Add(state); } ITransitionGlyph trans = glyph as ITransitionGlyph; if (trans != null) { _Transitions.Add(trans); } IStateTransitionPortGlyph port = glyph as IStateTransitionPortGlyph; if (port != null) { _Ports.Add(port); } } _StatesWithHistoryTransitions = new Hashtable(); foreach (IStateGlyph state in _States) { foreach (TransitionInfo info in GetTransitionList(state)) { if (info.Transition.TransitionType == TransitionType.History) { throw new NotImplementedException("History not yet implemented"); } if (info.Transition.TransitionType == TransitionType.DeepHistory) { IStateGlyph historyKeeper = info.ToStateGlyph; if (!_StatesWithHistoryTransitions.Contains(historyKeeper)) { _StatesWithHistoryTransitions.Add(historyKeeper, info); } } } } }
void LoadStateTransitionPortGlyph(TextReader sr) { string id; int X, Y, width, height; LoadBounds(sr, out id, out X, out Y, out width, out height); IStateTransitionPortGlyph glyph = _Factory.CreateStateTransitionPort(id, new Rectangle(X, Y, width, height)); LoadGlyphCommon(sr, glyph); IStateTransitionPortGlyph port = glyph; port.Name = LoadText(sr, "NAME"); string isMultiPort = LoadText(sr, "ISMULTIPORT", false.ToString()); port.IsMultiPort = bool.Parse(isMultiPort); BlankLine(sr); // blank line _GlyphLookup.Add(id, glyph); _Glyphs.Add(glyph); }
public void Visit(IStateTransitionPortGlyph port) { WriteDefaults(port); _Writer.WriteElementString("IsMultiPort", port.IsMultiPort.ToString().ToLower()); }
public void Visit(IStateTransitionPortGlyph port) { WriteDefaults (port); _Writer.WriteElementString ("IsMultiPort", port.IsMultiPort.ToString ()); }
void SaveStateTransitionPortGlyph(TextWriter sw, IStateTransitionPortGlyph glyph) { SaveBounds (sw, "STATETRANSITIONPORT:", glyph); SaveGlyphCommon (sw, glyph); IStateTransitionPortGlyph port = glyph; SaveText (sw, "NAME", port.Name); SaveTextIfNotDefault (sw, "ISMULTIPORT", port.IsMultiPort.ToString (), false.ToString ()); }