示例#1
0
        private void ToggleMark(Gtk.TextIter iter)
        {
            /*
             * If char under iter is a marked symbol, changes for an unmarked symbol and
             * viceversa.
             */
            string uchar;
            Gtk.TextBuffer b;
            Gtk.TextIter iterNext;
            string charToggled = "";
            bool found = true;

            b = iter.Buffer;
            iterNext = iter;
            iterNext.ForwardChar();
            uchar = iter.GetText(iterNext);

            if (uchar == CHECK_UNMARKED /* ☐ */ ){
                charToggled = CHECK_MARKED;
            }else if (uchar == CHECK_MARKED /* ☑ */ ){
                charToggled = CHECK_UNMARKED;
            }else if (uchar == CHECK_XMARKED /* ☒ */ ){
                charToggled = CHECK_UNMARKED;
            }else if (uchar == CHECK_TICK /* ✓ */ ){
                charToggled = CHECK_UNMARKED;
            }else if (uchar == CHECK_BALLOTX /* ✗ */ ){
                charToggled = CHECK_UNMARKED;
            }else{
                found = false;
            }
            if (found){
                b.Delete(ref iter, ref iterNext);
                b.Insert(ref iter, charToggled);
            }
        }
示例#2
0
		// Returns true if line starts with any numbers of leading spaces
		// followed by '*' or '-' and then by a space
		private bool LineNeedsBullet(Gtk.TextIter iter)
		{
			while (!iter.EndsLine ()) {
				switch (iter.Char) {
				case " ":
					iter.ForwardChar ();
					break;
				case "*":
				case "-":
					if (GetIterAtLineOffset(iter.Line, iter.LineOffset + 1).Char.Equals(" ")) {
						return true;
					} else {
						return false;
					}
				default:
					return false;
				}
			}
			return false;
		}
示例#3
0
 private bool CurrentCharIsMark(Gtk.TextIter iter)
 {
     /*
      * Returns true when char under iter is any of mark predefined symbols.
      */
     Gtk.TextIter siguiente = new Gtk.TextIter();
     siguiente = iter;
     siguiente.ForwardChar();
     bool res = false;
     string car = iter.GetText(siguiente);
     foreach (string s in UPATTERNS) {
         if (car == s){
             res = true;
             break;
         }
     }
     return res;
 }