コード例 #1
0
ファイル: frmMain.cs プロジェクト: marsat02/engenious
        /// <summary>
        /// Logs a message to the console
        /// </summary>
        /// <param name="message"></param>
        /// <param name="error"></param>
        private void Log(string message, BuildMessageEventArgs.BuildMessageType type)
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke(new MethodInvoker(delegate()
                {
                    Log(message, type);
                }));
                return;
            }

            switch (type)
            {
            case BuildMessageEventArgs.BuildMessageType.Warning:
                txtLog.SelectionColor = System.Drawing.Color.Orange;
                break;

            case BuildMessageEventArgs.BuildMessageType.Error:
                txtLog.SelectionColor = System.Drawing.Color.Red;
                break;

            default:
                txtLog.SelectionColor = System.Drawing.Color.Black;
                break;
            }

            txtLog.AppendText(message + "\n");
            txtLog.ScrollToCaret();
        }
コード例 #2
0
ファイル: frmMain.cs プロジェクト: marsat02/engenious
        void Builder_ItemProgress(object sender, ItemProgressEventArgs e)
        {
            string message = e.Item + " " + (e.BuildStep & (BuildStep.Build | BuildStep.Clean)).ToString().ToLower() + "ing ";

            BuildMessageEventArgs.BuildMessageType type = BuildMessageEventArgs.BuildMessageType.Information;

            if ((e.BuildStep & Builder.BuildStep.Abort) == Builder.BuildStep.Abort)
            {
                message += "failed!";
                type     = BuildMessageEventArgs.BuildMessageType.Error;
            }
            else if ((e.BuildStep & Builder.BuildStep.Finished) == Builder.BuildStep.Finished)
            {
                message += "finished!";
            }
            Log(message, type);
        }
コード例 #3
0
ファイル: frmMain.cs プロジェクト: marsat02/engenious
        void Builder_BuildStatusChanged(object sender, BuildStep buildStep)
        {
            string message = (buildStep & (BuildStep.Build | BuildStep.Clean)).ToString() + " ";

            BuildMessageEventArgs.BuildMessageType type = BuildMessageEventArgs.BuildMessageType.Information;
            if ((buildStep & Builder.BuildStep.Abort) == Builder.BuildStep.Abort)
            {
                message += "aborted!";
                type     = BuildMessageEventArgs.BuildMessageType.Warning;
            }
            else if ((buildStep & Builder.BuildStep.Finished) == Builder.BuildStep.Finished)
            {
                message += "finished!";
                if (builder.FailedBuilds != 0)
                {
                    message += " " + builder.FailedBuilds.ToString() + " files failed to build!";
                }
            }
            Log(message, type);
        }
コード例 #4
0
ファイル: EffectProcessor.cs プロジェクト: marsat02/engenious
        private string PreprocessMessage(ContentProcessorContext context, string file, string msg, BuildMessageEventArgs.BuildMessageType messageType)
        {
            string[] lines = msg.Split(new char[] { '\n' }, StringSplitOptions.RemoveEmptyEntries);
            for (int i = 0; i < lines.Length; i++)
            {
                if (lines[i].StartsWith("error:", StringComparison.InvariantCultureIgnoreCase))
                {
                    lines[i] = lines[i].Substring("ERROR: 0:".Length);
                    int    eInd     = lines[i].IndexOf(':');
                    string errorLoc = "";
                    if (eInd != -1)
                    {
                        errorLoc = "(" + lines[i].Substring(0, eInd) + ")";
                        lines[i] = lines[i].Substring(eInd + 1);
                    }
                    lines[i] = errorLoc + ":ERROR:" + lines[i];
                }
                else
                {
                }
                context.RaiseBuildMessage(file, lines[i], messageType);
            }

            return(string.Join("\n", lines));
        }
コード例 #5
0
ファイル: ContentContext.cs プロジェクト: marsat02/engenious
 public void RaiseBuildMessage(string filename, string message, BuildMessageEventArgs.BuildMessageType messageType)
 {
     BuildMessage?.Invoke(this, new BuildMessageEventArgs(filename, message, messageType));
 }