Exemple #1
0
 /// <summary>
 /// Odebrání záznamu z kolekce
 /// </summary>
 public void RemoveRecord(NoteRecord record)
 {
     if (Records.Contains(record))
     {
         Records.Remove(record);
     }
     SaveId_Color();
     SaveRecord();
 }
 /// <summary>
 /// Konstruktor
 /// </summary>
 /// <param name="admin">Správce poznámkového bloku</param>
 /// <param name="record">Záznam pro úpravu</param>
 /// <param name="selectPage">Následující strana - tedy strana kde je místo</param>
 public NoteAddWindow(NoteAdmin admin, NoteRecord record, byte selectPage)
 {
     DataContext = record;
     InitializeComponent();
     this.admin      = admin;
     this.record     = record;
     this.selectPage = selectPage;
     if (record == null)
     {
         removeButton.Opacity   = 0.5;
         removeButton.Focusable = false;
     }
 }
Exemple #3
0
        /// <summary>
        /// Metoda pro uložení / úpravu poznámky do kolecke
        /// </summary>
        /// <param name="type">0 - Nový záznam ** 1 - Úprava</param>
        /// <param name="name">Název poznámky</param>
        /// <param name="description">Text poznámky</param>
        /// <param name="date">Datum zadání poznámky</param>
        /// <param name="record">Záznam, který má být upraven</param>
        public void EnterEditRecord(byte type, string name, string description, NoteRecord record)
        {
            if (name.Count() <= 3)
            {
                throw new ArgumentException("Zadal jsi název poznámky kratší než 4 znaky. Jsi si jist?");
            }
            if (description.Count() <= 3)
            {
                throw new ArgumentException("Zadal jsi text poznámky kratší než 4 znaky. Jsi si jist?");
            }
            if (name == "" || description == "")
            {
                throw new ArgumentException("Nezadal jsi žádný název nebo text poznámky");
            }
            int[] pageCount = new int[6];
            // Strana na které je místo pro novou poznámka - počítáno od 1.
            byte nextFreePlacePage = 1;

            foreach (NoteRecord rec in Records)
            {
                // Inkrementuji počet záznamů na straně
                pageCount[rec.Page]++;
            }
            for (int i = 1; i < 6; i++)
            {
                // Pokud je na straně max 3 záznamy, vystavím FLAG - že daná strana má místo
                if (pageCount[i] < 4)
                {
                    nextFreePlacePage = (byte)i;
                    break;
                }
            }
            if (type == 0)
            {
                Records.Add(new NoteRecord(name, description, DateTime.Now.Date, nextFreePlacePage));
            }
            else if (type == 1 && record != null)
            {
                record.Name = name;
                record.Text = description;
            }
            else
            {
                throw new ArgumentException("Něco se nepodařilo a záznam nebyl přidán / upraven. Zkus to prosím znovu.");
            }

            SaveId_Color();
            SaveRecord();
        }
        /// <summary>
        /// Vytvoří grafickou podobu poznámky
        /// </summary>
        /// <param name="record">Poznámka, která má být graficky zpracována</param>
        /// <param name="topColor">0 - Světle modrá, 1 - Šedá, 2 - Červená, 3 - Modrá, 4 - Zelená, 5 - Žlutá</param>
        public NoteGraphicRecord(NoteRecord record, byte topColor)
        {
            Brush topBrush  = new SolidColorBrush(Color.FromArgb(255, 62, 188, 250));;
            Brush downBrush = Brushes.White;

            switch (topColor)
            {
            case 1:
                // Šedá
                topBrush = new SolidColorBrush(Color.FromArgb(220, 196, 185, 185));
                break;

            case 2:
                // Červená
                topBrush = new SolidColorBrush(Color.FromArgb(220, 255, 0, 0));
                break;

            case 3:
                // Modrá
                topBrush = new SolidColorBrush(Color.FromArgb(220, 64, 64, 210));
                break;

            case 4:
                // Zelená
                topBrush = new SolidColorBrush(Color.FromArgb(220, 34, 139, 34));
                break;

            case 5:
                // Žlutá
                topBrush = new SolidColorBrush(Color.FromArgb(220, 206, 255, 108));
                break;

            default:
                // Světle modrá
                topBrush = new SolidColorBrush(Color.FromArgb(220, 62, 188, 250));
                break;
            }

            Name = new TextBlock
            {
                FontSize   = 15,
                FontWeight = FontWeights.Bold,
                Foreground = Brushes.Black,
                Text       = record.Name
            };

            Text = new TextBlock
            {
                FontSize   = 13,
                FontWeight = FontWeights.DemiBold,
                Foreground = Brushes.Black,
                Text       = record.Text
            };

            Date = new TextBlock
            {
                FontSize   = 12,
                FontWeight = FontWeights.DemiBold,
                Foreground = Brushes.Black,
                Text       = record.Date.ToShortDateString()
            };

            RectangleTop = new Rectangle
            {
                Width   = 250,
                Height  = 30,
                RadiusX = 5,
                RadiusY = 5,
                Fill    = topBrush
            };

            RectangleDown = new Rectangle
            {
                Width           = 250,
                Height          = 250,
                RadiusX         = 8,
                RadiusY         = 8,
                Fill            = downBrush,
                StrokeThickness = 2,
                Stroke          = Brushes.Gray,
            };
            RectangleDown.MouseLeftButtonDown += RectangleDown_MouseLeftButtonDown;
            Text.MouseLeftButtonDown          += Text_MouseLeftButtonDown;
            Record = record;
        }