-/*
- * Copyright (C) 2000, Luca Padovani <luca.padovani@cs.unibo.it>.
+/* This file is part of EdiTeX, an editor of mathematical
+ * expressions based on TeX syntax.
*
- * This file is part of GtkMathView, a Gtk widget for MathML.
- *
- * GtkMathView is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * GtkMathView is distributed in the hope that it will be useful,
+ * Copyright (C) 2002-2003 Luca Padovani <lpadovan@cs.unibo.it>,
+ * 2003 Paolo Marinelli <pmarinel@cs.unibo.it>.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with GtkMathView; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- * For details, see the GtkMathView World-Wide-Web page,
- * http://cs.unibo.it/~lpadovan/mml-widget, or send a mail to
- * <luca.padovani@cs.unibo.it>
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ * For more information, please visit the project's home page
+ * http://helm.cs.unibo.it/editex/
+ * or send an email to <lpadovan@cs.unibo.it>
*/
#include <config.h>
static void file_open(GtkWidget*, gpointer);
static void file_re_open(GtkWidget*, gpointer);
static void file_close(GtkWidget*, gpointer);
+static void file_output_tex(GtkWidget*, gpointer);
static void options_font_manager(GtkWidget*, FontManagerId);
static void options_set_font_size(GtkWidget*, gpointer);
static void options_change_font_size(GtkWidget*, gboolean);
static void edit_delete_selection(GtkWidget*, gpointer);
static void edit_select_parent(GtkWidget*, gpointer);
static void edit_reset_selection(GtkWidget*, gpointer);
+static void edit_reset(GtkWidget*, gpointer);
static void edit_insert(GtkWidget*, gpointer);
static void help_about(GtkWidget*, gpointer);
{ "/File/_Open...", "<control>O", file_open, 0, NULL },
{ "/File/_Reopen", NULL, file_re_open, 0, NULL },
{ "/File/_Close", "<control>W", file_close, 0, NULL },
+ { "/File/Output _TeX", NULL, file_output_tex, 0, NULL },
{ "/File/sep1", NULL, NULL, 0, "<Separator>" },
{ "/File/_Quit", "<control>Q", gtk_main_quit, 0, NULL },
{ "/Edit/Delete Selection", NULL, edit_delete_selection, 0, NULL },
{ "/Edit/Select Parent", NULL, edit_select_parent, 0, NULL },
{ "/Edit/sep1", NULL, NULL, 0, "<Separator>" },
+ { "/Edit/_Reset", NULL, edit_reset, 0, NULL },
{ "/Edit/Insert...", "<control>I", edit_insert, 0, NULL },
{ "/_Options", NULL, NULL, 0, "<Branch>" },
g_free(msg);
}
+static guint edit_timeout_id;
+extern void edit_timeout(gpointer);
+
void
GUI_init(int* argc, char*** argv, char* title, guint width, guint height, gpointer c)
{
gtk_widget_show(window);
context = c;
- /*edit_timeout_id = gtk_timeout_add(400, edit_timeout, context);*/
+ /*edit_timeout_id = gtk_timeout_add(50, edit_timeout, context);*/
}
void
gtk_widget_show (fs);
}
+static void
+file_output_tex(GtkWidget* widget, gpointer data)
+{
+ g_assert(context != NULL);
+ edit_output_tex(context);
+}
+
static void
options_font_manager(GtkWidget* widget, FontManagerId id)
{
}
}
+static void
+edit_reset(GtkWidget* widget, gpointer data)
+{
+ g_assert(context != NULL);
+ edit_reset_tex(context);
+}
+
static void
insert_tex(GtkWidget* widget, GtkEntry* entry)
{