public void InvalidLogin() { if (invalidDialog == null) { invalidDialog = new Dialog("ERROR", "You have entered an invalid username or password!", DialogResult.ok); } if (!ProcessManager.IsInstanceOpen(invalidDialog.name)) { invalidDialog.exitRequest = false; invalidDialog.moving = false; invalidDialog.result = DialogResult.none; ProcessManager.AddWindow(invalidDialog); } }
public Logon() : base("logon") { this.priority = ProcessPriority.high; this.topMost = true; this.onTaskbar = false; // init control manager ctrlMgr = new ControlManager(); // get login data if (PMFAT.FileExists(@"0:\config.pmc")) { string fileData = PMFAT.ReadText(@"0:\config.pmc"); string[] lines = fileData.Split('\n'); for (int i = 0; i < lines.Length; i++) { string[] data = lines[i].Split(','); if (data[0] == "user") { if (data.Length > 1) { username = data[1]; } } if (data[0] == "pass") { if (data.Length > 1) { password = data[1]; } } } } username = username.Remove(username.Length - 1, 1); // init login window logonWindow = new LogonWindow(); ProcessManager.AddWindow(logonWindow); logonWindow.txtUser.kbReader.output = username; // init invalid dialog invalidDialog.name = "InvalidLogin"; }
public override void Update() { timeLabel.text = Clock.FormattedTime; // toggle main menu if (menuBtn.down && !menuBtn.clicked) { menu.visible = !menu.visible; menuBtn.clicked = true; } // terminal if (menu.btnTerminal.down && !menu.btnTerminal.clicked) { ProcessManager.AddWindow(new Processes.Terminal(64, 64)); menu.btnTerminal.clicked = true; menu.visible = false; } // about if (menu.btnAbout.down && !menu.btnAbout.clicked) { ProcessManager.AddWindow(new Processes.AboutOS(64, 64)); menu.btnAbout.clicked = true; menu.visible = false; } // cli if (menu.btnCLI.down) { Kernel.RunTextMode(); } // shutdown result if (shutdownDialog.result == DialogResult.yes) { Sys.Power.Shutdown(); } if (shutdownDialog.result == DialogResult.no) { shutdownDialog.result = DialogResult.none; shutdownDialog.exitRequest = true; } // restart result if (restartDialog.result == DialogResult.yes) { Sys.Power.Reboot(); } if (restartDialog.result == DialogResult.no) { restartDialog.result = DialogResult.none; restartDialog.exitRequest = true; } // logoff dialog if (logoffDialog.result == DialogResult.yes) { ProcessManager.windows.Clear(); Kernel.logon = new Logon(); ProcessManager.AddProcess(Kernel.logon); exitRequest = true; } if (logoffDialog.result == DialogResult.no) { logoffDialog.result = DialogResult.none; logoffDialog.exitRequest = true; } // confirm logoff if (menu.btnLogoff.down && !menu.btnLogoff.clicked) { if (!ProcessManager.IsInstanceOpen(logoffDialog.name) && !ProcessManager.IsInstanceOpen(restartDialog.name) && !ProcessManager.IsInstanceOpen(shutdownDialog.name)) { logoffDialog.exitRequest = false; logoffDialog.moving = false; logoffDialog.result = DialogResult.none; ProcessManager.AddWindow(logoffDialog); } menu.btnLogoff.clicked = true; menu.visible = false; } // confirm restart if (menu.btnRestart.down && !menu.btnRestart.clicked) { if (!ProcessManager.IsInstanceOpen(logoffDialog.name) && !ProcessManager.IsInstanceOpen(restartDialog.name) && !ProcessManager.IsInstanceOpen(shutdownDialog.name)) { restartDialog.exitRequest = false; restartDialog.moving = false; restartDialog.result = DialogResult.none; ProcessManager.AddWindow(restartDialog); } menu.btnRestart.clicked = true; menu.visible = false; } // confirm shutdown if (menu.btnOff.down && !menu.btnOff.clicked) { if (!ProcessManager.IsInstanceOpen(logoffDialog.name) && !ProcessManager.IsInstanceOpen(restartDialog.name) && !ProcessManager.IsInstanceOpen(shutdownDialog.name)) { shutdownDialog.exitRequest = false; shutdownDialog.moving = false; shutdownDialog.result = DialogResult.none; ProcessManager.AddWindow(shutdownDialog); } menu.btnOff.clicked = true; menu.visible = false; } // hide menu on click-away if (!menu.bounds.Contains(MSPS2.position) && !menuBtn.hover && !menu.hover) { if (MSPS2.state == Sys.MouseState.Left) { menu.visible = false; } } }