Add your Feature Requests

Discussion of features and help with problems encountered while using libRocket

Add your Feature Requests

Postby lloydw on Fri Jan 14, 2011 7:25 pm

libRocket has been open for a couple of months now and I think I've addressed most of the issues people have run into. It looks like a number of you have started to use it and at this point I'm thinking it might be a good idea to start asking for ideas and putting together a basic roadmap of what people would like to see. I'm in no way saying I can implement all the features you add to this thread, but it would be a good idea to have something kicking around.

I see this as a community project, so any code submissions (preferably github pull requests) are more than welcome. If you want write access to the wiki, let me know and I'll happily give you access.

A couple things I'd like to see:
  • Make the STL configurable - I'd like to see how much of a speed boost RDE STL could give us, I know the StyleSheetSpecification std::map is a bit of a bottleneck at the moment.
  • Investigate switching the XML parser to RapidXML for speed
  • Address the global element transparency issues. Some elements don't currently support transparency, due to HTML spec, but I think its worth coming up with a way to allow this.
  • Expose more of the font system, maybe making it a plugin, so that you're not required to use TrueType fonts.
  • Allow text strings to be rendered at different angles, not just horizontal
lloydw
Rocket Engineer
Rocket Engineer
 
Posts: 380
Joined: Tue Jan 15, 2008 10:56 pm

Re: Add your Feature Requests

Postby Trefall on Mon Jan 17, 2011 6:23 pm

  • Tooltips
  • Render To Texture interface
  • Working slider
Trefall
 
Posts: 30
Joined: Wed Jan 05, 2011 8:24 pm

Re: Add your Feature Requests

Postby Xography on Tue Jan 25, 2011 12:18 pm

  • I second a RTT Interface
  • Maybe make the library thread-safe / add a preprocessor macro/flag to enable thread safety
Xography
 
Posts: 7
Joined: Wed Dec 01, 2010 10:55 pm

Re: Add your Feature Requests

Postby lloydw on Tue Jan 25, 2011 9:05 pm

I don't think there'd be a good reason to make the whole library thread-safe, however thread safety on document loading and between contexts would be good.

This would allow you to load documents in the background while the running the UI in the foreground.
lloydw
Rocket Engineer
Rocket Engineer
 
Posts: 380
Joined: Tue Jan 15, 2008 10:56 pm

Re: Add your Feature Requests

Postby Artifice on Mon Jan 31, 2011 12:03 am

Memory hooks.

Being able to track/pool memory allocations is a key feature for middleware. If all the library allocations go through a user provided Allocate/Free pair that would be a great help to anyone looking to use this in a memory constrained environment.

Just some food for thought.
Artifice
 
Posts: 1
Joined: Sun Jan 30, 2011 11:52 pm

Re: Add your Feature Requests

Postby lloydw on Mon Jan 31, 2011 6:27 pm

Thanks guys, keep them coming.

I've started to put these ideas together on the wiki.
lloydw
Rocket Engineer
Rocket Engineer
 
Posts: 380
Joined: Tue Jan 15, 2008 10:56 pm

Re: Add your Feature Requests

Postby dennis on Mon Feb 07, 2011 7:30 am

Out of window mouseup events
CSS rotation
Background click events (eg. for moving windows by clicking the background)
JS or LUA scripting ?
Magical ponies
dennis
 
Posts: 7
Joined: Sat Feb 05, 2011 10:30 pm

Re: Add your Feature Requests

Postby lloydw on Mon Feb 07, 2011 7:55 am

Thanks...

You can do background click events right now, just make a document thats full size lock it to the background. That way you'll get events from it :)
lloydw
Rocket Engineer
Rocket Engineer
 
Posts: 380
Joined: Tue Jan 15, 2008 10:56 pm

Re: Add your Feature Requests

Postby dennis on Mon Feb 07, 2011 4:35 pm

That's what I try to do but it doesn't work well, because the 'background' should include all stuff like panels, containers, labels.. basically everything that isn't a clickable control.

Also a dom browser would be useful in the debugger.
And the properties from the samples in rkt.css. Why aren't these the default?
dennis
 
Posts: 7
Joined: Sat Feb 05, 2011 10:30 pm

Re: Add your Feature Requests

Postby lloydw on Tue Feb 08, 2011 7:25 pm

If you want to catch all events, just bind a listener at the document level. You can then see all events as they pass through to elements. You can then check if the target element is a Form control or similar and do any custom processing you wish.

libRocket is built in a generic way, there's no restrictions on what tag names you use. Therefore if you want "browser" style default tags you can use rkt.css, but if you want to build your own tag names from scratch (eg menu, panel, popup) then thats possible too. There's no point forcing a specific behaviour on everybody.
lloydw
Rocket Engineer
Rocket Engineer
 
Posts: 380
Joined: Tue Jan 15, 2008 10:56 pm

Next

Return to Using libRocket


cron