projects
/
pspp-builds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
scan: New library for high-level PSPP syntax lexical analysis.
[pspp-builds.git]
/
src
/
ui
/
gui
/
syntax-editor-source.c
diff --git
a/src/ui/gui/syntax-editor-source.c
b/src/ui/gui/syntax-editor-source.c
index 1cee28886c2e04bfa6d6ff48040b72d6f58bf305..6ec866c93a11d7997f2de2fd66583b040e5b06b3 100644
(file)
--- a/
src/ui/gui/syntax-editor-source.c
+++ b/
src/ui/gui/syntax-editor-source.c
@@
-1,5
+1,5
@@
/* PSPPIRE - a graphical user interface for PSPP.
/* PSPPIRE - a graphical user interface for PSPP.
- Copyright (C) 2006 Free Software Foundation
+ Copyright (C) 2006
, 2009
Free Software Foundation
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@
-18,8
+18,8
@@
#include <config.h>
#include <libpspp/getl.h>
#include <config.h>
#include <libpspp/getl.h>
-#include <libpspp/alloc.h>
#include <libpspp/compiler.h>
#include <libpspp/compiler.h>
+#include <libpspp/cast.h>
#include <libpspp/str.h>
#include <stdlib.h>
#include <libpspp/str.h>
#include <stdlib.h>
@@
-27,14
+27,17
@@
#include <gtk/gtk.h>
#include "syntax-editor-source.h"
#include <gtk/gtk.h>
#include "syntax-editor-source.h"
-#include "syntax-editor.h"
+#include "psppire-syntax-window.h"
+
+#include "xalloc.h"
struct syntax_editor_source
{
struct getl_interface parent;
struct syntax_editor_source
{
struct getl_interface parent;
-
const struct syntax_editor *se
;
+
GtkTextBuffer *buffer
;
GtkTextIter i;
GtkTextIter end;
GtkTextIter i;
GtkTextIter end;
+ const gchar *name;
};
};
@@
-48,10
+51,8
@@
always_false (const struct getl_interface *i UNUSED)
static const char *
name (const struct getl_interface *i)
{
static const char *
name (const struct getl_interface *i)
{
- const struct syntax_editor_source *ses =
- (const struct syntax_editor_source *) i;
-
- return window_name ((const struct editor_window *) ses->se);
+ const struct syntax_editor_source *ses = (const struct syntax_editor_source *) i;
+ return ses->name;
}
}
@@
-67,13
+68,13
@@
location (const struct getl_interface *i)
static bool
read_line_from_buffer (struct getl_interface *i,
static bool
read_line_from_buffer (struct getl_interface *i,
- struct string *line,
- enum getl_syntax *syntax_rules)
+ struct string *line)
{
gchar *text;
GtkTextIter next_line;
{
gchar *text;
GtkTextIter next_line;
- struct syntax_editor_source *ses = (struct syntax_editor_source *) i;
+ struct syntax_editor_source *ses
+ = UP_CAST (i, struct syntax_editor_source, parent);
if ( gtk_text_iter_compare (&ses->i, &ses->end) >= 0)
return false;
if ( gtk_text_iter_compare (&ses->i, &ses->end) >= 0)
return false;
@@
-81,7
+82,7
@@
read_line_from_buffer (struct getl_interface *i,
next_line = ses->i;
gtk_text_iter_forward_line (&next_line);
next_line = ses->i;
gtk_text_iter_forward_line (&next_line);
- text = gtk_text_buffer_get_text (ses->
se->
buffer,
+ text = gtk_text_buffer_get_text (ses->buffer,
&ses->i, &next_line,
FALSE);
g_strchomp (text);
&ses->i, &next_line,
FALSE);
g_strchomp (text);
@@
-103,16
+104,18
@@
do_close (struct getl_interface *i )
}
struct getl_interface *
}
struct getl_interface *
-create_syntax_editor_source (
const struct syntax_editor *se
,
+create_syntax_editor_source (
GtkTextBuffer *buffer
,
GtkTextIter start,
GtkTextIter start,
- GtkTextIter stop
+ GtkTextIter stop,
+ const gchar *nm
)
{
struct syntax_editor_source *ses = xzalloc (sizeof *ses);
)
{
struct syntax_editor_source *ses = xzalloc (sizeof *ses);
- ses->
se = se
;
+ ses->
buffer = buffer
;
ses->i = start;
ses->end = stop;
ses->i = start;
ses->end = stop;
+ ses->name = nm;
ses->parent.interactive = always_false;
ses->parent.interactive = always_false;
@@
-123,5
+126,5
@@
create_syntax_editor_source (const struct syntax_editor *se,
ses->parent.location = location;
ses->parent.location = location;
- return
(struct getl_interface *) ses
;
+ return
&ses->parent
;
}
}