Пример #1
0
        private void btnSendJpg_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            DateTime dNow = DateTime.Now;

            m_bLastFileIsFolder = false;
            string sFile = dNow.Year.ToString() +
                           "_" + RscUtils.pad60(dNow.Month) + "_" +
                           RscUtils.pad60(dNow.Day) + "_" + RscUtils.pad60(dNow.Hour) +
                           "_" + RscUtils.pad60(dNow.Minute) + "_" +
                           RscUtils.pad60(dNow.Second) + NationalChrsToTestFileNames + ".jpg";

            SetLastFile(sFile, false);

            WriteableBitmap wbmp = new WriteableBitmap(ContentPanel,
                                                       new System.Windows.Media.MatrixTransform());

            System.IO.MemoryStream ms = new System.IO.MemoryStream(4096);

            System.Windows.Media.Imaging.
            Extensions.SaveJpeg(wbmp, ms,
                                wbmp.PixelWidth, wbmp.PixelHeight,
                                0, 100);
            ms.Seek(0, System.IO.SeekOrigin.Begin);

            RscFtpClientCommand cmd = RscFtpClientCommand.UploadBin(sFile, ms);

            _SendAutoPASV(cmd);
        }
Пример #2
0
        private void cam_CaptureImageAvailable(object sender, Microsoft.Devices.ContentReadyEventArgs e)
        {
            if (m_sFnDtNext.Length == 0)
            {
                DateTime dNow = DateTime.Now;
                m_sFnDtNext = dNow.Year.ToString() + RscUtils.pad60(dNow.Month)
                              + RscUtils.pad60(dNow.Day) + "_" + RscUtils.pad60(dNow.Hour) + RscUtils.pad60(dNow.Minute)
                              + RscUtils.pad60(dNow.Second);
            }

            if (m_bSaveToMediaLibrary)
            {
                MediaLibrary media = new MediaLibrary();
                media.SavePicture(m_sFnDtNext, e.ImageStream);

                e.ImageStream.Seek(0, System.IO.SeekOrigin.Begin);
            }
            else
            {
                RscStore store = new RscStore();

                string fName = RscKnownFolders.GetMediaPath("DCIM") + "\\" + m_sFnDtNext + ".jpg";
                int    iCnt  = 0;
                for (;;)
                {
                    if (!store.FileExists(fName))
                    {
                        break;
                    }
                    iCnt++;
                    fName = RscKnownFolders.GetMediaPath("DCIM") + "\\" + m_sFnDtNext + "_" + iCnt.ToString() + ".jpg";
                }

                System.IO.Stream stream = store.CreateFile(fName);
                // Initialize the buffer for 4KB disk pages.
                byte[] readBuffer = new byte[4096];
                int    bytesRead  = -1;
                // Copy the thumbnail to the local folder.
                while ((bytesRead = e.ImageStream.Read(readBuffer, 0, readBuffer.Length)) > 0)
                {
                    stream.Write(readBuffer, 0, bytesRead);
                }
                stream.Close();
            }
        }
        // Set recording state: start recording.
        private void StartVideoRecording()
        {
            try
            {
                // Connect fileSink to captureSource.
                if (captureSource.VideoCaptureDevice != null &&
                    captureSource.State == CaptureState.Started)
                {
                    captureSource.Stop();

                    DateTime dNow = DateTime.Now;

                    string sVidName = dNow.Year.ToString() + RscUtils.pad60(dNow.Month)
                                      + RscUtils.pad60(dNow.Day) + "_" + RscUtils.pad60(dNow.Hour) + RscUtils.pad60(dNow.Minute)
                                      + RscUtils.pad60(dNow.Second);

                    // Connect the input and output of fileSink.
                    fileSink.CaptureSource           = captureSource;
                    fileSink.IsolatedStorageFileName = (RscKnownFolders.GetMediaPath("DCVID") + "\\" + sVidName + ".mp4").Substring(3);
                }

                // Begin recording.
                if (captureSource.VideoCaptureDevice != null &&
                    captureSource.State == CaptureState.Stopped)
                {
                    captureSource.Start();
                }

                // Set the button states and the message.
                UpdateUI(ButtonState.Recording, "Recording...");

                BtnBk.Fill = new SolidColorBrush(Colors.Green);
            }

            // If recording fails, display an error.
            catch (Exception /*e*/)
            {
                this.Dispatcher.BeginInvoke(delegate()
                {
                    //txtDebug.Text = "ERROR: " + e.Message.ToString();

                    BtnBk.Fill = new SolidColorBrush(Colors.Red);
                });
            }
        }
Пример #4
0
        private void btnMkD_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            DateTime dNow = DateTime.Now;

            m_bLastFileIsFolder = true;
            string sFile = dNow.Year.ToString() +
                           "_" + RscUtils.pad60(dNow.Month) + "_" +
                           RscUtils.pad60(dNow.Day) + "_" + RscUtils.pad60(dNow.Hour) +
                           "_" + RscUtils.pad60(dNow.Minute) + "_" +
                           RscUtils.pad60(dNow.Second) + NationalChrsToTestFileNames;

            SetLastFile(sFile, true);

            RscFtpClientCommand cmd = RscFtpClientCommand.CreateFolder(sFile);

            _Log("21", cmd.ToString());

            m_ftpc.SendCommandToServer(cmd);
        }
Пример #5
0
        private void btnSendTxt_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            DateTime dNow = DateTime.Now;

            m_bLastFileIsFolder = false;
            string sFile = dNow.Year.ToString() +
                           "_" + RscUtils.pad60(dNow.Month) + "_" +
                           RscUtils.pad60(dNow.Day) + "_" + RscUtils.pad60(dNow.Hour) +
                           "_" + RscUtils.pad60(dNow.Minute) + "_" +
                           RscUtils.pad60(dNow.Second) + NationalChrsToTestFileNames + ".txt";

            SetLastFile(sFile, false);

            string sTxt = dNow.ToLongDateString( ) +
                          "\r\n" + dNow.ToLongTimeString( ) +
                          "\r\n" + "Áá Éé Íí Óó Öö Őő Úú Üü Űű";

            RscFtpClientCommand cmd = RscFtpClientCommand.UploadTxt(sFile, sTxt);

            _SendAutoPASV(cmd);
        }
Пример #6
0
        private void UpdateContents(double dCY, bool bIgnoreSec = false)
        {
            if (m_tbClk != null)
            {
                if (m_iSecTime >= 1 || bIgnoreSec)
                {
                    m_iSecTime = 0;

                    DateTime dNow = DateTime.Now;
                    m_tbClk.Text = RscUtils.pad60(dNow.Hour) +
                                   ":" + RscUtils.pad60(dNow.Minute) + ":" +
                                   RscUtils.pad60(dNow.Second);
                }
            }

            if (m_tbDt != null)
            {
                if (m_iSecDate >= 1 || bIgnoreSec)
                {
                    m_iSecDate = 0;

                    DateTime dNow = DateTime.Now;
                    string   sCnt = "";

                    sCnt = dNow.Year.ToString() +
                           ". " + RscUtils.pad60(dNow.Month) + ". " +
                           RscUtils.pad60(dNow.Day) + ".";

                    sCnt += " ";
                    switch (dNow.DayOfWeek)
                    {
                    case DayOfWeek.Monday: sCnt += "Hétfő"; break;

                    case DayOfWeek.Tuesday: sCnt += "Kedd"; break;

                    case DayOfWeek.Wednesday: sCnt += "Szerda"; break;

                    case DayOfWeek.Thursday: sCnt += "Csütörtök"; break;

                    case DayOfWeek.Friday: sCnt += "Péntek"; break;

                    case DayOfWeek.Saturday: sCnt += "Szombat"; break;

                    case DayOfWeek.Sunday: sCnt += "Vasárnap"; break;
                    }

                    int iWeek;
                    iWeek = dNow.DayOfYear / 7;
                    if (dNow.DayOfYear % 7 > 0)
                    {
                        iWeek++;
                    }
                    sCnt += ", " + RscUtils.pad60(iWeek) + ". hét";

                    sCnt += ", ";
                    switch (dNow.Month)
                    {
                    case 1: sCnt += "Január"; break;

                    case 2: sCnt += "Február"; break;

                    case 3: sCnt += "Március"; break;

                    case 4: sCnt += "Április"; break;

                    case 5: sCnt += "Május"; break;

                    case 6: sCnt += "Június"; break;

                    case 7: sCnt += "Július"; break;

                    case 8: sCnt += "Augusztus"; break;

                    case 9: sCnt += "Szeptember"; break;

                    case 10: sCnt += "Október"; break;

                    case 11: sCnt += "November"; break;

                    case 12: sCnt += "December"; break;
                    }

                    m_tbDt.Text = sCnt;
                }
            }

            if (m_tbFs != null)
            {
                if (m_iSecFree >= 10 || bIgnoreSec)
                {
                    m_iSecFree = 0;

                    string sCnt = "";

                    string sIsoStoreDrive = "";
                    if (sCnt.Length > 0)
                    {
                        sCnt += " | ";
                    }
                    sCnt = RscUtils.toMBstr(RscStore.AvailableFreeSpace(out sIsoStoreDrive));
                    if (sIsoStoreDrive.Length > 0)
                    {
                        // WRONG AvailableFreeSpace VALUE!!!
                        //sCnt = sIsoStoreDrive + " " + sCnt;

                        sCnt = sIsoStoreDrive;
                    }

                    if (Windows.System.Power.PowerManager.BatteryStatus == Windows.System.Power.BatteryStatus.NotPresent)
                    {
                        if (sCnt.Length > 0)
                        {
                            sCnt += " | ";
                        }
                        sCnt += "AC POWER";
                    }
                    else
                    {
                        if (sCnt.Length > 0)
                        {
                            sCnt += " | ";
                        }
                        sCnt += Windows.System.Power.PowerManager.RemainingChargePercent.ToString() + " %";
                        if (Windows.System.Power.PowerManager.PowerSupplyStatus != Windows.System.Power.PowerSupplyStatus.Adequate)
                        {
                            sCnt += "";                             //" (batt)";
                        }
                        else
                        {
                            sCnt += " (chrg)";
                        }
                    }

                    //TODO...

                    /*
                     * if (DeviceNetworkInformation.IsWiFiEnabled)
                     * {
                     *      if (sCnt.Length > 0) sCnt += " | ";
                     *      sCnt += "WiFi (";
                     *
                     *      //TODO...
                     *      /*
                     *      NetworkInterfaceList nil;
                     *      nil = new NetworkInterfaceList();
                     *      foreach (NetworkInterfaceInfo ni in nil)
                     *      {
                     *              if (ni.InterfaceState == ConnectState.Connected)
                     *              {
                     *                      if (ni.InterfaceSubtype == NetworkInterfaceSubType.WiFi)
                     *                      {
                     *                              sCnt += ni.Description;
                     *                              break;
                     *                      }
                     *              }
                     *      }
                     *
                     *
                     *      sCnt += ")";
                     * }
                     */

                    m_tbFs.Text = sCnt;
                }
            }

            if (m_iSecMove >= 5 || bIgnoreSec)
            {
                m_iSecMove = 0;

                Random rnd;
                rnd = new Random();

                int iTop;
                iTop = rnd.Next(((int)dCY) - iBandHeight);

                m_grid.Margin = new Thickness(0, iTop, 0, 0);
            }
        }
Пример #7
0
        private void Calc()
        {
            cntout.Text  = "...";
            cntout2.Text = "...";
            cntout3.Text = "...";

            try
            {
                int iY = Int32.Parse(dtin_y.Text);
                int iM = Int32.Parse(dtin_m.Text);
                int iD = Int32.Parse(dtin_d.Text);

                DateTime dtNow = DateTime.Now;

                DateTime d1 = new DateTime(dtNow.Year, dtNow.Month, dtNow.Day);
                DateTime d2 = new DateTime(iY, iM, iD);

                TimeSpan ts    = d2 - d1;
                int      iDays = Math.Max(1, (int)Math.Round(ts.TotalDays, 0));

                double dAmo = 0;
                if (amo.Text.Length > 0)
                {
                    dAmo = double.Parse(amo.Text);
                }

                string   sPath = "A:\\Documents\\PerDay";
                RscStore store = new RscStore();
                store.CreateFolderPath(sPath);

                if (dAmo != 0)
                {
                    int iRes = (int)Math.Round(dAmo / iDays, 0);

                    cntout.Text = iRes.ToString();
                    if (unt.Text.Length > 0)
                    {
                        cntout.Text += " " + unt.Text;
                    }

                    cntout2.Text = Math.Max(0, (int)Math.Round(ts.TotalDays, 0)).ToString();

                    ////
                    //

                    string sInf = "";
                    switch (d2.DayOfWeek)
                    {
                    case DayOfWeek.Monday: sInf += "Hétfő"; break;

                    case DayOfWeek.Tuesday: sInf += "Kedd"; break;

                    case DayOfWeek.Wednesday: sInf += "Szerda"; break;

                    case DayOfWeek.Thursday: sInf += "Csütörtök"; break;

                    case DayOfWeek.Friday: sInf += "Péntek"; break;

                    case DayOfWeek.Saturday: sInf += "Szombat"; break;

                    case DayOfWeek.Sunday: sInf += "Vasárnap"; break;
                    }

                    sInf += ", " + RscUtils.pad60(RscUtils.WeekOfYearHU(d2)) + ". hét";

                    cntout3.Text = sInf;

                    //
                    ////

                    string sCnt = iY.ToString() + "|"
                                  + iM.ToString() + "|"
                                  + iD.ToString() + "|"
                                  + dAmo.ToString() + "|"
                                  + unt.Text;

                    store.WriteTextFile(sPath + "\\" + "Default.txt", sCnt, true);
                }
                else
                {
                    cntout.Text = "";

                    store.DeleteFile(sPath + "\\" + "Default.txt");
                }
            }
            catch (Exception)
            {
                cntout.Text = "<error>";
            }
        }
Пример #8
0
        public override string GetInfo(bool bForSysTile, string sIcoId, out Brush brBk, out Brush brFore,
                                       out double dFontSize, out string sErr,
                                       out string sNotiTitle, out string sNotiContent, out string sNotiSound,
                                       bool bCalledByAgent, object oAgentParam, out string sInfoToChngChk)
        {
            brBk      = null;
            brFore    = null;
            dFontSize = 0;
            sErr      = "";

            sNotiTitle   = "";
            sNotiContent = "";
            sNotiSound   = "";

            sInfoToChngChk = "";

            string sCnt = "";

            try
            {
                switch (sIcoId)
                {
                case csTileID:
                {
                    int iCount_NEW       = 0;
                    int iCount_NonAckAll = 0;
                    int iCountAll        = 0;

                    RscStore store = new RscStore();

                    string sUserIDlast = store.ReadTextFile(AppLogic.csSecretsFolder + "\\" + "UserIDlast.txt", "");

                    if (sUserIDlast.Length > 0)
                    {
                        string sPath = AppLogic.csSecretsFolder + "\\" + sUserIDlast;

                        sPath += "\\Threads";
                        if (store.FolderExists(sPath))
                        {
                            iCount_NEW       = store.ReadXmlDataFile(sPath + "\\" + "Count_NEW" + ".xml", iCount_NEW);
                            iCount_NonAckAll = store.ReadXmlDataFile(sPath + "\\" + "Count_NonAck" + ".xml", iCount_NonAckAll);
                            iCountAll        = store.ReadXmlDataFile(sPath + "\\" + "Count" + ".xml", iCountAll);
                        }
                    }

                    int iNewNow = 0;
                    if (bForSysTile)
                    {
                        /*
                         * try
                         * {
                         *      AppLogic al = new AppLogic();
                         *      iNew = al.ReadThreadData( );
                         * }
                         * catch( Exception )
                         * {
                         *      iNew = -1;
                         * }
                         */

                        if (bCalledByAgent)
                        {
                            iNewNow = 0;
                            if (!Int32.TryParse(oAgentParam.ToString(), out iNewNow))
                            {
                                iNewNow = -400;
                            }
                        }
                    }
                    else
                    {
                    }

                    string sTile;
                    if (iNewNow < 0)
                    {
                        if (iNewNow == AppLogic.ciAuthFail)
                        {
                            sTile = "NO CONN!";
                        }
                        else
                        {
                            sTile = "ERR: " + iNewNow.ToString();                                     //"ERROR!";
                        }
                    }
                    else
                    {
                        sTile = "new: " + iCount_NEW.ToString();
                    }
                    sCnt += sTile;

                    string sCont = "non-ack: " + iCount_NonAckAll.ToString() + " / " + iCountAll.ToString();

                    sCnt += "\n" + "non-ack: " + iCount_NonAckAll.ToString();
                    sCnt += "\n" + "all: " + iCountAll.ToString();

                    sInfoToChngChk = sCnt;

                    DateTime dNow = DateTime.Now;
                    sCnt += "\n\n" + "at: " + RscUtils.pad60(dNow.Hour) +
                            ":" + RscUtils.pad60(dNow.Minute);

                    if (iNewNow < 0 || iNewNow > 0 || iCount_NEW > 0)
                    {
                        brBk = new SolidColorBrush(Colors.Red);

                        sNotiTitle   = sTile;
                        sNotiContent = sCont;

                        //sNotiSound = /*"/Lib_Rsc;component/" +*/ "Media/BociBociTarka.wav";
                        sNotiSound = /*"/Lib_Rsc;component/" +*/ "Media/Ding.wav";
                    }
                    else
                    {
                        if (iCount_NonAckAll > 0)
                        {
                            brBk = new SolidColorBrush(Colors.Orange);
                        }
                        else
                        {
                            brBk = new SolidColorBrush(Colors.Green);
                        }
                    }
                    brFore = new SolidColorBrush(Colors.White);

                    dFontSize = 11;

                    break;
                }

                default:
                {
                    sCnt = "???";
                    break;
                }
                }
            }
            catch (Exception e)
            {
                //Do not generate too many err files...
                RscStore.AddSysEvent(e, "Tile_Info_Title_Createion_Error");

                sErr = e.Message + "\r\n" + e.StackTrace;
                sCnt = "ERR!";
            }

            return(sCnt);
        }
Пример #9
0
        public static bool VersionUpgrade(string sUserIDlast, bool bChkOnly)
        {
            RscStore store = new RscStore();

            string sFolder = AppLogic.csSecretsFolder + "\\" + sUserIDlast + "\\" + "Threads";

            int iOldVer = 0;

            if (!store.FolderExists(sFolder))
            {
                if (bChkOnly)
                {
                    return(true);                           //NOTHING stored yet...
                }
                store.CreateFolderPath(sFolder);
            }

            string sVersion = store.ReadTextFile(sFolder + "\\" + "Version.txt", "0");

            if (sVersion == ciCurrentVersion.ToString())
            {
                return(true);
            }

            if (bChkOnly)
            {
                return(false);
            }

            if (!Int32.TryParse(sVersion, out iOldVer))
            {
                iOldVer = 0;
            }

            // //
            //

            int iVer = iOldVer;

            for (;;)
            {
                if (iVer >= ciCurrentVersion)
                {
                    break;
                }

                switch (iVer)
                {
                case 0:
                case 100:
                case 101:
                {
                    string [] asIDs = store.GetFolderNames(sFolder, "*.*");

                    int iSubCntr = 0;

                    for (int i = 0; i < asIDs.Length; i++)
                    {
                        string sIdOrder = "";
                        sIdOrder = store.ReadTextFile(sFolder + "\\" + asIDs[i] + "\\" + "IdOrder" + ".txt", sIdOrder);
                        string [] asIdOrders = sIdOrder.Split('|');

                        iSubCntr += asIdOrders.Length;

                        string sId = asIdOrders[asIdOrders.Length - 1];

                        MyThread2 th = new MyThread2();
                        th = store.ReadXmlDataFile(sFolder + "\\" + asIDs[i] + "\\" + sId + ".xml", th);
                        if (th.ID.Length == 0)
                        {
                            return(false);                                    //FAIL!!!
                        }
                        string sTmp = "";

                        sTmp += th.DateSaved.Year.ToString();
                        sTmp += RscUtils.pad60(th.DateSaved.Month);
                        sTmp += RscUtils.pad60(th.DateSaved.Day);
                        sTmp += "_";
                        sTmp += RscUtils.pad60(th.DateSaved.Hour);
                        sTmp += RscUtils.pad60(th.DateSaved.Minute);
                        sTmp += RscUtils.pad60(th.DateSaved.Second);
                        sTmp += "_";
                        int iMs = th.DateSaved.Millisecond;
                        if (iMs < 10)
                        {
                            sTmp += "00";
                        }
                        else
                        {
                            if (iMs < 100)
                            {
                                sTmp += "0";
                            }
                        }
                        sTmp += iMs.ToString();

                        asIDs[i] = sTmp + "|" + asIDs[i];
                    }

                    asIDs = RscSort.OrderBy(asIDs, true);

                    /*
                     * StringBuilder sb = new StringBuilder();
                     */

                    string sRes = "";

                    foreach (string sID in asIDs)
                    {
                        /*
                         * sb.AppendLine( sID );
                         */

                        if (sRes.Length > 0)
                        {
                            sRes += "|";
                        }
                        sRes += sID.Substring(20);
                    }

                    /*
                     * sb.Append( "\r\n" );
                     * sb.Append( "Cntr: " + asIDs.Length.ToString() + "\r\n" );
                     * sb.Append( "Sub-Cntr: " + iSubCntr.ToString() + "\r\n" );
                     * store.WriteTextFile( "A:\\GMail.txt", sb.ToString(), true );
                     */

                    store.WriteTextFile(sFolder + "\\" + "IdOrder" + ".txt", sRes, true);

                    iVer = 102;

                    break;
                }

                //Denie endless loop...
                default:
                    iVer = ciCurrentVersion;
                    break;
                }

                store.WriteTextFile(sFolder + "\\" + "Version.txt", iVer.ToString(), true);
            }

            //
            // //

            return(true);
        }
Пример #10
0
        public override string GetInfo(bool bForSysTile, string sIcoId, out Brush brBk, out Brush brFore,
                                       out double dFontSize, out string sErr,
                                       out string sNotiTitle, out string sNotiContent, out string sNotiSound,
                                       bool bCalledByAgent, object oAgentParam, out string sInfoToChngChk)
        {
            brBk      = null;
            brFore    = null;
            dFontSize = 0;
            sErr      = "";

            sNotiTitle   = "";
            sNotiContent = "";
            sNotiSound   = "";

            sInfoToChngChk = "";

            string sCnt = "";

            try
            {
                switch (sIcoId)
                {
                case "sysTm":
                {
                    DateTime dNow = DateTime.Now;
                    sCnt += RscUtils.pad60(dNow.Hour) +
                            ":" + RscUtils.pad60(dNow.Minute);

                    if (bForSysTile)
                    {
                        sCnt += "\n\n(as of)";
                    }
                    else
                    {
                        sCnt += "\n:" + RscUtils.pad60(dNow.Second);
                    }

                    break;
                }

                case "sysDtFull":
                {
                    DateTime dNow = DateTime.Now;
                    sCnt += dNow.Year.ToString() +
                            ".\n" + RscUtils.pad60(dNow.Month) + "." +
                            RscUtils.pad60(dNow.Day) + ".";
                    break;
                }

                case "sysDtDay":
                {
                    DateTime dNow = DateTime.Now;
                    sCnt += RscUtils.pad60(dNow.Day) + ". ";
                    switch (dNow.DayOfWeek)
                    {
                    case DayOfWeek.Monday: sCnt += "H"; break;

                    case DayOfWeek.Tuesday: sCnt += "K"; break;

                    case DayOfWeek.Wednesday: sCnt += "Sze"; break;

                    case DayOfWeek.Thursday: sCnt += "Cs"; break;

                    case DayOfWeek.Friday: sCnt += "P"; break;

                    case DayOfWeek.Saturday: sCnt += "Szo"; break;

                    case DayOfWeek.Sunday: sCnt += "V"; break;
                    }

                    sCnt += "\n" + RscUtils.pad60(RscUtils.WeekOfYearHU(dNow)) + ". hét";
                    break;
                }

                case "sysFsFree":
                {
                    string sIsoStoreDrive = "";
                    long   lFree          = RscStore.AvailableFreeSpace(out sIsoStoreDrive);

                    sCnt += RscUtils.toMBstr(lFree, true);

                    if (sIsoStoreDrive.Length > 0)
                    {
                        sCnt = sIsoStoreDrive + "\n" + sCnt;
                    }

                    sNotiTitle   = "Free Space";
                    sNotiContent = sCnt.Replace('\n', ' ');

                    sInfoToChngChk = RscUtils.toMBstr(lFree, true, false, 1);

                    break;
                }

                case "sysBatPow":
                {
                    sCnt += Windows.Phone.Devices.Power.Battery.GetDefault().RemainingChargePercent.ToString() + " %";

                    if (Microsoft.Phone.Info.DeviceStatus.PowerSource == Microsoft.Phone.Info.PowerSource.Battery)
                    {
                        sCnt += "";                                 //"\n\nBATT";
                    }
                    else
                    {
                        sCnt += "\n\nCHRG";
                    }

                    if (Windows.Phone.Devices.Power.Battery.GetDefault().RemainingChargePercent >= 100 &&
                        Microsoft.Phone.Info.DeviceStatus.PowerSource != Microsoft.Phone.Info.PowerSource.Battery)
                    {
                        brBk   = new SolidColorBrush(Colors.Red);
                        brFore = new SolidColorBrush(Colors.White);

                        sNotiTitle   = "Battery Charge";
                        sNotiContent = sCnt.Replace('\n', ' ');

                        //sNotiSound = /*"/Lib_Rsc;component/" +*/ "Media/BociBociTarka.wav";
                        sNotiSound = /*"/Lib_Rsc;component/" +*/ "Media/DingDing.wav";
                    }

                    break;
                }

                case "sysCellNet":
                {
                    dFontSize = 11;

                    string sCmo = DeviceNetworkInformation.CellularMobileOperator;
                    for (int i = 0; i < 1; i++)
                    {
                        int iPos = sCmo.IndexOf(' ');
                        if (iPos < 0)
                        {
                            sCmo += "\n";
                            //if( i == 0 ) sCmo += "\n";
                            break;
                        }

                        sCmo = sCmo.Substring(0, iPos) + "\n" + sCmo.Substring(iPos + 1);
                    }

                    sCnt += sCmo + "\n";

                    if (DeviceNetworkInformation.IsCellularDataEnabled)
                    {
                        sCnt += "d(ata) ON";
                    }
                    else
                    {
                        sCnt += "d(ata) OFF";
                    }
                    sCnt += "\n";

                    if (DeviceNetworkInformation.IsCellularDataRoamingEnabled)
                    {
                        sCnt += "d roam ON";
                    }
                    else
                    {
                        sCnt += "d roam OFF";
                    }

                    break;
                }

                case "sysCnt_Note":
                {
                    int iCount = 0;

                    RscStore store = new RscStore();

                    if (store.FolderExists("A:\\Documents\\Notes"))
                    {
                        string[] fles = store.GetFileNames("A:\\Documents\\Notes", "*.txt");
                        iCount = fles.Length;
                    }

                    brBk   = new SolidColorBrush(Color.FromArgb(255, 252, 244, 178));
                    brFore = new SolidColorBrush(Colors.Black);
                    sCnt  += iCount.ToString() + "\n\nnotes";

                    break;
                }

                case "sysCnt_Anni":
                {
                    int iCntRed    = 0;
                    int iCntOrange = 0;
                    int iCntGreen  = 0;
                    int iCntBlue   = 0;
                    int iCntGray   = 0;

                    RscStore store = new RscStore();

                    if (store.FolderExists("A:\\Documents\\Dates"))
                    {
                        string[] fles = RscSort.OrderBy(store.GetFileNames("A:\\Documents\\Dates", "*.txt"));
                        foreach (string sFle in fles)
                        {
                            bool   bTmp;
                            string sDate = store.ReadTextFile("A:\\Documents\\Dates" + "\\" + sFle, "", out bTmp);

                            if (sDate.Length == 0)
                            {
                                continue;
                            }

                            DateTime dtNow = DateTime.Now;
                            string   sYnow = dtNow.Year.ToString();
                            string   sMnow = dtNow.Month.ToString();

                            int iCyc = 0;
                            for (iCyc = 0; iCyc < 2; iCyc++)
                            {
                                string sY;
                                string sM;
                                string sD;

                                bool bAnniver = (sDate.Substring(2, 1) == ".");
                                if (bAnniver)
                                {
                                    if (sDate.Length == 3)
                                    {
                                        sY = sYnow;
                                        sM = sMnow;
                                        sD = sDate.Substring(0, 2);

                                        //FIX...
                                        //sMnow = (dtNow.Month + 1).ToString();
                                        if (dtNow.Month >= 12)
                                        {
                                            sMnow = "1";
                                            sYnow = (dtNow.Year + 1).ToString();
                                        }
                                        else
                                        {
                                            sMnow = (dtNow.Month + 1).ToString();
                                        }
                                    }
                                    else
                                    {
                                        sY = sYnow;
                                        sM = sDate.Substring(0, 2);
                                        sD = sDate.Substring(3, 2);

                                        sYnow = (dtNow.Year + 1).ToString();
                                    }
                                }
                                else
                                {
                                    sY = sDate.Substring(0, 4);
                                    sM = sDate.Substring(5, 2);
                                    sD = sDate.Substring(8, 2);
                                }

                                int iY = 1901; Int32.TryParse(sY, out iY);                                        //parseInt(sY);
                                int iM = 1; Int32.TryParse(sM, out iM);                                           //parseInt(sM);
                                int iD = 1; Int32.TryParse(sD, out iD);                                           //parseInt(sD);

                                dtNow = DateTime.Now;
                                DateTime dt1 = new DateTime(dtNow.Year, dtNow.Month, dtNow.Day);
                                DateTime dt2 = new DateTime(iY, iM, iD);

                                //var dDiff = dt1.getTime() - dt2.getTime();
                                TimeSpan tsDiff = dt1 - dt2;
                                double   dDiff  = tsDiff.TotalMilliseconds;

                                double dDiffD = Math.Floor(dDiff / (1000 * 3600 * 24));

                                /*
                                 * double dDiffW;
                                 * if( dDiffD < 0 )
                                 * {
                                 *      dDiffW = Math.Round((dDiffD * -1) / 7, 0) * -1;
                                 * }
                                 * else
                                 * {
                                 *      dDiffW = Math.Round(dDiffD / 7, 0);
                                 * }
                                 */

                                if (bAnniver && (dDiffD > 7))
                                {
                                    continue;
                                }

                                /*
                                 * var sWtit = dDiffW.ToString() +
                                 *      "w " + (dDiffD - (dDiffW * 7)).ToString() + "d";
                                 */

                                if (bAnniver)
                                {
                                    if ((dDiffD * dDiffD) < 10)
                                    {
                                        iCntRed++;
                                    }
                                    else
                                    {
                                        if ((dDiffD * dDiffD) < 50)
                                        {
                                            iCntOrange++;
                                        }
                                        else
                                        {
                                            if ((dDiffD * dDiffD) < 197)
                                            {
                                                iCntGreen++;
                                            }
                                            else
                                            {
                                                iCntBlue++;
                                            }
                                        }
                                    }
                                }
                                else
                                {
                                    iCntGray++;
                                }
                            }
                        }
                    }

                    int    iCnt = 0;
                    string sMsg = "";
                    if (iCntRed > 0)
                    {
                        sMsg   = "+/- 3d";
                        iCnt   = iCntRed;
                        brBk   = new SolidColorBrush(Colors.Red);
                        brFore = new SolidColorBrush(Colors.White);
                    }
                    else if (iCntOrange > 0)
                    {
                        sMsg   = "+/- 1w";
                        iCnt   = iCntOrange;
                        brBk   = new SolidColorBrush(Colors.Orange);
                        brFore = new SolidColorBrush(Colors.White);
                    }
                    else if (iCntGreen > 0)
                    {
                        sMsg   = "2w";
                        iCnt   = iCntGreen;
                        brBk   = new SolidColorBrush(Colors.Green);
                        brFore = new SolidColorBrush(Colors.White);
                    }
                    else if (iCntBlue > 0)
                    {
                        sMsg = "> 2w";
                        iCnt = iCntBlue;
                        brBk = new SolidColorBrush(Colors.Blue);
                    }
                    else                             //if( iCntGray > 0 )
                    {
                        sMsg = "dates";
                        iCnt = /*iCntBlue +*/ iCntGray;

                        //Use default...
                        //brBk = new SolidColorBrush(Colors.Black);
                        //brFore = new SolidColorBrush( Colors.White );
                    }

                    sCnt += iCnt.ToString() + "\n\n" + sMsg;

                    sNotiTitle   = "Anniversary";
                    sNotiContent = sCnt.Replace('\n', ' ');

                    break;
                }

                case "sysCnt_WebDog":
                {
                    RscStore store = new RscStore();

                    if (store.FileExists("A:\\Documents\\WebDogUri.txt"))
                    {
                        DateTimeOffset dtf    = store.GetFileLastWriteTime("A:\\Documents\\WebDogUri.txt");
                        DateTime       dt     = dtf.DateTime;
                        DateTime       dtNow  = DateTime.Now;
                        TimeSpan       tsDiff = dtNow - dt;

                        bool   bTmp;
                        string sUri = store.ReadTextFile("A:\\Documents\\WebDogUri.txt", "", out bTmp);
                        if (sUri.Length > 0)
                        {
                            try
                            {
                                Uri    uri  = new Uri(sUri, UriKind.Absolute);
                                string sDns = uri.DnsSafeHost;

                                if (sDns.Length > 5)
                                {
                                    sDns  = sDns.Substring(0, 5);
                                    sDns += "...";
                                }

                                sCnt += sDns;
                            }
                            catch (Exception)
                            {
                            }
                        }
                        sCnt += "\n";

                        //sCnt = RscUtils.toDurationStr( tsDiff.Duration() );
                        if (Math.Floor(tsDiff.TotalDays) > 0)
                        {
                            brBk   = new SolidColorBrush(Colors.Red);
                            brFore = new SolidColorBrush(Colors.White);

                            sCnt += Math.Floor(tsDiff.TotalDays).ToString() + "\nday(s)";
                        }
                        else if (Math.Floor(tsDiff.TotalHours) > 0)
                        {
                            //Use Default...
                            //brBk = new SolidColorBrush( Colors.Black );
                            //brFore = new SolidColorBrush( Colors.White );

                            sCnt += Math.Floor(tsDiff.TotalHours).ToString() + "\nhour(s)";
                        }
                        else                                 //if( Math.Floor( tsDiff.TotalMinutes ) > 0 )
                        {
                            //Use Default...
                            //brBk = new SolidColorBrush( Colors.Black );
                            //brFore = new SolidColorBrush( Colors.White );

                            sCnt += Math.Floor(tsDiff.TotalMinutes).ToString() + "\nmin(s)";
                        }

                        /*
                         * else //if( Math.Floor( tsDiff.TotalSeconds ) > 0 )
                         * {
                         *      //Use Default...
                         *      //brBk = new SolidColorBrush( Colors.Black );
                         *      //brFore = new SolidColorBrush( Colors.White );
                         *
                         *      sCnt += Math.Floor( tsDiff.TotalSeconds ).ToString() + "\n\nsec(s)";
                         * }
                         */
                    }
                    else
                    {
                        if (bForSysTile)
                        {
                            //Use Default...
                            //brBk = new SolidColorBrush( Colors.Black );
                            //brFore = new SolidColorBrush( Colors.White );
                        }
                        else
                        {
                            brBk   = new SolidColorBrush(Color.FromArgb(0, 0, 0, 0));
                            brFore = new SolidColorBrush(Colors.Black);
                        }
                    }

                    break;
                }

                case "sysCnt_Event":
                {
                    int iCountErr = 0;
                    int iCountInf = 0;

                    RscStore store = new RscStore();

                    if (store.FolderExists("A:\\System\\Events"))
                    {
                        string[] fles = store.GetFileNames("A:\\System\\Events", "*.error");
                        iCountErr = fles.Length;

                        fles      = store.GetFileNames("A:\\System\\Events", "*.info");
                        iCountInf = fles.Length;

                        if (iCountErr > 0)
                        {
                            brBk   = new SolidColorBrush(Colors.Red);
                            brFore = new SolidColorBrush(Colors.White);
                        }
                        else if (iCountInf > 0)
                        {
                            brBk   = new SolidColorBrush(Colors.Blue);
                            brFore = new SolidColorBrush(Colors.White);
                        }
                        else
                        {
                            //Use Default...
                            //brBk = new SolidColorBrush( Colors.Black );
                            //brFore = new SolidColorBrush( Colors.White );
                        }
                    }

                    sCnt += iCountErr.ToString() + " err\n"
                            /*+ "\n"*/
                            + iCountInf.ToString() + " inf";

                    break;
                }

                case "sysCnt_PerDay":
                {
                    sCnt += "";

                    if (bForSysTile)
                    {
                        //Use Default...
                        //brBk = new SolidColorBrush( Colors.Black );
                        //brFore = new SolidColorBrush( Colors.White );
                    }
                    else
                    {
                        brBk   = new SolidColorBrush(Color.FromArgb(0, 0, 0, 0));
                        brFore = new SolidColorBrush(Colors.Black);
                    }

                    RscStore store = new RscStore();

                    if (store.FolderExists("A:\\Documents\\PerDay"))
                    {
                        bool   bTmp;
                        string sTx = store.ReadTextFile("A:\\Documents\\PerDay\\Default.txt", "", out bTmp);
                        if (sTx.Length > 0)
                        {
                            string [] aTx = sTx.Split('|');
                            if (aTx.Length == 5)
                            {
                                int iY = Int32.Parse(aTx[0]);
                                int iM = Int32.Parse(aTx[1]);
                                int iD = Int32.Parse(aTx[2]);

                                DateTime dtNow = DateTime.Now;

                                DateTime d1 = new DateTime(dtNow.Year, dtNow.Month, dtNow.Day);
                                DateTime d2 = new DateTime(iY, iM, iD);

                                TimeSpan ts    = d2 - d1;
                                int      iDays = Math.Max(1, (int)Math.Round(ts.TotalDays, 0));

                                double dAmo = double.Parse(aTx[3]);
                                if (dAmo != 0)
                                {
                                    int iRes = (int)Math.Round(dAmo / iDays, 0);

                                    string sUnit = "";
                                    if (aTx[4].Length > 0)
                                    {
                                        sUnit = " " + aTx[4];
                                    }

                                    sCnt += aTx[3] + sUnit + "\n"
                                            + /*(iY % 1000).ToString()*/ aTx[0] + "." + RscUtils.pad60(iM) + "." + RscUtils.pad60(iD) + "." + "\n"
                                            + "----------" + "\n"
                                            + iRes.ToString() + sUnit + "\n"
                                            + "/ day" + " (" + Math.Max(0, (int)Math.Round(ts.TotalDays, 0)).ToString() + ")";

                                    brBk   = new SolidColorBrush(Colors.Gray);
                                    brFore = new SolidColorBrush(Colors.White);

                                    dFontSize = 11;
                                }
                            }
                        }
                    }

                    break;
                }

                default:
                {
                    sCnt = "???";
                    break;
                }
                }
            }
            catch (Exception e)
            {
                //Do not generate too many err files...
                RscStore.AddSysEvent(e, "Tile_Info_Title_Createion_Error");

                sErr = e.Message + "\r\n" + e.StackTrace;
                sCnt = "ERR!";
            }

            return(sCnt);
        }
        private void Touch_FrameReported(object sender, System.Windows.Input.TouchFrameEventArgs e)
        {
            string sLog;

            DateTime dNow = DateTime.Now;

            sLog = RscUtils.pad60(dNow.Minute) + ":" + RscUtils.pad60(dNow.Second) + " - ";

            TouchPoint primaryTouchPoint = e.GetPrimaryTouchPoint(null);

            if (primaryTouchPoint == null)
            {
                sLog += "null";
                lstLog.Items.Insert(0, sLog);
            }
            else
            {
                if (primaryTouchPoint.TouchDevice.DirectlyOver != imgTestArea)
                {
                    return;
                }
                else
                {
                    if (primaryTouchPoint.Action == TouchAction.Down)
                    {
                        ptStart = primaryTouchPoint.Position;
                    }

                    sLog += primaryTouchPoint.Action.ToString();
                    lstLog.Items.Insert(0, sLog);

                    sLog  = "      ";
                    sLog += primaryTouchPoint.Position.ToString();
                    lstLog.Items.Insert(1, sLog);

                    sLog  = "      ";
                    sLog += primaryTouchPoint.Size.ToString();
                    lstLog.Items.Insert(2, sLog);

                    sLog = "      ";
                    if (ptStart.X <= primaryTouchPoint.Position.X)
                    {
                        sLog += "Right";
                    }
                    else
                    {
                        sLog += "Left";
                    }
                    lstLog.Items.Insert(3, sLog);

                    sLog = "      ";
                    if (ptStart.Y <= primaryTouchPoint.Position.Y)
                    {
                        sLog += "Down";
                    }
                    else
                    {
                        sLog += "Top";
                    }
                    lstLog.Items.Insert(4, sLog);

                    /*
                     * sLog = "      ";
                     * sLog += (primaryTouchPoint.Position.X - ptStart.X).ToString();
                     * sLog += ":";
                     * sLog += (primaryTouchPoint.Position.Y - ptStart.Y).ToString();
                     * lstLog.Items.Insert(5, sLog);
                     *
                     * sLog = "      ";
                     * sLog += ptStart.ToString();
                     * lstLog.Items.Insert(6, sLog);
                     */
                }
            }
        }