#pentagram@irc.freenode.net logs for 19 Jan 2004 (GMT)

Archive Today Yesterday Tomorrow
Pentagram homepage


[00:08:24] --> Kirben has joined #pentagram
[00:08:24] --- ChanServ gives channel operator status to Kirben
[00:41:36] <-- Dark-Star has left IRC ()
[01:58:45] <-- Fingolfin has left IRC ("42")
[06:12:56] --> SB-X has joined #pentagram
[08:33:46] --> sbx has joined #pentagram
[08:33:46] <-- SB-X has left IRC (Read error: 54 (Connection reset by peer))
[08:35:52] --> EsBee-Eks has joined #pentagram
[08:35:53] <-- sbx has left IRC (Read error: 104 (Connection reset by peer))
[08:58:11] --- EsBee-Eks is now known as SB-X
[09:30:34] --> sbx has joined #pentagram
[09:30:34] <-- SB-X has left IRC (Read error: 104 (Connection reset by peer))
[09:54:58] --> EsBee-Eks has joined #pentagram
[09:54:59] <-- sbx has left IRC (Read error: 104 (Connection reset by peer))
[09:55:49] --- EsBee-Eks is now known as SB-X
[09:56:35] <watt> banana! It's been quite in here.
[09:57:32] <wjp> yeah, and pretty quiet too ;-)
[09:57:48] <watt> yeah that too :-)
[09:58:04] <wjp> hm, SF CVS still down :-(
[09:58:33] <watt> And english is native language how? Yeah.. I noticed SF tend s to do that sort of thing
[09:58:59] <watt> I was attempting to get dosbox cvs yesterday and noticed it
[09:59:19] <wjp> anoncvs shouldn't be affected
[09:59:26] <watt> luckily I found where they hide snapshots
[09:59:29] <wjp> (although I did notice anoncvs was down for a while yesterday)
[09:59:41] <wjp> url is in the #dosbox channel topic
[09:59:43] <watt> hmmm.. I'll check real quick
[09:59:55] <watt> oh... umm..
[10:00:05] <watt> didn't try that
[10:00:41] <watt> oh.. I can hit the anony cvs again.
[10:06:37] --> Colourless has joined #Pentagram
[10:06:37] --- ChanServ gives channel operator status to Colourless
[10:06:46] <watt> hi
[10:06:56] <SB-X> hello
[10:07:03] <Colourless> hi
[11:58:28] <watt> hmm... thinking that it might be a good idea to have mouse buttons have a double click state so checking lastdown to now is not necessary each time.
[13:01:45] <watt> hmm.. I might be crazy, but this doesn't look right.. GUIApp::handleDelayedEvents() appears to make sure that the mouse button is not handled, not down, and not double-clicked then calls downgump's onMouseClick().
[13:02:17] --> sbx has joined #pentagram
[13:02:17] <-- SB-X has left IRC (Read error: 54 (Connection reset by peer))
[13:03:33] <Colourless> mouse click handling code is strange because of double click stuff
[13:03:56] <Colourless> AFAIK a mouse click event will only be sent if we are sure it's not going to be a double click
[13:04:55] <sbx> how do you figure that out?
[13:05:33] <Colourless> delay the sending of mouse click events until the double click timer times out
[13:06:02] <sbx> something small so its not noticed?
[13:06:07] <watt> oh.. I think I get it.. this checks that the mouse WAS down but isn't now.
[13:07:37] <Colourless> sbx: yes it's small
[13:07:51] <sbx> i figured if you wait until the double-click timer to time out before registering a click there would be a noticable delay
[13:08:20] <Colourless> it's not too bad
[13:09:03] <Colourless> i'm not sure if we do it, but if the mouse is moved a pending click should be issued
[13:10:32] <Colourless> the reason we do things this way is usecode gets executed when single mouse clicking an object
[13:11:28] <sbx> it is reasonable
[13:12:31] <sbx> does double-clicking in U8 also execute the single-click usecode? and if not, does it have a similiar delay?
[13:12:34] <Colourless> for things like buttons on gumps it works a bit differently
[13:12:48] <Colourless> no double clicking executes different usecode
[13:13:02] <Colourless> single click executes the 'look' usecode and double click executes the 'use' usecode
[13:13:43] <Colourless> if you automatically issued a single clicks you'd get 'look' executing, followed by 'use'
[13:14:25] <sbx> right
[13:14:26] <sbx> okay
[13:14:27] <Colourless> it becomes too much of a hack to attempt to terminate the usecode process for the 'use' usecode when running 'look' if a double click occurd
[13:14:53] <sbx> the "make sure it isn't a double-click" sounds better
[13:15:04] <Colourless> as far as we can tell the original did things the same way as us
[13:15:21] <Colourless> the originally seemed to actually introduce huge amounts of lag with control handling
[13:16:09] <Colourless> what we could do is do a trace into the world on mouse button release, if the object can't handle a double click, issue a single click
[13:17:05] <Colourless> of course it works a bit differently for different objects
[13:17:18] <Colourless> for a gump a double click is pretty obvious
[13:17:40] <Colourless> for a world item, it will be can the function bound to mouse button double click be executed for object
[13:17:58] <Colourless> for executing the use usecode function it would be as simple as does item had a use function
[13:18:06] <Colourless> s/had/have/
[13:18:20] <Colourless> though for other bindings for double click it become more difficult
[13:18:21] <wjp> aiee.... I go away for a while and look what happens; actual conversation :-)
[13:18:56] <Colourless> basically the bindings would need to be 'updated' to include a check to see if something will have an effect
[13:21:42] <watt> very interesting.. I think I'll toss that MBS_DOUBLE mouse button state idea out now.
[13:28:14] <Colourless> does the current binding have support for holding a modifier when pressing a key?
[13:29:28] <watt> I believe so... I noticed sdl has support for it.
[13:29:59] <Colourless> being able to have 'shifted' mouse buttons could be useful
[13:33:48] <watt> SDL_GetModState(void); in SDL_keyboard.h
[13:34:17] <watt> I don't think anything needs to be set up for it to work.
[13:35:50] <watt> shifted keyboard buttons would also be nice to if keyboard walking is added.
[13:36:09] <Colourless> problem with that is it could be slighly asynchronous. Could have cases where if you click mouse button then quickly press the modifier
[13:36:30] <Colourless> in general tracking modifiers yourself is a good idea though it causes issues when task switching
[13:37:08] <watt> I think it's a held state... mods turned on or off in the keypress.
[13:38:01] <Colourless> might also be system dependant
[13:38:08] <watt> true.
[13:38:11] <Colourless> in win32 you can get that stuff using async functions
[13:38:40] <Colourless> for a key press SDL should be filling the struct with the info about the held modifiers
[13:39:09] <Colourless> though for the mouse it wont. I would guess that SDL_GetModState() 'should' be fine
[13:39:56] <wjp> we'd need to do that as soon as we get the mouse event, and store it somewhere
[13:43:20] <watt> easily could be another item in MButton
[13:48:11] <Colourless> the next thing is what do you do if a modifier is held but there isn't a binding for the exact combination
[13:48:41] <Colourless> lets say we have Ctrl-Shift Mouse 1, but we don't have that binding but we do have Ctrl-Mouse 1 and Shift-Mouse 1
[13:49:01] <Colourless> s/say we have/say we did/
[13:49:19] * wjp isn't sure what would be the best way to handle that
[13:49:42] <wjp> in this particular case you probably don't want to do anything, except maybe fall back to a 'plain' Mouse 1
[13:49:42] <Colourless> :-)
[13:49:57] <Colourless> yeah, if not found do as if unmodified
[13:50:40] <sbx> what if you have something bound to control?
[13:50:44] <sbx> :)
[13:50:59] <sbx> do you treat the modifier keys like normal keys?
[13:51:41] <Colourless> yeah well, in such a case you're going to have fun
[13:52:32] <Colourless> what you can do if a modifier is held, and another key/button is pressed, cancel the modifiers ability to generate an event
[14:05:41] --> Fingolfin has joined #pentagram
[14:05:41] --- ChanServ gives channel operator status to Fingolfin
[14:14:44] <-- Kirben has left IRC (herbert.freenode.net irc.freenode.net)
[14:14:44] <-- Darke has left IRC (herbert.freenode.net irc.freenode.net)
[14:14:44] <-- wjp has left IRC (herbert.freenode.net irc.freenode.net)
[14:14:54] --> Kirben has joined #pentagram
[14:14:54] --> Darke has joined #pentagram
[14:14:54] --> wjp has joined #pentagram
[14:17:37] <-- sbx has left IRC (herbert.freenode.net irc.freenode.net)
[14:17:37] <-- Colourless has left IRC (herbert.freenode.net irc.freenode.net)
[14:17:42] --> Colourless has joined #pentagram
[14:17:42] --> sbx has joined #pentagram
[14:23:58] <-- watt has left IRC (herbert.freenode.net irc.freenode.net)
[14:23:58] <-- Fingolfin has left IRC (herbert.freenode.net irc.freenode.net)
[14:24:07] --> Fingolfin has joined #pentagram
[14:24:07] --> watt has joined #pentagram
[15:52:35] <watt> SDLMod's (if you decide to use them) are in bitwise flags. Simply or them - still might not work out well in switch logic though.
[15:56:13] <-- Fingolfin has left IRC ("42")
[16:14:09] <sbx> bye
[16:14:11] <-- sbx has left IRC ("...")
[17:02:36] <Colourless> scary. I played around in Visual Studio and create a "Setup Project" for Pentagram.... i created an installer with it, and after installing Pentagram became a properly registered windows application
[17:05:05] <wjp> so, uh, what exactly is a "properly registered windows application" ?
[17:05:39] <Colourless> well, you know in the Shortcut to the program in the Start Menu.... well, it wouldn't let you change the target
[17:05:47] <Colourless> it just has "Pentagram" greyed out :-)
[17:06:08] * wjp never saw that before
[17:07:05] <Colourless> infact it's done that even for all the verious text files that i made it install too
[17:07:32] <Colourless> interesting option in one of the dialogs, Installed for All Users or Install for Myself Only
[17:13:42] <Colourless> windows even tracks it's usage :-)
[17:13:54] <wjp> do we want that? :-)
[17:19:03] <-- Kirben has left IRC (Read error: 104 (Connection reset by peer))
[17:29:00] --> Dominus has joined #pentagram
[17:29:02] --- ChanServ gives channel operator status to Dominus
[18:14:31] <Colourless> wjp: http://www.users.on.net/triforce/support.png
[18:21:39] <wjp> hehe :-)
[18:21:52] <wjp> is that top one a link somewhere?
[18:23:05] <Colourless> yeah
[18:23:20] <Colourless> goes to http://pentagram.sourceforge.net/
[18:25:53] --- Dominus is now known as Dominus|away
[18:29:21] --- Dominus|away is now known as Dominus
[18:30:19] <Dominus> :-)
[18:54:29] --- Dominus is now known as Dominus|away
[19:00:31] --> Fingolfin has joined #pentagram
[19:00:31] --- ChanServ gives channel operator status to Fingolfin
[19:12:20] --- Dominus|away is now known as Dominus
[19:22:49] <wjp> Colourless: btw, Pentagram version 1.0.0? What have you been hiding? :-)
[19:22:59] <Colourless> :-)
[19:23:38] <Colourless> well, it's a version number, as far as I know, we aren't even at 0.0.0 yet :-)
[19:24:03] <Colourless> it defaults to that btw
[19:24:29] <wjp> clearly it's not targetted at open source development, then :-)
[19:25:26] <Colourless> gee, we're talking Microsoft Visual Studio... and it took version number defaulting to 1.0.0(.1) for you to realize it may not be targetted to osd?
[20:03:58] <-- Dominus has left IRC ("a pooka invited me to Charlie's")
[20:08:30] <-- watt has left IRC (herbert.freenode.net irc.freenode.net)
[20:10:45] --> watt has joined #pentagram
[21:19:58] <-- Fingolfin has left IRC ("42")
[21:33:30] --> shinji-kun has joined #pentagram
[22:00:14] <-- Colourless has left IRC ("casts invisibility")
[23:37:41] <-- shinji-kun has left IRC (""Baka!" - Asuka-chan")
[23:56:22] --> Kirben has joined #pentagram
[23:56:22] --- ChanServ gives channel operator status to Kirben