#gemrb@irc.freenode.net logs for 19 Dec 2013 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:09:36] <chiv> hm. now I have to add 'latin' to the list of languages I have been told to 'go away' in :)
[00:48:39] <chiv> hmph, left out a trivial line from the last commit... had to amend it
[01:31:49] <-- edheldil_ has left IRC (Ping timeout: 248 seconds)
[02:42:12] <-- chiv has left IRC (Quit: Page closed)
[03:00:05] <-- brada has left IRC (Quit: brada)
[03:29:04] --> brada has joined #gemrb
[03:38:57] <-- Coriander2 has left IRC (Read error: Connection reset by peer)
[03:44:09] --> Coriander has joined #gemrb
[03:45:02] <-- brada has left IRC (Quit: brada)
[04:18:28] --> brada has joined #gemrb
[04:49:03] <-- brada has left IRC (Quit: brada)
[05:19:06] --> Eli2 has joined #gemrb
[05:20:45] <-- Eli2_ has left IRC (Ping timeout: 245 seconds)
[07:26:41] --> Canageek has joined #gemrb
[08:52:06] --> lynxlynxlynx has joined #gemrb
[08:52:06] --- ChanServ gives channel operator status to lynxlynxlynx
[09:09:41] --> WingedHussar has joined #gemrb
[10:22:55] <-- Canageek has left IRC (Ping timeout: 245 seconds)
[11:52:44] <-- WingedHussar has left IRC (Ping timeout: 260 seconds)
[11:53:36] --> WingedHussar has joined #gemrb
[14:00:50] --> brada has joined #gemrb
[16:57:47] <-- Coriander has left IRC (Read error: Connection reset by peer)
[16:59:05] --> Coriander has joined #gemrb
[17:23:48] --> Yoshimo has joined #gemrb
[17:29:46] --> raevol has joined #gemrb
[17:34:34] <-- lynxlynxlynx has left IRC (Ping timeout: 246 seconds)
[17:35:51] --> lynxlynxlynx has joined #gemrb
[17:35:51] <-- lynxlynxlynx has left IRC (Changing host)
[17:35:51] --> lynxlynxlynx has joined #gemrb
[17:35:51] --- ChanServ gives channel operator status to lynxlynxlynx
[18:53:47] <lynxlynxlynx> good news, the guy that was interested in reusing the engine for other games has no problem with gpl
[18:58:06] --> Canageek has joined #gemrb
[19:00:15] <-- brada has left IRC (Ping timeout: 240 seconds)
[19:00:53] --> brada has joined #gemrb
[19:13:16] <edheldil> good
[19:49:48] <brada> are these "tagged" strings documented anywhere?
[19:51:41] <lynxlynxlynx> you mean the [] stuff?
[19:53:27] <-- Yoshimo has left IRC (Quit: Yoshimo)
[19:58:44] --> chiv has joined #gemrb
[19:59:29] <chiv> I've nearly finished adding toggling of ini values to my option panel generator, and slightly changed it to allow for simple grouping#
[20:07:31] <chiv> basically now I just need to work out what can be toggled and what cant : http://picpaste.com/pics/inioptions-IhuAsghS.1387483609.png
[20:08:54] <brada> do we really call fog of war "shroud of non-visible area"?
[20:09:22] <brada> chiv: looks great
[20:10:03] <chiv> um.. sorry, I just felt the need to expand it to a sentence
[20:10:08] <chiv> I don't know why
[20:10:47] --> Yoshimo has joined #gemrb
[20:11:43] <chiv> oh yeah, and I want to add paging, even though it might be a long time before it is needed
[20:12:00] <brada> i dont know what "extra scrollbars" does
[20:12:10] <brada> maybe that whould be explained there
[20:12:20] <brada> good idea to add paging
[20:12:30] <brada> makes it easy to group settings
[20:13:30] <brada> chiv: promise you wont disappear again before this is done :p
[20:15:09] <chiv> hah, that's mainly why I'm trying to work to my public repo now, but don't worry, i don't have any more holidays planned
[20:15:34] <chiv> no tengo suficiente dinero...
[20:16:24] <chiv> I was mulling over whether to have a description text box for mouse over, but I can't decide the best way to do it
[20:16:35] <chiv> so I left that for later
[20:17:13] <brada> its nice to do things in stages anyway
[20:18:43] <chiv> indeed, once I am happy with this last hurdle I will make a pull request, but I have all day off tomorrow so i'll do something with it
[20:18:50] <-- Canageek has left IRC (Read error: Connection reset by peer)
[20:19:14] --> Canageek has joined #gemrb
[20:35:10] <-- raevol has left IRC (Quit: Leaving.)
[20:39:14] --> edheldil_ has joined #gemrb
[20:40:24] --> raevol has joined #gemrb
[20:47:17] <-- edheldil_ has left IRC (Ping timeout: 265 seconds)
[20:50:31] <-- lynxlynxlynx has left IRC (Read error: Connection reset by peer)
[21:07:18] <-- Yoshimo has left IRC (Ping timeout: 240 seconds)
[21:33:22] <chiv> this is more or less the skeleton of it: https://github.com/chilvence/gemrb/compare/configurator
[21:33:25] <Pepelka> Comparing gemrb:master...chilvence:configurator · chilvence/gemrb · GitHub
[21:33:26] <Pepelka> »gemrb - Engine Made with preRendered Background«
[21:36:33] <chiv> I don't think ill do any more today, but hopefully the method I've used will be flexible
[21:38:18] <chiv> in my dreams there is a startup screen that says "scan these devices for infinity games and set default options" ...
[21:47:59] <chiv> by the way, I also have an improved-improved looting patch that I would like to add: https://github.com/chilvence/gemrb/compare/gemrb:master...hooverbags
[21:48:01] <Pepelka> Comparing gemrb:master...chilvence:hooverbags · chilvence/gemrb · GitHub
[21:48:02] <Pepelka> »gemrb - Engine Made with preRendered Background«
[22:32:01] <brada> i look forward to the pull request
[22:32:41] <brada> I need some help demystifying TextArea
[22:33:03] <brada> the vector of lines is obviously not simply a vector of lines
[22:33:47] <brada> i cant figure out its significance
[22:34:17] <brada> to me it looks like we cram things in there, but when we need to print we flatten the entire thing out into a char buffer
[22:34:41] <brada> I *think* there is a better way to manage text
[22:35:07] <brada> but i dont fully understand this yet
[22:37:35] <chiv> I've not even looked at that yet...
[22:37:45] <brada> i guess im looking for the true significance of the vector
[22:38:09] <brada> chiv: its some of the worst code in GemRB
[22:38:15] <brada> IMO
[22:38:54] <brada> the text/font code i mean
[22:39:22] <brada> I've gutted the font class, but now im trying to put its functions back where they belong
[22:40:00] <brada> as far as i can tell this is horribly inefficient
[22:40:15] <chiv> it's funny, you don't really notice the effects as a user
[22:41:06] <brada> well they did when it was both terrible and buggy ;)
[22:41:20] <brada> I fixed the bugs, but the code only grew in complication
[22:42:21] <chiv> I can see how that would be a disadvantage in what is practically a text based game
[22:42:33] <brada> and an old one at that
[22:42:57] <brada> so it doesnt help that our way of handling multibyte text is to inject it at render time
[22:43:47] <brada> we need to separate that out to a place higher up
[22:44:05] <brada> so we dont have to copy huge strings every redraw
[22:44:40] <chiv> is that what you have to do for the different languages?
[22:45:03] <brada> for multibyte ones yes
[22:45:09] <brada> welll
[22:45:16] <brada> actually we do that for all languages
[22:45:24] <brada> eve tho its only required for multibyte ones
[22:45:46] <chiv> and is that just because of the .tlk format?
[22:45:57] <brada> kind of
[22:46:08] <brada> everything in gemrb was built using c strings
[22:46:12] <chiv> i think bgee upgraded that
[22:46:14] <brada> which are only 7-8 bits
[22:47:12] <brada> we jsut need to move the char -> dbchar conversion higher up
[22:47:15] <brada> im not sure where
[22:48:03] <brada> Im hoping fuzzie or somebody else will chime in at some point
[22:53:59] <fuzzie> mrphle
[22:54:30] <fuzzie> what's the problem with the vector of lines?
[22:54:42] <brada> I just dont understand the purpose
[22:55:05] <brada> I dont know what they actually represent
[22:55:08] <fuzzie> you see that it's misused as a listbox?
[22:55:27] <brada> is that what it is?
[22:55:37] <brada> that kinda makes sense
[22:55:38] <fuzzie> (if I just keep telling you horrible things will you rewrite them all? because I'm sure I could arrange one a day)
[22:56:09] <brada> it might, but one thing at a time
[22:56:20] <brada> and ill sitll have to bug you to explain them all to me :D
[22:56:24] <fuzzie> I assume you can probably split into listbox/textarea.
[22:56:31] <brada> thats what i was about to ask
[22:56:50] <fuzzie> The only tricky part is the in-game messages window, which also has dialog entries in it.
[22:57:22] <fuzzie> But I'm sure there is a much nicer way to handle that too..
[22:57:35] <brada> undoubtedly
[22:57:48] <brada> im really unsure of how to pull the two things apart :/
[22:58:24] <brada> i really was just trying to rewrite font
[22:58:31] <brada> and now im stuck in textarea
[22:58:34] <fuzzie> what's blocking that?
[22:59:21] <brada> i felt like printFromLine shouldn't exist :p
[22:59:22] <fuzzie> afaik the only tricky bit is the wrapping code, which you'd need anyway
[22:59:28] <fuzzie> oh right
[22:59:59] <fuzzie> I don't even see what that does
[23:00:08] <brada> which requires textarea figuring out where to start printing its contents on its own
[23:00:12] <fuzzie> it's avoiding a double-wrap?
[23:00:22] <brada> PrintFromLine?
[23:00:40] <brada> no it takes the entire buffer passed from text area and skips down to the start line give to the function
[23:00:42] <fuzzie> presumably you can just call the wrapping code *again* in the caller?
[23:01:27] <brada> yeah but it shouldnt need all of that if we really had our lines pre layed out
[23:01:33] <fuzzie> right
[23:01:36] <fuzzie> but one step at a time :P
[23:01:47] <brada> its so hard to go one step at a time lol
[23:02:00] <brada> and its very wastefuyl
[23:02:10] <brada> we copy lines into a buffer when we dont need them
[23:02:21] <brada> then duplicate that buffer into a double byte version
[23:02:32] <brada> twice in some cases
[23:02:41] <fuzzie> right, so you could have some wrapping code which spits out a double-byte array or something
[23:02:47] <fuzzie> whcih textarea can append to an internal list
[23:03:15] <fuzzie> but if you try fixing everything then you end up wanting to rewrite the whole thing
[23:03:34] <brada> just the text system i swar! :D
[23:03:37] <brada> swear
[23:04:10] <brada> its jsut so inefficient and complicated
[23:05:18] <brada> anyway im fine with leaving some of the inefficiencies for now
[23:05:32] <brada> I even left the multibyte translation in font for now
[23:05:37] <brada> so that i can fix other things
[23:06:38] <brada> but I really think I need to work out textarea for the sake of sanity
[23:10:45] <brada> fuzzie: where are the "tagged" strings used?
[23:10:54] <brada> TextAreas only?
[23:12:34] <fuzzie> I think so.
[23:13:11] <brada> I really dont like font parsing them especially if they are only from one source
[23:14:09] <fuzzie> well really it's pretty weird that font does any layout
[23:14:27] <brada> well it wont when im done with it
[23:14:36] <brada> ive already gutted all that stuff
[23:14:48] <fuzzie> but obviously you have to do some layout in a general way which can be used by all the callers
[23:14:55] <brada> i just need to put it back *somewhere*
[23:16:10] <brada> i was thinking Font::Print could return its end position or something
[23:18:20] <brada> that covers everything i can think of
[23:19:24] <brada> since those attributed strings can really be dissected down into individual strings
[23:19:35] <brada> the tricky part is the drop caps
[23:19:59] <brada> im not sure font should know about those either
[23:41:03] <chiv> the torment float menu literally drives me crazy
[23:41:51] <chiv> everything I try and to to fix it just bounces off
[23:44:52] <chiv> what makes it more annoying is I never liked it in 1999
[23:49:03] <-- Canageek has left IRC (Ping timeout: 240 seconds)