Package ket

Examples of ket.Message


    displayText(getMessage(), true);
  }

  @Override 
  public void cleanAfterRespond() {
    Message m = getMessage();
    String line = m.getLine();
    if (line.indexOf('$')!=-1) {
      String[] parts = line.split("\\$");
      Branch paragraph = new Branch(Function.SENTENCE); // Chooose between SENTENCE, PARAGRAPH etc. more carefully.
      for (int i=0; i<parts.length; i++) {
        String p = parts[i];
        if (i%2==0) {
          paragraph.append(new Token(new Text(p)));
        } else {
          Argument u = getDocument().parseArgument(p);
          paragraph.append(u);
        }
      }
      getSelection().replace(paragraph);
    } else {
      displayText(m, false);
    }
    m.cancelAndClear();
    modes.getMathCollection().updateUndoStack();
  }
View Full Code Here


   * Append the last ketUI.chord's key press to the current message and respond
   * appropriately to complete messages.
   */
  @Override
  public void respondToChordEvent(Chord chord, Macros macros, KeyboardEventHandler keyboardEventHandler) {
    Message message = getMessage();
    assert modes.getDocumentState()==DocumentState.UPDATE_TEXT;
    chord.appendLastKeypressToMessage(message, true);
    //! If text mode changed to equation display it will handle drawing internally.
    if (modes.getDocumentState()==DocumentState.UPDATE_TEXT) {
      displayText(message, true);
    }
    if (!message.isComplete()) {
      // Continue appending characters while in message.APPEND_MODE.
      chord.setComplete(false);
      return;
    }
    String messageString = message.getLine();
    String processedMessageString = processNextChordIterationString(messageString, chord);
    if (processedMessageString==null) {
      // TODO: Display a suitable error message if not already done so?
      chord.setError(true);
      return;
View Full Code Here

    chord.appendMessage(processedMessageString);
    return;
  }

  public boolean textSelect(Position p) {
    Message message = modes.getMessage();
    Box box = findDeepestBox(p);
    Argument finishArgument = box!=null ? box.getArgument() : null;
    if ( ! (box instanceof BoxText) ) {
      return false;
    }
    int index = ((BoxText) box).getIndex(p);
    if (index==-1) {
      return false;
    }
    displayText(message, false); //-?
    message.setIndex(index);
    displayText(message, true);
    return true;
  }
View Full Code Here

    return true;
  }
 
  @Override 
  public void respondToMouseClick(MouseButton mouseButton, boolean singleClick, Position p) {
    Message message = modes.getMessage();
    Ket.out.println("current selection = " + getCurrent());
    switch (mouseButton) {
      case LEFT:
        Argument finishArgument = findDeepestArgument(p);
        Ket.out.println("finish argument = " + (finishArgument!=null ? finishArgument : null));
        if (modes.getDocumentState()==DocumentState.UPDATE_TEXT) {
          boolean done = textSelect(p);
          if (done) {
            return;
          }
        }
        // Otherwise clear selection.
        String messageString = message.getLine();
        processNextChordIterationString(messageString, null); //?
        modes.setDocumentState(DocumentState.NORMAL);
        if ( ! singleClick && finishArgument!=null ) {
          // Double click to go on to select what was clicked on.
          setCurrent(finishArgument);
View Full Code Here

   * appropriately to complete messages.
   */
  @Override 
  public void respondToChordEvent(Chord chord, Macros macros, KeyboardEventHandler keyboardEventHandler) {
    // TODO: Merge methods:
    Message message = getMessage();
    assert modes.getDocumentState()!=DocumentState.UPDATE_TEXT;
    chord.appendLastKeypressToMessage(message, false);
    if (message.isComplete()) {
      String messageString = message.getLine();
      String processedMessageString = processNextChordIterationString(messageString, chord);
      if (processedMessageString!=null) {
        chord.appendMessage(processedMessageString);
        //- System.out.println("#1" + chord.isComplete());
        //- System.out.println("#1" + modes.getDocumentState());
View Full Code Here

    }
  }

  private boolean messageBoxClick(boolean singleClick, Position p) {
    Document document = modes.getDocument();
    Message message = modes.getMessage();
    KetPanel ketPanel = document.getKetPanel();
    // box list: (BoxWord) start, (BoxWord) "|", (BoxWord) end
    BoxList messageBox = ketPanel.getMessageBoxList();
    if (messageBox==null) return false;
    Box clickedOn = messageBox.findDeepestBox(p);
    boolean messageBoxClick = clickedOn!=null;
    if (!messageBoxClick) return false;
    Vector<Box> children = messageBox.getChildren();
    if (children.size()!=3) return false;
    BoxWord startBoxWord = (BoxWord) children.get(0);
    BoxWord endBoxWord = (BoxWord) children.get(2);
    int index = -1;
    if (startBoxWord==clickedOn) {
      index = startBoxWord.getIndex(p)-1;
    } else if (endBoxWord==clickedOn) {
      // Including cursor index.
      int indent = message.getStart().length();
      index = indent + endBoxWord.getIndex(p) + 1;
    } else {
      return false;
    }
    if (index==-1) return false;
    message.setIndex(index);
    return true;
  }
View Full Code Here

      case LEFT:
        if (singleClick) {
          // TODO: Refactor this as soon as possible.
          // TODO: Accept any text changes.
          // Think about this pivot carefully:
          Message message = modes.getMessage();
          String messageString = message.getLine();
          processNextChordIterationString(messageString, null);
          modes.setDocumentState(DocumentState.NORMAL);
        } else {
          //- mouseEventHandler.edit();
          modes.getNormalMode().editCurrentArgument();
View Full Code Here

    }
    Ket.out.println(" ----------------------------------- ");
    Ket.out.println(" process next chord iteration string ");
    Ket.out.println("string = " + string);
    Ket.out.println(" ----------------------------------- ");
    Message message = getMessage();
    String messageString = message.getLine();
    Text updatedText = new Text(messageString);
    getSelection().replace(new Token(updatedText));
    return string;
  }
View Full Code Here

TOP

Related Classes of ket.Message

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.