private RmlWysiwygComponent(AnomalousMvcContext context, MyGUIViewHost viewHost, RmlWysiwygViewBase rmlWysiwygViewInterface)
            : base("Medical.GUI.Editor.RmlWysiwyg.RmlWysiwygComponent.layout", viewHost)
        {
            undoRedoCallback             = defaultUndoRedoCallback;
            this.context                 = context;
            this.rmlWysiwygViewInterface = rmlWysiwygViewInterface;

            rmlImage     = (ImageBox)widget;
            rocketWidget = new RocketWidget(rmlImage, viewHost.View.Transparent);
            rmlImage.MouseButtonPressed  += rmlImage_MouseButtonPressed;
            rmlImage.MouseButtonReleased += rmlImage_MouseButtonReleased;
            rmlImage.MouseDrag           += new MyGUIEvent(rmlImage_MouseDrag);
            rmlImage.MouseWheel          += new MyGUIEvent(rmlImage_MouseWheel);
            rmlImage.EventScrollGesture  += new MyGUIEvent(rmlImage_EventScrollGesture);
            imageHeight = rmlImage.Height;

            selectedElementManager = new SelectedElementManager(rmlImage, rocketWidget.Context);
            draggingElementManager = new DraggingElementManager(this);

            foreach (var elementStrategy in rmlWysiwygViewInterface.CustomElementStrategies)
            {
                elementStrategyManager.add(elementStrategy);
            }

            if (rmlWysiwygViewInterface.GetMissingRmlCallback != null)
            {
                getMissingRmlCallback = rmlWysiwygViewInterface.GetMissingRmlCallback;
            }
            else
            {
                getMissingRmlCallback = getDefaultMissingRml;
            }
        }
示例#2
0
        public MeasurementDisplay(Element element, AnomalousMvcContext context, RocketWidget rocketWidget)
        {
            this.context      = context;
            this.element      = element;
            this.rocketWidget = rocketWidget;

            String target = element.GetAttributeString("target");

            if (MeasurementController.tryGetCalculator(target, out measurement))
            {
                switch (element.GetAttributeString("units"))
                {
                case "percent":
                    context.OnLoopUpdate += Context_OnLoopUpdatePercent;
                    break;

                case "centimeters":
                    context.OnLoopUpdate += Context_OnLoopUpdateCm;
                    break;

                case "millimeters":
                default:
                    context.OnLoopUpdate += Context_OnLoopUpdateMm;
                    break;
                }
            }
            else
            {
                Log.Warning("Could not find a measurement named '{0}'. The measurement will not be displayed.", target);
                element.InnerRml = String.Format("Cannot find measurement '{0}' in scene.", target);
            }
        }
 private void blur(AnomalousMvcContext context)
 {
     this.slideEditorController.VectorModeChanged -= slideEditorController_VectorModeChanged;
     commitText();
     if (editorController.ResourceProvider != null) //If this is null the project is closed, no reason to try to save the text
     {
         foreach (RmlSlidePanel panel in slide.Panels.Where(p => p is RmlSlidePanel))
         {
             String editorName = panel.createViewName("RmlView");
             var    editor     = rmlEditors[editorName];
             if (editor.Component != null && editor.Component.ChangesMade)
             {
                 String rml = editor.getCurrentComponentText();
                 editor.CachedResource.CachedString = rml;
                 editorController.ResourceProvider.ResourceCache.add(editor.CachedResource);
             }
         }
     }
     slideLayoutPicker.destroyLayoutPicker();
     GlobalContextEventHandler.disableEventContext(eventContext);
     htmlDragDrop.DestroyIconPreview();
     panelResizeWidget.destroyResizeWidget();
     if (Blur != null)
     {
         Blur.Invoke(this);
     }
 }
        public RmlWidgetComponent(RmlView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
            : base("Medical.GUI.AnomalousMvc.RmlView.RmlWidgetComponent.layout", viewHost)
        {
            this.context         = context;
            this.eventController = view.createRocketEventController(context, viewHost);

            rmlImage     = (ImageBox)widget;
            rocketWidget = new RocketWidget(rmlImage, viewHost.View.Transparent, false);
            imageHeight  = widget.Height;
            imageWidth   = widget.Width;

            if (view.RmlFile != null)
            {
                startRmlUpdate();
                if (view.RmlFile != null)
                {
                    rocketWidget.Context.ZoomLevel = view.ZoomLevel;
                    documentName = RocketInterface.createValidFileUrl(context.ResourceProvider.getFullFilePath(view.RmlFile));
                    using (ElementDocument document = rocketWidget.Context.LoadDocument(documentName))
                    {
                        if (document != null)
                        {
                            document.Show();
                            rocketWidget.removeFocus();
                            rocketWidget.renderOnNextFrame();
                        }
                    }
                }
                endRmlUpdate();
            }

            view._fireComponentCreated(this);
        }
        public override void addToController(Slide slide, MvcController controller, AnomalousMvcContext context)
        {
            RunCommandsAction action = new RunCommandsAction(name);

            setupAction(slide, action);
            controller.Actions.add(action);
        }
 private string getDefaultMissingRml(string file, AnomalousMvcContext context)
 {
     using (StreamReader stream = new StreamReader(this.GetType().Assembly.GetManifestResourceStream("Lecture.Controller.MissingFile.rml")))
     {
         return(String.Format(stream.ReadToEnd(), file, context.ResourceProvider.BackingLocation));
     }
 }
示例#7
0
        public LeftCondylarDegenerationGUI(LeftCondylarDegenerationView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
            : base("Medical.GUI.DistortionWizard.Mandible.LeftCondylarDegenerationGUI.layout", view, context, viewHost)
        {
            leftCondyleDegenerationSlider = new BoneManipulatorSlider(widget.findWidget("LeftCondyleDegen/CondyleSlider") as ScrollBar);
            leftLateralPoleSlider         = new BoneManipulatorSlider(widget.findWidget("LeftCondyleDegen/LateralPoleSlider") as ScrollBar);
            leftMedialPoleScaleSlider     = new BoneManipulatorSlider(widget.findWidget("LeftCondyleDegen/MedialPoleSlider") as ScrollBar);
            wearSlider = new BoneManipulatorSlider(widget.findWidget("LeftCondyleDegen/WearSlider") as ScrollBar);

            addBoneManipulator(leftCondyleDegenerationSlider);
            addBoneManipulator(leftLateralPoleSlider);
            addBoneManipulator(leftMedialPoleScaleSlider);
            addBoneManipulator(wearSlider);

            wearSlider.ValueChanged += new EventHandler(wearSlider_ValueChanged);
            leftCondyleDegenerationSlider.ValueChanged += new EventHandler(otherSliders_ValueChanged);
            leftLateralPoleSlider.ValueChanged         += new EventHandler(otherSliders_ValueChanged);
            leftMedialPoleScaleSlider.ValueChanged     += new EventHandler(otherSliders_ValueChanged);

            undoButton       = widget.findWidget("LeftCondyleDegen/UndoButton") as Button;
            makeNormalButton = widget.findWidget("LeftCondyleDegen/MakeNormalButton") as Button;

            undoButton.MouseButtonClick       += new MyGUIEvent(undoButton_MouseButtonClick);
            makeNormalButton.MouseButtonClick += new MyGUIEvent(makeNormalButton_MouseButtonClick);

            gridPropertiesControl             = new GridPropertiesControl(context.MeasurementGrid, widget);
            gridPropertiesControl.GridSpacing = 5;
        }
示例#8
0
        public TeethMovementGUI(Widget mainWidget, TeethAdaptationView wizardView, AnomalousMvcContext context)
        {
            this.wizardView          = wizardView;
            this.context             = context;
            this.teethToolController = wizardView.TeethToolController;

            adaptButton  = new CheckButton(mainWidget.findWidget("TeethMovmentPanel/AdaptButton") as Button);
            moveButton   = new CheckButton(mainWidget.findWidget("TeethMovmentPanel/MoveButton") as Button);
            rotateButton = new CheckButton(mainWidget.findWidget("TeethMovmentPanel/RotateButton") as Button);

            adaptButton.CheckedChanged  += new MyGUIEvent(adaptButton_CheckedChanged);
            moveButton.CheckedChanged   += new MyGUIEvent(moveButton_CheckedChanged);
            rotateButton.CheckedChanged += new MyGUIEvent(rotateButton_CheckedChanged);

            topCameraButton             = mainWidget.findWidget("TeethMovementPanel/TopCameraButton") as Button;
            bottomCameraButton          = mainWidget.findWidget("TeethMovementPanel/BottomCameraButton") as Button;
            leftLateralCameraButton     = mainWidget.findWidget("TeethMovementPanel/LeftLateralCameraButton") as Button;
            midlineAnteriorCameraButton = mainWidget.findWidget("TeethMovementPanel/MidlineAnteriorCameraButton") as Button;
            rightLateralCameraButton    = mainWidget.findWidget("TeethMovementPanel/RightLateralCameraButton") as Button;

            topCameraButton.MouseButtonClick             += new MyGUIEvent(topCameraButton_MouseButtonClick);
            bottomCameraButton.MouseButtonClick          += new MyGUIEvent(bottomCameraButton_MouseButtonClick);
            leftLateralCameraButton.MouseButtonClick     += new MyGUIEvent(leftLateralCameraButton_MouseButtonClick);
            midlineAnteriorCameraButton.MouseButtonClick += new MyGUIEvent(midlineAnteriorCameraButton_MouseButtonClick);
            rightLateralCameraButton.MouseButtonClick    += new MyGUIEvent(rightLateralCameraButton_MouseButtonClick);

            lastCameraButtonAction = wizardView.MidlineAnteriorAction;
        }
        public ProfileDistortionGUI(ProfileDistortionView wizardView, AnomalousMvcContext context, MyGUIViewHost viewHost)
            : base("Medical.GUI.DistortionWizard.Profile.ProfileDistortionGUI.layout", wizardView, context, viewHost)
        {
            rightSideCamera = widget.findWidget("ProfilePanel/RightCamera") as Button;
            rightMidCamera  = widget.findWidget("ProfilePanel/RightMidCamera") as Button;
            midlineCamera   = widget.findWidget("ProfilePanel/MidlineCamera") as Button;
            leftMidCamera   = widget.findWidget("ProfilePanel/MidLeftCamera") as Button;
            leftSideCamera  = widget.findWidget("ProfilePanel/LeftCamera") as Button;

            rightSideCamera.MouseButtonClick += new MyGUIEvent(rightSideCamera_MouseButtonClick);
            rightMidCamera.MouseButtonClick  += new MyGUIEvent(rightMidCamera_MouseButtonClick);
            midlineCamera.MouseButtonClick   += new MyGUIEvent(midlineCamera_MouseButtonClick);
            leftMidCamera.MouseButtonClick   += new MyGUIEvent(leftMidCamera_MouseButtonClick);
            leftSideCamera.MouseButtonClick  += new MyGUIEvent(leftSideCamera_MouseButtonClick);

            heightControl = new HeightControl(widget.findWidget("ProfilePanel/LeftSideSlider") as ScrollBar,
                                              widget.findWidget("ProfilePanel/RightSideSlider") as ScrollBar,
                                              widget.findWidget("ProfilePanel/BothSidesSlider") as ScrollBar);

            adaptButton = new CheckButton(widget.findWidget("ProfilePanel/AdaptButton") as Button);
            adaptButton.CheckedChanged += new MyGUIEvent(adaptButton_CheckedChanged);

            undoButton       = widget.findWidget("ProfilePanel/UndoButton") as Button;
            makeNormalButton = widget.findWidget("ProfilePanel/MakeNormalButton") as Button;

            undoButton.MouseButtonClick       += new MyGUIEvent(undoButton_MouseButtonClick);
            makeNormalButton.MouseButtonClick += new MyGUIEvent(makeNormalButton_MouseButtonClick);
        }
        public RmlWysiwygComponent(RawRmlWysiwygView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
            : this(context, viewHost, view)
        {
            if (view.FakePath != null)
            {
                this.FakeLoadLocation = RocketInterface.createValidFileUrl(context.ResourceProvider.getFullFilePath(view.FakePath));
            }
            else
            {
                this.FakeLoadLocation = RocketInterface.createValidFileUrl(context.ResourceProvider.BackingLocation);
            }

            this.uiCallback = view.UICallback;
            this.undoBuffer = view.UndoBuffer;
            this.contentId  = view.ContentId;
            rocketWidget.Context.ZoomLevel = view.ZoomLevel;

            if (view.UndoRedoCallback != null)
            {
                undoRedoCallback = view.UndoRedoCallback;
            }

            documentName = null;
            setDocumentRml(view.Rml, false);

            view._fireComponentCreated(this);
        }
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is MovementSequenceEditorView)
     {
         return(new MovementSequenceEditor(movementSequenceController, clipboard, viewHost, (MovementSequenceEditorView)view));
     }
     return(null);
 }
示例#12
0
 internal RocketEventController createRocketEventController(AnomalousMvcContext mvcContext, ViewHost viewHost)
 {
     if (createCustomEventController != null)
     {
         return(createCustomEventController(mvcContext, viewHost));
     }
     return(new RmlMvcEventController(mvcContext, viewHost));
 }
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is EditorTaskbarView)
     {
         return(new EditorTaskbar((EditorTaskbarView)view, viewHost, editorController, FilesystemWatcher));
     }
     return(null);
 }
示例#14
0
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is OffsetSequenceEditorView)
     {
         return(new OffsetSequenceEditor(clipboard, viewHost, (OffsetSequenceEditorView)view, medicalController));
     }
     return(null);
 }
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is EditorInfoBarView)
     {
         return(new EditorInfoBarComponent(viewHost, (EditorInfoBarView)view));
     }
     return(null);
 }
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is NavigationBugView)
     {
         return(new NavigationBugComponent((NavigationBugView)view, context, viewHost));
     }
     return(null);
 }
示例#17
0
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is DragAndDropViewBase)
     {
         return(new DragAndDropComponent(viewHost, (DragAndDropViewBase)view));
     }
     return(null);
 }
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is SlideTaskbarView)
     {
         return(new SlideTaskbar((SlideTaskbarView)view, viewHost));
     }
     return(null);
 }
示例#19
0
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is TextEditorView)
     {
         TextEditorComponent component = new TextEditorComponent(viewHost, (TextEditorView)view);
         ((TextEditorView)view)._fireComponentCreated(component);
         return(component);
     }
     return(null);
 }
示例#20
0
        public PresetStateGUI(PresetStateView wizardView, AnomalousMvcContext context, MyGUIViewHost viewHost)
            : base("Medical.GUI.DistortionWizard.Preset.PresetStateGUI.layout", wizardView, context, viewHost)
        {
            this.subDirectory = wizardView.PresetDirectory;

            presetListView = new SingleSelectButtonGrid(widget as ScrollView);
            presetListView.SelectedValueChanged += presetListView_SelectedValueChanged;

            imageAtlas = new ImageAtlas("PresetStateGUI_" + subDirectory, new IntSize2(100, 100));
        }
        public NavigationBugComponent(NavigationBugView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
            : base("Medical.GUI.AnomalousMvc.NavigationBug.NavigationBugComponent.layout", viewHost)
        {
            this.view    = view;
            this.context = context;

            nextButton     = (Button)widget.findWidget("Next");
            previousButton = (Button)widget.findWidget("Previous");
            closeButton    = (Button)widget.findWidget("Close");
            closeButton.MouseButtonClick += closeButton_MouseButtonClick;
        }
示例#22
0
        private static void createView(AnomalousMvcContext mvcContext, String name, bool backButton)
        {
            RmlView view = new RmlView(name);

            if (backButton)
            {
                view.Buttons.add(new ButtonDefinition("Back", "Common/GoBack"));
            }
            view.Buttons.add(new CloseButtonDefinition("Close", name + "/Close"));
            mvcContext.Views.add(view);
        }
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is TimelineEditorView)
     {
         TimelineEditorView      editorView     = (TimelineEditorView)view;
         TimelineEditorComponent timelineEditor = new TimelineEditorComponent(viewHost, editorView, clipboard);
         timelineEditor.CurrentTimeline = editorView.Timeline;
         editorView.fireComponentCreated(timelineEditor);
         return(timelineEditor);
     }
     return(null);
 }
        public void createViews(String name, RunCommandsAction showCommand, AnomalousMvcContext context, SlideDisplayManager displayManager, Slide slide)
        {
            SlideInstanceLayoutStrategy instanceStrategy = createLayoutStrategy(displayManager);

            foreach (SlidePanel panel in panels.Values)
            {
                MyGUIView view = panel.createView(slide, name);
                instanceStrategy.addView(view);
                showCommand.addCommand(new ShowViewCommand(view.Name));
                context.Views.add(view);
            }
        }
        public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
        {
            WizardView wizardView = view as WizardView;

            if (wizardView != null)
            {
                wizardView.TeethToolController = teethToolController;
                ViewHostComponent component = wizardView.createViewHost(context, viewHost);
                return(component);
            }
            return(null);
        }
示例#26
0
        public NavigationComponent(NavigationView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
            : base("Medical.GUI.AnomalousMvc.NavigationView.NavigationComponent.layout", viewHost)
        {
            this.view    = view;
            this.context = context;

            iconScrollView = (ScrollView)widget;
            IntSize2 size = iconScrollView.CanvasSize;

            size.Width = CaptionPadding;
            iconScrollView.CanvasSize = size;
        }
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is RmlView)
     {
         return(new RmlWidgetComponent((RmlView)view, context, viewHost));
     }
     else if (view is RawRmlView)
     {
         return(new RmlWidgetComponent((RawRmlView)view, context, viewHost));
     }
     return(null);
 }
示例#28
0
        public NotesGUI(NotesView wizardView, AnomalousMvcContext context, MyGUIViewHost viewHost)
            : base("Medical.GUI.DistortionWizard.Notes.NotesGUI.layout", wizardView, context, viewHost)
        {
            stateNameTextBox = widget.findWidget("Notes/DistortionName") as EditBox;
            stateNameTextBox.EventEditTextChange += new MyGUIEvent(stateNameTextBox_EventEditTextChange);
            datePicker                 = widget.findWidget("Notes/DateCreated") as EditBox;
            distortionWizard           = widget.findWidget("Notes/DistortionWizard") as EditBox;
            notes                      = widget.findWidget("Notes/NotesText") as EditBox;
            notes.EventEditTextChange += new MyGUIEvent(notes_EventEditTextChange);

            thumbnailPicker = new ThumbnailPickerGUI(context.ImageRenderer, widget.findWidget("Notes/Thumbnails") as ScrollView);
            thumbnailPicker.SelectedThumbnailChanged += thumbnailPicker_SelectedThumbnailChanged;
        }
        public ViewHost createViewHost(View view, AnomalousMvcContext context)
        {
            MyGUIView myGUIView = view as MyGUIView;

            if (myGUIView != null)
            {
                MyGUIViewHost viewHost = new MyGUIViewHost(context, myGUIView);
                viewHost.setTopComponent(componentFactory.createViewHostComponent(myGUIView, context, viewHost));
                myGUIView.fireViewHostCreated(viewHost);
                return(viewHost);
            }
            return(null);
        }
示例#30
0
 public ViewHostComponent createViewHostComponent(MyGUIView view, AnomalousMvcContext context, MyGUIViewHost viewHost)
 {
     if (view is PropTimelineView)
     {
         var          propView     = (PropTimelineView)view;
         PropTimeline propTimeline = new PropTimeline(clipboard, propView.PropEditController, propView.PropFactory, viewHost);
         return(propTimeline);
     }
     else if (view is OpenPropManagerView)
     {
         OpenPropManager openPropManager = new OpenPropManager(((OpenPropManagerView)view).PropEditController, viewHost);
         return(openPropManager);
     }
     return(null);
 }