diff --git a/gfm/sec9.md b/gfm/sec9.md
index f5c587c..b6f14c7 100644
--- a/gfm/sec9.md
+++ b/gfm/sec9.md
@@ -1,13 +1,13 @@
Up: [Readme.md](../Readme.md), Prev: [Section 8](sec8.md), Next: [Section 10](sec10.md)
-# Ui file and GtkBuilder
+# The User Interface (UI) file and GtkBuilder
-## New, open and save button
+## New, Open and Save button
-We made the simplest editor in the previous section.
-It reads the files in `app_open` function at start-up and writes them when closing the window.
-It works but is not good.
-It is better to make "New", "Open", "Save" and "Close" buttons.
+In the last section we made the almost simplest editor possible.
+It reads files in the `app_open` function at start-up and writes them out when closing the window.
+It works but is not very good.
+It would be better if we had "New", "Open", "Save" and "Close" buttons.
This section describes how to put those buttons into the window.
Signals and handlers will be explained later.
@@ -105,7 +105,7 @@ The function `app_open` in the source code `tfe2.c` is as follows.
86 }
~~~
-The point is how to build the window.
+The aim is to build the widgets of the main application window.
- 25-27: Creates a GtkApplicationWindow instance and sets the title and default size.
- 29-30: Creates a GtkBox instance `boxv`.
@@ -124,18 +124,18 @@ This makes the label expands horizontally as long as possible.
This makes it expand horizontally and vertically as big as possible.
It is appended to `boxv` as the second child.
-The number of lines is 33(=57-25+1) to build the widgets.
-And we needed many variables (`boxv`, `boxh`, `dmy1`, ...).
-Most of them aren't necessary except building the widgets.
+The number of lines to build the widgets is 33(=57-25+1).
+We also needed many additional variables (`boxv`, `boxh`, `dmy1`, ...),
+most of which weren't necessary, except for building the widgets.
Are there any good solution to reduce these work?
Gtk provides GtkBuilder.
-It reads ui data and builds a window.
-It reduces the cumbersome work.
+It reads user interface (UI) data and builds a window.
+It reduces this cumbersome work.
-## Ui file
+## The UI File
-First, let's look at the ui file `tfe3.ui` that defines a structure of the widgets.
+First, let's look at the UI file `tfe3.ui` that is used to define the widget structure.
~~~xml
1
@@ -200,11 +200,11 @@ First, let's look at the ui file `tfe3.ui` that defines a structure of the widge
~~~
The structure of this file is XML.
-Constructs beginning with `<` and ending with `>` are called tags.
-And there are two types of tags, start tag and end tag.
+Constructs that begin with `<` and end with `>` are called tags.
+There are two types of tags, the start tag and the end tag.
For example, `` is a start tag and `` is an end tag.
-Ui file begins and ends with interface tags.
-Some tags, for example, object tags can have a class and id attributes in the start tag.
+The UI file begins and ends with interface tags.
+Some tags, for example object tags, can have a class and id attributes in their start tag.
- 1: The first line is XML declaration.
It specifies that the version of XML is 1.0 and the encoding is UTF-8.
@@ -431,7 +431,7 @@ It describes resource files.
However, this xml has only one gresource.
- 3: The gresource has a prefix `/com/github/ToshioCP/tfe3`.
- 4: The gresource has `tfe3.ui`.
-And it is pointed by `/com/github/ToshioCP/tfe3/tfe3.ui` because it needs prefix.
+And it is pointed by `/com/github/ToshioCP/tfe3/tfe3.ui` because it needs prefix.
If you want to add more files, then insert them between line 4 and 5.
Save this xml text to `tfe3.gresource.xml`.
@@ -485,5 +485,4 @@ build = gtk_builder_new_from_resource ("/com/github/ToshioCP/tfe3/tfe3.ui");
Then, compile and run it.
The window appears and it is the same as the screenshot at the beginning of this page.
-
Up: [Readme.md](../Readme.md), Prev: [Section 8](sec8.md), Next: [Section 10](sec10.md)
diff --git a/src/sec9.src.md b/src/sec9.src.md
index 3840a3e..22abf42 100644
--- a/src/sec9.src.md
+++ b/src/sec9.src.md
@@ -1,11 +1,11 @@
-# Ui file and GtkBuilder
+# The User Interface (UI) file and GtkBuilder
-## New, open and save button
+## New, Open and Save button
-We made the simplest editor in the previous section.
-It reads the files in `app_open` function at start-up and writes them when closing the window.
-It works but is not good.
-It is better to make "New", "Open", "Save" and "Close" buttons.
+In the last section we made the almost simplest editor possible.
+It reads files in the `app_open` function at start-up and writes them out when closing the window.
+It works but is not very good.
+It would be better if we had "New", "Open", "Save" and "Close" buttons.
This section describes how to put those buttons into the window.
Signals and handlers will be explained later.
@@ -18,7 +18,7 @@ The function `app_open` in the source code `tfe2.c` is as follows.
tfe/tfe2.c app_open
@@@
-The point is how to build the window.
+The aim is to build the widgets of the main application window.
- 25-27: Creates a GtkApplicationWindow instance and sets the title and default size.
- 29-30: Creates a GtkBox instance `boxv`.
@@ -37,29 +37,29 @@ This makes the label expands horizontally as long as possible.
This makes it expand horizontally and vertically as big as possible.
It is appended to `boxv` as the second child.
-The number of lines is 33(=57-25+1) to build the widgets.
-And we needed many variables (`boxv`, `boxh`, `dmy1`, ...).
-Most of them aren't necessary except building the widgets.
+The number of lines to build the widgets is 33(=57-25+1).
+We also needed many additional variables (`boxv`, `boxh`, `dmy1`, ...),
+most of which weren't necessary, except for building the widgets.
Are there any good solution to reduce these work?
Gtk provides GtkBuilder.
-It reads ui data and builds a window.
-It reduces the cumbersome work.
+It reads user interface (UI) data and builds a window.
+It reduces this cumbersome work.
-## Ui file
+## The UI File
-First, let's look at the ui file `tfe3.ui` that defines a structure of the widgets.
+First, let's look at the UI file `tfe3.ui` that is used to define the widget structure.
@@@include
tfe/tfe3.ui
@@@
The structure of this file is XML.
-Constructs beginning with `<` and ending with `>` are called tags.
-And there are two types of tags, start tag and end tag.
+Constructs that begin with `<` and end with `>` are called tags.
+There are two types of tags, the start tag and the end tag.
For example, `` is a start tag and `` is an end tag.
-Ui file begins and ends with interface tags.
-Some tags, for example, object tags can have a class and id attributes in the start tag.
+The UI file begins and ends with interface tags.
+Some tags, for example object tags, can have a class and id attributes in their start tag.
- 1: The first line is XML declaration.
It specifies that the version of XML is 1.0 and the encoding is UTF-8.
@@ -177,7 +177,7 @@ tfe/tfe3.gresource.xml
However, this xml has only one gresource.
- 3: The gresource has a prefix `/com/github/ToshioCP/tfe3`.
- 4: The gresource has `tfe3.ui`.
-And it is pointed by `/com/github/ToshioCP/tfe3/tfe3.ui` because it needs prefix.
+And it is pointed by `/com/github/ToshioCP/tfe3/tfe3.ui` because it needs prefix.
If you want to add more files, then insert them between line 4 and 5.
Save this xml text to `tfe3.gresource.xml`.
@@ -205,4 +205,3 @@ build = gtk_builder_new_from_resource ("/com/github/ToshioCP/tfe3/tfe3.ui");
Then, compile and run it.
The window appears and it is the same as the screenshot at the beginning of this page.
-