Esempio n. 1
0
 private void OnMenuClicked(object sender, RoutedEventArgs e)
 {
     ContextMenuService.GetContextMenu(PreviewTextHost.TextView.VisualElement).IsOpen = true;
 }
Esempio n. 2
0
 void ContextMenuClosed(object sender, RoutedEventArgs e)
 {
     ContextMenuService.SetContextMenu(graphViewer.GraphCanvas, null);
 }
 private void MainItemGrid_OnTap(object sender, GestureEventArgs e)
 {
     ContextMenuService.GetContextMenu((DependencyObject)sender).IsOpen = true;
 }
Esempio n. 4
0
        private void ChapterItem_OnTap(object sender, GestureEventArgs e)
        {
            var item = sender as Grid;

            if (item == null)
            {
                return;
            }

            var chapterInfo = item.DataContext as ChapterInfoDto;

            if (chapterInfo == null)
            {
                return;
            }

            var contextMenu = ContextMenuService.GetContextMenu(item);

            if (contextMenu == null)
            {
                contextMenu = new ContextMenu();
            }
            else
            {
                contextMenu.Items.Clear();
            }

            var playFromMenuItem = new MenuItem
            {
                Header = AppResources.MenuPlayFrom
            };

            playFromMenuItem.Click += (o, args) =>
            {
                var vm = (DataContext as MovieViewModel);
                if (vm != null)
                {
                    if (SimpleIoc.Default.GetInstance <VideoPlayerViewModel>() != null && vm.SelectedMovie.LocationType != LocationType.Virtual)
                    {
                        Messenger.Default.Send(new VideoMessage(vm.SelectedMovie, true, PlayerSourceType.Video, chapterInfo.StartPositionTicks));
                        NavigationService.Navigate(new Uri(string.Format(Constants.Pages.VideoPlayerView, vm.SelectedMovie.Id, vm.SelectedMovie.Type), UriKind.Relative));
                    }
                }
            };
            contextMenu.Items.Add(playFromMenuItem);

            var playFromOnClientMenuItem = new MenuItem
            {
                Header = AppResources.MenuPlayFromOn
            };

            playFromOnClientMenuItem.Click += (o, args) =>
            {
                var vm = (DataContext as MovieViewModel);
                if (vm != null)
                {
                    if (SimpleIoc.Default.GetInstance <RemoteViewModel>() != null && vm.SelectedMovie.LocationType != LocationType.Virtual)
                    {
                        Messenger.Default.Send(new RemoteMessage(vm.SelectedMovie.Id, chapterInfo.StartPositionTicks));
                        NavigationService.Navigate(new Uri(Constants.Pages.Remote.ChooseClientView, UriKind.Relative));
                    }
                }
            };

            contextMenu.Items.Add(playFromOnClientMenuItem);

            ContextMenuService.SetContextMenu(item, contextMenu);

            contextMenu.IsOpen = true;
        }
Esempio n. 5
0
        public JsonResult GetByCode(string menuCode, bool loadItems = false)
        {
            var menu = ContextMenuService.GetByCode(menuCode, loadItems);

            return(Json(menu, JsonRequestBehavior.AllowGet));
        }
Esempio n. 6
0
        void MenuItemClick(object sender, RoutedEventArgs e)
        {
            var item = sender as SuperMenuItem;

            switch ((string)item.Header)
            {
            case "New":
                A(NewClicked);
                break;

            case "Open":
                A(OpenClicked);
                break;

            case "Close":
                A(CloseClicked);
                break;

            case "Close All":
                A(CloseAllClicked);
                break;

            case "Hide Properties":
                var x = ContextMenuService.GetContextMenu((Button)_viewButton).Items[0] as SuperMenuItem;
                x.Header = "Show Properties";
                A(TogglePropertiesClicked);
                break;

            case "Show Properties":
                var y = ContextMenuService.GetContextMenu((Button)_viewButton).Items[0] as SuperMenuItem;
                y.Header = "Hide Properties";
                A(TogglePropertiesClicked);
                break;

            case "Undo":
                A(UndoClicked);
                break;

            case "Redo":
                A(RedoClicked);
                break;

            case "Cut":
                A(CutClicked);
                break;

            case "Copy":
                A(CopyClicked);
                break;

            case "Paste":
                A(PasteClicked);
                break;

            case "In":
                A(ZoomInClicked);
                break;

            case "Out":
                A(ZoomOutClicked);
                break;

            case "Fit":
                A(ZoomFitClicked);
                break;

            case "with degrees":
                A(LabelWithDegreesClicked);
                break;

            case "with in degrees":
                A(LabelWithInDegreesClicked);
                break;

            case "with out degrees":
                A(LabelWithOutDegreesClicked);
                break;

            case "with out degrees plus one":
                A(LabelWithOutDegreesPlusOneClicked);
                break;

            case "clear selected":
                A(ClearAllLabelsClicked);
                break;

            case "count eulerian subgraphs":
                A(CountEulerianSubgraphs);
                break;

            case "check d1-AT (slow)":
                A(CheckD1AT);
                break;

            case "find AT number":
                A(FindATNumber);
                break;

            case "find strong components":
                A(FindStrongComponents);
                break;

            case "check d1-paintable":
                A(CheckD1Paintable);
                break;

            case "check 2-fold d1-paintable":
                A(Check2FoldD1Paintable);
                break;

            case "find paint number":
                A(FindPaintNumber);
                break;

            case "Export TeX":
                A(ExportTeX);
                break;

            case "Δ-1 color":
                A(DoMozhan);
                break;

            case "Export web link":
                A(DoWebLink);
                break;

            case "Export mobile web link":
                A(DoLightWebLink);
                break;

            case "check f-AT (slow)":
                A(CheckfAT);
                break;

            case "check KP":
                A(DoCheckKP);
                break;

            case "check f-AT using formula":
                A(CheckfATUsingFormula);
                break;

            case "check f-paintable":
                A(CheckfPaintable);
                break;

            case "selected with 'd'":
                A(LabelWithDegreeSymbol);
                break;

            case "selected with 'd-1'":
                A(LabelWithDegreeSymbolMinusOne);
                break;

            case "Export graph6":
                A(DoGraph6);
                break;

            case "Export edge weights":
                A(DoEdgeWeights);
                break;

            case "Export adjacency matrix":
                A(DoAdjacencyMatrix);
                break;

            case "compute coefficient":
                A(ComputeCoefficient);
                break;

            case "generate random orientation":
                A(GenerateRandomOrientation);
                break;

            case "generate balanced orientation":
                A(GenerateBalancedOrientation);
                break;

            case "springs":
                A(DoSpringsLayout);
                break;

            case "check f-choosable":
                A(CheckfChoosable);
                break;

            case "instructions":
                A(OnInstructions);
                break;

            case "about":
                A(OnAbout);
                break;

            case "compute sign sum":
                A(ComputeSignSum);
                break;

            case "clear orientation":
                A(ClearOrientation);
                break;

            case "check (f:g)-paintable":
                A(CheckFGPaintable);
                break;

            case "laplacian":
                A(DoLaplacianLayout);
                break;

            case "walk matrix":
                A(DoWalkMatrixLayout);
                break;

            case "find good 3-partition":
                A(FindGood3Partition);
                break;

            case "toggle grid":
                A(DoGridToggle);
                break;

            case "unit distance":
                A(DoUnitDistanceLayout);
                break;

            case "make hex grid":
                A(DoMakeHexGrid);
                break;

            case "list extra spindle edges":
                A(DoListExtraSpindleEdges);
                break;

            case "bases and tops weighting":
                A(DoBasesAndTopsWeighting);
                break;

            case "max fractional clique":
                A(DoMaxFractionalClique);
                break;

            case "generate LP":
                A(DoSolveLP);
                break;

            case "6-fold way":
                A(DoSixFoldWay);
                break;

            case "do tiling":
                A(DoTiling);
                break;

            case "spin":
                A(DoSpin);
                break;

            case "add clock spindle":
                A(OnAddClockSpindle);
                break;

            case "add cclock spindle":
                A(OnAddCClockSpindle);
                break;

            case "analyze fixed Δ":
                A(Analyze, GetNearColoring(), GetExtraPsi(), GetSwapMode(), AllowAllIntermediateMode(), false, false, GetReductionMode());
                break;

            case "analyze superabundant only":
                A(Analyze, GetNearColoring(), GetExtraPsi(), GetSwapMode(), AllowAllIntermediateMode(), true, false, GetReductionMode());
                break;

            case "generate proof fixed Δ":
                A(Analyze, GetNearColoring(), GetExtraPsi(), GetSwapMode(), AllowAllIntermediateMode(), false, true, GetReductionMode());
                break;

            case "analyze current board":
                A(AnalyzeCurrentBoard, GetNearColoring(), GetExtraPsi(), GetSwapMode(), AllowAllIntermediateMode(), true, false, GetReductionMode());
                break;

            case "generate deepest board":
                A(GenenerateBoard, GetNearColoring(), GetExtraPsi(), GetSwapMode(), AllowAllIntermediateMode(), true, false, GetReductionMode());
                break;

            case "original mode":
                _fixerBreakerModeItem.Header = "single swap mode";
                SaveSettings();
                break;

            case "single swap mode":
                _fixerBreakerModeItem.Header = "multi swap mode";
                SaveSettings();
                break;

            case "multi swap mode":
                _fixerBreakerModeItem.Header = "original mode";
                SaveSettings();
                break;

            case "restrict intermediate boards mode":
                _fixerBreakerIntermediateModeItem.Header = "allow all intermediate boards mode";
                SaveSettings();
                break;

            case "allow all intermediate boards mode":
                _fixerBreakerIntermediateModeItem.Header = "restrict intermediate boards mode";
                SaveSettings();
                break;

            case "next deepest board":
                A(OnNextDeepestBoard);
                break;

            case "no reductions":
                _fixerBreakerReductionModeItem.Header = "superabundant reductions";
                SaveSettings();
                break;

            case "superabundant reductions":
                _fixerBreakerReductionModeItem.Header = "definite reductions";
                SaveSettings();
                break;

            case "definite reductions":
                _fixerBreakerReductionModeItem.Header = "no reductions";
                SaveSettings();
                break;

            case "extra psi 0":
                _extraPsiItem.Header = "extra psi 1";
                SaveSettings();
                break;

            case "extra psi 1":
                _extraPsiItem.Header = "extra psi 0";
                SaveSettings();
                break;

            case "near colorings only":
                _nearColoringItem.Header = "all assignments";
                SaveSettings();
                break;

            case "all assignments":
                _nearColoringItem.Header = "near colorings only";
                SaveSettings();
                break;

            case "extend triangulation":
                A(ExtendTriangulation);
                break;

            case "reverse selected edges":
                A(OnReverseSelectedEdgeOrientations);
                break;
            }
        }
 public MediaItemControl()
 {
     InitializeComponent();
     ContextMenu = ContextMenuService.GetContextMenu((UIElement)FindName("MediaItemRoot"));
 }
        /// <summary>
        /// Generates layer list for a set of <see cref="Layer"/>s in a <see cref="Map"/> or <see cref="Scene"/>
        /// contained in a <see cref="GeoView"/>
        /// </summary>
        internal void Refresh()
        {
            var list = GetTemplateChild("List") as ItemsControl;

            if (list == null)
            {
                return;
            }
#if !NETFX_CORE
            ContextMenuService.AddContextMenuOpeningHandler(list, ContextMenuEventHandler);
#endif

            if ((GeoView as MapView)?.Map == null && (GeoView as SceneView)?.Scene == null)
            {
                list.ItemsSource = null;
                return;
            }

            ObservableLayerContentList layers = null;
            if (GeoView is MapView)
            {
                layers = new ObservableLayerContentList(GeoView as MapView, ShowLegendInternal)
                {
                    ReverseOrder = !ReverseLayerOrder,
                };

                Binding b = new Binding();
                b.Source = GeoView;
                b.Path   = new PropertyPath(nameof(MapView.Map));
                b.Mode   = BindingMode.OneWay;
                SetBinding(DocumentProperty, b);
            }
            else if (GeoView is SceneView)
            {
                layers = new ObservableLayerContentList(GeoView as SceneView, ShowLegendInternal)
                {
                    ReverseOrder = !ReverseLayerOrder,
                };

                Binding b = new Binding();
                b.Source = GeoView;
                b.Path   = new PropertyPath(nameof(SceneView.Scene));
                b.Mode   = BindingMode.OneWay;
                SetBinding(DocumentProperty, b);
            }

            if (layers == null)
            {
                list.ItemsSource = null;
                return;
            }

            foreach (var l in layers)
            {
                if (!(l.LayerContent is Layer))
                {
                    continue;
                }

                var layer = l.LayerContent as Layer;
                if (layer.LoadStatus == LoadStatus.Loaded)
                {
                    l.UpdateLayerViewState(GeoView.GetLayerViewState(layer));
                }
            }

            ScaleChanged();
            SetLayerContentList(layers);
            list.ItemsSource = layers;
        }
Esempio n. 9
0
        private void RemoveContextMenu()
        {
            _lastContextMenu = ContextMenuService.GetContextMenu(this);

            ContextMenuService.SetContextMenu(this, null);
        }
        /// <summary>
        /// Override of the DocumentViewer's content Loaded event handler.
        /// Register a toolkit ContextMenu on the sender once it is loaded.
        /// </summary>
        /// <param name="sender">The Content area of the DocumentViewer</param>
        /// <param name="e"></param>
        protected override void OnContentLoaded(object sender, RoutedEventArgs e)
        {
            base.OnContentLoaded(sender, e);

            this.ToolMode = ToolModes.Pan;

            if (ContextMenuService.GetContextMenu(sender as DependencyObject) == null)
            {
                ContextMenu menu = new ContextMenu();
                this.ContextMenu = menu;

                var copyMenuItem = new MenuItem()
                {
                    Header  = StringResource.CopyCommand,
                    Command = CopyCommand,
                };
                this.SetMenutItemVisibilityBinding(copyMenuItem);
                menu.Items.Add(copyMenuItem);
                //-----

                menu.Items.Add(new MenuItem()
                {
                    Header = StringResource.PanToolCommand, Command = PanToolCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/hand-16.png")
                });
                menu.Items.Add(new MenuItem()
                {
                    Header = StringResource.SelectToolCommand, Command = SelectToolCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/ibeam-16.png")
                });
                menu.Items.Add(new Separator());
                menu.Items.Add(new MenuItem()
                {
                    Header = StringResource.ZoomInCommand, Command = ZoomInCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/zoom_in.png")
                });
                menu.Items.Add(new MenuItem()
                {
                    Header = StringResource.ZoomOutCommand, Command = ZoomOutCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/zoom_out.png")
                });
                menu.Items.Add(new Separator());
                menu.Items.Add(new MenuItem()
                {
                    Header = StringResource.FitWidthCommand, Command = FitWidthCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/arrow_ew.png")
                });
                menu.Items.Add(new MenuItem()
                {
                    Header = StringResource.FitPageCommand, Command = FitPageCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/arrow_nsew.png")
                });

                menu.Items.Add(new Separator());
                //----

                menu.Items.Add(new MenuItem()
                {
                    Header = StringResource.UndoAnnotationCommand, Command = this.UndoAnnotationCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/arrow_undo.png")
                });
                menu.Items.Add(new MenuItem()
                {
                    Header = StringResource.RedoAnnotationCommand, Command = this.RedoAnnotationCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/arrow_redo.png")
                });
                menu.Items.Add(new Separator());
                //-----

                var removeAnnotMenuItem = new MenuItem()
                {
                    Header = StringResource.RemoveAnnotationCommand, Command = this.RemoveAnnotationCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/cross.png")
                };
                menu.Items.Add(removeAnnotMenuItem);
                this.SetMenutItemVisibilityBinding(removeAnnotMenuItem);

                menu.Items.Add(new MenuItem()
                {
                    Header = StringResource.CopyAnnotationCommand, Command = this.CopyAnnotationCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/page_copy.png")
                });
                menu.Items.Add(new MenuItem()
                {
                    Header = StringResource.PasteAnnotationCommand, Command = this.PasteAnnotationCommand,
                    Icon   = getImageFromRelativePath("/ReaderControl;component/Resources/page_white_paste_table.png")
                });

                ContextMenuService.SetContextMenu((sender as DependencyObject), menu);
            }
        }
Esempio n. 11
0
        private void DisposeAll()
        {
            ActionOnChildControls <Grid>(llsItemList, Grid.NameProperty, "grdItem", ((c) => ContextMenuService.SetContextMenu(c, null)));
            llsItemList.ItemsSource  = null;
            llsItemList.ItemTemplate = null;
            _viewModel.Dispose();
            llsItemList.ItemRealized           -= llsItemList_ItemRealized;
            ContentPanel.ManipulationCompleted -= ContentPanel_ManipulationCompleted;
            NavBar.SelectedEvent -= NavBar_Selected;
            NavBar.Dispose();

            adControl = null;
        }
Esempio n. 12
0
        private void PollOption_OnTap(object sender, System.Windows.Input.GestureEventArgs e)
        {
            e.Handled = true;
            if (this._viewModel.IsVoting)
            {
                return;
            }
            FrameworkElement frameworkElement = sender as FrameworkElement;
            PollAnswerHeader pollAnswerHeader = (frameworkElement != null ? frameworkElement.DataContext : null) as PollAnswerHeader;

            if (pollAnswerHeader == null)
            {
                return;
            }
            if (!this._viewModel.Voted)
            {
                this._viewModel.VoteUnvote(pollAnswerHeader);
            }
            else
            {
                DependencyObject        element = sender as DependencyObject;
                List <MenuItemExtended> menuItemExtendedList1 = new List <MenuItemExtended>();
                if (this._viewModel.Poll.answer_id == pollAnswerHeader.Answer.id)
                {
                    List <MenuItemExtended> menuItemExtendedList2 = menuItemExtendedList1;
                    MenuItemExtended        menuItemExtended      = new MenuItemExtended();
                    menuItemExtended.Id    = 1;
                    menuItemExtended.Title = CommonResources.Poll_CancelChoice;
                    Action action = (Action)(() => this._viewModel.VoteUnvote(pollAnswerHeader));
                    menuItemExtended.Action = action;
                    menuItemExtendedList2.Add(menuItemExtended);
                }
                if (this._viewModel.Poll.anonymous == 0 && pollAnswerHeader.Answer.votes > 0)
                {
                    string str = UIStringFormatterHelper.FormatNumberOfSomething(pollAnswerHeader.Answer.votes, CommonResources.OnePersonFrm, CommonResources.TwoFourPersonsFrm, CommonResources.FivePersonsFrm, true, null, false);
                    List <MenuItemExtended> menuItemExtendedList2 = menuItemExtendedList1;
                    MenuItemExtended        menuItemExtended      = new MenuItemExtended();
                    menuItemExtended.Id          = 2;
                    menuItemExtended.Title       = CommonResources.Poll_VotedList;
                    menuItemExtended.Description = str;
                    Action action = (Action)(() => Navigator.Current.NavigateToPollVoters(this._viewModel.Poll.owner_id, this._viewModel.Poll.id, pollAnswerHeader.Answer.id, pollAnswerHeader.Answer.text));
                    menuItemExtended.Action = action;
                    menuItemExtendedList2.Add(menuItemExtended);
                }
                if (menuItemExtendedList1.Count == 0)
                {
                    return;
                }
                ContextMenu contextMenu1 = new ContextMenu();
                contextMenu1.IsZoomEnabled = false;
                SolidColorBrush solidColorBrush1 = (SolidColorBrush)Application.Current.Resources["PhoneMenuBackgroundBrush"];
                ((Control)contextMenu1).Background = ((Brush)solidColorBrush1);
                SolidColorBrush solidColorBrush2 = (SolidColorBrush)Application.Current.Resources["PhoneMenuForegroundBrush"];
                ((Control)contextMenu1).Foreground = ((Brush)solidColorBrush2);
                ContextMenu contextMenu2 = contextMenu1;
                foreach (MenuItemExtended menuItemExtended1 in menuItemExtendedList1)
                {
                    MenuItem        menuItem1       = new MenuItem();
                    ControlTemplate controlTemplate = (ControlTemplate)base.Resources["MenuItemTemplate"];
                    ((Control)menuItem1).Template = controlTemplate;
                    MenuItemExtended menuItemExtended2 = menuItemExtended1;
                    ((FrameworkElement)menuItem1).DataContext = menuItemExtended2;
                    Thickness thickness = menuItemExtended1.Id == 2 ? new Thickness(0.0, 0.0, 0.0, 0.0) : new Thickness(0.0, 8.0, 0.0, 19.0);
                    ((FrameworkElement)menuItem1).Margin = thickness;
                    MenuItem menuItem2 = menuItem1;
                    // ISSUE: method pointer
                    menuItem2.Click += new RoutedEventHandler(this.PollOptionMenuItem_OnClick);
                    ((PresentationFrameworkCollection <object>)contextMenu2.Items).Add(menuItem2);
                }
                ContextMenuService.SetContextMenu(element, contextMenu2);
                contextMenu2.IsOpen = true;
            }
        }
Esempio n. 13
0
        private void VectorMapDoc_LayerOpenSuccEvent(IVector vLayer)
        {
            if (vLayer is VectorMapDoc)
            {
                VectorMapDoc vectorMapDoc = vLayer as VectorMapDoc;

                vectorMapDoc.LayerOpenSuccEvent -= new LayerOpenSuccEventHandler(VectorMapDoc_LayerOpenSuccEvent);
                StackPanel panel = new StackPanel();
                panel.Orientation = Orientation.Horizontal;
                RadioButton vRadioButton = new RadioButton()
                {
                    GroupName = "VectorMapDocRadioButton",
                    Tag       = vectorMapDoc
                };
                if (this.ActiveMapDoc != null)
                {
                    if (this.ActiveMapDoc.Equals(vLayer))
                    {
                        vRadioButton.IsChecked = true;
                    }
                }
                vRadioButton.Checked += new RoutedEventHandler(OnChecked);
                panel.Children.Add(vRadioButton);
                Image img = new Image();
                panel.Children.Add(img);
                panel.Children.Add(new TextBlock()
                {
                    Text   = vectorMapDoc.MapDocName,
                    Margin = new Thickness(2)
                });
                TreeViewItem item = new TreeViewItem()
                {
                    Header = panel
                };
                mapDocItem.Items.Add(item);
                item.Tag = new LayerStateManager(this, vectorMapDoc, item, img, LayerTreeNodeType.ParentLayer);
                item.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                ContextMenuService.SetContextMenu(item, GetContextMenu2(item));

                TreeViewItem layerItem;
                RadioButton  radioButton;
                int          index = m_mapContainer.VectorLayerList.IndexOf(vectorMapDoc);
                for (int j = 0; j < vectorMapDoc.LoadMapResult.LayerCount - 1; j++)
                {
                    panel             = new StackPanel();
                    panel.Orientation = Orientation.Horizontal;
                    radioButton       = new RadioButton()
                    {
                        IsChecked = false,
                        GroupName = "ActiveVectorMapDocRadioButton" + index
                    };
                    panel.Children.Add(radioButton);
                    img     = new Image();
                    img.Tag = radioButton;
                    panel.Children.Add(img);
                    panel.Children.Add(new TextBlock()
                    {
                        Text   = vectorMapDoc.GetLayerInfo(j).LayerDataName,
                        Margin = new Thickness(2)
                    });
                    layerItem = new TreeViewItem()
                    {
                        Header = panel
                    };
                    item.Items.Add(layerItem);
                    layerItem.Tag = new LayerStateManager(this, vectorMapDoc, layerItem, img,
                                                          LayerTreeNodeType.ChildLayer, GetLayerStatus(vectorMapDoc.GetMapLayerInfo(j).LayerStatus))
                    {
                        LayerRadioBtn = vRadioButton
                    };
                    layerItem.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                    ContextMenuService.SetContextMenu(layerItem, GetContextMenu1(layerItem));
                    radioButton.Tag = layerItem.Tag;
                }
            }
        }
Esempio n. 14
0
        private void InitCatalogTree()
        {
            this.Items.Clear();
            if (m_mapContainer != null)
            {
                if (OnlyVecFlag == 1)
                {
                    StackPanel panel = new StackPanel();

                    TreeViewItem item = new TreeViewItem()
                    {
                        Header = panel
                    };

                    //panel.Orientation = Orientation.Horizontal;
                    //panel.Children.Add(new Image()
                    //{
                    //    Source = new BitmapImage(new Uri("/images/tree/data.PNG", UriKind.Relative))
                    //});
                    //panel.Children.Add(new TextBlock()
                    //{
                    //    Text = "瓦片集",
                    //    Margin = new Thickness(2)
                    //});

                    //this.Items.Add(item);
                    //item.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                    //ContextMenuService.SetContextMenu(item, GetContextMenu3(item));


                    //for (int i = 0; i < m_mapContainer.TileLayerList.Length; i++)
                    //{
                    //    panel = new StackPanel();
                    //    panel.Orientation = Orientation.Horizontal;
                    //    Image img = new Image();
                    //    panel.Children.Add(img);
                    //    panel.Children.Add(new TextBlock()
                    //    {
                    //        Text = (m_mapContainer.TileLayerList.GetItemByIndex(i) as TileLayer).HdfName,
                    //        Margin = new Thickness(2)
                    //    });
                    //    item.Items.Add(new TreeViewItem() { Header = panel });
                    //    item.Tag = new LayerStateManager(this, m_mapContainer.TileLayerList.GetItemByIndex(i) as IMap, item, img, LayerTreeNodeType.ParentLayer);
                    //    ContextMenuService.SetContextMenu(item, GetContextMenu4(item));
                    //}

                    //panel = new StackPanel();
                    panel.Orientation = Orientation.Horizontal;
                    panel.Children.Add(new Image()
                    {
                        Source = new BitmapImage(new Uri("/images/tree/data.PNG", UriKind.Relative))
                    });
                    panel.Children.Add(new TextBlock()
                    {
                        Text   = "矢量图(文档)",
                        Margin = new Thickness(2)
                    });
                    mapDocItem = new TreeViewItem()
                    {
                        Header = panel
                    };

                    this.Items.Add(mapDocItem);
                    mapDocItem.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                    ContextMenuService.SetContextMenu(mapDocItem, GetContextMenu3(mapDocItem));


                    //panel = new StackPanel();
                    //panel.Orientation = Orientation.Horizontal;
                    //panel.Children.Add(new Image()
                    //{
                    //    Source = new BitmapImage(new Uri("/images/tree/data.PNG", UriKind.Relative))
                    //});
                    //panel.Children.Add(new TextBlock()
                    //{
                    //    Text = "矢量图(图层)",
                    //    Margin = new Thickness(2)
                    //});
                    //vLayerItem = new TreeViewItem() { Header = panel };
                    //this.Items.Add(vLayerItem);
                    //vLayerItem.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                    //ContextMenuService.SetContextMenu(vLayerItem, GetContextMenu3(vLayerItem));


                    VectorMapDoc vectorMapDoc;
                    VectorLayer  vectorLayer;
                    for (int i = 0; i < m_mapContainer.VectorLayerList.Length; i++)
                    {
                        if (m_mapContainer.VectorLayerList.GetItemByIndex(i) is VectorMapDoc)
                        {
                            vectorMapDoc = m_mapContainer.VectorLayerList.GetItemByIndex(i) as VectorMapDoc;
                            if (vectorMapDoc.LoadMapResult != null && vectorMapDoc.LoadMapResult.LayerCount > 0)
                            {
                                VectorMapDoc_LayerOpenSuccEvent(vectorMapDoc);
                            }
                            else
                            {
                                vectorMapDoc.LayerOpenSuccEvent += new LayerOpenSuccEventHandler(VectorMapDoc_LayerOpenSuccEvent);
                            }
                            if (this.ActiveMapDoc == null)
                            {
                                this.ActiveMapDoc = vectorMapDoc;
                            }
                        }
                        else
                        {
                            vectorLayer = m_mapContainer.VectorLayerList.GetItemByIndex(i) as VectorLayer;

                            panel             = new StackPanel();
                            panel.Orientation = Orientation.Horizontal;
                            RadioButton vRadioButton = new RadioButton()
                            {
                                GroupName = "VectorLayerRadioButton",
                                Tag       = vectorLayer
                            };
                            if (this.ActiveLayerObj == null)
                            {
                                this.ActiveLayerObj    = vectorLayer;
                                vRadioButton.IsChecked = true;
                            }
                            vRadioButton.Checked += new RoutedEventHandler(OnChecked);
                            panel.Children.Add(vRadioButton);
                            Image img = new Image();
                            panel.Children.Add(img);

                            int s = vectorLayer.ServerAddress.IndexOf("//");
                            s = s < 0 ? 0 : s;
                            string str = vectorLayer.ServerAddress.Substring(s + 2);
                            int    e   = str.IndexOf("/");
                            e = e < 0 ? str.Length - 1 : e;
                            panel.Children.Add(new TextBlock()
                            {
                                Text   = "位于:" + str.Substring(0, e),//vectorLayer.ServerAddress,
                                Margin = new Thickness(2)
                            });
                            TreeViewItem vlItem = new TreeViewItem()
                            {
                                Header = panel
                            };
                            if (vLayerItem == null)
                            {
                                vLayerItem = new TreeViewItem()
                                {
                                    Header = panel
                                };
                            }
                            vLayerItem.Items.Add(vlItem);
                            vlItem.Tag = new LayerStateManager(this, vectorLayer, vlItem, img, LayerTreeNodeType.ParentLayer);

                            vlItem.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                            ContextMenuService.SetContextMenu(vlItem, GetContextMenu2(vlItem));


                            TreeViewItem layerItem;
                            RadioButton  radioButton;
                            for (int j = 0; j < vectorLayer.LayerObj.LayerAccessInfo.Length; j++)
                            {
                                panel             = new StackPanel();
                                panel.Orientation = Orientation.Horizontal;
                                img = new Image();
                                panel.Children.Add(img);
                                panel.Children.Add(new TextBlock()
                                {
                                    Text   = vectorLayer.LayerObj.LayerAccessInfo[j].GdbInfo.GDBName,
                                    Margin = new Thickness(2)
                                });
                                layerItem = new TreeViewItem()
                                {
                                    Header = panel
                                };
                                vlItem.Items.Add(layerItem);
                                layerItem.Tag = new LayerStateManager(this, vectorLayer, layerItem, img, LayerTreeNodeType.GDBLayer);
                                layerItem.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                                ContextMenuService.SetContextMenu(layerItem, GetContextMenu2(layerItem));


                                for (int k = 0; k < vectorLayer.LayerObj.LayerAccessInfo[j].LayerInfoList.Length; k++)
                                {
                                    panel             = new StackPanel();
                                    panel.Orientation = Orientation.Horizontal;
                                    radioButton       = new RadioButton()
                                    {
                                        IsChecked = false,
                                        GroupName = "ActiveVectorLayerRadioButton" + i
                                    };
                                    panel.Children.Add(radioButton);
                                    img     = new Image();
                                    img.Tag = radioButton;
                                    panel.Children.Add(img);
                                    panel.Children.Add(new TextBlock()
                                    {
                                        Text   = vectorLayer.LayerObj.LayerAccessInfo[j].LayerInfoList[k].LayerDataName,
                                        Margin = new Thickness(2)
                                    });
                                    item = new TreeViewItem()
                                    {
                                        Header = panel
                                    };
                                    layerItem.Items.Add(item);
                                    item.Tag = new LayerStateManager(this, vectorLayer, item, img)
                                    {
                                        LayerRadioBtn = vRadioButton
                                    };
                                    radioButton.Tag            = item.Tag;
                                    item.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                                    ContextMenuService.SetContextMenu(item, GetContextMenu1(item));
                                }
                            }
                        }
                    }
                }
                else
                {
                    StackPanel panel = new StackPanel();
                    panel.Orientation = Orientation.Horizontal;
                    panel.Children.Add(new Image()
                    {
                        Source = new BitmapImage(new Uri("/images/tree/data.PNG", UriKind.Relative))
                    });
                    panel.Children.Add(new TextBlock()
                    {
                        Text   = "瓦片集",
                        Margin = new Thickness(2)
                    });
                    TreeViewItem item = new TreeViewItem()
                    {
                        Header = panel
                    };
                    this.Items.Add(item);
                    item.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                    ContextMenuService.SetContextMenu(item, GetContextMenu3(item));


                    for (int i = 0; i < m_mapContainer.TileLayerList.Length; i++)
                    {
                        panel             = new StackPanel();
                        panel.Orientation = Orientation.Horizontal;
                        Image img = new Image();
                        panel.Children.Add(img);
                        panel.Children.Add(new TextBlock()
                        {
                            Text   = (m_mapContainer.TileLayerList.GetItemByIndex(i) as TileLayer).HdfName,
                            Margin = new Thickness(2)
                        });
                        item.Items.Add(new TreeViewItem()
                        {
                            Header = panel
                        });
                        item.Tag = new LayerStateManager(this, m_mapContainer.TileLayerList.GetItemByIndex(i) as IMap, item, img, LayerTreeNodeType.ParentLayer);
                        ContextMenuService.SetContextMenu(item, GetContextMenu4(item));
                    }

                    panel             = new StackPanel();
                    panel.Orientation = Orientation.Horizontal;
                    panel.Children.Add(new Image()
                    {
                        Source = new BitmapImage(new Uri("/images/tree/data.PNG", UriKind.Relative))
                    });
                    panel.Children.Add(new TextBlock()
                    {
                        Text   = "矢量图(文档)",
                        Margin = new Thickness(2)
                    });
                    mapDocItem = new TreeViewItem()
                    {
                        Header = panel
                    };
                    this.Items.Add(mapDocItem);
                    mapDocItem.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                    ContextMenuService.SetContextMenu(mapDocItem, GetContextMenu3(mapDocItem));


                    panel             = new StackPanel();
                    panel.Orientation = Orientation.Horizontal;
                    panel.Children.Add(new Image()
                    {
                        Source = new BitmapImage(new Uri("/images/tree/data.PNG", UriKind.Relative))
                    });
                    panel.Children.Add(new TextBlock()
                    {
                        Text   = "矢量图(图层)",
                        Margin = new Thickness(2)
                    });
                    vLayerItem = new TreeViewItem()
                    {
                        Header = panel
                    };
                    this.Items.Add(vLayerItem);
                    vLayerItem.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                    ContextMenuService.SetContextMenu(vLayerItem, GetContextMenu3(vLayerItem));


                    VectorMapDoc vectorMapDoc;
                    VectorLayer  vectorLayer;
                    for (int i = 0; i < m_mapContainer.VectorLayerList.Length; i++)
                    {
                        if (m_mapContainer.VectorLayerList.GetItemByIndex(i) is VectorMapDoc)
                        {
                            vectorMapDoc = m_mapContainer.VectorLayerList.GetItemByIndex(i) as VectorMapDoc;
                            if (vectorMapDoc.LoadMapResult != null && vectorMapDoc.LoadMapResult.LayerCount > 0)
                            {
                                VectorMapDoc_LayerOpenSuccEvent(vectorMapDoc);
                            }
                            else
                            {
                                vectorMapDoc.LayerOpenSuccEvent += new LayerOpenSuccEventHandler(VectorMapDoc_LayerOpenSuccEvent);
                            }
                            if (this.ActiveMapDoc == null)
                            {
                                this.ActiveMapDoc = vectorMapDoc;
                            }
                        }
                        else
                        {
                            vectorLayer = m_mapContainer.VectorLayerList.GetItemByIndex(i) as VectorLayer;

                            panel             = new StackPanel();
                            panel.Orientation = Orientation.Horizontal;
                            RadioButton vRadioButton = new RadioButton()
                            {
                                GroupName = "VectorLayerRadioButton",
                                Tag       = vectorLayer
                            };
                            if (this.ActiveLayerObj == null)
                            {
                                this.ActiveLayerObj    = vectorLayer;
                                vRadioButton.IsChecked = true;
                            }
                            vRadioButton.Checked += new RoutedEventHandler(OnChecked);
                            panel.Children.Add(vRadioButton);
                            Image img = new Image();
                            panel.Children.Add(img);

                            int s = vectorLayer.ServerAddress.IndexOf("//");
                            s = s < 0 ? 0 : s;
                            string str = vectorLayer.ServerAddress.Substring(s + 2);
                            int    e   = str.IndexOf("/");
                            e = e < 0 ? str.Length - 1 : e;
                            panel.Children.Add(new TextBlock()
                            {
                                Text   = "位于:" + str.Substring(0, e),//vectorLayer.ServerAddress,
                                Margin = new Thickness(2)
                            });
                            TreeViewItem vlItem = new TreeViewItem()
                            {
                                Header = panel
                            };
                            vLayerItem.Items.Add(vlItem);
                            vlItem.Tag = new LayerStateManager(this, vectorLayer, vlItem, img, LayerTreeNodeType.ParentLayer);
                            vlItem.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                            ContextMenuService.SetContextMenu(vlItem, GetContextMenu2(vlItem));


                            TreeViewItem layerItem;
                            RadioButton  radioButton;
                            for (int j = 0; j < vectorLayer.LayerObj.LayerAccessInfo.Length; j++)
                            {
                                panel             = new StackPanel();
                                panel.Orientation = Orientation.Horizontal;
                                img = new Image();
                                panel.Children.Add(img);
                                panel.Children.Add(new TextBlock()
                                {
                                    Text   = vectorLayer.LayerObj.LayerAccessInfo[j].GdbInfo.GDBName,
                                    Margin = new Thickness(2)
                                });
                                layerItem = new TreeViewItem()
                                {
                                    Header = panel
                                };
                                vlItem.Items.Add(layerItem);
                                layerItem.Tag = new LayerStateManager(this, vectorLayer, layerItem, img, LayerTreeNodeType.GDBLayer);
                                layerItem.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                                ContextMenuService.SetContextMenu(layerItem, GetContextMenu2(layerItem));


                                for (int k = 0; k < vectorLayer.LayerObj.LayerAccessInfo[j].LayerInfoList.Length; k++)
                                {
                                    panel             = new StackPanel();
                                    panel.Orientation = Orientation.Horizontal;
                                    radioButton       = new RadioButton()
                                    {
                                        IsChecked = false,
                                        GroupName = "ActiveVectorLayerRadioButton" + i
                                    };
                                    panel.Children.Add(radioButton);
                                    img     = new Image();
                                    img.Tag = radioButton;
                                    panel.Children.Add(img);
                                    panel.Children.Add(new TextBlock()
                                    {
                                        Text   = vectorLayer.LayerObj.LayerAccessInfo[j].LayerInfoList[k].LayerDataName,
                                        Margin = new Thickness(2)
                                    });
                                    item = new TreeViewItem()
                                    {
                                        Header = panel
                                    };
                                    layerItem.Items.Add(item);
                                    item.Tag = new LayerStateManager(this, vectorLayer, item, img)
                                    {
                                        LayerRadioBtn = vRadioButton
                                    };
                                    radioButton.Tag            = item.Tag;
                                    item.MouseRightButtonDown += new MouseButtonEventHandler(OnMouseRightButtonDown);
                                    ContextMenuService.SetContextMenu(item, GetContextMenu1(item));
                                }
                            }
                        }
                    }
                }
            }
        }
Esempio n. 15
0
        public LinkHeader(User user, CommunityManagementRole currentUserRole, bool isManagement)
        {
            //this.IsActionButtonEnabled = true;
            this._blockVisibility = Visibility.Visible;
            this.ActionButtonIcon = "/Resources/WallPost/CardActions.png";
            this.ActionButtonSize = 56.0;
            Action <FrameworkElement> arg_5E_1 = new Action <FrameworkElement>(e => { ContextMenuService.GetContextMenu(e).IsOpen = true; });

            this.ActionButtonAction = arg_5E_1;

            this.Id    = user.id;
            this.Photo = user.photo_max;
            this.Title = user.Name;
            this.User  = user;
            this.IsActionButtonEnabled  = isManagement && (user.Role == CommunityManagementRole.Unknown || currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator) && user.id != AppGlobalStateManager.Current.LoggedInUserId && user.Role != CommunityManagementRole.Creator;
            this.ActionButtonVisibility = this.IsActionButtonEnabled.ToVisiblity();
            this.NotifyPropertyChanged <bool>((System.Linq.Expressions.Expression <Func <bool> >)(() => this.IsActionButtonEnabled));
            this.NotifyPropertyChanged <Visibility>((System.Linq.Expressions.Expression <Func <Visibility> >)(() => this.ActionButtonVisibility));
            this.AddToManagersVisibility       = (user.Role == CommunityManagementRole.Unknown && (currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator)).ToVisiblity();
            this.EditVisibility                = (user.Role != CommunityManagementRole.Unknown && (currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator)).ToVisiblity();
            this.RemoveFromCommunityVisibility = (user.Role == CommunityManagementRole.Unknown || currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator).ToVisiblity();
            this.BlockVisibility               = (this.EditVisibility == Visibility.Collapsed).ToVisiblity();
            this.UpdateRole(user.Role);
        }
Esempio n. 16
0
        private void RestoreContextMenu()
        {
            ContextMenuService.SetContextMenu(this, _lastContextMenu);

            _lastContextMenu = null;
        }
Esempio n. 17
0
        public LinkHeader(User user, Action <FrameworkElement> actionButtonAction, string icon)
        {
            //this.IsActionButtonEnabled = true;
            this._blockVisibility = Visibility.Visible;
            //this.ActionButtonIcon = "/Resources/WallPost/CardActions.png";
            //this.ActionButtonSize = 56.0;
            Action <FrameworkElement> arg_5E_1 = new Action <FrameworkElement>(e => { ContextMenuService.GetContextMenu(e).IsOpen = true; });

            this.ActionButtonAction = arg_5E_1;

            this.Id                 = user.id;
            this.Photo              = user.photo_max;
            this.Title              = user.Name;
            this.User               = user;
            this.ActionButtonSize   = 32.0;
            this.ActionButtonIcon   = icon;
            this.ActionButtonAction = actionButtonAction;
            this.NotifyPropertyChanged <double>((System.Linq.Expressions.Expression <Func <double> >)(() => this.ActionButtonSize));
            this.NotifyPropertyChanged <string>((System.Linq.Expressions.Expression <Func <string> >)(() => this.ActionButtonIcon));
            this.NotifyPropertyChanged <Action <FrameworkElement> >((System.Linq.Expressions.Expression <Func <Action <FrameworkElement> > >)(() => this.ActionButtonAction));
            this.IsActionButtonEnabled = false;
            this.NotifyPropertyChanged <bool>((System.Linq.Expressions.Expression <Func <bool> >)(() => this.IsActionButtonEnabled));
            this.UpdateRole(user.Role);
            if (user.Role == CommunityManagementRole.Creator || user.id == AppGlobalStateManager.Current.LoggedInUserId && user.Role == CommunityManagementRole.Administrator)
            {
                this.ActionButtonVisibility = Visibility.Collapsed;
                this.NotifyPropertyChanged <Visibility>((System.Linq.Expressions.Expression <Func <Visibility> >)(() => this.ActionButtonVisibility));
            }
            if (!string.IsNullOrEmpty(this.Description) || user.occupation == null)
            {
                return;
            }
            this.Description = user.occupation.name.ForUI();
        }
        private void contextMenu_BuildMenu(bool pbRebuild = true)
        {
            //try
            //{            // Remove any old column name items
            for (int i = theContextMenu.Items.Count - 1; i > 0; i--)
            {
                if (((MenuItem)theContextMenu.Items[i]).FontWeight != FontWeights.Bold)
                {
                    theContextMenu.Items.Remove(theContextMenu.Items[i]);
                }
            }

            nBaseItems = theContextMenu.Items.Count;

            // Attach the context menu to the DataGrid ColumnHeaders
            var headersPresenter = WPFDataGridConfigurationBehaviorFinder.FindChild <DataGridColumnHeadersPresenter>(dataGrid);

            if (headersPresenter == null)
            {
                return; // dirty hack to fix a creahs when loading first different pages than the one containing this element
            }
            ContextMenuService.SetContextMenu(headersPresenter, theContextMenu);

            if (VisibleColumns == null)
            {
                throw (new SettingsPropertyNotFoundException("User's VisibleColumns setting not found."));
            }

            // Get the current column ordering from user.config

            if (DisplayIndexes == null)
            {
                throw (new SettingsPropertyNotFoundException("User's DisplayIndexes setting not found."));
            }

            AllColumnDisplayIndexes = DisplayIndexes;
            string[] colIndexes = AllColumnDisplayIndexes.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);

            System.Linq.IOrderedEnumerable <DataGridColumn> dataGridColumns = dataGrid.Columns.OrderBy(x => x.DisplayIndex);

            // Sort the columns in display index order so menu header order matchs display column order
            if (pbRebuild == false)
            {
                // Initially the datagrid column order is such that display indexes are the same as the col indexes
                if (colIndexes.Length > 0)
                {
                    dataGridColumns = dataGrid.Columns.OrderBy(x => Convert.ToInt16(colIndexes[x.DisplayIndex]));
                }
            }

            if (mnuAlpha.IsChecked)
            {
                dataGridColumns = dataGrid.Columns.OrderBy(x => x.Header.ToString());
            }

            System.Linq.IOrderedEnumerable <DataGridColumn> filteredDataGridColumns = null;
            if (wordFilter.Length > 1)
            {
                filteredDataGridColumns = dataGrid.Columns
                                          .Where(x => x.Header.ToString().Contains(wordFilter) == true).OrderBy(x => x.Header.ToString());
            }
            if (filteredDataGridColumns != null)
            {
                dataGridColumns = filteredDataGridColumns;
            }

            if (wordFilter.Length == 1)
            {
                dataGridColumns = dataGrid.Columns
                                  .Where(x => x.Header.ToString().ToUpper().StartsWith(wordFilter.ToUpper()) == true).OrderBy(x => x.Header.ToString());
            }

            AllColumnsHeaders = "";
            foreach (DataGridColumn col in dataGridColumns)
            {
                // All column name to a list of all column headers for later use.
                AllColumnsHeaders = String.Format("{0};{1}", col.Header.ToString().Replace("\n", " ").Replace("\r", " "), AllColumnsHeaders);

                // Add new menu item in display order.
                contextMenu_AddNewMenuItem(col);
            }

            string sTemp = VisibleColumns;

            VisibleColumns = null;
            VisibleColumns = sTemp;
            //}
            //catch (Exception ex)
            //{ StdErrOut(ex, MethodInfo.GetCurrentMethod().Name); }
        }
 public LanguageItemControl()
 {
     InitializeComponent();
     ContextMenu = ContextMenuService.GetContextMenu((UIElement)FindName("LanguageItemRoot"));
     OnDownloadedChanged();
 }
Esempio n. 20
0
 private void NameGrid_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
 {
     //TODO: *Usually* this is enough, but sometimes the positioning gets off, and it stays where the last context menu was.
     //Not really sure why, but I guess we should set the context menu location here too?
     ContextMenuService.GetContextMenu(NameGrid).IsOpen = true;
 }
Esempio n. 21
0
        protected BaseControl()
        {
            _analogMenu = new ContextMenu();

            // Create menu items for assigning input directions.
            _analogMenu.Items.Add(new MenuItem {
                Header = Globalization.Translate("Context_Up"), Tag = "UP"
            });
            _analogMenu.Items.Add(new MenuItem {
                Header = Globalization.Translate("Context_Left"), Tag = "LEFT"
            });
            _analogMenu.Items.Add(new MenuItem {
                Header = Globalization.Translate("Context_Right"), Tag = "RIGHT"
            });
            _analogMenu.Items.Add(new MenuItem {
                Header = Globalization.Translate("Context_Down"), Tag = "DOWN"
            });
            _analogMenu.Items.Add(new MenuItem {
                Header = Globalization.Translate("Context_Joy_Button"), Tag = "S"
            });

            // Create menu items for analog triggers
            _analogMenu.Items.Add(new MenuItem {
                Header = Globalization.Translate("Context_Press"), Tag = "T"
            });
            _analogMenu.Items.Add(new MenuItem {
                Header = Globalization.Translate("Context_Press_Full"), Tag = "FULL"
            });

            foreach (var menuItem in _analogMenu.Items)
            {
                (menuItem as MenuItem).Click += OpenSelectedInput;
            }

            _analogMenu.Items.Add(new Separator());

            // Create menu items for quick assignment
            var quickAssign = new MenuItem {
                Header = Globalization.Translate("Context_Quick")
            };
            var quickMouse = new MenuItem {
                Header = Globalization.Translate("Context_Quick_Mouse")
            };

            {
                quickMouse.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_Quick_Mouse_50"), Tag = "50"
                });
                quickMouse.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_Quick_Mouse_100"), Tag = "100"
                });
                quickMouse.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_Quick_Mouse_150"), Tag = "150"
                });
                quickMouse.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_Quick_Mouse_200"), Tag = "200"
                });
                quickMouse.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_Quick_Mouse_250"), Tag = "250"
                });
                quickMouse.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_Quick_Mouse_300"), Tag = "300"
                });
            }
            foreach (var menuItem in quickMouse.Items)
            {
                (menuItem as MenuItem).Click += QuickAssignMouse_Click;
            }
            quickAssign.Items.Add(quickMouse);
            quickAssign.Items.Add(new MenuItem {
                Header = "WASD"
            });
            quickAssign.Items.Add(new MenuItem {
                Header = Globalization.Translate("Context_Quick_Arrows")
            });
            (quickAssign.Items[1] as MenuItem).Click += QuickAssign_Click;
            (quickAssign.Items[2] as MenuItem).Click += QuickAssign_Click;
            _analogMenu.Items.Add(quickAssign);

            _analogMenu.Items.Add(new Separator());

            // Create menu items for IR camera
            var irMode = new MenuItem {
                Header = Globalization.Translate("Context_IR_Mode")
            };

            {
                irMode.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_IR_Basic")
                });
                irMode.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_IR_Wide")
                });
                irMode.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_IR_Full")
                });
                irMode.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_IR_Off")
                });
            }
            foreach (var irModeItem in irMode.Items)
            {
                (irModeItem as MenuItem).Click += SetIRCamMode_Click;
            }
            var irLevel = new MenuItem {
                Header = Globalization.Translate("Context_IR_Level")
            };

            {
                irLevel.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_IR_Level_1")
                });
                irLevel.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_IR_Level_2")
                });
                irLevel.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_IR_Level_3")
                });
                irLevel.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_IR_Level_4")
                });
                irLevel.Items.Add(new MenuItem {
                    Header = Globalization.Translate("Context_IR_Level_5")
                });
            }
            foreach (var irLevelItem in irLevel.Items)
            {
                (irLevelItem as MenuItem).Click += SetIRCamSensitivity_Click;
            }
            _analogMenu.Items.Add(irMode);
            _analogMenu.Items.Add(irLevel);

            // Add Calibration menu item
            var calibrationItem = new MenuItem {
                Header = Globalization.Translate("Context_Calibrate")
            };

            calibrationItem.Click += CalibrateInput_Click;
            _analogMenu.Items.Add(calibrationItem);

            ContextMenu = _analogMenu;
            ContextMenuService.SetIsEnabled(this, false);
        }
Esempio n. 22
0
        protected override void CreateInnerControls(ExolutioCanvas canvas)
        {
            base.CreateInnerControls(canvas);
            #region main node content components
            border = new Border
            {
                BorderBrush       = ViewToolkitResources.NodeBorderBrush,
                BorderThickness   = ViewToolkitResources.Thickness1,
                VerticalAlignment = VerticalAlignment.Stretch,
                Opacity           = ViewToolkitResources.LittleOpaque
            };
            MainNode.InnerContentControl.Content = border;

            stackPanel = new StackPanel
            {
                Orientation = Orientation.Vertical
            };
            border.Child = stackPanel;

            Border headerBorder = new Border
            {
                Background      = ViewToolkitResources.ClassHeader,
                BorderThickness = ViewToolkitResources.Thickness0,
                Padding         = ViewToolkitResources.Thickness2,
                BorderBrush     = ViewToolkitResources.BlackBrush
            };

            tbClassHeader = new EditableTextBox
            {
                FontWeight    = FontWeights.Bold,
                TextAlignment = TextAlignment.Center,
                Background    = ViewToolkitResources.ClassHeader,
                FontSize      = 15,
            };

            headerBorder.Child = tbClassHeader;
            stackPanel.Children.Add(headerBorder);

            Border attributesBorder = new Border
            {
                BorderBrush = ViewToolkitResources.BlackBrush,
                Visibility  = Visibility.Collapsed,
                Background  = ViewToolkitResources.ClassBody
            };
            Border operationsBorder = new Border
            {
                BorderBrush = ViewToolkitResources.BlackBrush,
                Visibility  = Visibility.Collapsed,
                Background  = ViewToolkitResources.ClassBody
            };
            StackPanel attributesSection = new StackPanel
            {
                Background = ViewToolkitResources.ClassBody
            };
            StackPanel operationsSection = new StackPanel
            {
                Background = ViewToolkitResources.ClassBody
            };
            attributesBorder.Child = attributesSection;
            operationsBorder.Child = operationsSection;
            attributesContainer    = new PIMAttributesContainer(attributesSection, canvas, DiagramView);
            operationsContainer    = new PIMOperationsContainer(operationsSection, canvas, DiagramView);

            stackPanel.Children.Add(attributesBorder);
            stackPanel.Children.Add(operationsBorder);

            Border[]            stackBorders    = new Border[] { headerBorder, attributesBorder, operationsBorder };
            ITextBoxContainer[] stackContainers = new ITextBoxContainer[] { attributesContainer, operationsContainer };
            attributesContainer.StackBorders    = stackBorders;
            attributesContainer.StackContainers = stackContainers;
            operationsContainer.StackBorders    = stackBorders;
            operationsContainer.StackContainers = stackContainers;

            #endregion

            ExolutioContextMenu exolutioContextMenu = MenuHelper.GetContextMenu(ScopeAttribute.EScope.PIMClass, this.DiagramView.Diagram);
            ContextMenu = exolutioContextMenu;

#if SILVERLIGHT
            ContextMenuService.SetContextMenu(tbClassHeader, ContextMenu);
            DoubleClickSupplement dc = new DoubleClickSupplement();
            tbClassHeader.MouseLeftButtonDown += dc.Click;
            dc.DoubleClickW += tbClassHeader_MouseDoubleClick;
#else
            tbClassHeader.MouseDoubleClick += tbClassHeader_MouseDoubleClick;
#endif
        }
Esempio n. 23
0
        //获取触发事件控件
        private UIElement GetSender(object sender)
        {
            DependencyObject dependency = LogicalTreeHelper.GetParent(sender as MenuItem);

            return(ContextMenuService.GetPlacementTarget(dependency));
        }
        /// <summary>
        /// 查询完毕回调
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void SelectCallback(object sender, UploadStringCompletedEventArgs e)
        {
            //if (activeLayer != null && !activeLayer.Equals(m_catalog.ActiveLayerObj))
            //{//不是同一个图层,清除原来的结果
            //    tabControl1.Items.Clear();
            //}

            dataPager1.DataContext = null;
            tabControl1.Items.Clear();
            if (activeLayer != null)
            {
            }
            pageSize = activeLayer.GetPageSize();
            CLayerSelectAndGetAtt selRlt = this.activeLayer.OnLayerSelectAndGetAtt(e);


            _lastSelRlt = selRlt;
            TabItem  item;
            string   name;
            DataGrid grid     = null;
            int      maxCount = 0;

            if (selRlt.Count == null)
            {
                return;
            }
            for (int k = 0; k < selRlt.Count.Length; k++)        //GDB
            {
                for (int i = 0; i < selRlt.Count[k].Length; i++) //层
                {
                    if (selRlt.Count[k][i] > 0 && selRlt.AttDS[k].attTables != null && selRlt.AttDS[k].attTables[i].Rows != null)
                    {
                        name = activeLayer.LayerObj.LayerAccessInfo[k].LayerInfoList[i].LayerDataName;
                        if (this.FindName(name) == null)
                        {
                            item = new TabItem()
                            {
                                Header = name,
                                Name   = name
                            };
                            grid = new DataGrid()
                            {
                                Name   = "datagrid" + name + "_" + k + "_" + i,
                                Height = 221,
                                Width  = 493,
                                AutoGenerateColumns = false,
                                IsReadOnly          = true,
                                Tag = new TmpInfo()
                                {
                                    LayerIndex = i, GDBIndex = k
                                }
                            };
                            grid.MouseLeftButtonUp += new MouseButtonEventHandler(DataGrid_MouseLeftButtonUp);
                            grid.LoadingRow        += new EventHandler <DataGridRowEventArgs>(DataGrid_LoadingRow);
                            item.Content            = grid;
                            if (ContextMenuService.GetContextMenu(grid) == null)
                            {
                                ContextMenu contextMenu = GetContexMenu(k, i);
                                ContextMenuService.SetContextMenu(grid, contextMenu);
                            }
                            tabControl1.Items.Add(item);
                        }
                        else
                        {
                            item = this.FindName(name) as TabItem;
                            grid = item.Content as DataGrid;
                            grid.Columns.Clear();
                            grid.ItemsSource = null;
                        }
                        List <string> addColumnlHeadArr = new List <string>();
                        addColumnlHeadArr.Add("FID");
                        string[][] arr = new string[/*selRlt.Count[0][i]*/ selRlt.AttDS[k].attTables[i].Rows.Length + 1][];
                        arr[0] = selRlt.AttDS[k].attTables[i].Columns.FldName;

                        List <string[]> addColumnlContentArr = new List <string[]>();
                        string[]        fidArr = new string[selRlt.AttDS[k].attTables[i].Rows.Length];
                        for (int j = 0; j < selRlt.AttDS[k].attTables[i].Rows.Length; j++)
                        {
                            fidArr[j]  = selRlt.AttDS[k].attTables[i].Rows[j].FID.ToString();
                            arr[j + 1] = selRlt.AttDS[k].attTables[i].Rows[j].Values;
                        }
                        addColumnlContentArr.Add(fidArr);
                        if (maxCount < selRlt.Count[k][i])
                        {
                            maxCount = selRlt.Count[k][i];
                        }
                        BindClass bingclass = new BindClass();
                        dataPager1.DataContext = new PagedCollectionView(bingclass.ColumnDisplay(grid, arr, addColumnlHeadArr, addColumnlContentArr));
                        item.IsSelected        = true;
                    }
                }
            }
            if (maxCount > 0)
            {
                dataPager1.PageSize          = (int)Math.Ceiling(Convert.ToDouble(pageSize * pageSize) / maxCount);
                dataPager1.PageIndexChanged += new EventHandler <EventArgs>(dataPager1_PageIndexChanged);
            }
            if (tabControl1.Items.Count <= 0) //&& grid != null && grid.ItemsSource == null)
            // m_graphicsLayer.MapContainer.SetErrorText("没有符合条件的数据,请重新操作!");
            {
                MessageBox.Show("没有查询到结果,请更换条件后重试!", "提示", MessageBoxButton.OK);
            }
            else
            {
                this.Show();
            }
        }
Esempio n. 25
0
        private void DoItemMouseUp(ItemMouseEventArgs e)
        {
            //get the selected item
            _selectedItem = e.ItemBox.Item;

            Point loc = new Point(e.X + ControlRectangle.X, e.Location.Y + ControlRectangle.Top);

            if (e.Button == MouseButtons.Left)
            {
                if (e.ItemBox.Item.LegendSymbolMode == SymbolMode.Checkbox)
                {
                    if (e.ItemBox.CheckBox.Contains(loc))
                    {
                        IRenderableLegendItem rendItem = e.ItemBox.Item as IRenderableLegendItem;
                        if (rendItem != null)
                        {
                            // force a re-draw in the case where we are talking about layers.
                            rendItem.IsVisible = !rendItem.IsVisible;
                        }
                        else
                        {
                            e.ItemBox.Item.Checked = !e.ItemBox.Item.Checked;
                        }
                        if (CheckBoxMouseUp != null)
                        {
                            CheckBoxMouseUp(this, e);
                        }
                        RefreshNodes();
                    }
                }
                if (e.ItemBox.Textbox.Contains(loc))
                {
                    if (e.ItemBox == _previousMouseDown)
                    {
                        _isDragging = false;
                        // Edit via text box
                        _editBox.Left         = e.ItemBox.Textbox.Left;
                        _editBox.Width        = e.ItemBox.Textbox.Width + 10;
                        _editBox.Top          = e.ItemBox.Bounds.Top;
                        _editBox.Height       = e.ItemBox.Bounds.Height;
                        _editBox.SelectedText = e.ItemBox.Item.LegendText;
                        _editBox.Font         = Font;
                        _editBox.Visible      = true;
                    }
                }
            }
            if (e.Button == MouseButtons.Right)
            {
                if (e.ItemBox.Item.ContextMenuItems == null)
                {
                    return;
                }

                //show nothing when right click on the symbol
                //var category = e.ItemBox.Item as Category;
                //if (category != null) return;

                //_contextMenu.MenuItems.Clear();
                ////items for map frame || symbol
                //var mapFrame = e.ItemBox.Item as Layer;
                //if (mapFrame == null)
                //{
                //    foreach (SymbologyMenuItem mi in e.ItemBox.Item.ContextMenuItems)
                //    {
                //        AddMenuItem(_contextMenu.MenuItems, mi);
                //    }
                //}

                if (_selectedItem is FeatureLayer)
                {
                    _contextMenu = ContextMenuService.CreateContextMenu(this, "/FrameWork/Legend/ContextMenu/FeatureLayer");
                }
                else if (_selectedItem is RasterLayer)
                {
                    _contextMenu = ContextMenuService.CreateContextMenu(this, "/FrameWork/Legend/ContextMenu/RasterLayer");
                }
                else if (_selectedItem is ImageLayer)
                {
                    _contextMenu = ContextMenuService.CreateContextMenu(this, "/FrameWork/Legend/ContextMenu/ImageLayer");
                }
                else if (_selectedItem is MapFrame)
                {
                    _contextMenu = ContextMenuService.CreateContextMenu(this, "/FrameWork/Legend/ContextMenu/MapFrame");
                }
                else
                {
                    _contextMenu = null;
                    return;
                }

                //if (_legendContextMenu == null)
                //{
                //    _legendContextMenu = new LegendContextMenu();
                //}
                //_legendContextMenu.OnSelectedItem(e.ItemBox.Item);

                //items for layer
                //var contextMenuItems = _contextMenu.MenuItems;
                //_legendContextMenu.AddLayerMenuItem(ref contextMenuItems);

                _contextMenu.Show(this, e.Location);
                _contextMenu.MenuItems.Clear();
            }
        }
Esempio n. 26
0
        public LinkHeader(GroupLink link)
        {
            this.IsActionButtonEnabled = true;
            this._blockVisibility      = Visibility.Visible;
            this.ActionButtonIcon      = "/Resources/WallPost/CardActions.png";
            this.ActionButtonSize      = 56.0;
            Action <FrameworkElement> arg_5E_1 = new Action <FrameworkElement>(e => { ContextMenuService.GetContextMenu(e).IsOpen = true; });

            this.ActionButtonAction = arg_5E_1;

            this.Id          = link.id;
            this.Photo       = link.photo_100;
            this.Title       = link.name.ForUI();
            this.Description = link.desc.ForUI();
            this.Link        = link;
            this.Url         = link.url;
        }
 protected override void OnAttached()
 {
     base.OnAttached();
     ContextMenuService.SetIsEnabled(this.AssociatedObject, false);
     this.AssociatedObject.Click += AssociatedObject_Click;
 }
Esempio n. 28
0
        public LinkHeader(User user)
        {
            this.IsActionButtonEnabled = true;
            this._blockVisibility      = Visibility.Visible;
            this.ActionButtonIcon      = "/Resources/WallPost/CardActions.png";
            this.ActionButtonSize      = 56.0;
            Action <FrameworkElement> arg_5E_1 = new Action <FrameworkElement>(e => { ContextMenuService.GetContextMenu(e).IsOpen = true; });

            this.ActionButtonAction = arg_5E_1;

            this.Id    = user.id;
            this.Photo = user.photo_max;
            this.Title = user.Name;
            this.User  = user;
        }
Esempio n. 29
0
        private void OpenContextMenu(object sender, GestureEventArgs e)
        {
            ContextMenu contextMenu = ContextMenuService.GetContextMenu((DependencyObject)sender);

            contextMenu.IsOpen = true;
        }
Esempio n. 30
0
        protected override void CreateInnerControls(ExolutioCanvas canvas)
        {
            base.CreateInnerControls(canvas);

            foldingButton = new FoldingButton();
            MainNode.InnerConnectorControl.Children.Add(foldingButton);
            Canvas.SetBottom(foldingButton, -15);
            foldingButton.Click += delegate { this.ViewHelper.IsFolded = !this.ViewHelper.IsFolded; };

            #region main node content components
            border = new Border
            {
                BorderBrush       = ViewToolkitResources.NodeBorderBrush,
                BorderThickness   = ViewToolkitResources.Thickness1,
                VerticalAlignment = VerticalAlignment.Stretch,
                Opacity           = ViewToolkitResources.LittleOpaque
            };
            MainNode.InnerContentControl.Content = border;

            stackPanel = new StackPanel
            {
                Orientation = Orientation.Vertical
            };
            border.Child = stackPanel;

            headerBorder = new Border
            {
                Background      = ViewToolkitResources.ClassHeader,
                BorderThickness = ViewToolkitResources.Thickness0,
                Padding         = ViewToolkitResources.Thickness2,
                BorderBrush     = ViewToolkitResources.BlackBrush
            };

            tbSRHeader = new EditableTextBox
            {
                Visibility    = Visibility.Collapsed,
                TextAlignment = TextAlignment.Right
            };

            tbStereotypes = new EditableTextBox
            {
                Visibility    = Visibility.Collapsed,
                TextAlignment = TextAlignment.Center
            };

            tbClassHeader = new EditableTextBox
            {
                FontWeight    = FontWeights.Bold,
                TextAlignment = TextAlignment.Center,
                FontSize      = 15,
            };

            StackPanel headerPanel = new StackPanel();
            headerPanel.Children.Add(tbStereotypes);
            headerPanel.Children.Add(tbSRHeader);
            headerPanel.Children.Add(tbClassHeader);
            headerBorder.Child = headerPanel;
            stackPanel.Children.Add(headerBorder);

            attributesBorder = new Border
            {
                BorderBrush = ViewToolkitResources.BlackBrush,
                Visibility  = Visibility.Collapsed,
            };
            StackPanel attributesSection = new StackPanel();
            attributesBorder.Child = attributesSection;

            attributesContainer = new PSMAttributesContainer(attributesSection, canvas, DiagramView);

            stackPanel.Children.Add(attributesBorder);
            //Border operationsBorder = new Border
            //{
            //    BorderBrush = ViewToolkitResources.BlackBrush,
            //    Visibility = Visibility.Collapsed,
            //    Background = ViewToolkitResources.SeaShellBrush
            //};

            //StackPanel operationsSection = new StackPanel
            //{
            //    Background = ViewToolkitResources.SeaShellBrush
            //};
            //operationsBorder.Child = operationsSection;
            //stackPanel.Children.Add(operationsBorder);

            Border[]            stackBorders    = new Border[] { headerBorder, attributesBorder };
            ITextBoxContainer[] stackContainers = new ITextBoxContainer[] { attributesContainer };
            attributesContainer.StackBorders    = stackBorders;
            attributesContainer.StackContainers = stackContainers;
            //classOperations.StackBorders = stackBorders;
            //classOperations.StackContainers = stackContainers;

            #endregion

            ExolutioContextMenu exolutioContextMenu = MenuHelper.GetContextMenu(ScopeAttribute.EScope.PSMClass, this.DiagramView.Diagram);
            ContextMenu = exolutioContextMenu;

#if SILVERLIGHT
            ContextMenuService.SetContextMenu(headerBorder, ContextMenu);
            DoubleClickSupplement dc = new DoubleClickSupplement();
            tbClassHeader.MouseLeftButtonDown += dc.Click;
            dc.DoubleClickW += tbClassHeader_MouseDoubleClick;
#else
            tbClassHeader.MouseDoubleClick += tbClassHeader_MouseDoubleClick;
            tbClassHeader.MouseEnter       += tbClassHeader_MouseEnter;
            tbClassHeader.MouseLeave       += tbClassHeader_MouseLeave;
#endif
        }