コード例 #1
0
 private void Tool_Changed(FMember member, MemberChangedEventArgs <int> e)
 {
     // Tool index
     //MyTextBlock.Text = e.NewValue.ToString();
     //MyTextBlock.Text = member.DisplayValue;
     tbToolNext.Text = String.Format("Next Tool (Active Tcode): {0}", e.NewValue.ToString());
 }
コード例 #2
0
        void _userValue_Changed(object sender, MemberChangedEventArgs e)
        {
            OnPropertyChanged("UserValue");

            ClearCache();
            OnPropertyChanged("Correct");
        }
コード例 #3
0
 private virtual void OnMemberYChanged(MemberChangedEventArgs e)
 {
     if (MemberYChanged != null)
     {
         MemberYChanged(this, e);
     }
 }
コード例 #4
0
 private void Tool_Number_In_Spindle_Changed(FMember member, MemberChangedEventArgs <int> e)
 {
     // Tool Number NOW in Spindle.
     //MyTextBlock.Text = e.NewValue.ToString();
     //MyTextBlock.Text = member.DisplayValue;
     tbToolCurrent.Text = String.Format("Current Tool in Spindle: {0}", e.NewValue.ToString());
     tbEditTool.Text    = Tool_Number_In_Spindle.Value.ToString();
 }
コード例 #5
0
 private void _name_ValueChanged(object sender,
                                 MemberChangedEventArgs <HelperChangeType, string> e)
 {
     switch (e.TypeOfChange)
     {
     case HelperChangeType.Name:
         OnPropertyChanged("Name");
         break;
     }
 }
コード例 #6
0
 private void _name_ValueChanged(object sender, 
     MemberChangedEventArgs<HelperChangeType, string> e)
 {
     switch(e.TypeOfChange)
     {
         case HelperChangeType.Name:
             OnPropertyChanged("Name");
             break;
     }
 }
コード例 #7
0
        private void OutfileLoggingGroup_Changed(FMember member, MemberChangedEventArgs <EOutfileLoggingGroup> e)
        {
            if (e.NewValue == EOutfileLoggingGroup.M31 && controller.DeviceStatus.Value == EDeviceStatus.Open)
            {
                LogStartTime     = DateTime.Now.ToLongTimeString();
                IdleTimeSinceM32 = controller.SendCommand2("P858");
            }

            if (e.NewValue == EOutfileLoggingGroup.M32 && controller.DeviceStatus.Value == EDeviceStatus.Open && OutfileOk && LogStartTime != null)
            {
                // Append the current values of some P-vars to a CSV file each time that M42 becomes active
                bool fileNeedHeader = true;

                try
                {
                    if (!Directory.Exists(OutfilePath))
                    {
                        Directory.CreateDirectory(OutfilePath);
                    }
                    if (File.Exists(OutfilePath + OutfileName))
                    {
                        fileNeedHeader = false;
                    }

                    //using (StreamWriter sw = new StreamWriter("C:\\Outfile\\Outfile.txt", true))
                    using (StreamWriter sw = new StreamWriter(OutfilePath + OutfileName, true))
                    {
                        //here to add a log line to the outfile for the previous machine run
                        //
                        //we log:
                        //  Machine Name:  "Thermie"
                        //  Program Name:  currently loaded program name
                        //  Date:
                        //  Start Time:  time when M31 executed
                        //  End Time:    time when M32 executed
                        //  P850 Prog Cut Time:   G01,G02,G03 Accumulated
                        //  P851 Prog Cycle Time: time for entire program run - all moves,dwells,etc. - NOT In Feedhold
                        //  P852 Prog Total Time: cycle time + M0,M1, Stop(feedhold), Estop not included since would abort rewind
                        //  P853 Cycle Start Cntr: # times cycle start pressed
                        //  P854 Cycle Stop Cntr:  # times cycle Stop pressed
                        //  P855 Tool Change Cntr: # times tool change executed
                        //  P856 Prog Feedrate at M32:  current "F" value at M32 execution
                        //	P857 Prog Override at M32:  current feedrate oride at M32 execution
                        //  P858 Idle Time:  time since last M32
                        //  Auto or Manual: Auto if M32 from program, Manual if from Diag (?)

                        string path = g.ConvertToAbsolutePath(MainProgram.Value);
                        if (path.Length == 0)
                        {
                            path = "Unknown";
                        }

                        string date = DateTime.Now.ToShortDateString();
                        LogEndTime = DateTime.Now.ToLongTimeString();

                        MachineModeM32 = controller.SendCommand2("P859");
                        switch (MachineModeM32)
                        {
                        case "0":
                            MachineModeM32 = "Auto";
                            break;

                        case "1":
                            MachineModeM32 = "Manual";
                            path           = "Manual";
                            break;

                        case "2":
                            MachineModeM32 = "MDI";
                            path           = "MDI";
                            break;

                        default:
                            MachineModeM32 = "Unknown";
                            break;
                        }

                        //here we either report the feed/oride at M32 OR the Average during program running
                        // - this is setup in the INI to enable avg or NOT
                        string reportFeedrate = controller.SendCommand2("P856");
                        if (AvgFeedrateEnable == "1")
                        {
                            reportFeedrate = controller.SendCommand2("P860");
                        }
                        string reportOverride = controller.SendCommand2("P857");
                        if (AvgOverideEnable == "1")
                        {
                            reportOverride = controller.SendCommand2("P861");
                        }


                        //sw.WriteLine(String.Format("{0},{1},{2}",
                        //controller.SendCommand2("P850"), controller.SendCommand2("P851"), controller.SendCommand2("P852")));
                        if (fileNeedHeader)
                        {
                            string feedLabel = "ProgFeed";
                            if (AvgFeedrateEnable == "1")
                            {
                                feedLabel = "ProgFeedAvg";
                            }
                            string orideLabel = "Override";
                            if (AvgFeedrateEnable == "1")
                            {
                                orideLabel = "OverrideAvg";
                            }

                            sw.WriteLine(String.Format("{1}{0}{2}{0}{3}{0}{4}{0}{5}{0}{6}{0}{7}{0}{8}{0}{9}{0}{10}{0}{11}{0}{12}{0}{13}{0}{14}{0}{15}",
                                                       OutfileDelimiter, "MachName", "ProgName", "Date", "M31StartTm", "M32EndTm", "CutTm", "CycleTm", "RunTm", "NumStrts",
                                                       "NumStop", "NumToolChng", feedLabel, orideLabel, "IdleTm", "Auto/Manual/MDI"));
                        }

                        sw.WriteLine(String.Format("{1}{0}{2}{0}{3}{0}{4}{0}{5}{0}{6}{0}{7}{0}{8}{0}{9}{0}{10}{0}{11}{0}{12}{0}{13}{0}{14}{0}{15}",
                                                   OutfileDelimiter, MachineName, path, date, LogStartTime, LogEndTime, controller.SendCommand2("P850"), controller.SendCommand2("P851"),
                                                   controller.SendCommand2("P852"), controller.SendCommand2("P853"), controller.SendCommand2("P854"),
                                                   controller.SendCommand2("P855"), reportFeedrate, reportOverride,
                                                   IdleTimeSinceM32, MachineModeM32));

                        controller.SendCommand2("P858=0");  //clear timer IdleTimeSinceM32
                    }
                }
                catch
                {
                    //here failed for some reason to create the Outfile, too bad, too sad.
                    LargeMessageBox.Show(String.Format("Failed to Write Outfile!\n Path: {0}{1}", OutfilePath, OutfileName), LargeMessageBoxImage.Error);
                    OutfileOk = false;
                }
            }
        }
コード例 #8
0
 void MainProgram_Changed(FMember member, MemberChangedEventArgs <string> e)
 {
 }
コード例 #9
0
 void prop2_Changed(object sender, MemberChangedEventArgs e)
 {
     Assert.IsTrue(e.Member == prop2);
     Assert.AreEqual(e.Member.Owner, this);
     Assert.AreEqual(e.Member.Name, "Prop2");
     prop2Changed = true;
 }
コード例 #10
0
 void _userDismissedValues_Changed(object sender, MemberChangedEventArgs e)
 {
     OnPropertyChanged("UserNonDismissedValues");
 }
コード例 #11
0
 private void AxesDisplay_ChangedAsString(FMember member, MemberChangedEventArgs <string> e)
 {
     //if (e.NewValue != e.OldValue)
     //g.Report(this, EReportType.InformationAlarm, "Axes Display has been changed from {0} to {1}.", e.OldValue, e.NewValue);
 }
コード例 #12
0
 private void AxesDisplay_ChangedAsString(FMember member, MemberChangedEventArgs <string> e)
 {
     //tbAxesDisplay.Text = e.NewValue;
 }