]>
git.tdb.fi Git - libs/gltk.git/log
Mikko Rasa [Wed, 29 May 2013 20:17:00 +0000 (23:17 +0300)]
Restore parent to 0 if an exception occurs while setting things up
This prevents an inconsistent state from forming if something goes wrong.
Mikko Rasa [Wed, 29 May 2013 20:05:49 +0000 (23:05 +0300)]
Remove deprecated alias from Style loader
Mikko Rasa [Wed, 29 May 2013 20:04:50 +0000 (23:04 +0300)]
Check the return value of open_from_sources since it no longer throws
Mikko Rasa [Wed, 29 May 2013 20:00:10 +0000 (23:00 +0300)]
Ignore hidden widgets when solving a layout
At the moment this causes any constraints involving them to be ignored,
which may break constraint chains.
Mikko Rasa [Wed, 29 May 2013 19:12:11 +0000 (22:12 +0300)]
The entire row should be divided when initially making a column basic
Failing to do so will alter the row's meaning if the nonzero value in the
column is anything else than 1.0.
Mikko Rasa [Sun, 24 Mar 2013 15:42:16 +0000 (17:42 +0200)]
Take a Window pointer along with custom input devices
Mikko Rasa [Sun, 24 Mar 2013 15:32:01 +0000 (17:32 +0200)]
Guard against null pointers
Mikko Rasa [Sun, 24 Mar 2013 15:27:30 +0000 (17:27 +0200)]
Don't let input events that are passed to widgets go to other consumers
This was removed with event handling changes a while back, because other
changes needed to be made in libmspgui before reimplementation was
possible.
Mikko Rasa [Wed, 16 Jan 2013 17:02:50 +0000 (19:02 +0200)]
Fix a 64-bit compilation problem
Mikko Rasa [Wed, 16 Jan 2013 16:58:51 +0000 (18:58 +0200)]
Reintroduce the Resources constructor that immediately loads a file
This covers many simple use cases and avoids the need of creating a
sub-class to add sources or load data before a Root is created.
Mikko Rasa [Wed, 16 Jan 2013 16:53:58 +0000 (18:53 +0200)]
Restore ability to handle raw image files
Mikko Rasa [Wed, 26 Dec 2012 20:13:01 +0000 (22:13 +0200)]
Fix some problems with List and Dropdown
They probably still don't work perfectly, but there's bigger changes
coming when I have time.
Mikko Rasa [Sat, 15 Dec 2012 18:13:58 +0000 (20:13 +0200)]
Miscellaneous improvements for handling graphics
Mikko Rasa [Sat, 15 Dec 2012 18:11:56 +0000 (20:11 +0200)]
Allow specifying a custom spacing for a constraint
Mikko Rasa [Sat, 15 Dec 2012 16:23:25 +0000 (18:23 +0200)]
Initial implementation of middle gravity
This implementation is unsuitable for centering a group of widgets. I
have a better one in mind, but no time to implement it now.
Mikko Rasa [Sun, 9 Dec 2012 17:39:44 +0000 (19:39 +0200)]
Bump version
Source compatibility was broken by commit
91997dd two years ago.
Mikko Rasa [Sat, 8 Dec 2012 10:24:27 +0000 (12:24 +0200)]
Update loaders to use ObjectLoader as base class
Mikko Rasa [Sat, 8 Dec 2012 00:03:50 +0000 (02:03 +0200)]
Font size loading fixes
When a font is specified, reset font size as well.
Add a font_size statement for overriding the size.
Mikko Rasa [Fri, 7 Dec 2012 18:59:43 +0000 (20:59 +0200)]
Allow Root widgets to be created with custom input devices
Mikko Rasa [Fri, 7 Dec 2012 10:28:59 +0000 (12:28 +0200)]
Implement the Layout::set_spacing function and friends
Mikko Rasa [Sun, 2 Dec 2012 21:38:30 +0000 (23:38 +0200)]
Change Style so it doesn't need a special loading function
Mikko Rasa [Sun, 2 Dec 2012 17:27:05 +0000 (19:27 +0200)]
Remove file lookup from Resources since a better mechanism exists now
Mikko Rasa [Sun, 2 Dec 2012 09:44:11 +0000 (11:44 +0200)]
Move all child widget handling into Container
This solves some problems like the slider of a list not receiving pointer
enter/leave events. There are no obvious downsides either. Widgets can
always override event handlers if they want to prevent something from
happening.
The event handlers are currently just combinations of those of the Panel
and Container classes. They'll be smoothed out shortly.
Mikko Rasa [Sun, 2 Dec 2012 08:51:46 +0000 (10:51 +0200)]
Remove dead code from Panel::Child
Mikko Rasa [Fri, 30 Nov 2012 21:07:45 +0000 (23:07 +0200)]
Remove the extraneous and deprecated header component from Build file
Mikko Rasa [Fri, 30 Nov 2012 21:07:11 +0000 (23:07 +0200)]
Replace default_size -> native_size in the example font file
Mikko Rasa [Fri, 30 Nov 2012 20:58:52 +0000 (22:58 +0200)]
Use a GL::Renderer to render widgets
This eliminates a lot of texture and matrix thrashing.
Mikko Rasa [Fri, 30 Nov 2012 20:21:55 +0000 (22:21 +0200)]
Cache widget parts in meshes
This initial implementation is rather rough, but it paves the way for
using GL::Renderer. It uses a lot of VBOs and is generally less efficient
than it could, but those will be addressed in the near future. All
widgets haven't been tested, but the helloworld example works.
Mikko Rasa [Fri, 30 Nov 2012 17:57:46 +0000 (19:57 +0200)]
Add protected functions for manipulating widget state
Mikko Rasa [Wed, 28 Nov 2012 19:45:30 +0000 (21:45 +0200)]
Return a reference from Style::get_font
Styles always have a font, so the returned value could never be null.
Mikko Rasa [Wed, 28 Nov 2012 18:34:54 +0000 (20:34 +0200)]
Make font size a property of Style
Mikko Rasa [Wed, 28 Nov 2012 18:29:04 +0000 (20:29 +0200)]
Bind the font texture in Text::render
Mikko Rasa [Tue, 27 Nov 2012 21:58:07 +0000 (23:58 +0200)]
Add autosizing for panels
It still does a lot of unnecessary layout updates, but seems to work at
least in basic cases.
Mikko Rasa [Tue, 27 Nov 2012 21:52:39 +0000 (23:52 +0200)]
Don't try to solve if container is smaller than its margins
Attempting that would cause unsigneds to wrap around to very large values
and cause a weird solution.
Mikko Rasa [Tue, 27 Nov 2012 21:43:34 +0000 (23:43 +0200)]
Make LinearProgram robust against degenerate solutions
If the container is exactly the size required by the widgets, there will
be redundant equations, which causes a degeneracy in the phase 1 solution.
Mikko Rasa [Tue, 27 Nov 2012 11:04:39 +0000 (13:04 +0200)]
Report non-basic variables in Layout::LinearProgram as having zero value
Mikko Rasa [Tue, 27 Nov 2012 08:22:30 +0000 (10:22 +0200)]
Update layout when panel's geometry changes
Mikko Rasa [Tue, 27 Nov 2012 07:38:29 +0000 (09:38 +0200)]
Fix a crash if the linear program contains an empty column
Mikko Rasa [Tue, 27 Nov 2012 07:36:36 +0000 (09:36 +0200)]
Store autosized geom in Layout::Slot
This avoids having to autosize all widgets in the layout every time one of
them changes, and allows checking whether an update is actually needed.
Mikko Rasa [Mon, 26 Nov 2012 19:04:36 +0000 (21:04 +0200)]
Some cleanup in Layout
Mikko Rasa [Mon, 26 Nov 2012 18:20:00 +0000 (20:20 +0200)]
Improve comments of the Layout class
Add some code comments to describe how the constraints are built and how
the different parts of the simplex method work. They don't entirely
explain the algorithm, but should help understanding the code.
Minor fixes to the documentation.
Mikko Rasa [Wed, 21 Nov 2012 15:58:11 +0000 (17:58 +0200)]
Miscellaneous other fixes
Mikko Rasa [Wed, 21 Nov 2012 15:57:44 +0000 (17:57 +0200)]
Adapt to Collection API changes
Mikko Rasa [Wed, 21 Nov 2012 15:56:49 +0000 (17:56 +0200)]
Adjust event handling to match changes in mspgui
Mikko Rasa [Wed, 21 Nov 2012 15:30:10 +0000 (17:30 +0200)]
Rework exceptions and use maputils
Mikko Rasa [Wed, 21 Nov 2012 10:03:55 +0000 (12:03 +0200)]
Update Build file with new library names and new features
Mikko Rasa [Wed, 21 Nov 2012 10:02:58 +0000 (12:02 +0200)]
Add .gitignore file, loosely based on svn:ignore
Mikko Rasa [Wed, 21 Nov 2012 09:49:56 +0000 (11:49 +0200)]
Strip copyright messages and id tags from individual files
Mikko Rasa [Fri, 4 Mar 2011 20:25:55 +0000 (20:25 +0000)]
Add some classes for automatically creating basic layouts
Some enhancements to the base Layout class
Mikko Rasa [Mon, 28 Feb 2011 15:29:05 +0000 (15:29 +0000)]
Add a Layout class to automatically position widgets within a Panel
Mikko Rasa [Mon, 28 Feb 2011 15:27:15 +0000 (15:27 +0000)]
Add a render method to Root that takes care of proper matrices
Mikko Rasa [Mon, 28 Feb 2011 15:25:26 +0000 (15:25 +0000)]
Add various constructors to Sides (semantics inspired by CSS margins)
Reduce code duplication in Alignment::apply
Mikko Rasa [Mon, 28 Feb 2011 15:22:39 +0000 (15:22 +0000)]
Avoid generating events during destruction of a widget
Mikko Rasa [Mon, 28 Feb 2011 15:21:49 +0000 (15:21 +0000)]
Add child_added/removed events to Container
Mikko Rasa [Mon, 28 Feb 2011 15:18:18 +0000 (15:18 +0000)]
Add a signal to notify when the automatic size of a widget changes
Mikko Rasa [Mon, 28 Feb 2011 10:56:14 +0000 (10:56 +0000)]
Adjust some slider checks
Mikko Rasa [Sun, 27 Feb 2011 16:38:33 +0000 (16:38 +0000)]
Implement autosize() method for most widgets
Only take content size into account if the relevant Part exists
Change List autosize() to set a height suitable for five rows
Additional methods to autosize for a set number of rows or all rows
Make sure that a Dropdown's List fits inside the Root
Mikko Rasa [Thu, 3 Feb 2011 12:33:23 +0000 (12:33 +0000)]
Loader improvements
Mikko Rasa [Thu, 3 Feb 2011 11:48:09 +0000 (11:48 +0000)]
typedef tweaks
Mikko Rasa [Wed, 2 Feb 2011 12:05:28 +0000 (12:05 +0000)]
Rearrange members
Make Container a friend of Widget and get rid of the static helpers
Mikko Rasa [Fri, 12 Nov 2010 21:43:58 +0000 (21:43 +0000)]
Update helloworld to compile again
Mikko Rasa [Fri, 12 Nov 2010 21:43:29 +0000 (21:43 +0000)]
Store the Resources reference only in Root widget
Make other widgets get it from the Root
SOURCE COMPATIBILITY BREAK
Mikko Rasa [Fri, 12 Nov 2010 20:43:38 +0000 (20:43 +0000)]
Implement autosize for List and use it from Dropdown
Rename List::recalculate_parameters to check_view_range
Use Text for rendering List items
Check view range of multiline entries in more places
Mikko Rasa [Fri, 12 Nov 2010 08:45:37 +0000 (08:45 +0000)]
Add method to get a Part by name
Use keyword overloading to rename the special keyword to part
Mikko Rasa [Thu, 4 Nov 2010 07:12:01 +0000 (07:12 +0000)]
Add a constructor to Resources that loads a datafile
Mikko Rasa [Fri, 15 Oct 2010 04:50:20 +0000 (04:50 +0000)]
Make sure that at least one line of text is always rendered
Initialize Entry's visible rows and make sure it's always at least 1
Mikko Rasa [Mon, 11 Oct 2010 07:24:18 +0000 (07:24 +0000)]
Add Image widget
Mikko Rasa [Wed, 6 Oct 2010 12:28:47 +0000 (12:28 +0000)]
Add a VSlider to multiline Entries
Make Text only render as many lines as fit in the widget
Mikko Rasa [Tue, 5 Oct 2010 10:26:03 +0000 (10:26 +0000)]
Style update: add spaces around assignments
Mikko Rasa [Sat, 24 Apr 2010 20:47:55 +0000 (20:47 +0000)]
Support multiline text editing
Mikko Rasa [Tue, 20 Apr 2010 07:57:24 +0000 (07:57 +0000)]
Make the Text class interface more obvious by not using a reference to pointer
Mikko Rasa [Mon, 12 Apr 2010 20:49:41 +0000 (20:49 +0000)]
Update text information when widget style changes
Mikko Rasa [Fri, 12 Mar 2010 07:30:41 +0000 (07:30 +0000)]
Add Dialog class
Mikko Rasa [Sun, 28 Feb 2010 11:41:40 +0000 (11:41 +0000)]
Derive Root from Graphics::EventSource
Repeat events from Root, but only if they didn't go to any widget
Mikko Rasa [Sun, 28 Feb 2010 10:32:54 +0000 (10:32 +0000)]
Add Widget::focusable flag
Propagate focus requests through Panels
Add getters for input focus
Mikko Rasa [Fri, 26 Feb 2010 10:50:57 +0000 (10:50 +0000)]
Allow custom tooltips at empty areas of a Root
Fix some bugs
Mikko Rasa [Fri, 25 Dec 2009 17:29:37 +0000 (17:29 +0000)]
Handle line data when inserting/erasing text
Mikko Rasa [Fri, 4 Dec 2009 07:36:45 +0000 (07:36 +0000)]
Fix compilation on 64-bit systems
Mikko Rasa [Sat, 31 Oct 2009 09:37:19 +0000 (09:37 +0000)]
Remove unused code
Mikko Rasa [Wed, 7 Oct 2009 17:55:07 +0000 (17:55 +0000)]
Bump version to 1.1
Update Build file for builder 1.0
Mikko Rasa [Sun, 20 Sep 2009 16:27:08 +0000 (16:27 +0000)]
Add Text class with multiline support
Use said class in widgets containing text
Support for displaying tooltips in the Root widget
Mikko Rasa [Wed, 16 Sep 2009 19:16:18 +0000 (19:16 +0000)]
Add Container class
Derive all Widgets that contain other Widgets from Container
Communicate various things to a Widget's parent with signals
Make List::slider not a pointer
Mikko Rasa [Mon, 3 Aug 2009 12:24:48 +0000 (12:24 +0000)]
Prevent problems if a button press handler throws
Add optional text parameter to Toggle constructor
Mikko Rasa [Sun, 26 Jul 2009 19:25:26 +0000 (19:25 +0000)]
Inherit Root from sigc::trackable so it's safe to delete it
Mikko Rasa [Sun, 5 Jul 2009 20:29:10 +0000 (20:29 +0000)]
Add icon support to Button
Make Root take const Resources &
Propatage pointer grabs up the widget stack
Mikko Rasa [Tue, 14 Oct 2008 17:10:22 +0000 (17:10 +0000)]
Add Changelog.txt
Bump version
Mikko Rasa [Mon, 13 Oct 2008 19:59:40 +0000 (19:59 +0000)]
Make the List in Dropdown a normal member instead of pointer
Cache row_height inside of List
Automatically resize the List associated with a Dropdown to fit the number of items in it
Mikko Rasa [Sat, 11 Oct 2008 18:27:05 +0000 (18:27 +0000)]
Rename the basic skin to encourage reusability
Add styles for the rest of the widgets
Mikko Rasa [Sat, 11 Oct 2008 15:09:51 +0000 (15:09 +0000)]
Jump 10 steps when slider trough is clicked
Take both ascent and descent into account when determining list row size
Use pointer motion instead of pointer leave event to unset active when the pointer leaves a button while the button is pressed
Don't allow unsetting exclusive toggles
Fix a but in Alignment
Mikko Rasa [Thu, 9 Oct 2008 21:06:13 +0000 (21:06 +0000)]
Support exclusive Toggles for implementing option buttons
Mikko Rasa [Wed, 3 Sep 2008 17:04:10 +0000 (17:04 +0000)]
Set correct mime types for images
Mikko Rasa [Wed, 3 Sep 2008 16:44:14 +0000 (16:44 +0000)]
Add a simple Hello World application to demonstrate the library
Mikko Rasa [Wed, 20 Aug 2008 07:49:08 +0000 (07:49 +0000)]
Clear input focus when the focused widget is hidden
Mikko Rasa [Tue, 19 Aug 2008 11:43:20 +0000 (11:43 +0000)]
Add version and description fields to Build
Add License.txt
Update svn:ignore
Mikko Rasa [Sat, 16 Aug 2008 12:35:31 +0000 (12:35 +0000)]
Add Widget::set_focus
Add Entry::signal_enter
Make Panel throw on an attempt to handle a widget which is not in it
Mikko Rasa [Wed, 23 Jul 2008 00:07:31 +0000 (00:07 +0000)]
Fix incorrect usage of DataFile::load
Mikko Rasa [Tue, 22 Jul 2008 17:56:07 +0000 (17:56 +0000)]
Render text in Dropdown directly from the List
Don't add control characters to Entry's buffer
Mikko Rasa [Sun, 20 Jul 2008 19:11:43 +0000 (19:11 +0000)]
Add UserInterface class
Mikko Rasa [Sun, 20 Jul 2008 12:40:21 +0000 (12:40 +0000)]
Migrate from msppath to mspfs
Mikko Rasa [Wed, 25 Jun 2008 09:20:39 +0000 (09:20 +0000)]
Add a missing #include