private void SetActionInformation
        (
            IActionsEditorView view,
            WorkstationContainer container,
            MedicalViewerActionType action
        )
        {
            bool isNewAction;


            isNewAction = !__ActionsEditorState.CustomActions.Contains(action);

            if (isNewAction)
            {
                view.CanAddAction    = true;
                view.CanRemoveAction = false;

                view.ActionDisplayName   = action.ToString( );
                view.SelectedMouseButton = MedicalViewerMouseButtons.Left;

                view.CanEditToolstripButtons = true;

                view.FeatureId = action.ToString( ) + "FeatureId";

                view.ToolStipItemImage            = null;
                View.ToolStipItemAlternativeImage = null;
            }
            else
            {
                view.CanAddAction    = false;
                view.CanRemoveAction = true;

                var keyValuePair = container.State.MedicalViewerCellMouseButtonActions.Where(n => n.Value == action).FirstOrDefault( );

                view.ActionDisplayName   = container.State.WorkstationActionDisplayName [action];
                view.SelectedMouseButton = keyValuePair.Key;

                view.CanEditToolstripButtons = keyValuePair.Key == MedicalViewerMouseButtons.Left;

                if (__ActionsEditorState.ActionAssociatedFeature.ContainsKey(action))
                {
                    view.FeatureId = __ActionsEditorState.ActionAssociatedFeature [action];

                    if (!string.IsNullOrEmpty(view.FeatureId))
                    {
                        ToolStripItem[] items = container.StripItemFeatureExecuter.GetItems(view.FeatureId);

                        if (items.Length > 0 && items [0] is IToolStripItemItemProperties)
                        {
                            view.ToolStipItemImage            = (( IToolStripItemItemProperties )items [0]).ItemProperties.DefaultImage;
                            view.ToolStipItemAlternativeImage = (( IToolStripItemItemProperties )items [0]).ItemProperties.AlternativeImage;
                        }
                    }
                }
            }

            view.CanChangeDisplayName = view.CanAddAction;
            view.CanChangeFeatureId   = view.CanAddAction;
            view.CanChangeMouseButton = view.CanAddAction;
        }
        public void Initialize(WorkstationContainer container, V view)
        {
            View            = view;
            ViewerContainer = container;

            if (View is IWorkstationInitializer)
            {
                IWorkstationInitializer viewInit;


                viewInit = (IWorkstationInitializer)View;

                if (!viewInit.IsInitialized)
                {
                    (( IWorkstationInitializer )View).Initialize(container);
                }
            }

            BurningImagesState = container.State.DataServices.Get <BindingList <ClientQueryDataSet.ImagesRow> > ( );

            BurningImagesState.ListChanged += new ListChangedEventHandler(burningImagesState_ListChanged);

            view.MediaTitleChanged += new EventHandler(__View_MediaTitleChanged);

            MediaInformationView = view;

            View.DeActivated += new EventHandler(OnViewDeactivated);

            DoInitializeView(container, view);
        }
        protected override void DoInitializeView(WorkstationContainer container, ILocalMediaInformationView view)
        {
            LocalMediaBurningPrefrences prefrences;


            __View = (ILocalMediaInformationView)view;

            prefrences = GetPreferences(container);

            __MediaObject          = null;
            __View.CreateAutoRun   = prefrences.CreateAutoRun;
            __View.IncludeViewer   = prefrences.IncludeViewer;
            __View.MediaBaseFolder = prefrences.MediaBaseFolder;
            __View.ViewerDirectory = prefrences.ViewerDirectory;

            __View.PrepareMedia += new EventHandler(view_PrepareMedia);
            __View.BurnMedia    += new EventHandler(view_BurnMedia);

            __View.MediaBaseFolderChanged += new EventHandler(OnUpdateUI);
            __View.ViewerDirectoryChanged += new EventHandler(OnUpdateUI);
            __View.IncludeViewerChanged   += new EventHandler(OnUpdateUI);

            __View.CreateAutoRunChanged   += new EventHandler(__View_SettingsChanged);
            __View.MediaBaseFolderChanged += new EventHandler(__View_SettingsChanged);
            __View.MediaTitleChanged      += new EventHandler(__View_SettingsChanged);
            __View.ViewerDirectoryChanged += new EventHandler(__View_SettingsChanged);
            __View.IncludeViewerChanged   += new EventHandler(__View_SettingsChanged);

            BurningImagesState.ListChanged += new System.ComponentModel.ListChangedEventHandler(__View_SettingsChanged);

            UpdateUI( );

            __View.ActivateView(container.State.ActiveWorkstation);
            __View.ClearInstancesAfterRequest = true;
        }
        protected override void DoInitializeView(WorkstationContainer container, IPacsMediaInformationView view)
        {
            __View = view;

            __WorkstationScp = CreateWorkstationScp( );

            __View.Initialize(Enum.GetValues(typeof(MediaType)).OfType <MediaType> ( ).ToArray( ),
                              new RequestPriority[] { RequestPriority.High, RequestPriority.Medium, RequestPriority.Low });

            __View.ClearInstancesAfterRequest = true;
            __View.MediaType      = MediaType.Default;
            __View.NumberOfCopies = 1;
            __View.Prioirty       = RequestPriority.Medium;

            __View.SendMediaCreationRequest += new EventHandler(__View_SendMediaCreationRequest);
            __View.VerifySelectedServer     += new EventHandler(__View_VerifySelectedServer);
            __View.SelectedServerChanged    += new EventHandler(__View_SelectedServerChanged);

            container.EventBroker.Subscribe <WorkstationScpChangedEventArgs> (WorkstationScpChanged);

            SetViewPacs( );

            ConfigurationData.ValueChanged += new EventHandler(ConfigurationData_ValueChanged);

            UpdateViewUI( );

            view.ActivateView(container.State.ActiveWorkstation);
        }
        private MedicalViewerActionType[] GetAllowedActions(WorkstationContainer container)
        {
            List <MedicalViewerActionType> actions;


            actions = new List <MedicalViewerActionType> ( );

            foreach (MedicalViewerActionType action in Enum.GetValues(typeof(MedicalViewerActionType)).OfType <MedicalViewerActionType> ( ).ToArray( ))
            {
                if (action == MedicalViewerActionType.None ||
                    action == MedicalViewerActionType.Rotate3DCamera ||
                    action == MedicalViewerActionType.Rotate3DObject ||
                    action == MedicalViewerActionType.RotatePlane ||
                    action == MedicalViewerActionType.Scale3DObject ||
                    action == MedicalViewerActionType.Translate3DCamera ||
                    action == MedicalViewerActionType.TranslatePlane)
                {
                    continue;
                }

                if (container.State.MedicalViewerCellActions.Contains(action))
                {
                    if (__ActionsEditorState.CustomActions.Contains(action))
                    {
                        actions.Add(action);
                    }
                }
                else
                {
                    actions.Add(action);
                }
            }

            return(actions.ToArray( ));
        }
Beispiel #6
0
 public ToggleToolBarCommand
 (
     string featureId,
     WorkstationContainer container,
     Custom3DToolbar toolbar3D
 )
     : base(featureId, container)
 {
     CustomToolStrip = toolbar3D;
 }
        protected override void RegisterExampleCommands(WorkstationContainer viewerContainer)
        {
            WorkstationUIFactory.Instance.RegisterWorkstationView <IActionsEditorView> (typeof(ActionsEditorDialog));

            ModelViewPresenterCommand <ActionsEditorViewPresenter, IActionsEditorView> cmd;

            cmd = new ModelViewPresenterCommand <ActionsEditorViewPresenter, IActionsEditorView> (CustomWorkstationFeatures.ShowCustomizeActionsViewFeatureId, viewerContainer);

            viewerContainer.FeaturesFactory.RegisterCommand(cmd);
        }
 public ChangeWorkstationLanguageCommand
 (
     string featureId,
     WorkstationContainer container,
     WorkstationLanguageResources language
 )
     : base(featureId, container)
 {
     Language = language;
 }
Beispiel #9
0
        protected override void RegisterExampleCommands(WorkstationContainer viewerContainer)
        {
            ModelViewPresenterCommand <WorkstastionFeaturesEventsPresenter, IWorkstastionFeaturesEventsView> cmd;


            WorkstationUIFactory.Instance.RegisterWorkstationView <IWorkstastionFeaturesEventsView> (typeof(WorkstastionFeaturesEventsView));

            cmd = new ModelViewPresenterCommand <WorkstastionFeaturesEventsPresenter, IWorkstastionFeaturesEventsView> (CustomWorkstationFeatures.FeaturesEventsViewFeatureId, viewerContainer);

            viewerContainer.FeaturesFactory.RegisterCommand(cmd);
        }
        protected override void RegisterExampleCommands(WorkstationContainer viewerContainer)
        {
            PlugWorkstationViewCommand <IWindowLevelView, CustomWindowLevelControl> customWlControlCommand;
            PlugWorkstationViewCommand <IWindowLevelView, WindowLevelDialog>        originalWlDlgCommand;

            customWlControlCommand = new PlugWorkstationViewCommand <IWindowLevelView, CustomWindowLevelControl> (CustomWorkstationFeatures.PlugCustomWindowLevelControlFeatureId, viewerContainer);
            originalWlDlgCommand   = new PlugWorkstationViewCommand <IWindowLevelView, WindowLevelDialog>        (CustomWorkstationFeatures.PlugOrigWindowLevelControlFeatureId, viewerContainer);

            viewerContainer.FeaturesFactory.RegisterCommand(customWlControlCommand);
            viewerContainer.FeaturesFactory.RegisterCommand(originalWlDlgCommand);

            viewerContainer.EventBroker.FeatureExecuted += new EventHandler <DataEventArgs <string> >(EventBroker_FeatureExecuted);
        }
        private static LocalMediaBurningPrefrences GetPreferences(WorkstationContainer container)
        {
            LocalMediaBurningPrefrences prefrences;

            if (container.State.DataServices.IsRegistered <LocalMediaBurningPrefrences> ( ))
            {
                prefrences = container.State.DataServices.Get <LocalMediaBurningPrefrences> ( );
            }
            else
            {
                prefrences = LocalMediaBurningPrefrences.Load( );

                container.State.DataServices.Register <LocalMediaBurningPrefrences> (prefrences);
            }

            return(prefrences);
        }
Beispiel #12
0
        protected override void RegisterExampleCommands(WorkstationContainer viewerContainer)
        {
            Custom3DToolbar      toolStrip3D;
            ToggleToolBarCommand toggleToolBar;


            toolStrip3D   = new Custom3DToolbar( );
            toggleToolBar = new ToggleToolBarCommand(CustomWorkstationFeatures.ToggleToolBarFeatureId,
                                                     viewerContainer,
                                                     toolStrip3D);

            toolStrip3D.Renderer = viewerContainer.State.ActiveWorkstation.ToolBarRenderer;

            toolStrip3D.SyncronizeToolbar(viewerContainer.State);

            viewerContainer.FeaturesFactory.RegisterCommand(CustomWorkstationFeatures.ToggleToolBarFeatureId, toggleToolBar);
        }
Beispiel #13
0
        private void InitializeLanguages(WorkstationContainer viewerContainer)
        {
            English = new WorkstationLanguageResources( );
            Spanish = new WorkstationLanguageResources( );

            English.ToolBarStream     = new MemoryStream( );
            English.MessagesStream    = new MemoryStream( );
            English.LoaderSteeam      = new MemoryStream( );
            English.ActionsNameStream = new MemoryStream( );
            Spanish.ToolBarStream     = new MemoryStream(Encoding.UTF8.GetBytes(Leadtools.Demos.Workstation.Customized.Properties.Resources.Toolstrip_Spanish));
            Spanish.MessagesStream    = new MemoryStream(Encoding.UTF8.GetBytes(Leadtools.Demos.Workstation.Customized.Properties.Resources.Messages_Spanish));
            Spanish.LoaderSteeam      = new MemoryStream(Encoding.UTF8.GetBytes(Leadtools.Demos.Workstation.Customized.Properties.Resources.StatusMessages_Spanish));
            Spanish.ActionsNameStream = new MemoryStream(Encoding.UTF8.GetBytes(Leadtools.Demos.Workstation.Customized.Properties.Resources.actionName_Spanish));

            WorkstationMessages.SaveMessages(English.MessagesStream);
            ToolStripMenuProperties.SaveStrings(English.ToolBarStream);
            LoaderStatusMessage.Save(English.LoaderSteeam);

            viewerContainer.State.GetMouseButtonActionDisplayNameStream(English.ActionsNameStream);
        }
        protected override void DoInitialize
        (
            WorkstationContainer container,
            IActionsEditorView view
        )
        {
            MedicalViewerActionType [] actions;


            if (container.State.DataServices.IsRegistered <ActionsEditorState> ( ))
            {
                __ActionsEditorState = container.State.DataServices.Get <ActionsEditorState> ( );
            }
            else
            {
                __ActionsEditorState = new ActionsEditorState( );

                container.State.DataServices.Register <ActionsEditorState> (__ActionsEditorState);
            }

            actions = GetAllowedActions(container);

            view.SetActions(actions);
            view.SetActionMouseButtons(Enum.GetValues(typeof(MedicalViewerMouseButtons)).OfType <MedicalViewerMouseButtons> ( ).ToArray( ));

            if (actions.Length > 0)
            {
                view.SelectedAction = actions [0];

                SetActionInformation(view, container, actions [0]);

                RegisterViewEvents(view);
            }
            else
            {
                view.CanAddAction    = false;
                view.CanRemoveAction = false;
            }

            view.ActivateView(container.State.ActiveWorkstation);
        }
Beispiel #15
0
        protected override void RegisterExampleCommands(WorkstationContainer viewerContainer)
        {
            __ViewerContainer = viewerContainer;

            InitializeLanguages(viewerContainer);

            ChangeWorkstationLanguageCommand englishCommand;
            ChangeWorkstationLanguageCommand spansihCommand;

            englishCommand = new ChangeWorkstationLanguageCommand(CustomWorkstationFeatures.EnglishLangFeatureId,
                                                                  viewerContainer,
                                                                  English);

            spansihCommand = new ChangeWorkstationLanguageCommand(CustomWorkstationFeatures.SpanishLangFeatureId,
                                                                  viewerContainer,
                                                                  Spanish);

            viewerContainer.FeaturesFactory.RegisterCommand(englishCommand);
            viewerContainer.FeaturesFactory.RegisterCommand(spansihCommand);

            viewerContainer.EventBroker.FeatureExecuted += new EventHandler <DataEventArgs <string> > (EventBroker_FeatureExecuted);
        }
Beispiel #16
0
        public MediaBurningManagerController
        (
            WorkstationContainer container,
            IMediaBurningManagerView <T> mediaBurningManagerView,
            ClientQueryDataSet dicomInformationState,
            MediaInformationPresenter <T> mediaCreationPresenter,
            ICommand displayViewCommand
        )
        {
            MediaBurningManagerView = mediaBurningManagerView;
            DicomInformationState   = dicomInformationState;


            if (!container.State.DataServices.IsRegistered <BindingList <ClientQueryDataSet.ImagesRow> > ( ))
            {
                __BurningImages = new BindingList <ClientQueryDataSet.ImagesRow> ( );

                container.State.DataServices.Register <BindingList <ClientQueryDataSet.ImagesRow> > (__BurningImages);
            }
            else
            {
                __BurningImages = container.State.DataServices.Get <BindingList <ClientQueryDataSet.ImagesRow> > ( );
            }

            mediaBurningManagerView.DicomInstancesSelectionView.SetState(__BurningImages);

            __MediaCreationPresenter = mediaCreationPresenter;

            if (mediaCreationPresenter.CanInitializeView(container))
            {
                mediaCreationPresenter.Initialize(container, mediaBurningManagerView.MediaInformationView);
            }

            DisplayViewCommand = displayViewCommand;

            __MediaCreationPresenter.ClearInstances    += new EventHandler(__MediaCreationPresenter_ClearInstnaces);
            MediaBurningManagerView.CloseViewRequested += new EventHandler(__MediaBurningManager_CloseViewRequested);
        }
        protected override void RegisterExampleCommands(WorkstationContainer viewerContainer)
        {
            LoadSeriesFromDicomDirCommand      loadDicomDirCmd;
            AddRemoveToolbarFeatureItemCommand toggleLoadSeriesItemCmd;
            DesignToolStripMenuItem            loadDicomSeriesItem;

            loadDicomDirCmd = new LoadSeriesFromDicomDirCommand(CustomWorkstationFeatures.LoadDicomDirSeriesFeatureId,
                                                                viewerContainer);

            loadDicomSeriesItem = new DesignToolStripMenuItem(CustomMenuItemFeatureProperties.LoadDicomDirItemProperty);


            loadDicomSeriesItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
            loadDicomSeriesItem.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
            //loadDicomSeriesItem.Size = new System.Drawing.Size(23, 60);


            toggleLoadSeriesItemCmd = new AddRemoveToolbarFeatureItemCommand(CustomWorkstationFeatures.ToggleLoadSeriesItem, viewerContainer, loadDicomSeriesItem);

            viewerContainer.FeaturesFactory.RegisterCommand(loadDicomDirCmd);
            viewerContainer.FeaturesFactory.RegisterCommand(toggleLoadSeriesItemCmd);

            viewerContainer.EventBroker.SeriesLoadingCompleted += new EventHandler <LoadSeriesEventArgs> (EventBroker_SeriesLoadingCompleted);
        }
Beispiel #18
0
 public PlugWorkstationViewCommand(string featureId, WorkstationContainer container)
     : base(featureId, container)
 {
 }
 public void Initialize(WorkstationContainer container)
 {
     __viewerContainer = container;
 }
 public AddRemoveToolbarFeatureItemCommand(string featureId, WorkstationContainer container, ToolStripItem item)
     : base(featureId, container)
 {
     Item = item;
 }
Beispiel #21
0
 protected abstract void RegisterExampleCommands(WorkstationContainer viewerContainer);
 protected abstract void DoInitializeView(WorkstationContainer container, V view);
 public virtual bool CanInitializeView(WorkstationContainer container)
 {
     return(container.State.DataServices.IsRegistered <BindingList <ClientQueryDataSet.ImagesRow> > ( ));
 }
 public LoadSeriesFromDicomDirCommand(string featureId, WorkstationContainer container)
     : base(featureId, container)
 {
 }