예제 #1
0
        /// <summary> Shows the "Save To ViewSheets" settings. </summary>
        ///
        /// <returns> true if it succeeds, false if it fails. </returns>
        private bool ShowViewSheetSettingsData()
        {
            // The data package with the active "Save To ViewSheets" settings.
            var settings = new ViewSheets.ViewSheetSettings();
            var result   = ViewSheets.GetSaveToViewSheetSettings(ref settings);

            if (result)
            {
                this.ShowMessage(LocalizationStrings.ShowSaveToSettings, LocalizationStrings.Title);

                // A worker class that display the data.
                var viewSheetDataPackages = new ViewSheetDataPackages();
                viewSheetDataPackages.DumpViewSheetSettings(settings);

                this.ShowMessage(LocalizationStrings.ShowSettingsDialog, LocalizationStrings.Title);
                ViewSheets.ShowSheetSettings();

                result = ViewSheets.GetSaveToViewSheetSettings(ref settings);
                this.ShowMessage(LocalizationStrings.ShowChangedSettings, LocalizationStrings.Title);
                viewSheetDataPackages.DumpViewSheetSettings(settings);

                this.ShowMessage(LocalizationStrings.NowWeWillChangeSettings, LocalizationStrings.Title);

                // Turn them ALL ON
                settings = ViewSheets.SetAllSaveToViewSheetSettings(false);

                // Now set OFF just the option(s) we want do not want active...
                settings.WcsPlane = true;
                settings.Color    = true;
                settings.Zdepth   = true;

                // Now update these new settings into Mastercam.
                if (!ViewSheets.SetSaveToViewSheetSettings(settings))
                {
                    this.ShowMessage(LocalizationStrings.FailedToChangeSettings, LocalizationStrings.Title);
                }

                // And display the altered settings to the user.
                ViewSheets.ShowSheetSettings();
            }

            return(result);
        }
예제 #2
0
        /// <summary> Shows the "data package" for a view sheet. </summary>
        ///
        /// <param name="sheetName"> Name of the ViewSheet to create. </param>
        /// <param name="label">     (Optional) A label to place on the output. </param>
        ///
        /// <returns> true if it succeeds, false if it fails. </returns>
        private bool ShowViewSheetDataPackage(string sheetName, string label = "")
        {
            var sheetIndex = ViewSheets.GetViewSheet(sheetName);

            if (string.IsNullOrEmpty(sheetName) && !this.ShowMessage($"Could not find a sheet named {sheetName}.", LocalizationStrings.Title, true))
            {
                return(false);
            }

            // The data package attached to a ViewSheet
            var data   = new ViewSheets.ViewSheetData();
            var result = ViewSheets.GetViewSheetData(sheetIndex, ref data);

            if (!result)
            {
                if (!this.ShowMessage($"An error occurred retrieving the data for sheet {sheetName} at sheet index {sheetIndex}.",
                                      LocalizationStrings.Title,
                                      true))
                {
                    return(false);
                }
            }

            if (result)
            {
                // A worker class that display the data.
                var viewSheetDataPackages = new ViewSheetDataPackages();
                if (string.IsNullOrEmpty(label))
                {
                    viewSheetDataPackages.DumpViewSheetDataPackage(data, sheetName);
                }
                else
                {
                    viewSheetDataPackages.DumpViewSheetDataPackage(data, sheetName + "[" + label + "]");
                }
            }

            return(result);
        }