Search in sources :

Example 1 with CsvWriter

use of org.rstudio.core.client.CsvWriter in project rstudio by rstudio.

the class RequestLogVisualization method onPreviewNativeEvent.

public void onPreviewNativeEvent(NativePreviewEvent event) {
    if (event.getTypeInt() == Event.ONKEYDOWN) {
        int keyCode = event.getNativeEvent().getKeyCode();
        if (keyCode == KeyCodes.KEY_ESCAPE) {
            CloseEvent.fire(RequestLogVisualization.this, RequestLogVisualization.this);
            handlerRegistration_.removeHandler();
        } else if (keyCode == 'R' && KeyboardShortcut.getModifierValue(event.getNativeEvent()) == 0) {
            refresh(true, true);
        } else if (keyCode == 'P') {
            if (timerIsRunning_)
                timer_.cancel();
            else {
                timer_.run();
                timer_.scheduleRepeating(PERIOD_MILLIS);
            }
            timerIsRunning_ = !timerIsRunning_;
        } else if (keyCode == 'E') {
            CsvWriter writer = new CsvWriter();
            writer.writeValue(now_ + "");
            writer.endLine();
            for (RequestLogEntry entry : entries_) entry.toCsv(writer);
            TextBoxDialog dialog = new TextBoxDialog("Export", writer.getValue(), null);
            dialog.showModal();
        } else if (keyCode == 'I') {
            TextBoxDialog dialog = new TextBoxDialog("Import", "", new OperationWithInput<String>() {

                public void execute(String input) {
                    CsvReader reader = new CsvReader(input);
                    ArrayList<RequestLogEntry> entries = new ArrayList<RequestLogEntry>();
                    Iterator<String[]> it = reader.iterator();
                    String now = it.next()[0];
                    while (it.hasNext()) {
                        String[] line = it.next();
                        RequestLogEntry entry = RequestLogEntry.fromValues(line);
                        if (entry != null)
                            entries.add(entry);
                    }
                    now_ = Long.parseLong(now);
                    entries_ = entries.toArray(new RequestLogEntry[0]);
                    refresh(false, true);
                }
            });
            dialog.showModal();
        }
    } else if (event.getTypeInt() == Event.ONKEYPRESS) {
        if (event.getNativeEvent().getKeyCode() == '+') {
            scaleMillisToPixels_ *= 2.0;
            refresh(false, false);
        } else if (event.getNativeEvent().getKeyCode() == '-') {
            scaleMillisToPixels_ /= 2.0;
            refresh(false, false);
        }
    }
}
Also used : CsvReader(org.rstudio.core.client.CsvReader) CsvWriter(org.rstudio.core.client.CsvWriter) RequestLogEntry(org.rstudio.core.client.jsonrpc.RequestLogEntry) ArrayList(java.util.ArrayList) Iterator(java.util.Iterator)

Example 2 with CsvWriter

use of org.rstudio.core.client.CsvWriter in project rstudio by rstudio.

the class TextEditingTargetSpelling method writeDictionary.

@Override
public void writeDictionary(ArrayList<String> ignoredWords) {
    CsvWriter csvWriter = new CsvWriter();
    for (String ignored : ignoredWords) csvWriter.writeValue(ignored);
    csvWriter.endLine();
    docUpdateSentinel_.setProperty(IGNORED_WORDS, csvWriter.getValue(), new NullProgressIndicator());
}
Also used : CsvWriter(org.rstudio.core.client.CsvWriter) NullProgressIndicator(org.rstudio.core.client.widget.NullProgressIndicator)

Aggregations

CsvWriter (org.rstudio.core.client.CsvWriter)2 ArrayList (java.util.ArrayList)1 Iterator (java.util.Iterator)1 CsvReader (org.rstudio.core.client.CsvReader)1 RequestLogEntry (org.rstudio.core.client.jsonrpc.RequestLogEntry)1 NullProgressIndicator (org.rstudio.core.client.widget.NullProgressIndicator)1