Exemplo n.º 1
0
 private void createHabit(Habit h)
 {
     lstHabit.Items.Add(h);
     if (lstHabit.Items.Count <= 1)
     {
         updateHabitTimer(h);
         habitTimer.Start();
     }
     else if (isEarliestHabit(h))
     {
         updateHabitTimer(h);
     }
 }
Exemplo n.º 2
0
        private void updateHabitTimer(Habit h)
        {
            notifyCSDA.BalloonTipText = "Ambis boleh tapi jangan lupa : " + h.name;
            Int32 tempInterval = getWaktu(h.habitTime);

            if (tempInterval <= 0)
            {
                showHabit();
            }
            else
            {
                habitTimer.Interval = tempInterval;
            }
        }
Exemplo n.º 3
0
        private void showHabit()
        {
            if (lstHabit.Items.Count <= 0)
            {
                return;
            }
            notifyCSDA.ShowBalloonTip(30000);

            removeHabit(findEarliestHabit());
            Habit h = findEarliestHabit();

            if (h != null)
            {
                updateHabitTimer(findEarliestHabit());
            }
        }
Exemplo n.º 4
0
        private Habit findEarliestHabit()
        {
            if (lstHabit.Items.Count <= 0)
            {
                return(null);
            }
            Habit returnHabit = (Habit)lstHabit.Items[0];

            foreach (Habit h in lstHabit.Items)
            {
                if (h.habitTime.Ticks <= returnHabit.habitTime.Ticks)
                {
                    returnHabit = h;
                }
            }
            return(returnHabit);
        }
Exemplo n.º 5
0
        private void removeHabit(Habit h)
        {
            bool update = false;

            if (isEarliestHabit(h))
            {
                update = true;
            }

            lstHabit.Items.Remove(h);
            if (lstHabit.Items.Count <= 0)
            {
                habitTimer.Stop();
            }
            else if (update)
            {
                updateHabitTimer(findEarliestHabit());
            }
        }
Exemplo n.º 6
0
        private void Save()
        {
            FileStream      todoFS     = new FileStream("todo.dat", FileMode.Create);
            FileStream      reminderFS = new FileStream("reminder.dat", FileMode.Create);
            FileStream      jadwalFS   = new FileStream("jadwal.dat", FileMode.Create);
            FileStream      habitFS    = new FileStream("habit.dat", FileMode.Create);
            BinaryFormatter formatter  = new BinaryFormatter();


            Todo[] todo = new Todo[clbTodo.Items.Count];
            clbTodo.Items.CopyTo(todo, 0);
            Reminder[] reminder = new Reminder[clbReminder.Items.Count];
            clbReminder.Items.CopyTo(reminder, 0);
            Jadwal[] jadwal = new Jadwal[lstMingguan.Items.Count];
            lstMingguan.Items.CopyTo(jadwal, 0);
            Habit[] habit = new Habit[lstHabit.Items.Count];
            lstHabit.Items.CopyTo(habit, 0);

            try
            {
                formatter.Serialize(todoFS, todo);
                formatter.Serialize(reminderFS, reminder);
                formatter.Serialize(jadwalFS, jadwal);
                formatter.Serialize(habitFS, habit);
            }
            catch (Exception e)
            {
                MessageBox.Show("Failed to serialize: Reason: " + e.Message);
                throw;
            }
            finally
            {
                habitFS.Close();
                todoFS.Close();
                reminderFS.Close();
                jadwalFS.Close();
            }
        }
Exemplo n.º 7
0
 private bool isEarliestHabit(Habit inHabit)
 {
     return(inHabit.Equals(findEarliestHabit()));
 }
Exemplo n.º 8
0
        //====================================================================================================//
        // KODE UNTUK FITUR HABIT
        // Mekanismenya sama dengan reminder hanya saja pada habit waktu sudah ditentukan oleh program
        //====================================================================================================//

        private void btnHabitActive_Click(object sender, EventArgs e)
        {
            if (clbHabit.CheckedItems.Count == 0)
            {
                MessageBox.Show("Centang salah satu habit pada box!", "Warning");
            }
            else
            {
                lstHabit.Items.Clear();
                tbHabitStatus.Text = "Habit Aktif";

                DateTime time  = DateTime.Now;
                DateTime time1 = new DateTime(time.Year, time.Month, time.Day, 8, 0, 0);
                DateTime time2 = new DateTime(time.Year, time.Month, time.Day, 9, 0, 0);
                DateTime time3 = new DateTime(time.Year, time.Month, time.Day, 11, 30, 0);
                DateTime time4 = new DateTime(time.Year, time.Month, time.Day, 15, 0, 0);
                DateTime time5 = new DateTime(time.Year, time.Month, time.Day, 17, 0, 0);
                DateTime time6 = new DateTime(time.Year, time.Month, time.Day, 18, 30, 0);

                for (int i = 0; i < clbHabit.Items.Count; i++)
                {
                    if (clbHabit.GetItemCheckState(i) == CheckState.Checked)
                    {
                        if (clbHabit.Items[i].ToString() == "Sarapan" && (DateTime.Compare(time, time1) < 0))
                        {
                            Habit h = new Habit(clbHabit.Items[i].ToString(), time1);
                            createHabit(h);
                        }
                        else if (clbHabit.Items[i].ToString() == "Mandi pagi" && (DateTime.Compare(time, time2) < 0))
                        {
                            Habit h = new Habit(clbHabit.Items[i].ToString(), time2);
                            createHabit(h);
                        }
                        else if (clbHabit.Items[i].ToString() == "Makan siang" && (DateTime.Compare(time, time3) < 0))
                        {
                            Habit h = new Habit(clbHabit.Items[i].ToString(), time3);
                            createHabit(h);
                        }
                        else if (clbHabit.Items[i].ToString() == "Olahraga rutin" && (DateTime.Compare(time, time4) < 0))
                        {
                            Habit h = new Habit(clbHabit.Items[i].ToString(), time4);
                            createHabit(h);
                        }
                        else if (clbHabit.Items[i].ToString() == "Mandi sore" && (DateTime.Compare(time, time5) < 0))
                        {
                            Habit h = new Habit(clbHabit.Items[i].ToString(), time5);
                            createHabit(h);
                        }
                        else if (clbHabit.Items[i].ToString() == "Makan sore" && (DateTime.Compare(time, time6) < 0))
                        {
                            Habit h = new Habit(clbHabit.Items[i].ToString(), time6);
                            createHabit(h);
                        }
                    }
                }
                foreach (int i in clbHabit.CheckedIndices)
                {
                    clbHabit.SetItemCheckState(i, CheckState.Unchecked);
                }
            }
        }