private void OnTouch(object sender, ImageView.TouchEventArgs e) { ImageView iv = (ImageView)sender; int x = Convert.ToInt32(e.Event.GetX()); int y = Convert.ToInt32(e.Event.GetY()); int total_clicked = 0; if (e.Event.Action == MotionEventActions.Up) { foreach (Blok b in blokken) { //Check om te weten op welk blokje is geklikt. //Werkt nog niet helemaal perfect. if (b.X <= x && x < (b.X + b.Width) && b.Y <= y && y < (b.Y + b.Height)) { b.ClickBlok(current_toestand); //Short if statement in C# current_toestand = (current_toestand == Toestand.Circle) ? Toestand.Cross : Toestand.Circle; } total_clicked++; } DrawBackground(); iv.SetImageBitmap(background); if (Controle()) { Toast.MakeText(MainActivity.context, "Yeah, speler: " + current_toestand.ToString() + " heeft gewonnen!", ToastLength.Short); } } }
private void OnTouch(object sender, ImageView.TouchEventArgs e) { ImageView iv = (ImageView)sender; int x = Convert.ToInt32 (e.Event.GetX ()); int y = Convert.ToInt32 (e.Event.GetY ()); int total_clicked = 0; if (e.Event.Action == MotionEventActions.Up) { foreach (Blok b in blokken) { //Check om te weten op welk blokje is geklikt. //Werkt nog niet helemaal perfect. if (b.X <= x && x < (b.X + b.Width) && b.Y <= y && y < (b.Y + b.Height)) { b.ClickBlok (current_toestand); //Short if statement in C# current_toestand = (current_toestand == Toestand.Circle) ? Toestand.Cross : Toestand.Circle; } total_clicked++; } DrawBackground (); iv.SetImageBitmap (background); if (Controle()) { Toast.MakeText (MainActivity.context, "Yeah, speler: " + current_toestand.ToString () + " heeft gewonnen!",ToastLength.Short); } } }
public Blok(int x, int y, int width, int height, Toestand toestand) { this.x = x; this.y = y; this.width = width; this.height = height; this.toestand = toestand; }
public Blok (int x, int y, int width, int height, Toestand toestand) { this.x = x; this.y = y; this.width = width; this.height = height; this.toestand = toestand; }
public Form1() { InitializeComponent(); gbLogIn.Location = new Point(340, 200); gbAlles.Location = new Point(5, 50); reparatieSysteem = new ReparatieSysteem(); toestand = Toestand.INLOGGEN; Showtoestand(); }
public Form1() { InitializeComponent(); gbLogIn.Location = new Point(340, 200); gbAlles.Location = new Point(5, 50); reparatieSysteem = new ReparatieSysteem(); klantenLijst = new List<Klant>(); klant = null; toestand = Toestand.INLOGGEN; gebruiker = Gebruiker.GEEN; Showtoestand(); }
public NDFA <T> TransformToNDFA() { NDFA <T> ndfa = new NDFA <T>(); ndfa.invoerSymbolen = alfabet; foreach (KeyValuePair <string, HashSet <ProductieRegel <T> > > toestandEnOvergangen in productieRegels) { foreach (ProductieRegel <T> t in toestandEnOvergangen.Value) { Toestand <T> toestand = new Toestand <T>(toestandEnOvergangen.Key, new Tuple <string, T>(t.rechterkant, t.x)); ndfa.toestanden.Add(toestand); } } return(ndfa); }
private void btUitloggen_Click(object sender, EventArgs e) { toestand = Toestand.INLOGGEN; Application.Restart(); Showtoestand(); }
/// <summary> /// Zoekt Ticket of Klant bij nummer. /// Dan switched 'ie de toestand afhankelijk van de gebruiker. /// Zoeken op ticket; de klant en product bij ticket worden geladen /// Zoeken op klant; alle producten en tickets worden bij de klant geladen /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btZoekenSnel_Click(object sender, EventArgs e) { liZoekresultatenKlant.Items.Clear(); Producten.Items.Clear(); liTickets.Items.Clear(); if (tbTicketnummerSnel.Text != "") // Zoeken op ticketnummer ////////////////////////// { Ticket t; t = reparatieSysteem.GetTicketByTicketnr(Convert.ToInt32(tbTicketnummerSnel.Text)); if (t == null) { MessageBox.Show("Ticket kan niet gevonden worden.", "Ticket zoeken", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } // Ticketinformatie wordt ingevuld tbNieuweMeldingTR.Enabled = true; btVoegTicketRegToeTR.Enabled = true; cbProductSerienummersR.Items.Clear(); tbTicketnummerR.Text = Convert.ToString(t.Ticketnr); tbProbleemR.Text = t.Probleem; Product p = reparatieSysteem.GetProductByTicket(Convert.ToInt32(t.Ticketnr)); cbProductSerienummersR.Items.Add(p); cbProductSerienummersR.SelectedIndex = 0; tbVerw88Kosten.Text = Convert.ToString(t.VerwachteKosten); tbLocatieR.Text = t.AfdelingsAfkorting; cbCategorieR.SelectedItem = t.Categorie; tbVerw88ReparatieTijd.Text = t.VerwachteReparatieTijd.ToString(); cbTicketStatus.SelectedIndex = Convert.ToInt32(t.Status); Klant k = reparatieSysteem.GetKlantByTicketnr(Convert.ToInt32(t.Ticketnr)); tbKlantnaamR.Text = k.Achternaam; tbKlantnummerR.Text = k.Nr.ToString(); tbKlantTelnrR.Text = k.Telefoon; // Switchs nu naar de toestand adhv gebruiker if (gebruiker == Gebruiker.HELPDESK || gebruiker == Gebruiker.WINKEL) { toestand = Toestand.TICKETREGTICKET; Showtoestand(); } else { toestand = Toestand.TICKETREGREPARATIE; Showtoestand(); } } if (tbKlantnummerSnel.Text != "") // Zoeken op klantnummer /////////////////////////// { klant = reparatieSysteem.GetKlantByKlantnr(Convert.ToInt32(tbKlantnummerSnel.Text)); if (klant == null) { MessageBox.Show("Klant kan niet gevonden worden.", "Klant zoeken", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } // klantinformatie wordt ingevuld lbKlantnummerKlant.Visible = true; lbKlantnummerKlant.Text = "Klantnummer: " + Convert.ToString(klant.Nr); tbVoornaamKlant.Text = klant.Voornaam; tbTussenvoegselKlant.Text = klant.Tussenvoegsel; tbAchternaamKlant.Text = klant.Achternaam; tbStraatKlant.Text = klant.Straatnaam; tbHuisnummerKlant.Text = Convert.ToString(klant.Huisnummer); tbPostcodeKlant.Text = klant.Postcode; tbPlaatsKlant.Text = klant.Woonplaats; tbLandKlant.Text = klant.Land; tbTelefoonnummerKlant.Text = klant.Telefoon; tbEmailKlant.Text = klant.Email; klantenLijst.Add(klant); liZoekresultatenKlant.Items.Add(klant.ToString()); // lijsten worden gevuld met producten en tickets bij de gevonden klant Producten.Items.Clear(); liTickets.Items.Clear(); cbProductSerienummersR.Items.Clear(); List<Product> productenlijst = reparatieSysteem.GetProductenByKlant(klant.Nr); foreach (Product p in productenlijst) { Producten.Items.Add(p); cbProductSerienummersR.Items.Add(p); } List<Ticket> ticketlijst = reparatieSysteem.GetTicketsByKlantnr(klant.Nr); foreach (Ticket t in ticketlijst) { liTickets.Items.Add(t); } toestand = Toestand.KLANT; Showtoestand(); } }
// /// <summary> /// Een van de eerste methoden van het programma /// Aan de hand van je medewerkersnummer en je wachtwoord wordt je functie bepaald. /// Je functie verandert niet tijdens het programma, daarvoor moet je uitloggen. /// Omdat dit een van de eerste methoden is, laden we bij inloggen alvast ale bestaande categorieen en afdelingen. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btLogin_Click(object sender, EventArgs e) { Medewerker med = reparatieSysteem.LogIn(Convert.ToInt32(tbGebruiksnaam.Text), tbPassword.Text); if (med == null) { MessageBox.Show("Inloggen lukt hiermee niet! \n\nControleer gebruikersnaam en password."); return; } List<TicketCategorie> categorieen = reparatieSysteem.GetCategorieen(); List<Ticket> ticketLijst = reparatieSysteem.GetTickets(); foreach (Ticket t in ticketLijst) { if (cbGeselecteerdeAfdR.Items.Contains(t.AfdelingsAfkorting) == false) { cbGeselecteerdeAfdR.Items.Add(t.AfdelingsAfkorting); } } foreach (TicketCategorie categorie in categorieen) { cbCategorieR.Items.Add(categorie.ToString()); } if (med.Functie == MedewerkerFunctie.Administrator) { gebruiker = Gebruiker.ADMIN; toestand = Toestand.ADMINISTRATOR; } if (med.Functie == MedewerkerFunctie.Telefonist) { gebruiker = Gebruiker.HELPDESK; toestand = Toestand.KLANT; } if (med.Functie == MedewerkerFunctie.Balie) { gebruiker = Gebruiker.WINKEL; toestand = Toestand.TICKETREGTICKET; } if (med.Functie == MedewerkerFunctie.Reparateur) { gebruiker = Gebruiker.REPARATIE; toestand = Toestand.TICKETREGREPARATIE; } tbMedewerkerNummerTR.Text = Convert.ToString(med.Mednr); tbMedewerkerNummerR.Text = Convert.ToString(med.Mednr); Showtoestand(); }
/// <summary> /// Klik op een product uit de productenlijst en je sprint naar tabblad ticket. /// Daar kun je een ticket aanmaken voor het geselecteerde product. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Producten_SelectedIndexChanged(object sender, EventArgs e) { ListBox listbox = (ListBox)sender; Product p = (Product)listbox.SelectedItem; btWijzigTicketR.Text = "Voeg Ticket Toe"; cbProductSerienummersR.Items.Clear(); cbProductSerienummersR.Items.Add(p); cbProductSerienummersR.SelectedIndex = 0; tbTicketnummerR.Enabled = false; tbTicketnummerR.Text = "Automatisch gegenereerd"; tbProbleemR.Enabled = true; cbProductSerienummersR.Enabled = true; tbVerw88Kosten.Enabled = true; tbVerw88ReparatieTijd.Enabled = true; tbLocatieR.Enabled = true; cbCategorieR.Enabled = true; cbTicketStatus.SelectedIndex = 0; tbKlantnummerR.Text = klant.Nr.ToString(); tbKlantnaamR.Text = klant.Achternaam; tbKlantTelnrR.Text = klant.Telefoon; if (gebruiker == Gebruiker.HELPDESK || gebruiker == Gebruiker.WINKEL) { toestand = Toestand.TICKETREGTICKET; Showtoestand(); } else { toestand = Toestand.TICKETREGREPARATIE; Showtoestand(); } }
public void ClickBlok (Toestand current_toestand) { clicked = true; toestand = current_toestand; }
public NDFA <char> ToNDFA() { NDFA <char> ndfa = new NDFA <char>(); bool orOperation = false; Stack <Tuple <int, Toestand <char> > > bracketLocations = new Stack <Tuple <int, Toestand <char> > >(); Stack <Toestand <char> > stuffInBrackets = new Stack <Toestand <char> >(); int index = 0; foreach (char c in terminals) { Toestand <char> t = ndfa.toestanden.LastOrDefault(y => y.volgendeToestand.Item2 != EPSILON); if (t == null) { t = new Toestand <char>("0", new Tuple <string, char>("0", EPSILON)); } switch (c) { case '(': bracketLocations.Push(new Tuple <int, Toestand <char> >(index, t)); break; case ')': var indexLastBracket = bracketLocations.Pop(); Toestand <char> p = new Toestand <char>(t.volgendeToestand.Item1, new Tuple <string, char>(indexLastBracket.Item2.naam, EPSILON)); stuffInBrackets.Push(p); break; case '*': if (stuffInBrackets.Count == 0) { //epsilon van vorige naar nieuwste Toestand <char> ts = new Toestand <char>(t.naam, new Tuple <string, char>(t.volgendeToestand.Item1, EPSILON)); //epsilon van nieuwste naar vorige Toestand <char> t3 = new Toestand <char>(t.volgendeToestand.Item1, new Tuple <string, char>(t.naam, EPSILON)); ndfa.toestanden.Add(ts); ndfa.toestanden.Add(t3); } else { var t5 = stuffInBrackets.Pop(); ndfa.toestanden.Add(t5); ndfa.toestanden.Add(new Toestand <char>(t5.volgendeToestand.Item1, new Tuple <string, char>(t5.naam, EPSILON))); } break; case '+': if (stuffInBrackets.Count == 0) { //epsilon van nieuwste naar vorige Toestand <char> t4 = new Toestand <char>(t.volgendeToestand.Item1, new Tuple <string, char>(t.naam, EPSILON)); ndfa.toestanden.Add(t4); } else { var t6 = stuffInBrackets.Pop(); ndfa.toestanden.Add(t6); } break; case '|': orOperation = true; break; default: if (orOperation) { ndfa.toestanden.Add(new Toestand <char>(t.naam, new Tuple <string, char>(t.volgendeToestand.Item1, c))); } else { if (ndfa.toestanden.Count == 0) { ndfa.toestanden.Add(new Toestand <char>("0", new Tuple <string, char>((ndfa.toestanden.Count + 1).ToString(), c))); } else { ndfa.toestanden.Add(new Toestand <char>(t.volgendeToestand.Item1, new Tuple <string, char>((ndfa.toestanden.Count + 1).ToString(), c))); } } orOperation = false; break; } index++; } ndfa.startSymbolen.Add(ndfa.toestanden.First().naam); int eindtoestand = 0; foreach (var r in ndfa.toestanden) { if (eindtoestand < int.Parse(r.volgendeToestand.Item1)) { eindtoestand = int.Parse(r.volgendeToestand.Item1); } if (!r.volgendeToestand.Item2.Equals(EPSILON)) { ndfa.invoerSymbolen.Add(r.volgendeToestand.Item2); } } ndfa.eindToestanden.Add(eindtoestand.ToString()); return(ndfa); }
public void ClickBlok(Toestand current_toestand) { clicked = true; toestand = current_toestand; }
private void btLogin_Click(object sender, EventArgs e) { if (tbGebruiksnaam.Text == "admin") { toestand = Toestand.ADMIN; } if (tbGebruiksnaam.Text == "helpdesk") { toestand = Toestand.HELPDESK; } Showtoestand(); }
private void ConvertButton_Click(object sender, EventArgs e) { statements.Clear(); if (InputBox.Text == "") { return; } if (vanExpressie.Checked) { try { Expressie expressie = new Expressie(InputBox.Text); _outputNDFA = expressie.ToNDFA(); if (ToDFA.Checked) { OutputBox.Text = _outputNDFA.ToDFA().ToString(); } if (ToNDFA.Checked) { OutputBox.Text = _outputNDFA.ToString(); } if (ToReguliereGrammatica.Checked) { OutputBox.Text = _outputNDFA.ToReguliereGrammatica().ToString(); } foreach (var t in _outputNDFA.eindToestanden) { //output += "node [shape = doublecircle]; " + t + " ;\n"; } foreach (var t in _outputNDFA.toestanden) { EdgeStatement statement = EdgeStatement.For(t.vorigeToestand, t.volgendeToestand.Item1).Set("label", t.volgendeToestand.Item2.ToString()); statements.Add(statement); } } catch (Exception exception) { OutputBox.Text += "Het is niet gelukt\n" + exception.ToString(); } } else if (vanDFA.Checked) { NDFA <char> ndfa = new NDFA <char>(); for (int x = 0; x < InputBox.Lines.Count(); x++) { string temp = InputBox.Lines[x]; if (temp.StartsWith("begin")) { ndfa.startSymbolen.Add(temp.Last().ToString()); } else if (temp.StartsWith("eind")) { ndfa.eindToestanden.Add(temp.Last().ToString()); } else { ndfa.toestanden.Add(Toestand <char> .CreateToestand(temp)); } foreach (var t in ndfa.toestanden) { ndfa.invoerSymbolen.Add(t.volgendeToestand.Item2); } } if (ToDFA.Checked) { OutputBox.Text = ndfa.ToDFA().ToString(); } if (ToNDFA.Checked) { OutputBox.Text = ndfa.ToString(); } if (ToReguliereGrammatica.Checked) { OutputBox.Text = ndfa.ToReguliereGrammatica().ToString(); } _outputNDFA = ndfa; foreach (var t in ndfa.toestanden) { EdgeStatement statement = EdgeStatement.For(t.vorigeToestand, t.volgendeToestand.Item1).Set("label", t.volgendeToestand.Item2.ToString()); statements.Add(statement); } } else if (vanGrammatica.Checked) { if (ToNDFA.Checked) { HashSet <ProductieRegel <char> > set = new HashSet <ProductieRegel <char> >(); for (int x = 0; x < InputBox.Lines.Count(); x++) { string[] temp = InputBox.Lines[x].Split('-'); string startSymbool = temp[0]; string line = temp[2].Substring(1); string[] toestanden = line.Split('|'); foreach (string s in toestanden) { string[] camelcase = SplitCamelCase(s); if (camelcase.Length > 1) { set.Add(new ProductieRegel <char>(startSymbool, Convert.ToChar(camelcase[0]), camelcase[1])); } else { set.Add(new ProductieRegel <char>(startSymbool, Convert.ToChar(camelcase[0]), "")); } } } Grammatica <char> gr = new Grammatica <char>(InputBox.Lines.First().Split('-')[0], set); OutputBox.Text = gr.TransformToNDFA().ToString(); foreach (var t in gr.TransformToNDFA().toestanden) { EdgeStatement statement = EdgeStatement.For(t.vorigeToestand, t.volgendeToestand.Item1).Set("label", t.volgendeToestand.Item2.ToString()); statements.Add(statement); } } } }
/// <summary> /// Klik op een ticket in de ticketlijst en je sprint automatisch naar Ticket tabblad. /// Ticketgegevens worden geladen, en product wordt bij de ticket geladen /// Relevante textvoxen worden ENABLED /// Adhv gebruiker worden rechten bepaald voor ticketregistratie en reparatieregistratie /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void liTickets_SelectedIndexChanged(object sender, EventArgs e) { ListBox listbox = (ListBox)sender; Ticket t = (Ticket)listbox.SelectedItem; if (t == null) return; tbTicketnummerR.Text = t.Ticketnr.ToString(); tbProbleemR.Text = t.Probleem; cbTicketStatus.SelectedIndex = Convert.ToInt32(t.Status); cbProductSerienummersR.Items.Clear(); Product p = reparatieSysteem.GetProductByTicket(Convert.ToInt32(t.Ticketnr)); cbProductSerienummersR.Items.Clear(); cbProductSerienummersR.Items.Add(p); cbProductSerienummersR.SelectedIndex = 0; tbVerw88Kosten.Text = t.VerwachteKosten.ToString(); tbVerw88ReparatieTijd.Text = t.VerwachteReparatieTijd.ToString(); tbLocatieR.Text = t.AfdelingsAfkorting; cbCategorieR.SelectedItem = t.Categorie; cbTicketStatus.SelectedItem = t.Status.ToString(); Klant k = reparatieSysteem.GetKlantByTicketnr(Convert.ToInt32(t.Ticketnr)); tbKlantnummerR.Text = k.Nr.ToString(); tbKlantnaamR.Text = k.Achternaam; tbKlantTelnrR.Text = k.Telefoon; // Sprint door naar de juiste toestand if (gebruiker == Gebruiker.HELPDESK || gebruiker == Gebruiker.WINKEL) { toestand = Toestand.TICKETREGTICKET; tbOudeMeldingTR.Text = ""; List<Registratie> regLijst = reparatieSysteem.GetRegistratiesByTicket(Convert.ToInt32(t.Ticketnr)); for (int i = 0; i < regLijst.Count; i++) { tbOudeMeldingTR.Text += regLijst[i].Vermelding + "\r\n"; } tbNieuweMeldingTR.Enabled = true; btVoegTicketRegToeTR.Enabled = true; Showtoestand(); } else if (gebruiker == Gebruiker.ADMIN) { toestand = Toestand.TICKETREGREPARATIE; tbOudeMeldingenRR.Text = ""; tbNieuweMeldingTR.Enabled = true; btVoegTicketRegToeTR.Enabled = true; tbOudeMeldingenRR.Enabled = false; tbNieuweMeldingRR.Enabled = true; tbVervangenOnderdeelRR.Enabled = true; tbVervOnderdKostenRR.Enabled = true; cbVervangenOnderdelenRR.Enabled = true; btVoegVervOnderdToeRR.Enabled = true; mtbGewerkteUrenR.Enabled = true; btVoegTicketRegToeR.Enabled = true; dtpDatumR.Enabled = true; tbNieuweMeldingRR.Enabled = true; // Laadt meldingen bij de tickets List<ReparatieRegistratie> repRegLijst = reparatieSysteem.GetReparatieRegistratiesByTicket(Convert.ToInt32(t.Ticketnr)); foreach (ReparatieRegistratie repReg in repRegLijst) { tbOudeMeldingenRR.Text += repReg.Vermelding + "\r\n"; } List<Registratie> regLijst = reparatieSysteem.GetRegistratiesByTicket(Convert.ToInt32(t.Ticketnr)); for (int j = 0; j < regLijst.Count; j++) { tbOudeMeldingTR.Text += regLijst[j].Vermelding + "\r\n"; } Showtoestand(); } else { toestand = Toestand.TICKETREGREPARATIE; tbOudeMeldingenRR.Text = ""; tbNieuweMeldingRR.Enabled = true; tbVervangenOnderdeelRR.Enabled = true; tbVervOnderdKostenRR.Enabled = true; cbVervangenOnderdelenRR.Enabled = true; btVoegVervOnderdToeRR.Enabled = true; mtbGewerkteUrenR.Enabled = true; btVoegTicketRegToeR.Enabled = true; // Laadt meldingen bij de tickets List<ReparatieRegistratie> repRegLijst = reparatieSysteem.GetReparatieRegistratiesByTicket(Convert.ToInt32(t.Ticketnr)); foreach (ReparatieRegistratie repReg in repRegLijst) { tbOudeMeldingenRR.Text += repReg.Vermelding + "\r\n"; } Showtoestand(); } }