Esempio n. 1
0
 public RuntimePropertyViewModel()
 {
     IsCheckable      = false;
     BitNumbersInWord = new ObservableCollection <IBitViewModel>();
     for (int i = 15; i >= 0; i--)
     {
         IBitViewModel bitViewModel = new BitViewModel(i, true);
         BitNumbersInWord.Add(bitViewModel);
     }
 }
Esempio n. 2
0
        public PropertyEditorViewModel(ITypesContainer container, IRangeViewModel rangeViewModel,
                                       ILocalizerService localizerService)
        {
            _container           = container;
            _localizerService    = localizerService;
            RangeViewModel       = rangeViewModel;
            DependencyViewModels = new ObservableCollection <IDependencyViewModel>();
            NumberOfPoints       = "1";
            BitNumbersInWord     = new ObservableCollection <IBitViewModel>();

            for (int i = 15; i >= 0; i--)
            {
                IBitViewModel bitViewModel = new BitViewModel(i, true);
                BitNumbersInWord.Add(bitViewModel);
            }
        }
Esempio n. 3
0
        public static List <IBitViewModel> CreateBitViewModelsWithOwnership(IBitsConfigViewModel bitsConfigViewModel, List <IConfigurationItemViewModel> rootConfigurationItemViewModels)
        {
            var result = new List <IBitViewModel>();

            List <IConfigurationItemViewModel> itemsWithSameAddress = new List <IConfigurationItemViewModel>();

            FillItemsWithSameAddress(bitsConfigViewModel.GetAddressInfo().address, rootConfigurationItemViewModels, itemsWithSameAddress);
            if (itemsWithSameAddress.Contains(bitsConfigViewModel as IConfigurationItemViewModel))
            {
                itemsWithSameAddress.Remove(bitsConfigViewModel as IConfigurationItemViewModel);
            }

            for (int i = 15; i >= 0; i--)
            {
                IEnumerable <(bool isBitOwned, string owner)> owners = itemsWithSameAddress.Select(model =>
                {
                    if (model is IBitsConfigViewModel bitsConfigViewModelSameAddress &&
                        bitsConfigViewModelSameAddress.IsFromBits)
                    {
                        var bit = bitsConfigViewModelSameAddress.BitNumbersInWord.FirstOrDefault(viewModel =>
                                                                                                 viewModel.BitNumber == i && viewModel.IsChecked);
                        if (bit != null)
                        {
                            return(true, GetMessageForAlreadySetItem(model));
                        }
                        else
                        {
                            return(false, string.Empty);
                        }
                    }

                    return(true, GetMessageForAlreadySetItem(model));
                }).ToList();

                var isOwned = owners.Any(tuple => tuple.isBitOwned);
                var toolTip = owners.FirstOrDefault(tuple => tuple.isBitOwned).owner;


                IBitViewModel bitViewModel = new BitViewModel(i, !isOwned, toolTip);
                result.Add(bitViewModel);
            }


            return(result);
        }
 public _12bitLFSR(MainWindow mainWindow)
 {
     bitViewModel = new BitViewModel();
     for (int i = 0; i < 12; i++)
     {
         bitViewModel.Bits.Add(new Bit()
         {
             BitName = "Bit " + (i + 1), BitState = "On", BitValue = 1
         });
     }
     this.mainWindow                 = mainWindow;
     startCalculatingLock            = false;
     pauseCalculatingLock            = false;
     stopCalculatingLock             = false;
     calculatingStoppedAt            = 0;
     mainWindow._12bitLFSRIterations = 10000;
     mainWindow.NewCyclesAtOne       = 10;
     mainWindow.NewCyclesAtZero      = 5;
     cyclesUntilSavingCheck          = 0;
     InitializeComponent();
     this.DataContext = bitViewModel;
 }