Ejemplo n.º 1
0
        private void ResourceGetsCreated(object sender, EventArgs args)
        {
            if (_mode == EditingMode.UserEditsExistingResource)
            {
                _view.ShowMessageToUser("Bitte erst die Änderungen speichern oder verwerfen!");
                return;
            }

            TeachingResource newResource = new TeachingResource("Neue Ressource", "bitte ausfüllen");

            _activeResource = newResource;
            _allResources.Add(newResource);

            if (_mode == EditingMode.EmptyDatabase)
            {
                _mode = EditingMode.UserEditsFirstNewResource;
            }
            else
            {
                _mode = EditingMode.UserEditsNewResource;
                _view.UpdateResourceCollectionView(_allResources);
                _view.HighlightLatestResource();
            }

            _view.EnterEditNewMode(newResource);
        }
Ejemplo n.º 2
0
        private void TeachingResourcesDGV_RowEnter(object sender, DataGridViewCellEventArgs e)
        {
            TeachingResource selected = teachingResourcesDGV.Rows[e.RowIndex].Tag as TeachingResource;

            TeachingResourceHandler handler = ResourceSelected;

            handler?.Invoke(selected);
        }
Ejemplo n.º 3
0
        public TeachingResource LoadFirstEntry()
        {
            if (File.Exists(_fileName))
            {
                IEnumerable <string> entries = File.ReadLines(_fileName);
                return(TeachingResource.BuildFromCsvLine(entries.First()));
            }

            return(null);
        }
Ejemplo n.º 4
0
        public void EnterSelectExistingMode(TeachingResource selectedResource)
        {
            deleteButton.Enabled = true;
            cancelButton.Enabled = false;
            updateButton.Enabled = false;

            CurrentResource = selectedResource;

            titelTextBox.Text    = selectedResource.Title;
            titelTextBox.Enabled = true;
            urlTextBox.Text      = selectedResource.Url;
            urlTextBox.Enabled   = true;

            titelTextBox.Select();
        }
Ejemplo n.º 5
0
        public void EnterEditNewMode(TeachingResource newResource)
        {
            createButton.Enabled = false;
            deleteButton.Enabled = false;
            cancelButton.Enabled = true;
            updateButton.Enabled = true;

            CurrentResource      = newResource;
            titelTextBox.Text    = newResource.Title;
            titelTextBox.Enabled = true;
            urlTextBox.Text      = newResource.Url;
            urlTextBox.Enabled   = true;

            titelTextBox.Select();
        }
Ejemplo n.º 6
0
        public IEnumerable <TeachingResource> LoadAllEntries()
        {
            List <TeachingResource> allResources = new List <TeachingResource>();

            if (File.Exists(_fileName))
            {
                IEnumerable <string> csvLines = File.ReadLines(_fileName);
                foreach (string entry in csvLines)
                {
                    allResources.Add(TeachingResource.BuildFromCsvLine(entry));
                }
            }

            return(allResources);
        }
Ejemplo n.º 7
0
        private void ResourceGetsSelected(TeachingResource selectedResource)
        {
            if (selectedResource == null)
            {
                return;
            }

            if (_mode == EditingMode.NothingSelected || _mode == EditingMode.UserSelectedExistingResource)
            {
                _mode           = EditingMode.UserSelectedExistingResource;
                _activeResource = selectedResource;
                _view.EnterSelectExistingMode(selectedResource);
            }
            else if (_mode == EditingMode.UserEditsNewResource)
            {
                // resource gets programmatically selected, but we ignore it while creation!
                return;
            }
            else
            {
                throw new InvalidOperationException($"UI ist im {_mode} Modus! Darin kann nicht selektiert werden!");
            }
        }