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.
Philip Chimento [Tue, 11 Jan 2011 20:01:41 +0000 (15:01 -0500)]
Merge branch 'master' of github.com:wmvanvliet/Chimara
Philip Chimento [Tue, 11 Jan 2011 07:37:00 +0000 (02:37 -0500)]
Also trigger the "command" signal on char input
Character input should also trigger the ChimaraIF::command signal.
Marijn van Vliet [Sun, 9 Jan 2011 22:55:31 +0000 (23:55 +0100)]
Fixed issue when setting a 'proportional' style hint.
Philip Chimento [Wed, 5 Jan 2011 21:49:10 +0000 (16:49 -0500)]
Fix ref bug in plugin loader test
The Chimara widget should have a reference added to it.
Philip Chimento [Wed, 5 Jan 2011 21:55:52 +0000 (16:55 -0500)]
Implement glk_schannel_set_volume()
Implement setting volume on sound channels using the GStreamer "volume"
element.
Philip Chimento [Wed, 5 Jan 2011 21:54:34 +0000 (16:54 -0500)]
Add test plugin for sound functions
Add a test plugin, to be loaded with plugin-loader, for various testing
of sound functions.
Philip Chimento [Wed, 5 Jan 2011 21:49:10 +0000 (16:49 -0500)]
Fix ref bug in plugin loader test
The Chimara widget should have a reference added to it.
Philip Chimento [Wed, 5 Jan 2011 19:19:50 +0000 (14:19 -0500)]
Fix stylehint size bug
The "size" stylehint should use the GtkTextTag "scale" property, not
the "size" property - this way, the relative size is independent of the
default font size. The bug was that the "size" property should be given
in Pango units, not points, but now the "size" property isn't used at
all.
Philip Chimento [Wed, 5 Jan 2011 18:36:30 +0000 (13:36 -0500)]
Add test case for stylehint size bug
Setting a "size" stylehint on a style makes any text printed in that
style invisible. This is a test case for that bug.
Philip Chimento [Tue, 28 Dec 2010 17:04:58 +0000 (18:04 +0100)]
Fix #ifdefs
Philip Chimento [Tue, 28 Dec 2010 17:03:37 +0000 (18:03 +0100)]
Use gst_object_unref() instead of g_object_unref()
Philip Chimento [Tue, 28 Dec 2010 16:53:13 +0000 (17:53 +0100)]
Added guards for compiling without GStreamer
The GStreamer code should be protected everywhere with #ifdef's so that
the library will still build without GStreamer support.
Philip Chimento [Tue, 28 Dec 2010 16:32:15 +0000 (17:32 +0100)]
Improve error handling
Interrupt glk_schannel_create() and print warnings if GStreamer functions
fail
Philip Chimento [Tue, 28 Dec 2010 13:57:16 +0000 (14:57 +0100)]
Start work on sound capabilities
Compile with GStreamer libraries. Implement creation of Glk sound
channel objects containing GStreamer pipelines.
Philip Chimento [Tue, 28 Dec 2010 13:55:16 +0000 (14:55 +0100)]
Added test game for sound
Marijn van Vliet [Sun, 19 Dec 2010 10:58:46 +0000 (11:58 +0100)]
Fixed some default styling
Marijn van Vliet [Sat, 18 Dec 2010 23:44:27 +0000 (00:44 +0100)]
Fixed default font retrieval for windows. This caused a minor issue with
textgrid size calcuations.
P. F. Chimento [Tue, 23 Nov 2010 00:05:02 +0000 (01:05 +0100)]
Added _input_pending functions to docs
Added the chimara_glk_is_{line,char}_input_pending() functions to the
documentation.
P. F. Chimento [Tue, 23 Nov 2010 00:01:29 +0000 (01:01 +0100)]
Wrote chimara_glk_set_resource_load_callback()
Added a function for providing an alternate mechanism for loading
resources, as described in the Blorb specification, section 14. This
function allows the host program to specify a callback which the Glk
program will call when a resource is requested and no Blorb resource map
is loaded.
P. F. Chimento [Mon, 22 Nov 2010 23:50:26 +0000 (00:50 +0100)]
Fixed threading bug in graphics
flush_window_buffer() requests the GDK lock, but it was called with the
GDK lock already acquired in draw_image_common(). How this managed not
to freeze before, I don't know.
P. F. Chimento [Mon, 22 Nov 2010 22:14:19 +0000 (23:14 +0100)]
Fixed minor bug in glk_image_get_info()
P. F. Chimento [Mon, 22 Nov 2010 20:54:41 +0000 (21:54 +0100)]
Fix crash when loading resource without a map
The Glk program now fails gracefully when trying to load an image
resource without having loaded a resource map first: it prints a warning
and doesn't load the image, instead of crashing.
P. F. Chimento [Sun, 21 Nov 2010 01:04:52 +0000 (02:04 +0100)]
Added API to tell whether forced input is pending
Added the functions
chimara_glk_is_char_input_pending()
chimara_glk_is_line_input_pending()
P. F. Chimento [Sun, 21 Nov 2010 00:45:21 +0000 (01:45 +0100)]
Implemented interactive mode
The ChimaraGlk:interactive-mode property didn't do anything yet, but it
now disables paging when TRUE. When input scrolls off the screen, the
screen now scrolls down with it.
P. F. Chimento [Fri, 19 Nov 2010 21:58:57 +0000 (22:58 +0100)]
Fixed crash in ChimaraIF::command
Fixed the threading bug in ChimaraIF::command.
P. F. Chimento [Fri, 19 Nov 2010 21:55:32 +0000 (22:55 +0100)]
Added test case for crash in ChimaraIF::command
There is a gdk_threads_enter/leave missing somewhere, because using GTK
calls from the signal handler of the ChimaraIF::command signal causes an
X error.
P. F. Chimento [Wed, 17 Nov 2010 21:14:06 +0000 (22:14 +0100)]
Fixed buffers and grids sharing the same styles
Two separate text tags should be created, one for text buffers, the
other for grids. Otherwise they share each other's styles (i.e. reverse
video on text grids.)
P. F. Chimento [Wed, 17 Nov 2010 21:13:09 +0000 (22:13 +0100)]
Updated glulxe's Makefile.am
Updated glulxe's Makefile.am, based on glulxe's original Makefile
P. F. Chimento [Wed, 17 Nov 2010 21:11:26 +0000 (22:11 +0100)]
Fewer unnecessary recompiles of git
Making the automatically-generated version.h depend on Makefile.am
instead of Makefile prevents git from being fully recompiled every time
configure is run.
P. F. Chimento [Wed, 17 Nov 2010 21:10:13 +0000 (22:10 +0100)]
Edited documentation of ChimaraIF::command signal
The documentation did not mention that the signal can be generated with
the "input" parameter equal to NULL.
P. F. Chimento [Sat, 13 Nov 2010 00:20:21 +0000 (01:20 +0100)]
Fixed memory management in styles
Added a free for the StyleSets that were leaked, and fixed a double
unref of text tags that was causing lots of warnings when closing the
widget. Also added a test case.
P. F. Chimento [Sat, 13 Nov 2010 00:08:04 +0000 (01:08 +0100)]
Merge branch 'master' of github.com:wmvanvliet/Chimara
P. F. Chimento [Sat, 13 Nov 2010 00:07:17 +0000 (01:07 +0100)]
Fixed example program in documentation
The example program in ChimaraGlk's documentation had a bug in it.
Philip Chimento [Wed, 10 Nov 2010 19:32:29 +0000 (20:32 +0100)]
Fixed package building on Debian
The chimara-player.install file was misnamed, and I also added a
.gitignore file for the debian/ directory.
P. F. Chimento [Wed, 3 Nov 2010 20:31:06 +0000 (21:31 +0100)]
Removed old debug message
P. F. Chimento [Wed, 3 Nov 2010 20:15:30 +0000 (21:15 +0100)]
Don't refer to 'macstyle.css' anymore
We want the default style file to be style.css
P. F. Chimento [Wed, 3 Nov 2010 20:14:45 +0000 (21:14 +0100)]
Add index to documentation
I found out that gtk-doc can automatically generate a symbols index for
the documentation. Of course we want that!
P. F. Chimento [Wed, 3 Nov 2010 20:13:34 +0000 (21:13 +0100)]
Fixed gtk-doc building for gtk-doc 1.14
Added a <para> tag, the absence of which caused the documentation build
to fail.
P. F. Chimento [Wed, 3 Nov 2010 20:11:41 +0000 (21:11 +0100)]
Added xepdmgrclient.[ch] to player/
Otherwise, 'make dist' fails, since not all the files necessary to make
all the possible targets are available.
P. F. Chimento [Wed, 3 Nov 2010 20:08:10 +0000 (21:08 +0100)]
Added .gitignore files
rodin [Tue, 5 Oct 2010 09:32:50 +0000 (09:32 +0000)]
Fixed ordering of the application of the styles
rodin [Wed, 30 Jun 2010 19:03:06 +0000 (19:03 +0000)]
Defined a base style
rodin [Sun, 23 May 2010 10:48:12 +0000 (10:48 +0000)]
Showing off dynamic styles: started work on preferences dialog.
New appearance cannot be saved or loaded yet.
rodin [Tue, 18 May 2010 14:41:29 +0000 (14:41 +0000)]
Fixing some pager bugs
rodin [Tue, 18 May 2010 14:09:02 +0000 (14:09 +0000)]
Removed pager debugging output
rodin [Tue, 18 May 2010 14:05:28 +0000 (14:05 +0000)]
Added missing buffer flush.
rodin [Tue, 18 May 2010 13:59:27 +0000 (13:59 +0000)]
Backend support for using dynamic styles. See also Ticket #49.