public SlideCreationTool(SlideGraphController AController, Diagram ADiagram) : base(AController, ToolDescriptor.SlideCreationTool) { this.SingleActionTool = false; m_controller = AController; m_diagram = ADiagram; }
public void Dispose() { PresentationController.Instance.OnSlideLockChanged -= new SlideLockChanged(Instance_OnSlideLockChanged); PresentationController.Instance.OnUnlockAllSlides -= new Changed(Instance_OnUnlockAllSlides); PresentationController.Instance.OnGetAllSlides -= new GetSlides(Instance_OnGetAllSlides); PresentationController.Instance.OnGetCreatedSlides -= new GetSlides(Instance_OnGetCreatedSlides); PresentationController.Instance.OnSavePresentation -= new SavePresentation(Instance_OnSavePresentation); PresentationController.Instance.OnPresentationChangedExternally -= new PresentationDataChanged(Instance_OnPresentationChangedExternally); PresentationController.Instance.OnSlideChangedExternally -= new SlideChanged(Instance_OnSlideChangedExternally); PresentationController.Instance.OnPresentationLockChanged -= new PresentationLockChanged(Instance_OnPresentationLockChanged); DesignerClient.Instance.PresentationNotifier.OnLabelDeleted -= PresentationNotifier_OnLabelDeleted; ShowClient.Instance.OnGoToSlide -= Instance_OnSlideChangedExternally; _instance = null; }
/// <summary> /// Фабрика Контроллера /// </summary> /// <returns>Созданный контроллер</returns> public static SlideGraphController CreateSlideGraphController() { SlideGraphController result = new SlideGraphController(); return result; }
/// <summary> /// Конструктор по умолчанию /// </summary> public SlideGraphController() { _instance = this; identity = Thread.CurrentPrincipal as UserIdentity; }
public SlidePropertiesForm(SlideGraphController AController) { InitializeComponent(); m_controller = AController; CurrentSlideView = m_controller.SelectedSlideView; m_controller.OnLabelListChanhed += m_controller_OnLabelListChanhed; bool slideLocked = (CurrentSlideView.IsLocked && PresentationController.Instance.CanUnlockSlide(CurrentSlideView.Slide)) || DesignerClient.Instance.IsStandAlone; bool presentationLocked = PresentationController.Instance.PresentationLocked || DesignerClient.Instance.IsStandAlone; this.Text = CurrentSlideView.SlideName + " - Свойства"; Slide = CurrentSlideView.Slide.Copy(); Slide.SaveSlideLevelChanges(CurrentSlideView.Slide); if (CurrentSlideView.GetOutgoingLinks().Count > 0) { OldDefLink = NewDefLink = CurrentSlideView.GetOutgoingLinks().Where(l => l.IsDefault).First(); } #region Add bindings nameText.DataBindings.Add("Text", Slide, "Name"); nameText.ReadOnly = !slideLocked; labelsList.Enabled = slideLocked; labelsList.DataBindings.DefaultDataSourceUpdateMode = DataSourceUpdateMode.OnPropertyChanged; RefreshLabels(); hourSpanEdit.DataBindings.Add("Value", Slide.Time, "Hours"); hourSpanEdit.Enabled = slideLocked; minuteSpanEdit.DataBindings.Add("Value", Slide.Time, "Minutes"); minuteSpanEdit.Enabled = slideLocked; secondSpanEdit.DataBindings.Add("Value", Slide.Time, "Seconds"); secondSpanEdit.Enabled = slideLocked; authorText.DataBindings.Add("Text", Slide, "Author"); modifiedLabel.DataBindings.Add("Text", Slide, "Modified"); commentText.DataBindings.Add("Text", Slide, "Comment"); commentText.ReadOnly = !slideLocked; #endregion if (nextSlideList.Enabled = NewDefLink != null && presentationLocked) { List<SlideView> list = CurrentSlideView.GetOutgoingSlideViews(); list.ForEach(s => nextSlideList.Items.Add(s)); nextSlideList.SelectedIndex = list.IndexOf(NewDefLink.ToSlideView); } bool flag = m_controller.StartSlide == CurrentSlideView; isStartupCheckBox.Checked = flag; bool flag2 = !flag & CurrentSlideView.GetIncomingSlideLinks().Count == 0; isStartupCheckBox.Enabled = flag2 & presentationLocked; bool visible = presentationLocked | slideLocked; if (presentationLocked && !slideLocked) { visible = isStartupCheckBox.Enabled || nextSlideList.Items.Count > 0; } okButton.Visible = visible; if (!visible) { this.AcceptButton = cancelButton; cancelButton.Text = "OK"; } }
public void AssignController(SlideGraphController controller) { diagram.Controller = m_controller = controller; if (m_controller == null) throw new ApplicationException("Unknown type"); //register tools for controller linkTool = new SlideLinkTool(m_controller); linkTool.OnToolDeactivate += new ToolDeactivate(linkTool_OnToolDeactivate); m_controller.RegisterTool(linkTool); Tool tmptool = m_controller.GetTool(ToolDescriptor.SelectTool); m_controller.UnRegisterTool(tmptool); selectTool = new PresentationSelectionTool(m_controller); selectTool.OnShowSlideContextMenu += new ShowSelectionContextMenu(selectTool_OnShowNodeContextMenu); selectTool.OnShowModelContextMenu += new ShowSelectionContextMenu(selectTool_OnShowModelContextMenu); m_controller.RegisterTool(selectTool); creationTool = new SlideCreationTool(m_controller, diagram); creationTool.ToolCursor = creationTool.ActionCursor = new Cursor(new MemoryStream(Properties.Resources.createSlide)); creationTool.OnToolDeactivate += new ToolDeactivate(creationTool_OnToolDeactivate); m_controller.RegisterTool(creationTool); tmptool = m_controller.GetTool(ToolDescriptor.PanTool); m_controller.UnRegisterTool(tmptool); panTool = new PresentationPanTool(m_controller); m_controller.RegisterTool(panTool); panTool.OnToolDeactivate += new ToolDeactivate(panTool_OnToolDeactivate); zoomTool = (ZoomTool)m_controller.GetTool(ToolDescriptor.ZoomTool); PresentationController.Instance.OnSlideLockChanged += new SlideLockChanged(m_controller_OnSlideLockChanged); PresentationController.Instance.OnPresentationLockChanged += new PresentationLockChanged(m_controller_OnPresentationLockChanged); m_controller.OnCheckSelection += new ControllerCheckSelection(CheckSelection); m_controller.OnCurrentSlideChanged += new CurrentSlideChanged(m_controller_OnCurrentSlideChanged); }