diff --git a/app/src/processing/app/Mode.java b/app/src/processing/app/Mode.java
index 38ec4e01c3..3d264f5b9e 100644
--- a/app/src/processing/app/Mode.java
+++ b/app/src/processing/app/Mode.java
@@ -46,6 +46,8 @@
public abstract class Mode {
protected Base base;
+ protected DefaultTreeModel model;
+
protected File folder;
protected TokenMarker tokenMarker;
@@ -1053,6 +1055,40 @@ public DefaultMutableTreeNode buildSketchbookTree(){
protected JFrame sketchbookFrame;
+ /*
+ * Function for rebuilding the tree in case user presses SPACE or the
+ * sketchbook folder is changed in preferences. Also This helps if a sketch is
+ * deleted not by means of processing application window but externally.
+ */
+ public void rebuildTree() {
+ if (model != null) {
+ DefaultMutableTreeNode root = (DefaultMutableTreeNode) model.getRoot();
+ root.removeAllChildren();
+ try {
+ base.addSketches(root, Base.getSketchbookFolder());
+ model.reload(root);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ /*
+ * Function Called to add a sketch in the tree in case the sketch is saved
+ * Called from updateInernal in Base.java
+ */
+ public void updateTree(String sketchName, File sketchFolder) {
+ File f = new File(sketchFolder.getAbsolutePath() + "\\" + sketchName
+ + ".pde");
+ if (model != null) {
+ DefaultMutableTreeNode root = (DefaultMutableTreeNode) model.getRoot();
+ SketchReference reference = new SketchReference(sketchName, f);
+ DefaultMutableTreeNode newNode = new DefaultMutableTreeNode(reference);
+ root.add(newNode);
+ model.reload(root);
+ }
+ }
+
public void showSketchbookFrame() {
if (sketchbookFrame == null) {
sketchbookFrame = new JFrame(Language.text("sketchbook"));
@@ -1064,7 +1100,10 @@ public void actionPerformed(ActionEvent e) {
}
});
- final JTree tree = new JTree(buildSketchbookTree());
+ sketchbookFrame.getContentPane().setLayout(new BorderLayout());
+ DefaultMutableTreeNode root = buildSketchbookTree();
+ model = new DefaultTreeModel(root);
+ final JTree tree = new JTree(model);
tree.getSelectionModel()
.setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
tree.setShowsRootHandles(true);
@@ -1104,6 +1143,10 @@ public void keyTyped(KeyEvent e) {
base.handleOpen(sketch.getPath());
}
}
+
+ if (e.getKeyChar() == KeyEvent.VK_SPACE) {
+ rebuildTree();
+ }
}
});
@@ -1116,7 +1159,9 @@ public void keyTyped(KeyEvent e) {
JScrollPane treePane = new JScrollPane(tree);
treePane.setPreferredSize(new Dimension(250, 450));
treePane.setBorder(new EmptyBorder(0, 0, 0, 0));
- sketchbookFrame.getContentPane().add(treePane);
+ JLabel refreshLabel = new JLabel("Press SPACE to refresh");
+ sketchbookFrame.getContentPane().add(refreshLabel, BorderLayout.SOUTH);
+ sketchbookFrame.getContentPane().add(treePane, BorderLayout.CENTER);
sketchbookFrame.pack();
}
diff --git a/app/src/processing/app/PreferencesFrame.java b/app/src/processing/app/PreferencesFrame.java
index 64029572f2..a51e1c700b 100644
--- a/app/src/processing/app/PreferencesFrame.java
+++ b/app/src/processing/app/PreferencesFrame.java
@@ -677,6 +677,7 @@ protected void applyFrame() {
String newPath = sketchbookLocationField.getText();
if (!newPath.equals(oldPath)) {
base.setSketchbookFolder(new File(newPath));
+ base.getNextMode().rebuildTree();
}
// setBoolean("editor.external", externalEditorBox.isSelected());
diff --git a/app/src/processing/app/Sketch.java b/app/src/processing/app/Sketch.java
index 09fc78305c..220682593c 100644
--- a/app/src/processing/app/Sketch.java
+++ b/app/src/processing/app/Sketch.java
@@ -328,8 +328,9 @@ public void handleRenameCode() {
current.getPrettyName() : current.getFileName();
// editor.status.edit(prompt, oldName);
promptForTabName(prompt+":", oldName);
+ mode.rebuildTree();
}
-
+
/**
* Displays a dialog for renaming or creating a new tab
* @param prompt - msg to display
@@ -337,17 +338,17 @@ public void handleRenameCode() {
*/
protected void promptForTabName(String prompt, String oldName) {
final JTextField field = new JTextField(oldName);
-
+
field.addKeyListener(new KeyAdapter() {
// Forget ESC, the JDialog should handle it.
- // Use keyTyped to catch when the feller is actually added to the text
- // field. With keyTyped, as opposed to keyPressed, the keyCode will be
- // zero, even if it's enter or backspace or whatever, so the keychar
+ // Use keyTyped to catch when the feller is actually added to the text
+ // field. With keyTyped, as opposed to keyPressed, the keyCode will be
+ // zero, even if it's enter or backspace or whatever, so the keychar
// should be used instead. Grr.
public void keyTyped(KeyEvent event) {
//System.out.println("got event " + event);
char ch = event.getKeyChar();
- if ((ch == '_') || (ch == '.') || // allow.pde and .java
+ if ((ch == '_') || (ch == '.') || // allow.pde and .java
(('A' <= ch) && (ch <= 'Z')) || (('a' <= ch) && (ch <= 'z'))) {
// These events are allowed straight through.
} else if (ch == ' ') {
@@ -363,13 +364,13 @@ public void keyTyped(KeyEvent event) {
// getSelectionStart means that it *will be* the first
// char, because the selection is about to be replaced
// with whatever is typed.
- if (field.getCaretPosition() == 0 ||
+ if (field.getCaretPosition() == 0 ||
field.getSelectionStart() == 0) {
// number not allowed as first digit
event.consume();
}
} else if (ch == KeyEvent.VK_ENTER) {
- // Slightly ugly hack that ensures OK button of the dialog consumes
+ // Slightly ugly hack that ensures OK button of the dialog consumes
// the Enter key event. Since the text field is the default component
// in the dialog, OK doesn't consume Enter key event, by default.
Container parent = field.getParent();
@@ -377,14 +378,14 @@ public void keyTyped(KeyEvent event) {
parent = parent.getParent();
}
JOptionPane pane = (JOptionPane) parent;
- final JPanel pnlBottom = (JPanel)
+ final JPanel pnlBottom = (JPanel)
pane.getComponent(pane.getComponentCount() - 1);
for (int i = 0; i < pnlBottom.getComponents().length; i++) {
Component component = pnlBottom.getComponents()[i];
if (component instanceof JButton) {
final JButton okButton = (JButton) component;
if (okButton.getText().equalsIgnoreCase("OK")) {
- ActionListener[] actionListeners =
+ ActionListener[] actionListeners =
okButton.getActionListeners();
if (actionListeners.length > 0) {
actionListeners[0].actionPerformed(null);
@@ -621,12 +622,12 @@ public void handleDeleteCode() {
}
// don't allow if untitled
- if (currentIndex == 0 && isUntitled()) {
+ if (currentIndex == 0 && isUntitled()) {
Base.showMessage(Language.text("delete.messages.cannot_delete"),
Language.text("delete.messages.cannot_delete.description"));
return;
}
-
+
// confirm deletion with user, yes/no
Object[] options = { Language.text("prompt.ok"), Language.text("prompt.cancel") };
String prompt = (currentIndex == 0) ?
@@ -798,7 +799,7 @@ public boolean save() throws IOException {
protected boolean saveAs() throws IOException {
String newParentDir = null;
String newName = null;
-
+
final String oldName2 = folder.getName();
// TODO rewrite this to use shared version from PApplet
final String PROMPT = Language.text("save");
@@ -934,12 +935,12 @@ public boolean accept(File file) {
return true;
}
});
-
+
final File newFolder2 = newFolder;
final File[] copyItems2 = copyItems;
- final String newName2 = newName;
-
+ final String newName2 = newName;
+
// Create a new event dispatch thread- to display ProgressBar
// while Saving As
javax.swing.SwingUtilities.invokeLater(new Runnable() {
@@ -947,8 +948,8 @@ public void run() {
new ProgressFrame(copyItems2, newFolder2, oldName2, newName2, editor);
}
});
-
-
+
+
// save the other tabs to their new location
for (int i = 1; i < codeCount; i++) {
File newFile = new File(newFolder, code[i].getFileName());
@@ -967,6 +968,7 @@ public void run() {
code[0].saveAs(newFile);
updateInternal(newName, newFolder);
+ mode.updateTree(newName, newFolder);
// Make sure that it's not an untitled sketch
setUntitled(false);
@@ -985,7 +987,7 @@ public void run() {
*/
protected void updateInternal(String sketchName, File sketchFolder) {
// reset all the state information for the sketch object
- String oldPath = getMainFilePath();
+ String oldPath = getMainFilePath();
primaryFile = code[0].getFile();
// String newPath = getMainFilePath();
// editor.base.renameRecent(oldPath, newPath);
diff --git a/build/macosx/appbundler.jar b/build/macosx/appbundler.jar
index e719ca52a0..585bed5929 100644
Binary files a/build/macosx/appbundler.jar and b/build/macosx/appbundler.jar differ
diff --git a/build/shared/lib/defaults.txt b/build/shared/lib/defaults.txt
index 350cad6143..85c98a6b2e 100644
--- a/build/shared/lib/defaults.txt
+++ b/build/shared/lib/defaults.txt
@@ -215,12 +215,22 @@ editor.untitled.suffix=yyMMdd
# GTK isn't for everyone (and KDE users will get Metal or some
# such anyway, so this is now broken out as an option
# Linux is by default even uglier than metal (Motif?).
+<<<<<<< HEAD
+# Actually, i'm using native menus, so they're even uglier
+# and Motif-looking (Lesstif?). Ick. Need to fix this.
+# For 0120, trying out the gtk+ look and feel as the default.
+# This is available in Java 1.4.2 and later, and it can't possibly
+# be any worse than Metal. (Ocean might also work, but that's for
+# Java 1.5, and we aren't going there yet)
+editor.laf.linux = com.sun.java.swing.plaf.gtk.GTKLookAndFeel
+=======
#editor.laf.linux = com.sun.java.swing.plaf.gtk.GTKLookAndFeel
# Trying Nimbus in 3.0a6 because the GTK menus are really dreadful.
# Unfortunately, the Nimbus scrollbars are really gross, but...
# As always, people can override on their own, or the next step
# is to do a Synth LAF that gives us something not awful.
editor.laf.linux = javax.swing.plaf.nimbus.NimbusLookAndFeel
+>>>>>>> refs/remotes/upstream/master
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
diff --git a/build/shared/lib/languages/PDE_de.properties b/build/shared/lib/languages/PDE_de.properties
index e4c2a3e8d1..cad32ac578 100644
--- a/build/shared/lib/languages/PDE_de.properties
+++ b/build/shared/lib/languages/PDE_de.properties
@@ -172,7 +172,11 @@ preferences.hide_toolbar_background_image = Hintergrundgrafik der Toolbar ausble
preferences.check_for_updates_on_startup = Prüfung auf Updates bei Programmstart
preferences.run_sketches_on_display = Starte Sketch auf Bildschirm
preferences.run_sketches_on_display.tip = \
+<<<<<<< HEAD
+Bestimme den Bildschirm auf dem der Sketch dargestellt werden soll.
+=======
Bestimme den Bildschirm auf dem der Sketch dargestellt werden soll.\
+>>>>>>> refs/remotes/upstream/master
Wenn das Fenster des Sketches auf einen anderen Bildschirm geschoben
\
wird, so wird der Sketch an selber Stelle wieder geöffnet. Dabei ist es
\
egal, ob der Sketch im Present-Modus (Fullscreen) geöffnet wird.
diff --git a/build/shared/lib/languages/PDE_es.properties b/build/shared/lib/languages/PDE_es.properties
index a89c491367..b6b3192604 100644
--- a/build/shared/lib/languages/PDE_es.properties
+++ b/build/shared/lib/languages/PDE_es.properties
@@ -31,6 +31,307 @@ menu.file.quit = Salir
menu.edit = Editar
menu.edit.undo = Deshacer
menu.edit.redo = Rehacer
+<<<<<<< HEAD
+menu.edit.cut = Cortar
+menu.edit.copy = Copiar
+menu.edit.copy_as_html = Copar como HTML
+menu.edit.paste = Pegar
+menu.edit.select_all = Seleccionar todo
+menu.edit.auto_format = Autoformato
+menu.edit.comment_uncomment = Comentar/Descomentar
+menu.edit.increase_indent = Aumentar indentación
+menu.edit.decrease_indent = Reducir indentación
+menu.edit.find = Buscar...
+menu.edit.find_next = Buscar siguiente
+menu.edit.find_previous = Buscar anterior
+menu.edit.use_selection_for_find = Usar selección para buscar
+
+# | File | Edit | Sketch | Debug | Tools | Help |
+# | Sketch |
+menu.sketch.run = Ejecutar
+menu.sketch.present = Presentar
+menu.sketch.tweak = Tweak
+menu.sketch.stop = Detener
+# ---
+menu.library = Importar biblioteca...
+menu.library.add_library = Añadir biblioteca...
+menu.library.contributed = Contribuidas
+menu.library.no_core_libraries = el modo no tiene bibliotecas incluidas
+# ---
+menu.sketch = Sketch
+menu.sketch.show_sketch_folder = Mostrar carpeta de sketches
+menu.sketch.add_file = Añadir archivo
+
+# | File | Edit | Sketch | Debug | Tools | Help |
+# | Debug |
+#...
+
+# | File | Edit | Sketch | Debug | Tools | Help |
+# | Tools |
+menu.tools = Herramientas
+menu.tools.color_selector = Selector de colores...
+menu.tools.create_font = Crear fuente...
+menu.tools.archive_sketch = Archivar sketch
+menu.tools.fix_the_serial_lbrary = Corregir la biblioteca de serie
+menu.tools.install_processing_java = Instalar "processing-java"
+menu.tools.add_tool = Añadir herramienta...
+
+# | File | Edit | Sketch | Debug | Tools | Help |
+# | Help |
+menu.help = Ayuda
+menu.help.about = Acerca de Processing
+menu.help.environment = Entorno
+menu.help.reference = Referencia
+menu.help.find_in_reference = Buscar en la referencia
+menu.help.online = Online
+menu.help.getting_started = Primeros Pasos
+menu.help.getting_started.url = http://processing.org/learning/gettingstarted/
+menu.help.troubleshooting = Resolución de problemas
+menu.help.troubleshooting.url = http://wiki.processing.org/w/Troubleshooting
+menu.help.faq = Preguntas Frecuentes
+menu.help.faq.url = http://wiki.processing.org/w/FAQ
+menu.help.foundation = The Processing Foundation
+menu.help.foundation.url = http://processing.org/foundation/
+menu.help.visit = Visitar Processing.org
+menu.help.visit.url = http://processing.org/
+
+
+# ---------------------------------------
+# Basics
+
+# Buttons
+prompt.yes = Sí
+prompt.no = No
+prompt.cancel = Cancelar
+prompt.ok = Aceptar
+prompt.browse = Buscar
+prompt.export = Exportar
+
+
+# ---------------------------------------
+# Frames
+
+# Open (Frame)
+open = Abrir un sketch de Processing...
+
+# Save (Frame)
+save = Guardar directorio de sketches...
+save.title = Deseas guardar cambios a este sketch
antes de cerrar?
+save.hint = Si no los guardas, tus cambios se perderán.
+save.btn.save = Guardar
+save.btn.dont_save = No guardar
+
+# Preferences (Frame)
+preferences = Preferencias
+preferences.button.width = 80
+preferences.requires_restart = requiere reiniciar Processing
+preferences.sketchbook_location = Ubicación del sketchbook
+preferences.sketchbook_location.popup = Ubicación del sketchbook
+preferences.language = Idioma
+preferences.editor_and_console_font = Fuente de la consola y el editor
+preferences.editor_and_console_font.tip = \
+Selecciona la fuente usada en el editor y la consola.
\
+Sólo las fuentes con caracteres de ancho fijo pueden
\
+ser utilizadas, aunque la lista puede ser incompleta.
+preferences.editor_font_size = Tamaño de letra del editor
+preferences.console_font_size = Tamaño de letra de la consola
+preferences.background_color = Color de fondo en modo presentación
+preferences.background_color.tip = \
+Selecciona el color de fondo al usar el modo presentación
\
+Este modo es utilizado para presentar el sketch en
\
+pantalla completa, y es accesible desde el menú Sketch.
+preferences.use_smooth_text = Usar texto suavizado en la ventana del editor
+preferences.enable_complex_text_input = Habilitar el ingreso de caracteres complejos
+preferences.enable_complex_text_input_example = ej. Japonés
+preferences.continuously_check = Comprobar errores de forma continua
+preferences.show_warnings = Mostrar advertencias
+preferences.code_completion = Autocompletado de código
+preferences.trigger_with = Activar con
+preferences.cmd_space = espacio
+preferences.suggest_imports = Sugerir declaraciones de importación
+preferences.increase_max_memory = Aumentar memoria máxima disponible a
+preferences.delete_previous_folder_on_export = Eliminar directorio anterior al exportar
+preferences.hide_toolbar_background_image = Ocultar imagen de fondo de la barra de herramientas
+preferences.check_for_updates_on_startup = Comprobar actualizaciones al iniciar
+preferences.run_sketches_on_display = Ejecutar sketches en la pantalla
+preferences.run_sketches_on_display.tip = \
+Configura la pantalla donde los sketches se abren inicialmente.
\
+Como es habitual, si la ventana del sketch se mueve, se volverá a abrir
\
+en la misma ubicación. Sin embargo, al ejecutar en modo presentación
\
+(pantalla completa), esta pantalla será utilizada siempre.
+preferences.automatically_associate_pde_files = Asociar automáticamente archivos .pde con Processing
+preferences.launch_programs_in = Ejecutar programs en
+preferences.launch_programs_in.mode = modo
+preferences.file = Puedes editar otras preferencias modificando directamente el archivo
+preferences.file.hint = asegúrate de que Processing está cerrado antes de editar este archivo
+
+# Sketchbook Location (Frame)
+sketchbook_location = Escoja una ubicación nueva para el sketchbook
+
+# Sketchbook (Frame)
+sketchbook = Sketchbook
+sketchbook.tree = Sketchbook
+
+# Examples (Frame)
+examples = Ejemplos
+examples.add_examples = Añadir ejemplos...
+
+# Export (Frame)
+export = Opciones de exportación
+export.platforms = Plataformas
+export.options = Opciones
+export.options.fullscreen = Pantalla completa (Modo Presentación)
+export.options.show_stop_button = Mostrar un botón de Detener
+export.description.line1 = Exportar a Aplicación crea aplicaciones ejecutables,
+export.description.line2 = independientes para las plataformas seleccionadas.
+
+# Find (Frame)
+find = Buscar
+find.find = Buscar:
+find.replace_with = Reemplazar con:
+find.ignore_case = Ignorar mayúsculas
+find.all_tabs = Todas las pestañas
+find.wrap_around = Continuar buscando
+find.btn.replace_all = Reemplazar todo
+find.btn.replace = Reemplazar
+find.btn.find_and_replace = Buscar y reemplazar
+find.btn.previous = Anterior
+find.btn.find = Buscar
+
+# Find in reference (Frame)
+find_in_reference = Buscar en el manual de referencia
+
+# File (Frame)
+file = Selecciona una imagen u otro archivo de datos para copiar a tu sketch
+
+# Create Font (Frame)
+create_font = Crear fuente
+
+# Color Selector (Frame)
+color_selector = Selector de colores
+
+# Archive Sketch (Frame)
+archive_sketch = Archivar sketch como...
+
+
+# ---------------------------------------
+# Toolbars
+
+# [Run/Present] [Stop] [New] [Open] [Save]
+toolbar.run = Ejecutar
+toolbar.present = Presentar
+toolbar.stop = Detener
+# ---
+toolbar.new = Nuevo
+toolbar.open = Abrir
+toolbar.save = Guardar
+toolbar.export_application = Exportar Aplicación
+toolbar.add_mode = Añadir modo...
+
+
+# ---------------------------------------
+# Editor
+
+# [Tab1] [Tab2] [v]
+editor.header.new_tab = Nueva pestaña
+editor.header.rename = Renombrar
+editor.header.delete = Eliminar
+editor.header.previous_tab = Pestaña anterior
+editor.header.next_tab = Pestaña siguiente
+editor.header.delete.warning.title = No
+editor.header.delete.warning.text = No puedes eliminar la última pestaña del último sketch abierto
+
+# Tabs
+editor.tab.new = Nuevo nombre
+editor.tab.new.description = Nombre para el archivo nuevo
+editor.tab.rename = Nuevo nombre
+editor.tab.rename.description = Nuevo nombre para el archivo
+
+# Sketch
+editor.sketch.rename.description = Nuevo nombre para el sketch
+
+editor.status.autoformat.no_changes = No se realizaron cambios por Autoformato.
+editor.status.autoformat.finished = Autoformato completado.
+editor.status.find_reference.select_word_first = Selecciona primero una palabra para buscar en la referencia.
+editor.status.find_reference.not_available = No se encontró una referencia disponible para "%s".
+editor.status.drag_and_drop.files_added.0 = Ningún archivo añadido al sketch.
+editor.status.drag_and_drop.files_added.1 = Un archivo añadido al sketch.
+editor.status.drag_and_drop.files_added.n = %d archivos añadidos al sketch.
+editor.status.saving = Guardando...
+editor.status.saving.done = Guardado finalizado.
+editor.status.saving.canceled = Guardado cancelado.
+editor.status.printing = Imprimiendo...
+editor.status.printing.done = Impresión finalizada.
+editor.status.printing.error = Error al imprimir.
+editor.status.printing.canceled = Impresión cancelada.
+
+
+# ---------------------------------------
+# Contribution Panel
+
+contrib = Gestor de contribuciones
+contrib.manager_title.update = Gestor de actualizaciones
+contrib.manager_title.mode = Gestor de Modos
+contrib.manager_title.tool = Gestor de Herramientas
+contrib.manager_title.library = Gestor de Bibliotecas
+contrib.manager_title.examples = Gestor de Paquetes de Ejemplo
+contrib.category = Categoría:
+contrib.filter_your_search = Filtrar tu búsqueda...
+contrib.show_only_compatible.mode = Mostrar sólo modos compatibles
+contrib.show_only_compatible.tool = Mostrar sólo herramientas compatibles
+contrib.show_only_compatible.library = Mostrar sólo bibliotecas compatibles
+contrib.show_only_compatible.examples-package = Mostrar sólo ejemplos compatibles
+contrib.show_only_compatible.update = Mostrar sólo actualizaciones compatibles
+contrib.restart = Reiniciar Processing
+contrib.unsaved_changes = Se encontraron cambios sin guardar
+contrib.unsaved_changes.prompt = ¿Seguro que deseas reiniciar Processing sin guardar primero?
+contrib.messages.remove_restart = Reinicia Processing para terminar de eliminar este item.
+contrib.messages.install_restart = Reinicia Processing para terminar de instalar este item.
+contrib.messages.update_restart = Reinicia Processing para terminar de actualizar este item.
+contrib.errors.list_download = No se pudo descargar la lista de contribuciones disponibles.
+contrib.errors.list_download.timeout = El tiempo de espera para descargar la lista de contribuciones expiró.
+contrib.errors.download_and_install = Ocurrió un error durante la descarga e instalación.
+contrib.errors.description_unavailable = Descripción no disponible.
+contrib.errors.malformed_url = El enlace obtenido de Processing.org no es válido. Intenta instalar esta librería manualmente visitando su sitio web.
+contrib.errors.needs_repackage = %s necesita volver a empaquetarse de acuerdo a las directivas para las contribuciones.
+contrib.errors.no_contribution_found = No se pudo encontrar una contribución válida en el archivo descargado.
+contrib.errors.overwriting_properties = Ocurrió un error al sobrescribir el archivo .properties.
+contrib.errors.install_failed = La instalación falló.
+contrib.errors.update_on_restart_failed = La actualización al reiniciar de %s falló.
+contrib.errors.temporary_directory = No se pudo escribir al directorio temporal.
+contrib.errors.contrib_download.timeout = El tiempo de conexión expiró al intentar descargar %s.
+contrib.status.downloading_list = Descargando la lista de contribuciones...
+contrib.status.done = Listo.
+contrib.all = All
+contrib.undo = Deshacer
+contrib.remove = Eliminar
+contrib.install = Instalar
+contrib.progress.starting = Iniciando
+contrib.progress.downloading = Descargando
+contrib.progress.installing = Instalando
+contrib.download_error = Ocurrió un error al descargar la contribución.
+contrib.unsupported_operating_system = Tu sistema operativo no está soportado. Visita la documentación de la biblioteca para más información.
+
+
+# ---------------------------------------
+# Warnings
+
+warn.delete = Eliminar
+warn.delete.sketch = ¿Seguro que deseas eliminar este sketch?
+warn.delete.file = ¿Seguro que deseas eliminar "%s"?
+
+
+# ---------------------------------------
+# Update Check
+update_check = Actualización
+update_check.updates_available.core = Hay nueva versión de Processing disponible,\n¿deseas visitar la página de descarga?
+update_check.updates_available.contributions = Hay actualizaciones disponibles para algunas de las contribuciones instaladas,\n¿deseas abrir el gestor de contribuciones ahora?
+
+
+# ---------------------------------------
+# Color Chooser
+color_chooser = Selector de colores
+=======
menu.edit.action.addition = adición
menu.edit.action.deletion = supresión
menu.edit.cut = Cortar
@@ -423,3 +724,4 @@ update_check.updates_available.contributions = Hay actualizaciones disponibles p
# Color Chooser
color_chooser = Selector de colores
color_chooser.select = Seleccionar
+>>>>>>> refs/remotes/upstream/master
diff --git a/todo.txt b/todo.txt
index d3f5f55769..dbff97eaf7 100644
--- a/todo.txt
+++ b/todo.txt
@@ -27,6 +27,163 @@ X https://github.com/processing/processing/issues/3096
X remove code that's moving the sketch path arg later
X https://github.com/processing/processing/commit/0a14835e6f5f4766b022e73a8fe562318636727c
+<<<<<<< HEAD
+integration of pdex/debug
+o make the tabs have a default minimum size
+o multiple sizes as they get smaller (web browser style)
+X merge experimental into the main Java mode
+X thereby removing Java 2.0 mode from the next release
+X otherwise redoing the design for 2 modes
+X changed JLS4 to JLS8 (but make sure it doesn't introduce anything too weird)
+X change build scripts, get things running
+X rename TextArea and TextAreaPainter to JavaTextArea
+X DebugEditor.createTextArea() is copy & pasted from JavaEditor
+X this whole setup is really gross at the moment
+X finish Ant task to download JRE and JDK from Oracle
+X remove public 'ta' object in DebugEditor, also dmode
+X hasJavaTabs() cleanup
+X how does it relate to compilationCheckEnabled?
+X removed, seems to be duplicate/used the same way
+
+jre download/install
+X make sure the file downloads correctly before renaming
+X https://github.com/processing/processing/issues/2960
+X update build scripts for Windows and Linux to use JRE downloader Ant Task
+X https://github.com/processing/processing/issues/3059
+
+update components
+X moving to Java 8 because Java 7 will be discontinued
+X http://www.oracle.com/technetwork/java/javase/eol-135779.html
+X requires Vista SP2 (ok, just say 7), and OS X 10.8.3, Ubuntu 12.04
+X requires 10.10 to build appbundler (for the Xcode SDK)
+X requires ECJ update (using 4.4.1)
+X http://download.eclipse.org/eclipse/downloads/drops4/R-4.4.1-201409250400/
+X update to launch4j 3.6
+X http://sourceforge.net/projects/launch4j/files/launch4j-3/3.6/
+o update ld and windres: https://github.com/processing/processing/tree/master/java/application/launch4j/bin
+o also xstream.jar https://github.com/processing/processing/tree/master/java/application/launch4j/lib
+
+earlier
+X any problems with new code signing crap?
+X issues raised around the symlink (just replace with a copy of the binary?)
+X fixed the short-term problem, filed an issue for the rest
+X https://developer.apple.com/library/prerelease/mac/technotes/tn2206/_index.html#//apple_ref/doc/uid/DTS40007919-CH1-TNTAG205
+X Move import suggestion to errors console
+X https://github.com/processing/processing/issues/2947
+X server.stop produces an error: java.net.SocketException: socket closed
+X https://github.com/processing/processing/issues/74
+X https://github.com/processing/processing/pull/2474
+X NPE when calling Client.ip() after the connection has been closed
+X https://github.com/processing/processing/issues/2576
+X https://github.com/processing/processing/pull/2922
+
+joel
+X Add reference for installed tools and libraries to the Help menu
+X https://github.com/processing/processing/issues/943
+X https://github.com/processing/processing/pull/2804
+X examples.properties file missing prevents startup
+X https://github.com/processing/processing/issues/3037
+X https://github.com/processing/processing/pull/3047
+X several new French translations
+X https://github.com/processing/processing/pull/3061
+X contributions.txt now gets deleted and recreated instead of overwritten
+X https://github.com/processing/processing/pull/3073
+X https://github.com/processing/processing/issues/2994
+X Contrib Manager does not stop parsing contribs.txt if an error exists
+X https://github.com/processing/processing/pull/3132
+X offer to install libraries imported libraries that are not available
+X https://github.com/processing/processing/pull/3155
+X https://github.com/processing/processing/issues/2566
+X make fatal errors terminate the pde
+X https://github.com/processing/processing/issues/3068
+X https://github.com/processing/processing/pull/3069
+X Java 8 method replace() used, removed
+X https://github.com/processing/processing/issues/3168
+X https://github.com/processing/processing/pull/3169
+X Closing a few unclosed BufferedReaders and InputStreams
+X https://github.com/processing/processing/pull/2961
+
+manindra
+X Fix for "Probably a ++ should go here" messages
+X https://github.com/processing/processing/issues/2956
+X Missing opening curly bracket error
+X https://github.com/processing/processing/issues/3104
+X missing parenthesis error message
+X https://github.com/processing/processing/issues/3103
+
+pulls
+X add mnemonics for menus (alt-f to open 'file')
+X http://code.google.com/p/processing/issues/detail?id=12
+X https://github.com/processing/processing/issues/51
+X https://github.com/processing/processing/pull/2382
+X getCaretLocation() bug in syntax.im package
+X https://github.com/processing/processing/issues/2934
+X finish up debian package support (see the processing.mess folder)
+X http://code.google.com/p/processing/issues/detail?id=75
+X these bits need to be checked to ensure that they work on other distros
+X https://github.com/processing/processing/issues/114
+X https://github.com/processing/processing/pull/2972
+X https://github.com/processing/processing/issues/2973
+X https://github.com/processing/processing/pull/2974
+X Replace ColorChooser PApplets with custom Swing components
+X https://github.com/processing/processing/pull/2975
+X fix encodings, line endings, and mime types in the repo
+X https://github.com/processing/processing/issues/2955
+X https://github.com/processing/processing/pull/2978
+X https://github.com/processing/processing/pull/2977
+X add control for dependencies (i.e. svg needs xml), needed for export
+X http://code.google.com/p/processing/issues/detail?id=70
+X https://github.com/processing/processing/issues/109
+X https://github.com/processing/processing/pull/3010
+X lots of Auto Format fixes
+X https://github.com/processing/processing/pull/3002
+X https://github.com/processing/processing/issues/2540
+X https://github.com/processing/processing/issues/1041
+X update name of sketch in the "Recent" menu
+X https://github.com/processing/processing/issues/2984
+X https://github.com/processing/processing/pull/3046
+X File change detection rewrite
+X https://github.com/processing/processing/pull/3048
+X another file change detection rewrite
+X https://github.com/processing/processing/pull/3070
+X broken Windows build due to launch4j .jar not updated
+X https://github.com/processing/processing/issues/3062
+X https://github.com/processing/processing/pull/3066
+X exported Linux sketches must be run from the sketch folder
+X https://github.com/processing/processing/issues/1046
+X https://github.com/processing/processing/pull/3083
+X rectMode() broken for createShape with JAVA2D
+X https://github.com/processing/processing/issues/3024
+X https://github.com/processing/processing/pull/3102
+X IllegalArgumentException when clicking between editor windows
+X https://github.com/processing/processing/issues/2530
+X https://github.com/processing/processing/pull/3101
+X processing.net.Server only cleans up internal Clients when trying to write
+X https://github.com/processing/processing/issues/3089
+X https://github.com/processing/processing/pull/3097
+X issues with cut/copy shortcuts not working
+X https://github.com/processing/processing/pull/3138
+X https://github.com/processing/processing/issues/3136
+X https://github.com/processing/processing/issues/3107
+X Display download percentage when fetching contrib info
+X https://github.com/processing/processing/pull/3161
+X Recreating Client instance will cause an out-of-memory error
+X https://github.com/processing/processing/issues/1400
+X https://github.com/processing/processing/pull/3088
+X Greek translation and new fonts
+X https://github.com/processing/processing/pull/3025
+X Show tooltip when hovering over errors
+X https://github.com/processing/processing/pull/3119
+X Fix multi-touch horizontal scrolling on OS X
+X https://github.com/processing/processing/pull/3170
+X https://github.com/processing/processing/issues/180
+X textAlign(RIGHT) adds extra space to the right
+X https://github.com/processing/processing/pull/3078
+X https://github.com/processing/processing/issues/3028
+
+_ Mode and Mode Managers not working
+_ https://github.com/processing/processing/issues/3172
+=======
_ install/remove buttons not working in the managers
_ https://github.com/processing/processing/issues/3172
_ search the source for 'applet' references (i.e. SVG docs)
@@ -190,6 +347,7 @@ X Fix ColorChooser cursor
X https://github.com/processing/processing/pull/3186
X Improve Spanish localization
X https://github.com/processing/processing/pull/3185
+>>>>>>> refs/remotes/upstream/master
3.0a7