Ejemplo n.º 1
0
        void ReloadMapData()
        {
            UpdateControlToMapData();

            MapController.Controls.Clear();

            BoxWidth = (int)this.B0.Value;
            BoxHeiht = (int)this.B1.Value;

            int n = 0;

            for (int y = 0; y < BoxHeiht; y++)
            {
                for (int x = 0; x < BoxWidth; x++, n++)
                {
                    NumericUpDown nud = new NumericUpDown();
                    MapController.Controls.Add(nud);
                    nud.Size          = new System.Drawing.Size(57, 25);
                    nud.Minimum       = 0;
                    nud.Maximum       = 255;
                    nud.Location      = new Point(x * 65, y * 30);
                    nud.Name          = "B" + (n + 4);
                    nud.Hexadecimal   = true;
                    nud.BackColor     = OptionForm.Color_Input_BackColor();
                    nud.ForeColor     = OptionForm.Color_Input_ForeColor();
                    nud.ValueChanged += WriteButtonYellow;
                    nud.Value         = GetMapData(x, y);
                }
            }
            UpdateCenterMark();
        }
Ejemplo n.º 2
0
        void DrawBackground(int index, Graphics g, Rectangle listbounds, DrawItemState state, bool isWithDraw)
        {
            if (!isWithDraw)
            {
                return;
            }

            if ((state & DrawItemState.Selected) > 0)
            {//選択色
                Brush brush = new SolidBrush(OptionForm.Color_List_SelectedColor());
                g.FillRectangle(brush, listbounds);
                brush.Dispose();

                return;
            }

            if (index != this.LastHoverIndex)
            {//通常
                Brush brush = new SolidBrush(OptionForm.Color_Input_BackColor());
                g.FillRectangle(brush, listbounds);
                brush.Dispose();
            }
            else
            {//hover
                Brush brush = new SolidBrush(OptionForm.Color_List_HoverColor());
                g.FillRectangle(brush, listbounds);
                brush.Dispose();
            }
        }
Ejemplo n.º 3
0
        void UpdateCenterMark()
        {
            for (int oldindex = 0; oldindex < MapController.Controls.Count; oldindex++)
            {
                Object o = MapController.Controls[oldindex];
                if (o is NumericUpDown)
                {
                    ((NumericUpDown)o).BackColor = OptionForm.Color_Input_BackColor();
                    ((NumericUpDown)o).ForeColor = OptionForm.Color_Input_ForeColor();
                }
            }

            CenterX = (int)this.B2.Value;
            CenterY = (int)this.B3.Value;

            int newindex = (CenterX + (CenterY * BoxWidth));

            if (newindex < MapController.Controls.Count)
            {
                Object o = MapController.Controls[newindex];
                if (o is NumericUpDown)
                {
                    ((NumericUpDown)o).BackColor = OptionForm.Color_Keyword_BackColor();
                    ((NumericUpDown)o).ForeColor = OptionForm.Color_Keyword_ForeColor();
                }
            }
        }
Ejemplo n.º 4
0
        private void HexBox_Load(object sender, EventArgs e)
        {
            if (this.DesignMode)
            {
                return;
            }

            SetData(Program.ROM.Data);

            PanelForeBrush       = new SolidBrush(OptionForm.Color_Control_ForeColor());
            PanelBackBrush       = new SolidBrush(OptionForm.Color_Control_BackColor());
            ControlForeBrush     = new SolidBrush(OptionForm.Color_Input_ForeColor());
            ControlBackBrush     = new SolidBrush(OptionForm.Color_Input_BackColor());
            ControlSelectedBrush = new SolidBrush(OptionForm.Color_List_SelectedColor());
            RefColorBrush        = new SolidBrush(OptionForm.Color_NotifyWrite_BackColor());
            MarkColorBrush       = new SolidBrush(OptionForm.Color_Error_ForeColor());

            this.OneWidth  = (uint)(this.Font.SizeInPoints * 2);
            this.OneHeight = (uint)(this.Font.Height + 2);
            ClearUndoBuffer();
        }
Ejemplo n.º 5
0
        public void Init(uint addr, uint typeOf, bool isHex)
        {
            this.Address           = addr;
            this.TypeOf            = typeOf;
            this.ValueTextBox.Text = U.ToHexString(addr);

            if (typeOf == 1)
            {
                this.ReWriteValue.Value   = Program.RAM.u8(addr);
                this.ReWriteValue.Maximum = 255;
            }
            else if (typeOf == 2)
            {
                this.ReWriteValue.Value   = Program.RAM.u16(addr);
                this.ReWriteValue.Maximum = 65535;
            }
            else if (typeOf == 3)
            {
                this.ReWriteValue.Value   = Program.RAM.u24(addr);
                this.ReWriteValue.Maximum = 16777215;
            }
            else
            {
                this.ReWriteValue.Value   = Program.RAM.u32(addr);
                this.ReWriteValue.Maximum = 4294967295;
            }

            this.ReWriteValue.Hexadecimal = isHex;
            if (isHex)
            {//16進数
                this.ReWriteValue.BackColor = OptionForm.Color_Input_BackColor();
                this.ReWriteValue.ForeColor = OptionForm.Color_Input_ForeColor();
            }
            else
            {//10進数
                this.ReWriteValue.BackColor = OptionForm.Color_InputDecimal_BackColor();
                this.ReWriteValue.ForeColor = OptionForm.Color_InputDecimal_ForeColor();
            }
            this.ActiveControl = ReWriteValue;
        }
Ejemplo n.º 6
0
        private void SearchHelperControl_Load(object sender, EventArgs e)
        {
            LangCode = System.Globalization.CultureInfo.CurrentCulture.TwoLetterISOLanguageName;

            Color Color_Control_BackColor = OptionForm.Color_Control_BackColor();
            Color Color_Control_ForeColor = OptionForm.Color_Control_ForeColor();

            EntryButton.BackColor = Color_Control_BackColor;
            EntryButton.ForeColor = Color_Control_ForeColor;
            NextButton.BackColor  = Color_Control_BackColor;
            NextButton.ForeColor  = Color_Control_ForeColor;
            this.BackColor        = Color_Control_BackColor;
            this.ForeColor        = Color_Control_ForeColor;
            searchlabel.BackColor = Color_Control_BackColor;
            searchlabel.ForeColor = Color_Control_ForeColor;


            Color Color_Input_BackColor = OptionForm.Color_Input_BackColor();
            Color Color_Input_ForeColor = OptionForm.Color_Input_ForeColor();

            SearchWord.BackColor = Color_Input_BackColor;
            SearchWord.ForeColor = Color_Input_ForeColor;
        }
Ejemplo n.º 7
0
        public void SimpleKeywordHighLight(RichTextBoxEx target)
        {
            target.LockWindowUpdate();
            Color keywordBackColor = OptionForm.Color_Keyword_BackColor();
            Color keywordForeColor = OptionForm.Color_Keyword_ForeColor();

            Color commentBackColor = OptionForm.Color_Input_BackColor();
            Color commentForeColor = OptionForm.Color_Comment_ForeColor();

            string[] keywords = new string[] { "LSL", "LSR", "ASR", "ADD", "SUB", "MOV", "CMP", "AND", "EOR", "ADC", "SBC", "ROR", "TST", "NEG", "CMP", "CMN", "ORR", "BIC", "MVN", "BX", "LDR", "LDRH", "LDRB", "STR", "STRH", "STRB", "LDSB", "LDSH", "PUSH", "POP", "STMIA", "LDMIA", "BEQ", "BNE", "BCS", "BCC", "BMI", "BPL", "BVS", "BVC", "BHI", "BLS", "BGE", "BLT", "BGT", "BLE", "SWI", "B", "BL", ".THUMB", ".ORG", ".EQU", ".LTORG" };

            //ハイライトを解除.
            target.SelectionStart     = 0;
            target.SelectionLength    = target.TextLength;
            target.SelectionColor     = OptionForm.Color_Input_ForeColor();
            target.SelectionBackColor = OptionForm.Color_Input_BackColor();
            //改行コードが違うので、必ず取得しなおす
            string text   = target.Text;
            int    length = text.Length;

            for (int i = 0; i < length;)
            {
                if (U.Wordrap(text[i]))
                {
                    i++;
                    continue;
                }

                int start = i;
                for (i = i + 1; i < length; i++)
                {
                    if (U.Wordrap(text[i]))
                    {
                        break;
                    }
                }

                string token = text.Substring(start, i - start);
                if (token.IndexOf('@') == 0)
                {//コメント
                    int term = text.IndexOf("\n", i);
                    if (term > 0)
                    {
                        i = term;
                    }

                    target.SelectionStart     = start;
                    target.SelectionLength    = i - start;
                    target.SelectionColor     = commentForeColor;
                    target.SelectionBackColor = commentBackColor;
                    continue;
                }

                token = token.ToUpper();
                foreach (string k in keywords)
                {
                    if (token == k)
                    {//キーワード
                        target.SelectionStart     = start;
                        target.SelectionLength    = i - start;
                        target.SelectionColor     = keywordForeColor;
                        target.SelectionBackColor = keywordBackColor;
                        break;
                    }
                }
            }

            target.UnLockWindowUpdate();
        }