コード例 #1
0
        //this method creates all the buttons and labels necessary for tag creation
        void InitializeComponents()
        {
            this.TypeButtonIndex = 0;
            this.TagButtonIndex  = 1;

            //many controls here use these dimensions, so this just makes it quicker
            Size standard = new Size(130, 20);

            //sets the TagCreators dimensions to whatever is put in those big global variables
            this.Size = new Size(WIDTH, HEIGHT);

            //all this is boring and kinda obvious so like...
            Label heading = new Label();

            heading.Text     = "Create New Tag";
            heading.Size     = new Size(150, 25);
            heading.Font     = new System.Drawing.Font("Microsoft Sans Serif", 14F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            heading.Location = new Point(xValue + 5, yValue + 5);

            Label tagNameLabel = new Label();

            tagNameLabel.Text     = "Tag Name";
            tagNameLabel.Size     = standard;
            tagNameLabel.Font     = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            tagNameLabel.Location = new Point(xValue + 10, yValue + 40);

            TextBox tagNameTextBox = new TextBox();

            tagNameTextBox.Size     = standard;
            tagNameTextBox.Font     = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            tagNameTextBox.Location = new Point(xValue + 10, yValue + 70);

            Label tagTypeLabel = new Label();

            tagTypeLabel.Text     = "Tag Type";
            tagTypeLabel.Font     = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            tagTypeLabel.Size     = standard;
            tagTypeLabel.Location = new Point(xValue + 10, yValue + 100);

            //keep scrolling
            tagTypeBox               = new ComboBox();
            tagTypeBox.Size          = standard;
            tagTypeBox.Font          = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            tagTypeBox.Location      = new Point(xValue + 10, yValue + 130);
            tagTypeBox.DropDownStyle = ComboBoxStyle.DropDownList;

            Label createTypeLabel = new Label();

            createTypeLabel.Text     = "Create New Type";
            createTypeLabel.Font     = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            createTypeLabel.Size     = standard;
            createTypeLabel.Location = new Point(xValue + 10, yValue + 165);

            Label typeNameLabel = new Label();

            typeNameLabel.Text     = "Tag Type Name";
            typeNameLabel.Font     = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            typeNameLabel.Size     = standard;
            typeNameLabel.Location = new Point(xValue + 15, yValue + 200);

            //halfway there buddy
            TextBox typeNameBox = new TextBox();

            typeNameBox.Font     = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            typeNameBox.Size     = standard;
            typeNameBox.Location = new Point(xValue + 15, yValue + 230);

            CheckBox typeNsfw = new CheckBox();

            typeNsfw.Text     = "Set Type as NSFW";
            typeNsfw.Font     = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            typeNsfw.Size     = new Size(155, 25);
            typeNsfw.Location = new Point(xValue + 15, yValue + 260);

            Button createTypeButton = new Button();

            createTypeButton.Text     = "Create Type";
            createTypeButton.Font     = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            createTypeButton.Size     = new Size(150, 30);
            createTypeButton.Location = new Point(xValue + 15, yValue + 290);

            Label tagColorLabel = new Label();

            tagColorLabel.Text     = "Tag Color";
            tagColorLabel.Font     = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            tagColorLabel.Size     = new Size(80, 20);
            tagColorLabel.Location = new Point(xValue + 10, yValue + 350);

            //almost there - but check my fancy ColorPicker class
            ColorPicker tagColorPicker = new ColorPicker();

            tagColorPicker.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            //apparently a ComboBox's height is based on font size...not the Size property
            //it took me a while to find that out...
            tagColorPicker.Width    = 40;
            tagColorPicker.Location = new Point(xValue + 110, yValue + 350);

            CheckBox tagNsfw = new CheckBox();

            tagNsfw.Text     = "Set Tag as NSFW";
            tagNsfw.Font     = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            tagNsfw.Size     = new Size(170, 25);
            tagNsfw.Location = new Point(xValue + 10, yValue + 380);

            Button createTagButton = new Button();

            createTagButton.Text     = "Create Tag";
            createTagButton.Font     = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            createTagButton.Size     = new Size(135, 30);
            createTagButton.Location = new Point(xValue + 20, yValue + 420);

            //and this blob just adds all the controls to the TagControl, so you can see them and stuff
            this.Controls.Add(heading);
            this.Controls.Add(tagNameLabel);
            this.Controls.Add(tagNameTextBox);
            this.Controls.Add(tagTypeLabel);
            this.Controls.Add(tagTypeBox);
            this.Controls.Add(createTypeLabel);
            this.Controls.Add(typeNameLabel);
            this.Controls.Add(typeNameBox);
            this.Controls.Add(typeNsfw);
            this.Controls.Add(createTypeButton);
            this.Controls.Add(tagColorLabel);
            this.Controls.Add(tagColorPicker);
            this.Controls.Add(tagNsfw);
            this.Controls.Add(createTagButton);

            //places the TagCreator to wherever the x and y are
            this.Location = new Point(xValue, yValue);

            createTagButton.BringToFront();
            createTypeButton.BringToFront();

            createTypeButton.Click += new EventHandler(createTypeButton_Click);
            void createTypeButton_Click(object sender, EventArgs e)
            {
                //actual input validation needed
                if (typeNameBox.Text != null) //make sure name is valid
                {
                    createdType = new TagType(typeNameBox.Text, typeNsfw.Checked);
                }
                else
                {
                    MessageBox.Show("u messed up homeslice");
                }
            }

            createTagButton.Click += new EventHandler(createTagButton_Click);
            void createTagButton_Click(object sender, EventArgs e)
            {
                //actual input validation needed
                if (tagNameTextBox.Text != null)        //make sure name is valid
                {
                    if (tagTypeBox.SelectedIndex != -1) //if theres a tagtype
                    {
                        int index = -1;
                        for (int i = 0; i < types.Count; i++)
                        {
                            if (types[i].getName() == (string)tagTypeBox.SelectedItem)
                            {
                                index = i;
                            }
                        }
                        createdTag = new Tag(tagNameTextBox.Text, tagColorPicker.getColor(), types[index], tagNsfw.Checked);
                    }
                    else // if there aint no tagtype
                    {
                        createdTag = new Tag(tagNameTextBox.Text, tagColorPicker.getColor(), tagNsfw.Checked);
                    }
                }
                else
                {
                    MessageBox.Show("u messed up homeslice");
                }
            }
        }
コード例 #2
0
        void InitializeComponents()
        {
            DeleteTagButtonIndex    = 1;
            ApplyChangesButtonIndex = 0;

            this.Size = new Size(WIDTH, HEIGHT);
            Size standard = new Size(150, 20);

            Label manageTagsLabel = new Label();

            manageTagsLabel.Text     = "Manage Tags";
            manageTagsLabel.Font     = new Font("Microsoft Sans Serif", 14F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            manageTagsLabel.Size     = new Size(150, 25);
            manageTagsLabel.Location = new Point(xValue + 5, yValue + 5);

            Label tagsLabel = new Label();

            tagsLabel.Text     = "Tags";
            tagsLabel.Font     = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            tagsLabel.Size     = standard;
            tagsLabel.Location = new Point(xValue + 10, yValue + 35);

            tagsList.Font     = new Font("Microsoft Sans Serif", 11F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            tagsList.Size     = new Size(280, 200);
            tagsList.Location = new Point(xValue + 10, yValue + 65);

            Label tagNameLabel = new Label();

            tagNameLabel.Text     = "Edit Tag Name";
            tagNameLabel.Font     = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            tagNameLabel.Size     = standard;
            tagNameLabel.Location = new Point(xValue + 10, yValue + 255);

            TextBox newTagName = new TextBox();

            newTagName.Font     = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            newTagName.Size     = standard;
            newTagName.Location = new Point(xValue + 10, yValue + 285);

            Label newTagType = new Label();

            newTagType.Text     = "New Tag Type";
            newTagType.Font     = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            newTagType.Size     = standard;
            newTagType.Location = new Point(xValue + 10, yValue + 315);

            ComboBox tagTypeCombo = new ComboBox();

            tagTypeCombo.Font     = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            tagTypeCombo.Width    = 150;
            tagTypeCombo.Location = new Point(xValue + 10, yValue + 345);

            Label editColorLabel = new Label();

            editColorLabel.Text     = "Edit Color";
            editColorLabel.Font     = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            editColorLabel.Size     = new Size(80, 20);
            editColorLabel.Location = new Point(xValue + 190, yValue + 255);

            ColorPicker newTagColor = new ColorPicker();

            newTagColor.Font     = new Font("Microsoft Sans Serif", 9.5F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            newTagColor.Width    = 40;
            newTagColor.Location = new Point(xValue + 205, yValue + 285);

            Label newNsfw = new Label();

            newNsfw.Text     = "Edit NSFW";
            newNsfw.Font     = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            newNsfw.Size     = new Size(100, 20);
            newNsfw.Location = new Point(xValue + 185, yValue + 315);

            CheckBox newNsfwCheck = new CheckBox();

            newNsfwCheck.Size     = new Size(50, 20);
            newNsfwCheck.Location = new Point(xValue + 220, yValue + 350);

            Button deleteTagButton = new Button();

            deleteTagButton.Text      = "Delete Tag";
            deleteTagButton.ForeColor = Color.Red;
            deleteTagButton.Font      = new Font("Microsoft Sans Serif", 11F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            deleteTagButton.Size      = new Size(120, 40);
            deleteTagButton.Location  = new Point(xValue + 25, yValue + 385);

            Button applyChangesButton = new Button();

            applyChangesButton.Text     = "Apply Changes";
            applyChangesButton.Font     = new Font("Microsoft Sans Serif", 11F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
            applyChangesButton.Size     = new Size(120, 40);
            applyChangesButton.Location = new Point(xValue + 160, yValue + 385);

            this.Controls.Add(manageTagsLabel);
            this.Controls.Add(tagsLabel);
            this.Controls.Add(tagsList);
            this.Controls.Add(tagNameLabel);
            this.Controls.Add(newTagName);
            this.Controls.Add(newTagType);
            this.Controls.Add(tagTypeCombo);
            this.Controls.Add(editColorLabel);
            this.Controls.Add(newTagColor);
            this.Controls.Add(newNsfw);
            this.Controls.Add(newNsfwCheck);
            this.Controls.Add(deleteTagButton);
            this.Controls.Add(applyChangesButton);

            this.Location = new Point(xValue, yValue);

            deleteTagButton.BringToFront();
            applyChangesButton.BringToFront();

            deleteTagButton.Click += new EventHandler(deleteTagButton_Click);
            void deleteTagButton_Click(object sender, EventArgs e)
            {
                DialogResult dr = MessageBox.Show("Are you sure you want to delete this tag", "Confirmation", MessageBoxButtons.YesNo);

                if (dr == DialogResult.Yes)
                {
                    if (tagsList.SelectedIndex != -1)
                    {
                        tags.RemoveAt(tagsList.SelectedIndex);

                        tagsList.ClearSelected();
                        newTagName.Text      = "";
                        newNsfwCheck.Checked = false;
                    }
                }
            }

            applyChangesButton.Click += new EventHandler(applyChangesButton_Click);
            void applyChangesButton_Click(object sender, EventArgs e)
            {
                DialogResult dr = MessageBox.Show("Are you sure you want to edit this tag", "Confirmation", MessageBoxButtons.YesNo);

                if (dr == DialogResult.Yes)
                {
                    if (tagsList.SelectedIndex != -1)
                    {
                        if (tagTypeCombo.SelectedIndex != -1)
                        {
                            Tag t = new Tag(newTagName.Text, newTagColor.getColor(), types[tagTypeCombo.SelectedIndex], newNsfwCheck.Checked);
                        }
                    }
                }
            }
        }