コード例 #1
0
        void OnPropertyChanged(string name)
        {
            PropertyChangedEventHandler handler = PropertyChanged;

            if (handler != null)
            {
                ControlStatic.SwitchName = name;
                ControlStatic.CheckWork();
                //MessageBox.Show(name);
                handler(this, new PropertyChangedEventArgs(name));
            }
        }
コード例 #2
0
        private static Dictionary <int, CTRLEntry> ReadCTRL(BinaryReaderEx br, Dictionary <int, string> strings, int ctprOffset)
        {
            ReadSectionHeader(br, "CTRL", out int entrySize, out int entryCount);

            int startPosition = (int)br.Position;
            Dictionary <int, CTRLEntry> ctrlEntries = new Dictionary <int, CTRLEntry>();

            for (int i = 0; i < entryCount; i++)
            {
                int offset          = (int)br.Position - startPosition;
                int typeOffset      = br.ReadInt32();
                int ctprEntryOffset = br.ReadInt32();
                int restorePosition = (int)br.Position;

                CTRLEntry entry;
                string    type = strings[typeOffset];
                br.Position = ctprOffset + ctprEntryOffset;

                if (type == "Static")
                {
                    entry = new ControlStatic(br);
                }
                else if (type == "DmeCtrlScrollText")
                {
                    entry = new ControlDmeCtrlScrollText(br);
                }
                else if (type == "FrpgMenuDlgObjContentsHelpItem")
                {
                    entry = new ControlFrpgMenuDlgObjContentsHelpItem(br);
                }
                else
                {
                    throw null;
                }

                ctrlEntries[offset] = entry;
                br.Position         = restorePosition;
            }

            br.Pad(0x10);
            return(ctrlEntries);
        }