public void When_Item_Removed_VectorChanged() { var vector = new ObservableVector <string>() { "one", "two", "three" }; var count = 0; vector.VectorChanged += (o, e) => { count++; switch (count) { case 1: Assert.AreEqual(2u, e.Index); Assert.AreEqual(CollectionChange.ItemRemoved, e.CollectionChange); break; case 2: Assert.AreEqual(0u, e.Index); Assert.AreEqual(CollectionChange.ItemRemoved, e.CollectionChange); break; default: Assert.Fail("Raised too many times"); break; } }; vector.RemoveAt(2); vector.Remove("one"); }
public void When_Item_Added_VectorChanged() { var vector = new ObservableVector <string>() { "one", "two", "three" }; var count = 0; vector.VectorChanged += (o, e) => { count++; switch (count) { case 1: Assert.AreEqual(3u, e.Index); Assert.AreEqual(CollectionChange.ItemInserted, e.CollectionChange); break; case 2: Assert.AreEqual(0u, e.Index); Assert.AreEqual(CollectionChange.ItemInserted, e.CollectionChange); break; default: Assert.Fail("Raised too many times"); break; } }; vector.Add("four"); vector.Insert(0, "zero"); }
public void When_ContainerStyleSet() { var count = 0; var panel = new StackPanel(); var source = new ObservableVector <int>() { 1, 2, 3 }; var SUT = new ItemsControl() { ItemsPanelRoot = panel, ItemContainerStyle = BuildBasicContainerStyle(), InternalItemsPanelRoot = panel, ItemTemplate = new DataTemplate(() => { count++; return(new Border()); }) }; SUT.ApplyTemplate(); Assert.AreEqual(0, count); SUT.ItemsSource = source; Assert.AreEqual(3, count); source.Add(4); Assert.AreEqual(4, count); source.Remove(1); Assert.AreEqual(4, count); }
public TabView() { DefaultStyleKey = typeof(TabView); tabs = new ObservableVector <object>(); tabs.VectorChanged += OnTabsVectorChanged; }
public CommandBar() { PrimaryCommands = new ObservableVector <ICommandBarElement>(); SecondaryCommands = new ObservableVector <ICommandBarElement>(); PrimaryCommands.VectorChanged += (s, e) => UpdateCommands(); SecondaryCommands.VectorChanged += (s, e) => UpdateCommands(); CommandBarTemplateSettings = new CommandBarTemplateSettings(this); Loaded += (s, e) => RegisterEvents(); Unloaded += (s, e) => UnregisterEvents(); SizeChanged += (s, e) => _contentHeight = e.NewSize.Height; this.RegisterPropertyChangedCallback(IsEnabledProperty, (s, e) => UpdateCommonState()); this.RegisterPropertyChangedCallback(ClosedDisplayModeProperty, (s, e) => UpdateDisplayModeState()); this.RegisterPropertyChangedCallback(IsOpenProperty, (s, e) => { // TODO: Consider the content of _secondaryItemsControl when IsDynamicOverflowEnabled is supported. var hasSecondaryItems = SecondaryCommands.Any(); if (hasSecondaryItems) { if (_overflowPopup is {} popup) { popup.IsOpen = true; } }
public MainPage() { VerifToken(); SettingsPane.GetForCurrentView().CommandsRequested -= _CommandsRequested; this.InitializeComponent(); this.ChangeCalendar.Content = IConstantes.BUTTON_SWITCH_CALENDAR; this.Day.Content = IConstantes.BUTTON_DAY; this.Week.Content = IConstantes.BUTTON_WEEK; this.Month.Content = IConstantes.BUTTON_MONTH; _dateMain = DateTime.Now; icalendar = new WeekBorderCalendar(ref _dateMain); contenuPage.Content = icalendar; contentPage = contenuPage; ObservableCollection<object> list = new ObservableCollection<object>(); this._calendars = list.ToObservableVector<object>(); if (first) { SettingsPane.GetForCurrentView().CommandsRequested += _CommandsRequested; first = false; } }
public CommandBar() { PrimaryCommands = new ObservableVector <ICommandBarElement>(); SecondaryCommands = new ObservableVector <ICommandBarElement>(); CommandBarTemplateSettings = new CommandBarTemplateSettings(this); }
public void When_ObservableVectorChanged() { var count = 0; var panel = new StackPanel(); var source = new ObservableVector <int>() { 1, 2, 3 }; var SUT = new ItemsControl() { ItemsPanelRoot = panel, InternalItemsPanelRoot = panel, ItemTemplate = new DataTemplate(() => { count++; return(new Border()); }) }; Assert.AreEqual(0, count); SUT.ItemsSource = source; Assert.AreEqual(3, count); source.Add(4); Assert.AreEqual(7, count); source.Remove(1); Assert.AreEqual(13, count); }
public void Constructor_WithList_CollectionIsSameAsThatSupplied() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); Assert.AreEqual(5, vector.Count); CollectionAssert.AreEqual(collection, vector.ToArray()); }
/// <summary> /// Constructeur de la vue avec un calendrier chargé /// </summary> public WeekBorderCalendar(ObservableVector<object> calendars, ref DateTime dateMain) { _calendars = calendars; this.InitializeComponent(); Date = dateMain; initDay(dateMain); InitCalendars(_calendars); }
public MenuFlyout() { var collection = new ObservableVector <MenuFlyoutItemBase>(); collection.VectorChanged += OnItemsVectorChanged; Items = collection; }
public void Clear_RemovesAllItems() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); vector.Clear(); Assert.AreEqual(0, vector.Count); }
public MenuFlyout() { m_isPositionedAtPoint = true; InputDeviceTypeUsedToOpen = FocusInputDeviceKind.None; m_tpItems = new ObservableVector <MenuFlyoutItemBase>(); Items = m_tpItems; }
/// <summary> /// Constructeur de la vue avec un calendrier chargé /// </summary> public DayBorderCalendar(ObservableVector<object> calendars, DateTime date) { _calendars = calendars; Date = date; this.InitializeComponent(); initDay(Date); InitCalendars(_calendars); }
public CommandBar() { PrimaryCommands = new ObservableVector <ICommandBarElement>(); SecondaryCommands = new ObservableVector <ICommandBarElement>(); CommandBarTemplateSettings = new CommandBarTemplateSettings(this); Loaded += (s, e) => RegisterEvents(); Unloaded += (s, e) => UnregisterEvents(); }
public NavigationView() { _menuItems = new ObservableVector <object>(); _menuItems.VectorChanged += (s, e) => _menuItemsHost?.Items.Update(_menuItems); SetValue(MenuItemsProperty, _menuItems); SizeChanged += NavigationView_SizeChanged; Loaded += (s, e) => OnNavigationViewLoaded(); Unloaded += (s, e) => UnregisterEvents(); }
public CommandBar() { PrimaryCommands = new ObservableVector <ICommandBarElement>(); SecondaryCommands = new ObservableVector <ICommandBarElement>(); CommandBarTemplateSettings = new CommandBarTemplateSettings(this); Loaded += (s, e) => RegisterEvents(); Unloaded += (s, e) => UnregisterEvents(); SizeChanged += (s, e) => _contentHeight = e.NewSize.Height; }
public void Clear_PropertyChanged_Indexer() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); bool propertyChanged = false; vector.PropertyChanged += (sender, e) => { if (e.PropertyName == "Item[]") { propertyChanged = true; } }; vector.Clear(); Assert.AreEqual(true, propertyChanged); }
public MenuBarItem() { DefaultStyleKey = typeof(MenuBarItem); var observableVector = new ObservableVector <MenuFlyoutItemBase>(); observableVector.VectorChanged += OnItemsVectorChanged; SetValue(ItemsProperty, observableVector); Loaded += MenuBarItem_Loaded; }
/* Common functions */ public PagerControl() { //__RP_Marker_ClassById(RuntimeProfiler.ProfId_PagerControl); m_comboBoxEntries = new ObservableVector <object>(); m_numberPanelElements = new ObservableVector <object>(); var templateSettings = new PagerControlTemplateSettings(); templateSettings.SetValue(PagerControlTemplateSettings.PagesProperty, m_comboBoxEntries); templateSettings.SetValue(PagerControlTemplateSettings.NumberPanelItemsProperty, m_numberPanelElements); SetValue(TemplateSettingsProperty, templateSettings); DefaultStyleKey = typeof(PagerControl); }
public ObservableVectorDemoViewModel() { Vector = new ObservableVector <object, List <object> >(); for (int i = 0; i < 10; i++) { Vector.Add(string.Format("Base Item: {0}", i)); } AddNewItemsCommand = new DelegateCommand(() => { int count = rnd.Next(5, 20); for (int i = 0; i < count; i++) { Vector.Add(string.Format("{1} {0}", i, DateTime.Now.TimeOfDay)); } }); }
public CollectionView(IEnumerable collection, bool isGrouped) { _collection = collection; _isGrouped = isGrouped; if (isGrouped) { var collectionGroups = new ObservableVector <object>(); foreach (var group in collection) { collectionGroups.Add(new CollectionViewGroup(group)); } CollectionGroups = collectionGroups; if (_collection is INotifyCollectionChanged observableCollection) { observableCollection.CollectionChanged += OnCollectionChangedUpdateGroups; } } }
/// <summary> /// Construct a new IStandAloneCodeEditor. /// </summary> public CodeEditor() { DefaultStyleKey = typeof(CodeEditor); if (Options != null) { // Set Pass-Thru Properties Options.GlyphMargin = HasGlyphMargin; Options.Language = CodeLanguage; // Register for changes Options.PropertyChanged += Options_PropertyChanged; } // Initialize this here so property changed event will fire and register collection changed event. Decorations = new ObservableVector <IModelDeltaDecoration>(); Markers = new ObservableVector <IMarkerData>(); _model = new ModelHelper(this); base.Loaded += CodeEditor_Loaded; Unloaded += CodeEditor_Unloaded; }
/// <summary> /// Initialise les calendriers à afficher /// </summary> public async void initCalendar() { try { ObservableCollection<object> list = new ObservableCollection<object>(); _calendriersSelected = list.ToObservableVector<object>(); GoogleCalendar.CalendarControler controler = new GoogleCalendar.CalendarControler(); // on récupère tous les calendriers calendars = await controler.GetAllCalendars(); //on crée les userControls Calendriers avec leurs datacontextes foreach (CalendarListEntry calendar in calendars) { this.CalendriersIMG.Add(new CalendarGoogle(new CalendarViewModel(calendar))); } //pour chaque calendrier, on définit ses paramètres et une commande au click foreach (CalendarBase cal in _calendriersIMG) { cal.PointerPressed += cal_PointerPressed; cal.IsHitTestVisible = true; cal.Opacity = 0.5; cal.Margin = new Thickness(0, 0, 15, 0); monpan.Children.Add(cal); } //on met à jour le Layout monpan.UpdateLayout(); } catch (HttpRequestException) { //throw new HttpRequestException("Cette fonctionnalité nécessite une connexion à un compte google !"); } }
public void When_ObservableVectorIntChanged() { var count = 0; var panel = new StackPanel(); var source = new ObservableVector <int>() { 1, 2, 3 }; var SUT = new ItemsControl() { ItemsPanelRoot = panel, InternalItemsPanelRoot = panel, ItemTemplate = new DataTemplate(() => { count++; return(new Border()); }) }; Assert.AreEqual(0, count); SUT.ItemsSource = source; Assert.AreEqual(3, count); source.Add(4); Assert.AreEqual(4, count); source.Remove(1); Assert.AreEqual(4, count); source[0] = 5; // Data template is not recreated because of pooling Assert.AreEqual(FrameworkTemplatePool.IsPoolingEnabled ? 4 : 5, count); }
public void When_ObservableVectorStringChanged() { var count = 0; var panel = new StackPanel(); var source = new ObservableVector <string>() { "1", "2", "3" }; var SUT = new ItemsControl() { ItemsPanelRoot = panel, InternalItemsPanelRoot = panel, ItemTemplate = new DataTemplate(() => { count++; return(new Border()); }) }; Assert.AreEqual(0, count); SUT.ItemsSource = source; Assert.AreEqual(3, count); source.Add("4"); Assert.AreEqual(4, count); source.Remove("1"); Assert.AreEqual(4, count); source[0] = "5"; // Data template is not recreated because of pooling Assert.AreEqual(4, count); }
public void Clear_CollectionChanged() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); bool vectorChanged = false; vector.CollectionChanged += (sender, e) => { if (e.Action == NotifyCollectionChangedAction.Reset) { vectorChanged = true; } }; vector.Clear(); Assert.AreEqual(true, vectorChanged); }
public void IsReadOnly_IsFalse() { ObservableVector<int> vector = new ObservableVector<int>(); Assert.AreEqual(false, ((IList<int>)vector).IsReadOnly); }
public void Insert_AddsItem() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); vector.Insert(2, 100); CollectionAssert.AreEqual(new int[] { 1, 3, 100, 7, 10, 42 }, vector.ToArray()); }
/// <summary> /// Initialise les calendriers à afficher /// </summary> /// <param name="calendars"></param> public void InitCalendars(ObservableVector<object> calendars) { _calendars = calendars; CalendarViewModel cal1 = (CalendarViewModel)calendars.Last(); CalendarListEntry cal = cal1.Calendar; week = new WeekCalendar(Date, new GoogleCalendar.EventControler(cal),this.ScrollView); this.ScrollView.Content = week; this.UpdateLayout(); }
public void Constructor_Void_CollectionIsEmpty() { ObservableVector<int> vector = new ObservableVector<int>(); Assert.AreEqual(0, vector.Count); }
public void Remove_RemoveItem() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); vector.Remove(7); CollectionAssert.AreEqual(new int[] { 1, 3, 10, 42 }, vector.ToArray()); }
public void Insert_CollectionChanged() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); bool vectorChanged = false; vector.CollectionChanged += (sender, e) => { if (e.Action == NotifyCollectionChangedAction.Add && e.NewStartingIndex == 2 && (int)e.NewItems[0] == 100) { vectorChanged = true; } }; vector.Insert(2, 100); Assert.AreEqual(true, vectorChanged); }
public void Remove_PropertyChanged_Count() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); bool propertyChanged = false; vector.PropertyChanged += (sender, e) => { if (e.PropertyName == "Count") { propertyChanged = true; } }; vector.Remove(7); Assert.AreEqual(true, propertyChanged); }
public void ItemSetter_CollectionChanged() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); bool vectorChanged = false; vector.CollectionChanged += (sender, e) => { if (e.Action == NotifyCollectionChangedAction.Replace && e.OldStartingIndex == 2 && (int)e.OldItems[0] == 7 && (int)e.NewItems[0] == 20) { vectorChanged = true; } }; vector[2] = 20; Assert.AreEqual(true, vectorChanged); }
public void When_ObservableVectorStringChanged() { var count = 0; var containerCount = 0; var panel = new StackPanel(); panel.ForceLoaded(); var source = new ObservableVector <string>() { "1", "2", "3" }; Style BuildContainerStyle() => new Style(typeof(Windows.UI.Xaml.Controls.ListViewItem)) { Setters = { new Setter <ContentControl>("Template", t => t.Template = Funcs.Create(() => { containerCount++; return(new Grid { Children = { new ContentPresenter() .Apply(p => { p.SetBinding(ContentPresenter.ContentTemplateProperty, new Binding() { Path = "ContentTemplate", RelativeSource = RelativeSource.TemplatedParent }); p.SetBinding(ContentPresenter.ContentProperty, new Binding() { Path = "Content", RelativeSource = RelativeSource.TemplatedParent }); }) } }); }) ) } }; var SUT = new ListView() { ItemsPanelRoot = panel, InternalItemsPanelRoot = panel, ItemContainerStyle = BuildContainerStyle(), ItemTemplate = new DataTemplate(() => { count++; return(new Border()); }) }; Assert.AreEqual(0, count); Assert.AreEqual(0, containerCount); Assert.AreEqual(0, containerCount); SUT.ItemsSource = source; Assert.AreEqual(3, count); Assert.AreEqual(3, containerCount); Assert.AreEqual(3, containerCount); source.Add("4"); Assert.AreEqual(4, count); Assert.AreEqual(4, containerCount); Assert.AreEqual(4, containerCount); source.Remove("1"); Assert.AreEqual(4, count); Assert.AreEqual(4, containerCount); Assert.AreEqual(4, containerCount); source[0] = "5"; // Data template is not recreated because of pooling Assert.AreEqual(4, count); // The item container style is reapplied (not cached) Assert.AreEqual(5, containerCount); }
public void ItemSetter_SetsItem() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); vector[2] = 20; CollectionAssert.AreEqual(new int[] { 1, 3, 20, 10, 42 }, vector.ToArray()); }
public void ItemSetter_PropertyChanged_DoesNotChangeCount() { List<int> collection = new List<int>(new int[] { 1, 3, 7, 10, 42 }); ObservableVector<int> vector = new ObservableVector<int>(collection); bool propertyChanged = false; vector.PropertyChanged += (sender, e) => { if (e.PropertyName == "Count") { propertyChanged = true; } }; vector[2] = 20; Assert.AreEqual(false, propertyChanged); }