Example #1
0
        private void scint_MarkerChanged(object sender, ScintillaNet.MarkerChangedEventArgs e)
        {
            if (e.Line < 0)
            {
                return;
            }

            // note e.modification type is useless
            bool isAdding = false;

            if (scint.Markers.GetMarkerMask(e.Line) != 0)
            {
                isAdding = true;
            }

            if (isAdding)
            {
                parent.BreakpointChanged(isAdding, this.FileName, e.Line);
            }
        }
Example #2
0
 /// <summary>
 /// Raises the <see cref="MarkerChanged"/> event.
 /// </summary>
 /// <param name="e">An <see cref="MarkerChangedEventArgs"/> that contains the event data.</param>
 protected virtual void OnMarkerChanged(MarkerChangedEventArgs e)
 {
     EventHandler<MarkerChangedEventArgs> handler = Events[_markerChangedEventKey] as EventHandler<MarkerChangedEventArgs>;
     if (handler != null)
         handler(this, e);
 }
Example #3
0
        private void Scintilla_MarkerChanged(object sender, MarkerChangedEventArgs args)
        {
            if (this.Mode.Equals("DEBUG"))
            {
                if (args.Line > -1)
                {
                    if (isDebugTraceMarkerChanged == false)
                   {

                       int mask = this.ActiveDocument.Scintilla.Markers.GetMarkerMask(this.ActiveDocument.Scintilla.Lines[args.Line]);

                        if (mask == 0 || mask == 4)
                        {
                            this.mainForm.debuggerPanel1.sendDeleteBreakPointCommand(new GameEditor.Debugger.BreakPoint(this.ActiveDocument.Text, (args.Line + 1).ToString()));
                        }
                        else if (mask == 1 || mask == 5)
                        {
                            Line line = this.ActiveDocument.Scintilla.Lines[args.Line];

                            if (line.Text.StartsWith("--") ||
                                line.Text.StartsWith("\t\r\n") ||
                                line.Text.StartsWith("\n") ||
                                line.Text.StartsWith("\r"))
                            {
                                line.DeleteMarker(0);
                                return;
                            }

                            this.mainForm.debuggerPanel1.sendAddBreakPointCommand(new GameEditor.Debugger.BreakPoint(this.ActiveDocument.Text, (args.Line + 1).ToString()));
                        }
                    }

                }

            }
        }
		internal void FireModified(NativeScintillaEventArgs ea)
		{
			//	First we fire the INativeScintilla Modified event.
			if(Events[_modifiedEventKey] != null)
				((EventHandler<NativeScintillaEventArgs>)Events[_modifiedEventKey])(this, ea);

			//	Now we use raw information from the Modified event to construct
			//	some more user friendly Events to fire.
			SCNotification scn	= ea.SCNotification;
			int modType			= scn.modificationType;

			if((modType & TEXT_MODIFIED_FLAGS) > 0)
			{
				TextModifiedEventArgs mea = new TextModifiedEventArgs
					(
					modType,
					(modType & Constants.SC_PERFORMED_USER) != 0,
					scn.line,
					scn.position,
					scn.length,
					scn.linesAdded,
					Utilities.IntPtrToString(_encoding, scn.text, scn.length)
					);

				//	Adding in TextChanged because it's really common to 
				//	just want to know when the damned text changed
				bool textChanged = false;

				//	These messages all get fired seperately hence the if else ifs
				if ((modType & Constants.SC_MOD_BEFOREDELETE) > 0)
				{
					OnBeforeTextDelete(mea);
					textChanged = true;
				}
				else if ((modType & Constants.SC_MOD_BEFOREINSERT) > 0)
				{
					OnBeforeTextInsert(mea);
					textChanged = true;
				}
				else if ((modType & Constants.SC_MOD_DELETETEXT) > 0)
				{
					OnTextDeleted(mea);
					textChanged = true;
				}
				else if ((modType & Constants.SC_MOD_INSERTTEXT) > 0)
				{
					OnTextInserted(mea);
					textChanged = true;
				}

				if (textChanged)
				{
					_textChangedTimer.Start();
				}
			}
			else if((modType & Constants.SC_MOD_CHANGEFOLD) > 0)
			{
				FoldChangedEventArgs fea = new FoldChangedEventArgs(scn.line, scn.foldLevelNow, scn.foldLevelPrev, scn.modificationType);
				OnFoldChanged(fea);
			}
			else if((modType & Constants.SC_MOD_CHANGESTYLE) > 0)
			{
				StyleChangedEventArgs sea = new StyleChangedEventArgs(scn.position, scn.length, scn.modificationType);
				OnStyleChanged(sea);
			}
			else if((modType & Constants.SC_MOD_CHANGEMARKER) > 0)
			{
				MarkerChangedEventArgs mea = new MarkerChangedEventArgs(scn.line, scn.modificationType);
				OnMarkerChanged(mea);
			}

			OnDocumentChange(ea);
		}