Example #1
0
        public MainForm()
        {
            splashThread = new Thread(new ThreadStart(ShowSplash));
            splashThread.Start();
            Thread.Sleep(2000);

            InitializeComponent();
            Instance = this;
            Application.AddMessageFilter(Instance);
            ControlsToMove = new HashSet <Control> {
                Instance.panel_CenterTop,
                Instance.panel_RightTopExit,
            };

            Instance.FormBorderStyle = FormBorderStyle.None;
            Instance.DoubleBuffered  = true;
            Instance.SetStyle(ControlStyles.ResizeRedraw, true);
            Instance.Size        = new Size(950, 500);
            Instance.MaximumSize = new Size(ScreenResolution.Width + 100, ScreenResolution.Height + 100);
            Instance.MinimumSize = new Size(600, 400);
            Instance.Center_EditorTextBox.Font = new Font("Consolas", 9.75F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));

            treeviewContextMenu = new ContextMenu();
            treeview_RightClickMenueItem_SaveAll = new MenuItem("Save All");
            treeview_RightClickMenueItem_SaveAs  = new MenuItem("SaveAs...");
            treeview_RightClickMenueItem_Add     = new MenuItem("Add");
            treeview_RightClickMenueItem_Delete  = new MenuItem("Delete");
            treeviewContextMenu.MenuItems.Add(treeview_RightClickMenueItem_SaveAll);
            treeviewContextMenu.MenuItems.Add(treeview_RightClickMenueItem_SaveAs);
            treeviewContextMenu.MenuItems.Add(treeview_RightClickMenueItem_Add);
            treeviewContextMenu.MenuItems.Add(treeview_RightClickMenueItem_Delete);

            treeview_RightClickMenueItem_SaveAs.Click  += new EventHandler(Treeviw_RightClick_SaveAs);
            treeview_RightClickMenueItem_SaveAll.Click += new EventHandler(Treeviw_RightClick_SaveAll);
            treeview_RightClickMenueItem_Add.Click     += new EventHandler(Treeviw_RightClick_Add);
            treeview_RightClickMenueItem_Delete.Click  += new EventHandler(Treeviw_RightClick_Delete);

            slidingPanel = new Sliding_Panel(panel_MenuLeft, 130, 15, 10);

            logger        = new KxSharpLib.Utility.Logger(Center_LoggingTextBox);
            configuration = new Configuration();
            LoadedPK      = new KxSharpLib.Kal.PK();

            if (configuration.UseConfigurationFile)
            {
                KxSharpLib.FormHelper.DisableControls(Settings_groupBox);
                KxSharpLib.FormHelper.HideControls(Settings_groupBox);
            }
            logger.Write("Initialized and ready!");

            splashThread.Abort();
            KxSharpLib.Win32.SwitchToThisWindow(this.Handle, true);
        }
Example #2
0
        private void Button_MenuLeftFileOpen_Click(object sender, EventArgs e)
        {
            if (Setting_CryptTable_comboBox.SelectedIndex == -1 || KxSharpLib.Security.Kal.Crypto.GUseCrypt == KxSharpLib.Security.Kal.Crypto.EUseCrypt.Unknown)
            {
                logger.Write("[Unknown CryptTable, Please set a valid table!]");
                return;
            }

            if (DATList != null)
            {
                logger.Write("[There is already a file loaded!]");

                DialogResult diaResult = KxMsgBox.Show("Already open!", "There is already a file loaded!\nClose without saving ?", KxMsgBoxIcon.WARNING, KxMsgBoxButton.YESNO);
                switch (diaResult)
                {
                case DialogResult.Yes:
                {
                    Center_EditorTextBox.Clear();
                    LoadedPK = new KxSharpLib.Kal.PK();
                    DATList.Clear();
                    DATList = null;
                    treeView_PKiew.Nodes.Clear();
                    Setting_CryptTable_comboBox.Enabled = true;
                    KxSharpLib.FormHelper.SetLabelText(label_CurrentFileTopCenter, "Current File:   [None]");
                    break;
                }

                case DialogResult.No:
                    return;

                default:
                    return;
                }
            }

            using (OpenFileDialog filedia = new OpenFileDialog())
            {
                filedia.Title           = "Open PK File";
                filedia.Filter          = "PK files|*.pk";
                filedia.CheckFileExists = true;
                filedia.CheckPathExists = true;

                switch (filedia.ShowDialog(this))
                {
                case DialogResult.OK:
                {
                    _ = new PackageHandler(filedia.FileName);
                    Setting_CryptTable_comboBox.Enabled = false;
                    textBox_FileInfo_Name.Text          = Path.GetFileName(filedia.FileName);
                    textBox_FileInfo_Path.Text          = filedia.FileName;
                    using (var md5 = MD5.Create())
                    {
                        textBox_FileInfo_MD5.Text = BitConverter.ToString(md5.ComputeHash(File.ReadAllBytes(filedia.FileName))).Replace("-", "").ToLower();
                    }
                    break;
                }

                default:
                    break;
                }
            }
        }