Esempio n. 1
0
        public void StartDrag(IDragInfo dragInfo)
        {
            dragInfo.Effects = DragDropEffects.Copy;
            Klocek klocek = (Klocek)((Klocek)dragInfo.SourceItem).Clone();

            klocek.ZPrzybornika = true;
            dragInfo.Data       = klocek;
        }
Esempio n. 2
0
        private void KopiujKlocek(object obiektKlocka)
        {
            Klocek klocek = (Klocek)((Klocek)obiektKlocka).Clone();

            klocek.ZPrzybornika = true;

            Schowek.RemoveAt(0);
            Schowek.Add(klocek);
        }
Esempio n. 3
0
        private void PrzejmijSkupienie(object obiektKlocka)
        {
            if (_klocekPosiadającySkupienie != null)
            {
                _klocekPosiadającySkupienie.PosiadaSkupienie = false;
            }

            Klocek klocek = (Klocek)obiektKlocka;

            klocek.PosiadaSkupienie     = true;
            _klocekPosiadającySkupienie = klocek;
        }
Esempio n. 4
0
 public bool SprawdzCzyJestPowyzejSiatki(Klocek klocek)
 {
     for (int x = 0; x < szerokośćPlanszy; ++x)
     {
         foreach (Transform kloc in klocek.transform)
         {
             Vector2 pos = Round(kloc.position);
             if (pos.y > wysokośćPlanszy - 1)
             {
                 return(true);
             }
         }
     }
     return(false);
 }
Esempio n. 5
0
        private void WytnijKlocek(object obiektKlocka)
        {
            if (obiektKlocka is KlocekPionowy)
            {
                UsuńKlocekPionowy(obiektKlocka);
            }
            else
            {
                UsuńKlocekZwracającyWartość(obiektKlocka);
            }

            Klocek klocek = (Klocek)((Klocek)obiektKlocka).Clone();

            klocek.ZPrzybornika = true;

            Schowek.RemoveAt(0);
            Schowek.Add(klocek);
        }
Esempio n. 6
0
 public void aktualizowanieSiatki(Klocek klocek)   //chyba dobrze xd
 {
     for (int y = 0; y < wysokośćPlanszy; ++y)
     {
         for (int x = 0; y < szerokośćPlanszy; ++x)
         {
             if (plansza[x, y] != null)
             {
                 if (plansza[x, y].parent == klocek.transform)
                 {
                     plansza[x, y] = null;
                 }
             }
         }
     }
     foreach (Transform kloc in klocek.transform) //nie bic mnie za kloca;
     {
         Vector2 poz = Round(kloc.pozycja);
         if (poz.y < wysokośćPlanszy)
         {
             plansza[(int)poz.x, (int)poz.y] = kloc;
         }
     }
 }
Esempio n. 7
0
        public Główny()
        {
            Semafor      = new Semafor();
            MagazynZmian = new MagazynZmian();
            Konsola      = new Konsola();
            KomendaCofnięciaStanuAplikacji          = new Komenda(CofnijStanAplikacji);
            KomendaDodaniaUsunięciaPunktuPrzerwania = new Komenda(DodajUsuńPunktPrzerwania);
            KomendaDodaniaZmiennej                            = new Komenda(DodajZmienną);
            KomendaKontynuacjiWykonywania                     = new Komenda(KontynuujWykonywanie);
            KomendaKopiowaniaKlocka                           = new Komenda(KopiujKlocek);
            KomendaPrzejęciaSkupienia                         = new Komenda(PrzejmijSkupienie);
            KomendaPrzywróceniaStanuAplikacji                 = new Komenda(PrzywróćStanAplikacji);
            KomendaStartuProgramu                             = new Komenda(RozpocznijWykonywanieProgramu);
            KomendaUsunięciaKlockaPionowego                   = new Komenda(UsuńKlocekPionowy);
            KomendaUsunięciaKlockaZwracającegoWartość         = new Komenda(UsuńKlocekZwracającyWartość);
            KomendaUsunięciaZmiennej                          = new Komenda(UsuńZmienną);
            KomendaWycięciaKlocka                             = new Komenda(WytnijKlocek);
            KomendaWykonaniaNastępnegoKroku                   = new Komenda(WykonajNastępnyKrok);
            KomendaZamknięciaOkna                             = new Komenda(ZamknijOkno);
            KomendaZatrzymaniaDebugowania                     = new Komenda(ZatrzymajDebugowanie);
            KomendaZwinięciaRozwinięciaKlockaZZawartością     = new Komenda(ZwińRozwińKlocekZZawartością);
            ObsługującyPrzeciąganieZPrzybornika               = new ObsługującyPrzeciąganieZPrzybornika();
            ObsługującyPrzenoszenieKlockówPionowych           = new ObsługującyPrzenoszenieKlockówPionowych();
            ObsługującyPrzenoszenieKlockówZwracającychWartość = new ObsługującyPrzenoszenieKlockówZwracającychWartość();
            ObsługującyUpuszczanieKlockówPionowych            = new ObsługującyUpuszczanieKlockówPionowych(DodajDziałanie);
            ObsługującyUpuszczanieKlockówZwracającychWartość  = new ObsługującyUpuszczanieKlockówZwracającychWartość(DodajDziałanie);
            Powiększenie        = 1;
            RozpoczęcieProgramu = new RozpoczęcieProgramu {
                Semafor = Semafor
            };
            Schowek = new ObservableCollection <Klocek> {
                null
            };
            Zmienne = new ObservableCollection <Zmienna>();
            Semafor.SemaforOpuszczony += _semafor_SemaforOpuszczony;

            CechyLiczby = new OpcjaZwracającaWartośćNaPodstawieParametru <bool, double>[]
            {
                new Parzystość(),
                new Nieparzystość(),
                new Całkowitość(),
                new Dodatniość(),
                new Ujemność()
            };

            DziałaniaLogiczne = new OpcjaZwracającaWartośćNaPodstawieDwóchParametrów <bool, bool, bool>[]
            {
                new Koniunkcja(),
                new Alternatywa()
            };

            DziałaniaMatematyczne = new OpcjaZwracającaWartośćNaPodstawieDwóchParametrów <double, double, double>[]
            {
                new Dodawanie(),
                new Odejmowanie(),
                new Mnożenie(),
                new Dzielenie(),
                new Potęgowanie(),
                new Modulo()
            };

            DziałaniaMatematyczneNaLiście = new OpcjaZwracającaWartośćNaPodstawieParametru <double, ZmiennaTypuListowego>[]
            {
                new SumaListy(),
                new MinimumListy(),
                new MaksimumListy(),
                new ŚredniaListy()
            };

            FunkcjeMatematyczne = new OpcjaZwracającaWartośćNaPodstawieParametru <double, double>[]
            {
                new PierwiastekKwadratowy(),
                new WartośćBezwzględna(),
                new WartośćOdwrotna(),
                new LogarytmNaturalny(),
                new LogarytmOPodstawie10(),
                new FunkcjaEksponencjalna(),
                new PotęgaOPodstawie10()
            };

            FunkcjeTrygonometryczne = new OpcjaZwracającaWartośćNaPodstawieParametru <double, double>[]
            {
                new Sinus(),
                new Cosinus(),
                new Tangens(),
                new ArcusSinus(),
                new ArcusCosinus(),
                new ArcusTangens()
            };

            ModyfikacjeElementuListy = new TypUstawieniaElementuListy[]
            {
                new UstawienieElementu(),
                new WstawienieElementu()
            };

            ObcinaniaSpacji = new OpcjaZwracającaWartośćNaPodstawieParametru <object, object>[]
            {
                new ObcinanieSpacjiZObuStron(),
                new ObcinanieSpacjiZLewejStrony(),
                new ObcinanieSpacjiZPrawejStrony()
            };

            PobieraniaTekstu = new PobieranieTekstu[]
            {
                new PobieranieTekstuTekstowego(),
                new PobieranieTekstuLiczbowego()
            };

            PorządkiSortowania = new PorządekSortowania[]
            {
                new SortowanieRosnąco(),
                new SortowanieMalejąco()
            };

            SortowaniaListy = new SposóbSortowaniaListy[]
            {
                new SortowanieLiczbowe(),
                new SortowanieAlfabetyczne()
            };

            StałeLogiczne = new OpcjaZwracającaWartość <bool>[]
            {
                new Prawda(),
                new Fałsz()
            };

            StałeMatematyczne = new OpcjaZwracającaWartość <double>[]
            {
                new Pi(),
                new LiczbaE(),
                new LiczbaPhi(),
                new PierwiastekZDwóch(),
                new PierwiastekZJednejDrugiej(),
                new Nieskończoność()
            };

            SzukaniaTekstuWTekście = new OpcjaZwracającaWartośćNaPodstawieDwóchParametrów <double, object, object>[]
            {
                new PierwszeWystąpienieTekstuWTekście(),
                new OstatnieWystąpienieTekstuWTekście()
            };

            WielkościLiter = new OpcjaZwracającaWartośćNaPodstawieParametru <object, object>[]
            {
                new WielkieLitery(),
                new MałeLitery()
            };

            WystąpieniaElementuNaLiście = new OpcjaZwracającaWartośćNaPodstawieDwóchParametrów <double, ZmiennaTypuListowego, object>[]
            {
                new PierwszeWystąpienie(),
                new OstatnieWystąpienie()
            };

            ZaokrąglaniaLiczby = new OpcjaZwracającaWartośćNaPodstawieParametru <double, double>[]
            {
                new Zaokrąglanie(),
                new ZaokrąglanieWGórę(),
                new ZaokrąglanieWDół()
            };

            ZnakiPorównania = new OpcjaZwracającaWartośćNaPodstawieDwóchParametrów <bool, object, object>[]
            {
                new Równy(),
                new Nierówny(),
                new Mniejszy(),
                new MniejszyRówny(),
                new Większy(),
                new WiększyRówny()
            };

            KlockiDotycząceList = new Klocek[]
            {
                new DodajDoListy(),
                new UsuńElementZListy(),
                new ModyfikujElementListy {
                    WybranyTypModyfikacjiListy = ModyfikacjeElementuListy.First()
                },

                new ElementListyOIndeksie(),
                new IndeksElementuNaLiście {
                    WybranaOpcja = WystąpieniaElementuNaLiście.First()
                },
                new LiczbaElementówNaLiście(),
                new ListaPowtórzonegoElementu(),
                new ListaZElementów(),
                new Podlista(),
                new PosortowanaLista
                {
                    WybranyPorządekSortowania = PorządkiSortowania.First(),
                    WybranySposóbSortowania   = SortowaniaListy.First()
                },
                new PustaLista(),
                new PustośćListy()
            };

            KlockiDotyczącePętli = new Klocek[]
            {
                new WykonajDlaKażdegoElementu(),
                new WykonujDopóki(),
                new WykonujOdliczając(),
                new PomińIterację(),
                new PrzerwijPętlę()
            };

            KlockiDotycząceZmiennych = new Klocek[]
            {
                new UstawZmienną(),
                new WartośćZmiennej()
            };

            KlockiLogiczne = new Klocek[]
            {
                new WykonajJeżeli(),
                new Negacja(),
                new Porównanie {
                    WybranaOpcja = ZnakiPorównania.First()
                },
                new StałaLogiczna {
                    WybranaOpcja = StałeLogiczne.First()
                },
                new WarunekZłożony {
                    WybranaOpcja = DziałaniaLogiczne.First()
                }
            };

            KlockiMatematyczne = new Klocek[]
            {
                new ZmieńWartośćZmiennejOLiczbę(),

                new FunkcjaMatematyczna {
                    WybranaOpcja = FunkcjeMatematyczne.First()
                },
                new FunkcjaTrygonometryczna {
                    WybranaOpcja = FunkcjeTrygonometryczne.First()
                },
                new LosowaLiczbaCałkowitaZZakresu(),
                new LosowyUłamek(),
                new PodzielnośćLiczbyPrzezLiczbę(),
                new StałaLiczbowa(),
                new StałaMatematyczna {
                    WybranaOpcja = StałeMatematyczne.First()
                },
                new WynikDziałania {
                    WybranaOpcja = DziałaniaMatematyczne.First()
                },
                new WynikDziałaniaMatematycznegoNaLiście {
                    WybranaOpcja = DziałaniaMatematyczneNaLiście.First()
                },
                new WystępowanieCechyLiczby {
                    WybranaOpcja = CechyLiczby.First()
                },
                new ZaokrąglonaLiczba {
                    WybranaOpcja = ZaokrąglaniaLiczby.First()
                },
            };

            KlockiTekstowe = new Klocek[]
            {
                new DodajTekst(),
                new Wyświetl {
                    Konsola = Konsola
                },

                new DługośćTekstu(),
                new IndeksTekstuWTekście {
                    WybranaOpcja = SzukaniaTekstuWTekście.First()
                },
                new LiteraTekstu(),
                new Napis(),
                new PobranyTekst
                {
                    Konsola      = Konsola,
                    WybranaOpcja = PobieraniaTekstu.First()
                },
                new Podciąg(),
                new PustośćTekstu(),
                new TekstOWielkościLiter {
                    WybranaOpcja = WielkościLiter.First()
                },
                new TekstZObciętymiSpacjami {
                    WybranaOpcja = ObcinaniaSpacji.First()
                }
            };
        }