コード例 #1
0
        public LuoKyselyLopetus()
        {
            InitializeComponent();

            NameEditor.Text = SurveyManager.GetInstance().GetSurvey().Name;
            KeyEditor.Text  = SurveyManager.GetInstance().GetSurvey().RoomCode;
        }
コード例 #2
0
        /*
         * void OnSelectionChanged(object sender, SelectionChangedEventArgs e)
         * {
         *              if (sender is CollectionView cv && cv.SelectionChangedCommandParameter is CollectionItem item)
         *              {
         *
         *              }
         * }
         */

        async void JatkaButtonClicked(object sender, EventArgs e)
        {
            //error if not all emojis have at least 1 selected activity
            if (!ActivitiesSet())
            {
                await DisplayAlert("Kaikkia valintoja ei ole tehty", "Sinun on valittava jokaiselle mielialalle vähintään yksi aktiviteetti", "OK");

                return;
            }

            //asetetaan emojit survey olioon
            List <Emoji> tempEmojis = new List <Emoji>();

            foreach (var item in Items)
            {
                List <string> tempActivities = new List <string>();
                foreach (var selection in item.Selected)
                {
                    tempActivities.Add(selection as string);
                }
                item.Emoji.activities = tempActivities;
                tempEmojis.Add(item.Emoji);
            }
            SurveyManager.GetInstance().GetSurvey().emojis = tempEmojis;

            // siirrytään "Luo kysely -lopetus" sivulle
            await Navigation.PushAsync(new LuoKyselyLopetus());;
        }
コード例 #3
0
        async void JatkaButtonClicked(object sender, EventArgs e)
        {
            //asetetaan emojit survey olioon
            List <Emoji> temp = new List <Emoji>();

            foreach (var item in Emojit)
            {
                if (item.IsPositive)
                {
                    item.Item.Impact = "positive";
                }
                else if (item.IsNeutral)
                {
                    item.Item.Impact = "neutral";
                }
                else if (item.IsNegative)
                {
                    item.Item.Impact = "negative";
                }
                temp.Add(item.Item);
            }
            SurveyManager.GetInstance().GetSurvey().emojis = temp;

            // siirrytään "luo uus kysely 3/3" sivulle
            await Navigation.PushAsync(new LuoKyselyToimenpiteet());;
        }
コード例 #4
0
        public LuoKyselyEmojit()
        {
            InitializeComponent();

            //alustetaan emojit kyselyn emojeilla
            Emojit = new List <CollectionItem>();
            List <Emoji> temp = SurveyManager.GetInstance().GetSurvey().emojis;

            //alustetaan radionappien valinnat
            //ei saa kyseenalaistaa tätä toteutusta, radionappeihin ei oikeastaan pääse käsiksi collection view layoutin sisältä
            foreach (var item in temp)
            {
                CollectionItem i = new CollectionItem();
                i.Item = item;
                switch (item.Impact)
                {
                case "positive":
                    i.IsPositive = true;
                    break;

                case "neutral":
                    i.IsNeutral = true;
                    break;

                case "negative":
                    i.IsNegative = true;
                    break;
                }
                Emojit.Add(i);
            }

            BindingContext = this;
        }
コード例 #5
0
        async void PeruutaClicked(object sender, EventArgs e)
        {
            var res = await DisplayAlert("Tahdotko varmasti keskeytää kyselyn luonnin?", "", "Kyllä", "Ei");

            if (res == true)
            {
                //survey resetoidaan
                SurveyManager.GetInstance().ResetSurvey();

                //Jos ollaan edit tilassa, niin siirrytään takaisin kyselyntarkastelu sivulle, muutoin main menuun
                if (Main.GetInstance().GetMainState() == Main.MainState.Editing)
                {
                    Main.GetInstance().BrowseSurveys();
                    await Navigation.PopAsync();
                }
                else
                {
                    // siirrytään etusivulle
                    await Navigation.PopToRootAsync();
                }
            }
            else
            {
                return;
            }
        }
コード例 #6
0
        async void OletusClicked(object sender, EventArgs e)
        {
            SurveyManager.GetInstance().SetDefaultSurvey();

            KyselynTarkastelu.canDelete = false;
            KyselynTarkastelu.canEdit   = false;
            await Navigation.PushAsync(new KyselynTarkastelu());
        }
コード例 #7
0
        async void Kyllä_Clicked(object sender, EventArgs e)
        {
            //kyselyn Poistaminen!
            SurveyManager.GetInstance().DeleteSurvey(SurveyManager.GetInstance().GetSurvey().Name + ".txt");
            // siirrytään Tallenetut kyselyt sivulle

            await Navigation.PushAsync(new TallennetutKyselyt());
        }
コード例 #8
0
        async void JatkaButtonClicked(object sender, EventArgs e)
        {
            //kyselyn johdatuslause asetetaan.
            SurveyManager.GetInstance().GetSurvey().introMessage = selectedItem;


            //siirrytään "luo uus kysely 2/3" sivulle
            await Navigation.PushAsync(new LuoKyselyEmojit());
        }
コード例 #9
0
 //method for getting an instance of surveymanager so there isn't more than one surveymanager object
 public static SurveyManager GetInstance()
 {
     if (instance != null)
     {
         return(instance);
     }
     instance = new SurveyManager();
     return(instance);
 }
コード例 #10
0
ファイル: SurveyHost.cs プロジェクト: Etex99/mieliala-kysely
 /// <summary>
 /// Default constructor
 /// <remarks>
 /// The instance created does not start running any tasks automatically
 /// </remarks>
 /// </summary>
 public SurveyHost()
 {
     data             = new SurveyData();
     survey           = SurveyManager.GetInstance().GetSurvey();
     clientCount      = 0;
     clients          = new List <TcpClient>();
     clientHistory    = new List <IPAddress>();
     cancellableTasks = new List <Task>();
     tokenSource      = new CancellationTokenSource();
     token            = tokenSource.Token;
 }
コード例 #11
0
        public OdotetaanVastauksia()
        {
            InitializeComponent();
            roomCode      += SurveyManager.GetInstance().GetSurvey().RoomCode;
            BindingContext = this;

            //Ei enää mahdollista päästä takaisin kysleyn luontiin painamalla navigoinnin backbuttonia
            NavigationPage.SetHasBackButton(this, false);

            //actually run the survey
            Host();
        }
コード例 #12
0
        public LuoKyselyToimenpiteet()
        {
            InitializeComponent();

            //alustus
            Items = new List <CollectionItem>();
            foreach (var item in SurveyManager.GetInstance().GetSurvey().emojis)
            {
                Items.Add(new CollectionItem(item, Const.activities[item.ID]));
            }

            BindingContext = this;
        }
コード例 #13
0
        async void AvaaClicked(object sender, EventArgs e)
        {
            string        surveyName = SelectedSurvey + ".txt";
            SurveyManager manager    = SurveyManager.GetInstance();

            manager.LoadSurvey(surveyName);

            Console.WriteLine(surveyName);

            KyselynTarkastelu.canDelete = true;
            KyselynTarkastelu.canEdit   = true;
            await Navigation.PushAsync(new KyselynTarkastelu());
        }
コード例 #14
0
        async void Kyllä_Clicked(object sender, EventArgs e)
        {
            //kyselyn tallennus!

            SurveyManager man = SurveyManager.GetInstance();

            //save survey code
            man.GetSurvey().RoomCode = KeyEditor.Text;
            man.GetSurvey().Name     = NameEditor.Text;
            //save survey
            man.SaveSurvey(NameEditor.Text + ".txt");

            // siirrytään OdotettaanVastauksia sivulle
            await Navigation.PushAsync(new OdotetaanVastauksia());
        }
コード例 #15
0
        public TallennetutKyselyt()
        {
            InitializeComponent();
            Surveys = new List <String>();
            SurveyManager manager = SurveyManager.GetInstance();

            NavigationPage.SetHasBackButton(this, false);


            Surveys = manager.GetTemplates();



            BindingContext = this;
        }
コード例 #16
0
        public KyselynTarkastelu()
        {
            InitializeComponent();

            Survey s = SurveyManager.GetInstance().GetSurvey();

            //alustetaan emojit kyselyn emojeilla
            Emojit = new List <CollectionItem>();
            List <Emoji> temp = s.emojis;

            //asetetaan otsikoksi kyselyn nimi
            title.Text = s.Name;

            //asetetaan kyselyn roomCode ja intro
            roomCode     += s.RoomCode;
            introMessage += s.introMessage;

            //asetetaan poista napin tila (oletusta ei voi poistaa)
            PoistaButton.IsEnabled = canDelete;

            //asetetaan muokkaa napin tila
            MuokkaaButton.IsEnabled = canEdit;

            //Kuvataan emojien vakavuusasteet
            foreach (var item in temp)
            {
                CollectionItem i = new CollectionItem();
                i.Item            = item;
                i.ActivityChoises = item.activities;
                switch (item.Impact)
                {
                case "positive":
                    i.Color = "Green";
                    break;

                case "neutral":
                    i.Color = "Yellow";
                    break;

                case "negative":
                    i.Color = "Red";
                    break;
                }
                Emojit.Add(i);
            }

            BindingContext = this;
        }
コード例 #17
0
        async void PeruutaButtonClicked(object sender, EventArgs e)
        {
            //survey resetoidaan
            SurveyManager.GetInstance().ResetSurvey();

            //Jos ollaan edit tilassa, niin siirrytään takaisin kyselyntarkastelu sivulle, muutoin main menuun
            if (Main.GetInstance().GetMainState() == Main.MainState.Editing)
            {
                Main.GetInstance().BrowseSurveys();
                await Navigation.PopAsync();
            }
            else
            {
                // siirrytään etusivulle
                await Navigation.PopToRootAsync();
            }
        }
コード例 #18
0
        public LuoKyselyJohdatus()
        {
            InitializeComponent();

            introMessage = Const.intros;



            if (Main.GetInstance().GetMainState() == Main.MainState.Editing)
            {
                selectedItem       = SurveyManager.GetInstance().GetSurvey().introMessage;
                JButton.Text       = selectedItem;
                JatkaBtn.IsEnabled = true;
            }



            BindingContext = this;
        }
コード例 #19
0
        async void TallennaJaPoistuClicked(object sender, EventArgs e)
        {
            if (NameEditor != null && !string.IsNullOrEmpty(NameEditor.Text) && KeyEditor != null && !string.IsNullOrEmpty(KeyEditor.Text))
            {
                SurveyManager man = SurveyManager.GetInstance();
                //save survey code and name
                man.GetSurvey().RoomCode = KeyEditor.Text;
                man.GetSurvey().Name     = NameEditor.Text;
                //save survey
                man.SaveSurvey(NameEditor.Text + ".txt");

                // siirrytään etusivulle
                await Navigation.PushAsync(new MainPage());
            }

            else
            {
                await DisplayAlert("Nimi tai avainkoodi puuttuu", "Sinun on asetettava kyselylle nimi ja avainkoodi", "OK");
            }
        }
コード例 #20
0
ファイル: Main.cs プロジェクト: Etex99/mieliala-kysely
 public void CreateNewSurvey()
 {
     Console.WriteLine("Creating new survey");
     state = MainState.CreatingNew;
     SurveyManager.GetInstance().ResetSurvey();
 }