Beispiel #1
0
        /// <summary>
        /// Edit a Category object.
        /// </summary>
        /// <param name="category">Category to edit</param>
        public CategoryForm(Languages.Language language, Category category)
        {
            // Windows Forms designer support.
            InitializeComponent();

            // Setup task
            this.category = category;

            // Create form icon
            this.Icon = IconColoured.GetSquaredIcon(category.Colour);

            // Setup language
            Lang                 = language;
            Text                 = Lang.Get((category.Id == 0) ? "category_add" : "category_edit");
            btnOk.Text           = " " + Lang.Get((category.Id == 0) ? "add" : "edit");
            btnCancel.Text       = Lang.Get("cancel");
            btnChooseColour.Text = " " + Lang.Get("colour_choose");
            lblName.Text         = Lang.Get("name") + ":";
            lblColour.Text       = Lang.Get("colour") + ":";

            // Populate colours combo
            int index = 0;

            cmbColour.ImageList.ColorDepth = ColorDepth.Depth32Bit;
            foreach (Category cat in Todomoo.Categories)
            {
                cmbColour.ImageList.Images.Add(IconColoured.GetSquared(cat.Colour));
                ImageComboItem item = new ImageComboItem(Lang.Get("colour_as") + " " + cat.Name, index);
                item.Tag = cat.Colour;
                cmbColour.Items.Add(item);
                index++;
            }
            if (cmbColour.Items.Count == 0)
            {
                cmbColour.ImageList.Images.Add(IconColoured.GetSquared(Color.Gray));
                ImageComboItem item = new ImageComboItem(Lang.Get("default"), index);
                item.Tag = Color.Gray;
                cmbColour.Items.Add(item);
            }
            cmbColour.SelectedIndex = 0;

            // Fill in GUI fields
            txtName.Text = category.Name;
            foreach (ImageComboItem item in cmbColour.Items)
            {
                if (item.Text == Lang.Get("colour_as") + " " + category.Name)
                {
                    cmbColour.SelectedItem = item;
                }
            }
        }
Beispiel #2
0
 void cmbColourSelectedIndexChanged(object sender, EventArgs e)
 {
     this.Icon = IconColoured.GetSquaredIcon((Color)(((ImageComboItem)cmbColour.SelectedItem).Tag));
 }