Blame wrapper/org/GNOME/Accessibility/AtkEditableText.java

Packit Service 31d16d
/*
Packit Service 31d16d
 * Java ATK Wrapper for GNOME
Packit Service 31d16d
 * Copyright (C) 2009 Sun Microsystems Inc.
Packit Service 31d16d
 *
Packit Service 31d16d
 * This library is free software; you can redistribute it and/or
Packit Service 31d16d
 * modify it under the terms of the GNU Lesser General Public
Packit Service 31d16d
 * License as published by the Free Software Foundation; either
Packit Service 31d16d
 * version 2.1 of the License, or (at your option) any later version.
Packit Service 31d16d
 *
Packit Service 31d16d
 * This library is distributed in the hope that it will be useful,
Packit Service 31d16d
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service 31d16d
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit Service 31d16d
 * Lesser General Public License for more details.
Packit Service 31d16d
 *
Packit Service 31d16d
 * You should have received a copy of the GNU Lesser General Public
Packit Service 31d16d
 * License along with this library; if not, write to the Free Software
Packit Service 31d16d
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
Packit Service 31d16d
 */
Packit Service 31d16d
Packit Service 31d16d
package org.GNOME.Accessibility;
Packit Service 31d16d
Packit Service 31d16d
import javax.accessibility.*;
Packit Service 31d16d
import java.awt.Toolkit;
Packit Service 31d16d
import java.awt.datatransfer.StringSelection;
Packit Service 31d16d
import javax.swing.text.*;
Packit Service 31d16d
Packit Service 31d16d
public class AtkEditableText extends AtkText {
Packit Service 31d16d
Packit Service 31d16d
  AccessibleEditableText acc_edt_text;
Packit Service 31d16d
Packit Service 31d16d
  public AtkEditableText (AccessibleContext ac) {
Packit Service 31d16d
    super(ac);
Packit Service 31d16d
    acc_edt_text = ac.getAccessibleEditableText();
Packit Service 31d16d
  }
Packit Service 31d16d
Packit Service 31d16d
  public void set_text_contents (String s) {
Packit Service 31d16d
    acc_edt_text.setTextContents(s);
Packit Service 31d16d
  }
Packit Service 31d16d
Packit Service 31d16d
  public void insert_text (String s, int position) {
Packit Service 31d16d
    if (position < 0) {
Packit Service 31d16d
      position = 0;
Packit Service 31d16d
    }
Packit Service 31d16d
Packit Service 31d16d
    acc_edt_text.insertTextAtIndex(position, s);
Packit Service 31d16d
  }
Packit Service 31d16d
Packit Service 31d16d
  public void copy_text (int start, int end) {
Packit Service 31d16d
    int n = acc_edt_text.getCharCount();
Packit Service 31d16d
Packit Service 31d16d
    if (start < 0) {
Packit Service 31d16d
      start = 0;
Packit Service 31d16d
    }
Packit Service 31d16d
Packit Service 31d16d
    if (end > n || end == -1) {
Packit Service 31d16d
      end = n;
Packit Service 31d16d
    } else if (end < -1) {
Packit Service 31d16d
      end = 0;
Packit Service 31d16d
    }
Packit Service 31d16d
Packit Service 31d16d
    String s = acc_edt_text.getTextRange(start, end);
Packit Service 31d16d
    if (s != null) {
Packit Service 31d16d
      StringSelection stringSel = new StringSelection(s);
Packit Service 31d16d
      Toolkit.getDefaultToolkit().getSystemClipboard().setContents(stringSel,
Packit Service 31d16d
                                                                   stringSel
Packit Service 31d16d
                                                                   );
Packit Service 31d16d
    }
Packit Service 31d16d
  }
Packit Service 31d16d
Packit Service 31d16d
  public void cut_text (int start, int end) {
Packit Service 31d16d
    acc_edt_text.cut(start, end);
Packit Service 31d16d
  }
Packit Service 31d16d
Packit Service 31d16d
  public void delete_text (int start, int end) {
Packit Service 31d16d
    acc_edt_text.delete(start, end);
Packit Service 31d16d
  }
Packit Service 31d16d
Packit Service 31d16d
  public void paste_text (int position) {
Packit Service 31d16d
    acc_edt_text.paste(position);
Packit Service 31d16d
  }
Packit Service 31d16d
}
Packit Service 31d16d