예제 #1
0
            public static void Write(System.IO.Stream stream, UsedToSaveProgramSetv2 programSet)
            {
                IFormatter formatter = new BinaryFormatter();

                formatter.Serialize(stream, VERSION);
                formatter.Serialize(stream, programSet);
            }
예제 #2
0
        private void LoadFromStream(System.IO.Stream inStream)
        {
            UsedToSaveProgramSetv2 temp = UsedToSaveProgramSetv2.Read(inStream);

            KeyMaps = temp.keyMaps;
            ReBuildKeyMap();
            mKeyProgrammer = new KeyProgrammer(ref KeyMaps);
        }
예제 #3
0
        private void SaveButtonstoProfile(string ProfileName)
        {
            //Save the Keymap to .pgm in the Profile folder
            System.IO.FileStream   fs   = new System.IO.FileStream(Globals.ProfileSavePath + ProfileName + ".pgm", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write);
            UsedToSaveProgramSetv2 temp = new UsedToSaveProgramSetv2(KeyMaps);

            UsedToSaveProgramSetv2.Write(fs, temp);
            fs.Close();
        }
예제 #4
0
            public static UsedToSaveProgramSetv2 Read(System.IO.Stream stream)
            {
                IFormatter formatter = new BinaryFormatter();
                int        version   = (Int32)formatter.Deserialize(stream);

                if (version == 1)
                {
                    //This is a version 1 file Convert it to a Version 2 file
                    UsedToSaveProgramSet   prgramsetv1 = (UsedToSaveProgramSet)formatter.Deserialize(stream);
                    List <KeyMap>          TempKeys    = new List <KeyMap>();
                    String[]               TempMacros  = new String[kMaxKeys];
                    UsedToSaveProgramSetv2 programset  = new UsedToSaveProgramSetv2(TempKeys);

                    for (int i = 0; i < kMaxKeys; i++)
                    {
                        //process each of the keys
                        int offset = (i) * 3;

                        KeyMap NewKey = new KeyMap();
                        NewKey.Dx1Key = (byte)(i + 1);
                        offset++;
                        NewKey.Type   = prgramsetv1.keyMap[offset++];
                        NewKey.Action = prgramsetv1.keyMap[offset++];
                        if (NewKey.Action == (byte)0)
                        {
                            NewKey.Description = "Unassigned";
                        }
                        else
                        {
                            NewKey.Description = "Keycode-" + NewKey.Action.ToString();
                        }
                        programset.keyMaps.Add(NewKey);
                    }

                    TempMacros = prgramsetv1.macroMap;

                    for (int i = 0; i < kMaxKeys; i++)
                    {
                        //Process each of the Macros into the corresponding key
                        if (TempMacros[i] != null)
                        {
                            programset.keyMaps[i].MacroName = TempMacros[i];
                        }
                    }



                    return(programset);
                }

                UsedToSaveProgramSetv2 programSet = (UsedToSaveProgramSetv2)formatter.Deserialize(stream);

                return(programSet);
            }
예제 #5
0
 public static void Write(System.IO.Stream stream, UsedToSaveProgramSetv2 programSet)
 {
     IFormatter formatter = new BinaryFormatter();
     formatter.Serialize(stream, VERSION);
     formatter.Serialize(stream, programSet);
 }
예제 #6
0
            public static UsedToSaveProgramSetv2 Read(System.IO.Stream stream)
            {
                IFormatter formatter = new BinaryFormatter();
                int version = (Int32)formatter.Deserialize(stream);

                if (version == 1) {
                    //This is a version 1 file Convert it to a Version 2 file
                    UsedToSaveProgramSet prgramsetv1 = (UsedToSaveProgramSet)formatter.Deserialize(stream);
                    List<KeyMap> TempKeys = new List<KeyMap>();
                    String[] TempMacros = new String[kMaxKeys];
                    UsedToSaveProgramSetv2 programset = new UsedToSaveProgramSetv2(TempKeys);

                    for (int i = 0; i < kMaxKeys; i++)
                    {
                        //process each of the keys
                        int offset = (i) * 3;

                        KeyMap NewKey = new KeyMap();
                        NewKey.Dx1Key = (byte)(i+1);
                        offset++;
                        NewKey.Type = prgramsetv1.keyMap[offset++];
                        NewKey.Action = prgramsetv1.keyMap[offset++];
                        if (NewKey.Action == (byte)0)
                        {
                            NewKey.Description = "Unassigned";
                        }
                        else
                        {
                            NewKey.Description = "Keycode-" + NewKey.Action.ToString();
                        }
                        programset.keyMaps.Add(NewKey);

                    }

                    TempMacros = prgramsetv1.macroMap;

                    for (int i = 0; i < kMaxKeys; i++)
                    {
                        //Process each of the Macros into the corresponding key
                        if (TempMacros[i] != null)
                        {
                            programset.keyMaps[i].MacroName = TempMacros[i];
                        }
                    }

                    return programset;

                }

                UsedToSaveProgramSetv2 programSet = (UsedToSaveProgramSetv2)formatter.Deserialize(stream);
                return programSet;
            }
예제 #7
0
 private void SaveButtonstoProfile(string ProfileName)
 {
     //Save the Keymap to .pgm in the Profile folder
     System.IO.FileStream fs = new System.IO.FileStream(Globals.ProfileSavePath + ProfileName + ".pgm", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write);
     UsedToSaveProgramSetv2 temp = new UsedToSaveProgramSetv2(KeyMaps);
     UsedToSaveProgramSetv2.Write(fs, temp);
     fs.Close();
 }