P. F. Chimento [Sun, 1 May 2011 14:37:11 +0000 (16:37 +0200)]
Implement line terminators for text grids
This completes the 0.7.2 Glk specification, closing #2.
P. F. Chimento [Sun, 1 May 2011 14:30:21 +0000 (16:30 +0200)]
Fixed grid line input bug introduced in [9f52ac]
The window buffer of a text grid must be flushed before line input
begins; line input replaces part of the text with a widget (GtkEntry)
so if the buffer is flushed during, then it overwrites the widget,
deleting it, and causing a crash.
Marijn van Vliet [Wed, 27 Apr 2011 12:00:43 +0000 (14:00 +0200)]
Merge branch 'master' of ssh://git.stderr.nl/projects/chimara/chimara
Marijn van Vliet [Wed, 27 Apr 2011 11:59:50 +0000 (13:59 +0200)]
Added a useful dtrace script for listing all GLK calls made
P. F. Chimento [Tue, 26 Apr 2011 21:30:03 +0000 (23:30 +0200)]
Refinement of line terminators
Handle line terminator key being pressed when cursor is in the middle
of the input line
P. F. Chimento [Tue, 26 Apr 2011 21:05:35 +0000 (23:05 +0200)]
Line terminators in text buffer windows
P. F. Chimento [Mon, 25 Apr 2011 19:05:35 +0000 (21:05 +0200)]
Fix bug in line input echoing
Line echo status wasn't changed when requesting unicode line input
P. F. Chimento [Mon, 25 Apr 2011 19:04:18 +0000 (21:04 +0200)]
Minimum implementation of line terminators
The function works, but no keys are allowed as line terminators. Prints
a warning when ignoring disallowed line terminators.
P. F. Chimento [Thu, 21 Apr 2011 10:55:30 +0000 (12:55 +0200)]
Update docs for window borders
P. F. Chimento [Thu, 21 Apr 2011 10:13:03 +0000 (12:13 +0200)]
Implement border/noborder window flags
P. F. Chimento [Thu, 21 Apr 2011 09:52:16 +0000 (11:52 +0200)]
Don't fail on unrecognized split method
If glk_window_open() gets unrecognized bits in the method argument, it
should give a warning instead of failing to create the window.
P. F. Chimento [Wed, 20 Apr 2011 15:48:21 +0000 (17:48 +0200)]
Turn on window border in Glulxercise
To test the window border hints, window borders should be turned on
in Glulxercise.
P. F. Chimento [Wed, 20 Apr 2011 15:36:03 +0000 (17:36 +0200)]
Line input echo won't affect current request
When turning line input echoing on or off, the window's currently
active line input request should be unaffected, according to the spec.
P. F. Chimento [Wed, 20 Apr 2011 15:22:38 +0000 (17:22 +0200)]
Implement line input echoing
P. F. Chimento [Wed, 20 Apr 2011 15:22:00 +0000 (17:22 +0200)]
Distinguish input in Glulxercise
Make the input style blue in the Glulxercise tester
P. F. Chimento [Wed, 20 Apr 2011 15:20:47 +0000 (17:20 +0200)]
Add new Glk Unix extension from CheapGlk
There is a new function glkunix_stream_open_pathname_gen() that
supersedes glkunix_stream_open_pathname().
P. F. Chimento [Wed, 20 Apr 2011 11:57:10 +0000 (13:57 +0200)]
Implement unicode normalization
Unicode decomposition and normalization are now implemented.
P. F. Chimento [Wed, 20 Apr 2011 11:15:31 +0000 (13:15 +0200)]
Simplify gestalt checking code
P. F. Chimento [Wed, 20 Apr 2011 11:12:15 +0000 (13:12 +0200)]
Implemented date/time Glk functions
Mostly copied from Andrew Plotkin's CheapGlk implementation; should
be converted to use GDateTime (more portable) when it is feasible to
use GLib 2.26 on many platforms.
P. F. Chimento [Tue, 19 Apr 2011 21:18:23 +0000 (23:18 +0200)]
Updated Glulxercise unit tests to latest
Hmmm, not all of them pass.
P. F. Chimento [Tue, 19 Apr 2011 16:32:08 +0000 (18:32 +0200)]
Move the gestalt_DateTime selector documentation
All the gestalt selectors should be documented in the same chapter.
P. F. Chimento [Tue, 19 Apr 2011 16:26:29 +0000 (18:26 +0200)]
Fix program listing
P. F. Chimento [Tue, 19 Apr 2011 16:05:37 +0000 (18:05 +0200)]
Simplify include comments
Put include comments in chimara-sections.txt so they apply to a whole
group of sections instead of typing out the include files in each
section individually.
P. F. Chimento [Tue, 19 Apr 2011 15:49:52 +0000 (17:49 +0200)]
Document all incomplete symbols
Documentation is now fully complete!
P. F. Chimento [Sun, 17 Apr 2011 10:19:33 +0000 (12:19 +0200)]
Updated Gargoyle extensions and documentation
Brought garglk.h to the latest revision of the Gargoyle extensions to
Glk - removed garglk_set_line_terminators(), added
garglk_set_story_title(), and updated the documentation.
P. F. Chimento [Sun, 17 Apr 2011 10:18:04 +0000 (12:18 +0200)]
Update Gargoyle interpreters to r548
Frotz was the only interpreter with changes.
P. F. Chimento [Thu, 14 Apr 2011 21:32:27 +0000 (23:32 +0200)]
Updated documentation to match API 0.7.2
The Glk API documentation in Chimara now matches the official
documentation, although not everything considered necessary by
Gtk-Doc is documented. Stubs added for new functions.
P. F. Chimento [Thu, 14 Apr 2011 21:30:40 +0000 (23:30 +0200)]
Update to new Glk 0.7.2 code
Andrew Plotkin released new versions of glk.h, gi_dispa.c, and gi_dispa.h.
P. F. Chimento [Thu, 14 Apr 2011 21:25:15 +0000 (23:25 +0200)]
Misc Garglk extensions documenting
P. F. Chimento [Thu, 14 Apr 2011 21:24:22 +0000 (23:24 +0200)]
Misc documentation fixes
P. F. Chimento [Tue, 5 Apr 2011 19:37:09 +0000 (21:37 +0200)]
Get rid of compile warning in error.c
P. F. Chimento [Sun, 13 Mar 2011 19:36:56 +0000 (20:36 +0100)]
Set CSS file from preferences dialog
Now you can set a custom CSS file from the preferences dialog and it
will be remembered across runs of the program.
P. F. Chimento [Sun, 13 Mar 2011 19:35:55 +0000 (20:35 +0100)]
Fix null pointer bug
Fixed a null pointer access in chimara_glk_set_css_from_file() when
passing NULL as the error parameter.
P. F. Chimento [Sun, 13 Mar 2011 14:55:21 +0000 (15:55 +0100)]
Deactivate CSS editor for now
We should have the CSS editor controls grayed out until they actually do
something.
Philip Chimento [Sun, 13 Mar 2011 00:02:22 +0000 (01:02 +0100)]
Move construction to glade file
Do as much construction as possible in the glade file, instead of in
hand-written code. Removed use of GtkFixed widget.
P. F. Chimento [Sat, 12 Mar 2011 10:54:07 +0000 (11:54 +0100)]
Finished preferred interpreters list
You can now select which interpreter should load which format by default,
in the last page of the preferences window.
P. F. Chimento [Thu, 10 Mar 2011 21:45:19 +0000 (22:45 +0100)]
List all available formats in dialog
P. F. Chimento [Thu, 10 Mar 2011 21:26:53 +0000 (22:26 +0100)]
Dynamically generate list of interpreters
P. F. Chimento [Thu, 10 Mar 2011 21:11:34 +0000 (22:11 +0100)]
Implemented display names for interpreters
In preferred interpreters preferences
P. F. Chimento [Thu, 10 Mar 2011 06:56:52 +0000 (07:56 +0100)]
Working on preferred interpreters
P. F. Chimento [Thu, 10 Mar 2011 05:59:01 +0000 (06:59 +0100)]
Load preferred interpreters from preferences
Not editable yet, but that's the next step.
P. F. Chimento [Wed, 9 Mar 2011 22:01:00 +0000 (23:01 +0100)]
Update ignore properties
P. F. Chimento [Wed, 9 Mar 2011 21:58:11 +0000 (22:58 +0100)]
Use better dictionary syntax in schema file
Dictionaries can actually be entered using Python syntax. This is much
clearer than how it was done before.
Philip Chimento [Mon, 7 Mar 2011 21:36:22 +0000 (22:36 +0100)]
Fix RPM building
There was more broken with RPM building than just the GSettings schemas,
now it's fixed.
Philip Chimento [Mon, 7 Mar 2011 21:34:37 +0000 (22:34 +0100)]
Fix GSettings schema install (fix #18)
Debian building should work now, I'll test more thoroughly shortly.
Philip Chimento [Sun, 6 Mar 2011 21:43:51 +0000 (22:43 +0100)]
Add preference for graphics file directory
You can now set a preference for the default directory in which to look
for graphics resource files for older Infocom games. Unfortnately, these
resource files still mysteriously don't work, but it's a start.
Philip Chimento [Tue, 1 Mar 2011 21:01:54 +0000 (22:01 +0100)]
Use callbacks of style editing buttons
Instead of using the GtkActions I removed in the last commit
Philip Chimento [Tue, 1 Mar 2011 20:52:32 +0000 (21:52 +0100)]
Removed style actions from preferences dialog
The style actions aren't needed anymore, we should use callbacks, and
the functionality doesn't work yet anyway.
Philip Chimento [Tue, 1 Mar 2011 20:51:33 +0000 (21:51 +0100)]
Added new preferences and settings
Added some new widgets to the preferences dialog and some settings to go
with them.
Philip Chimento [Mon, 28 Feb 2011 00:51:53 +0000 (01:51 +0100)]
Add a View/Toolbar setting
A good setting to demonstrate one-way binding is the View/Toolbar
setting. When the menu item is switched on or off, we want to update the
setting, but not the other way around. This is so that when you have
multiple windows, turning the toolbar off in one doesn't turn the
toolbar off in the others, but when you open a new window, the toolbar
is shown or hidden depending on the last choice you made.
Philip Chimento [Sun, 27 Feb 2011 12:09:56 +0000 (13:09 +0100)]
Create configuration directory
On startup, the player application now creates a configuration
directory, ~/.chimara. The preferences file is ~/.chimara/config, unless
there is a file chimara-config in the current directory, in which case
it will be overridden.
Philip Chimento [Sun, 27 Feb 2011 11:49:48 +0000 (12:49 +0100)]
Add 'state' settings; add last opened path setting
The settings file now discriminates between 'preferences' settings,
which the user sets from the preferences dialog, and 'state' settings,
which are things remembered by the program.
As an example state setting, the program now remembers the last path a
game was opened from, and automatically starts the file chooser in that
path when opening a game.
Philip Chimento [Sun, 27 Feb 2011 09:13:28 +0000 (10:13 +0100)]
Properly install gschema file
Use the official autoconf and makefile rules for installing the gschema
file.
Philip Chimento [Sat, 26 Feb 2011 16:15:35 +0000 (17:15 +0100)]
Introduce preferences file
We now use a GSettings object with a custom backend that writes to a
configuration file, ~/.chimara. Right now there is only one example
setting, "flep". It's easy to bind the setting to a property of another
GObject, like the "active" property of a checkbox.
Still need to check how other GLib applications install the settings
file properly in their Makefile.am, and how to work with a default
configuration file such as /etc/chimara if the one in the home directory
is not present.
Philip Chimento [Wed, 16 Feb 2011 23:58:32 +0000 (00:58 +0100)]
Use internationalization header for libraries
Use <glib/gi18n-lib.h> instead of <glib/gi18n.h>.
Philip Chimento [Wed, 16 Feb 2011 23:55:01 +0000 (00:55 +0100)]
Proper state of new hyperlinks' event handlers
Fixes #17. New hyperlinks' event handler callbacks were blocked by
default at creation, but they should be unblocked if there is currently
a hyperlink event request pending in the window.
Philip Chimento [Tue, 8 Feb 2011 00:14:10 +0000 (01:14 +0100)]
Proper use of AC_ARG_ENABLE
Inspired by Rob Bradford's http://www.robster.org.uk/blog/?p=134
Marijn van Vliet [Mon, 7 Feb 2011 14:55:37 +0000 (15:55 +0100)]
Fixing #15: handling newlines in textgrids
Philip Chimento [Sat, 5 Feb 2011 01:19:37 +0000 (02:19 +0100)]
Removed SVN ignore files and updated Git ones
Philip Chimento [Sat, 5 Feb 2011 01:18:37 +0000 (02:18 +0100)]
Fix bug in Frotz option parsing
The '-i' option was mistakenly instructed to swallow a value.
Philip Chimento [Sat, 5 Feb 2011 00:48:11 +0000 (01:48 +0100)]
Clean up external Blorb file finding code
Moved the code that looks for an external Blorb file to the player, so
the default path can become a setting in the preferences window. Also,
passing an extra file name on the command line when starting the player
also indicates an external resource file.
Philip Chimento [Fri, 4 Feb 2011 23:44:31 +0000 (00:44 +0100)]
Reinstated 'Open Recent' menu
And added a configure option, '--disable-recent' to skip it, in order to
work around the GTK Quartz bug on OS X that makes the player crash.
Philip Chimento [Fri, 4 Feb 2011 17:29:25 +0000 (18:29 +0100)]
Re-added toolbar with menu item to show or hide it
Philip Chimento [Fri, 4 Feb 2011 17:13:25 +0000 (18:13 +0100)]
Clean up action group code
Philip Chimento [Wed, 2 Feb 2011 23:16:27 +0000 (00:16 +0100)]
Fix program for GStreamer < 0.10.31
It seems that gst_is_initialized() wasn't added until version 0.10.31.
And it just so happens that Ubuntu 10.10 has 0.10.30, so compilation
was failing.
Philip Chimento [Mon, 31 Jan 2011 00:52:51 +0000 (01:52 +0100)]
Check for GStreamer plugins individually
In configure.ac, check for individual GStreamer plugins, instead of
requiring gstreamer-plugins-bad-0.10.pc. This is because Ubuntu doesn't
have a devel package for gstreamer-plugins-bad, and we don't actually
link against that library - we just dynamically open it.
P. F. Chimento [Sun, 30 Jan 2011 17:49:53 +0000 (18:49 +0100)]
Provide blorb file to interpreter on command line
Apparently both interpreters have the undocumented command line option
of providing an extra file name on the command line, which is the Blorb
resource file. We now take advantage of this.
P. F. Chimento [Sun, 30 Jan 2011 17:34:03 +0000 (18:34 +0100)]
Added hack for opening external Blorb file
However, something is preventing it from working with the old Infocom
games.
P. F. Chimento [Sun, 30 Jan 2011 16:40:26 +0000 (17:40 +0100)]
Added calls to set the preferred interpreter
The preferred interpreter can now be set in player/main.c by simply
changing one of the calls to chimara_if_set_preferred_interpreter().
P. F. Chimento [Sun, 30 Jan 2011 16:10:37 +0000 (17:10 +0100)]
Merge branch 'sound'
Conflicts:
tests/Makefile.am
P. F. Chimento [Sun, 30 Jan 2011 16:02:54 +0000 (17:02 +0100)]
Check for proper plugins in configure
Plugins from gstreamer-plugins-base and gstreamer-plugins-bad are
required for proper sound support.
P. F. Chimento [Sun, 30 Jan 2011 16:01:06 +0000 (17:01 +0100)]
Enabled MOD/S3M/IT/XM support
With this commit, sound support should be finished completely!
P. F. Chimento [Sun, 30 Jan 2011 15:41:28 +0000 (16:41 +0100)]
Merge branch 'master' of github.com:wmvanvliet/Chimara
Conflicts:
player/style.css
Marijn van Vliet [Sun, 30 Jan 2011 15:36:30 +0000 (16:36 +0100)]
Background color of windows now changes with garglk_set_reversevideo()
P. F. Chimento [Sun, 30 Jan 2011 15:24:05 +0000 (16:24 +0100)]
Implemented sound notification events
Sound notification events now work.
P. F. Chimento [Sun, 30 Jan 2011 15:05:35 +0000 (16:05 +0100)]
Fixed memory leak
P. F. Chimento [Sun, 30 Jan 2011 15:02:58 +0000 (16:02 +0100)]
Implement alternative resource loading for sound
Sound resources can now be loaded from an alternative location using the
ChimaraGlk resource loading callback. This is tested in the test
program.
Marijn van Vliet [Sun, 30 Jan 2011 14:44:50 +0000 (15:44 +0100)]
Overhauled the whole reverse video thing.
P. F. Chimento [Sun, 30 Jan 2011 14:24:40 +0000 (15:24 +0100)]
Added test case for various sound functions
P. F. Chimento [Sun, 30 Jan 2011 13:40:36 +0000 (14:40 +0100)]
Implemented sound repeats
Now you can request a sound to be played a certain number of times, or
to loop forever.
P. F. Chimento [Sun, 30 Jan 2011 13:17:47 +0000 (14:17 +0100)]
Implemented sound load hints
Sound load hints work, at least for Blorb resources.
P. F. Chimento [Sun, 30 Jan 2011 12:44:25 +0000 (13:44 +0100)]
Stop playing old sound when playing new sound
Sound playing now stops any previous sound already playing on that sound
channel.
P. F. Chimento [Sun, 30 Jan 2011 00:45:59 +0000 (01:45 +0100)]
Sound support working!
Sounds now play as they should.
P. F. Chimento [Sun, 30 Jan 2011 00:13:23 +0000 (01:13 +0100)]
Working on sound support
Playing sounds more than once now works, but not playing an AIFF sound
after an OGG sound or vice versa.
P. F. Chimento [Sun, 30 Jan 2011 00:00:24 +0000 (01:00 +0100)]
Work on sound support
Now supports playing AIFF and OGG sounds only once.
Marijn van Vliet [Sat, 29 Jan 2011 22:47:05 +0000 (23:47 +0100)]
Fixes for garglk_set_zcolors()
P. F. Chimento [Sat, 29 Jan 2011 21:59:47 +0000 (22:59 +0100)]
Change less-like behavior of pager
The behavior of the pager was based on the paging program 'less': the
enter key scrolls down one line (in GTK terms a 'step increment') and
the space bar scrolls down one page. People probably don't want to page
through interactive fiction one line at a time, and so expect the enter
key to scroll down a page. The enter key now does the same as a space
bar. To scroll line by line, use the mouse wheel or the scroll bar
arrows.
Marijn van Vliet [Sat, 29 Jan 2011 17:36:08 +0000 (18:36 +0100)]
Finished implementing garglk_set_zcolors()
P. F. Chimento [Sat, 29 Jan 2011 16:33:17 +0000 (17:33 +0100)]
Improved default styles
Defined the default styles so as to be as accommodating as possible to
the largest possible number of games. In particular, games that abuse
the "Header" style to print bold text.
Marijn van Vliet [Sat, 29 Jan 2011 16:04:08 +0000 (17:04 +0100)]
Merge branch 'master' of https://github.com/wmvanvliet/Chimara
Conflicts:
libchimara/garglk.c
Marijn van Vliet [Sat, 29 Jan 2011 16:02:04 +0000 (17:02 +0100)]
Began garglk_set_zcolors() implementation
P. F. Chimento [Sat, 29 Jan 2011 15:46:44 +0000 (16:46 +0100)]
Fixed pixbuf ref bug
Bug introduced by alternative resource loading.
P. F. Chimento [Sat, 29 Jan 2011 14:33:39 +0000 (15:33 +0100)]
Merge branch 'master' of github.com:wmvanvliet/Chimara
P. F. Chimento [Sat, 29 Jan 2011 14:31:35 +0000 (15:31 +0100)]
Updated interpreters
All bundled interpreters are now current with revision 496 of Gargoyle's
interpreters. Added new Gargoyle extension functions to garglk.c and
garglk.h.
Marijn van Vliet [Sat, 29 Jan 2011 13:46:04 +0000 (14:46 +0100)]
Merge branch 'master' of https://github.com/wmvanvliet/Chimara
Marijn van Vliet [Sat, 29 Jan 2011 13:43:55 +0000 (14:43 +0100)]
* Fixed garglk_set_reversevideo to use the new way styles are handled.
* GtkTextTags are no longer shared between GtkTextBuffers, as this
is not allowed.
Philip Chimento [Sat, 29 Jan 2011 12:38:52 +0000 (13:38 +0100)]
Working on sound
Philip Chimento [Wed, 19 Jan 2011 18:32:33 +0000 (19:32 +0100)]
Implemented sound playing with test sound
Implemented glk_schannel_play() and glk_schannel_stop() with a 440 Hz
sine wave as a test sound. This sound is played no matter what resource
number you pass to glk_schannel_play() and keeps going until you call
glk_schannel_stop().
P. F. Chimento [Sat, 15 Jan 2011 12:10:07 +0000 (13:10 +0100)]
Merge branch 'master' of github.com:wmvanvliet/Chimara
P. F. Chimento [Sat, 15 Jan 2011 12:09:08 +0000 (13:09 +0100)]
Get library to build on Debian stable
gio/gio.h isn't included by default in the old version of GLib that is
in the Debian stable distribution.