#emc-devel | Logs for 2010-12-12

[07:05:12] <psha> http://psha.org.ru/tmp/meters.png
[07:05:13] <psha> :)
[08:12:58] <psha> mhaberler: http://psha.org.ru/tmp/meters.png
[08:13:00] <psha> :)
[08:13:44] <mhaberler> whoa! you're not taking prisoners, are you...
[08:14:10] <mhaberler> very nice!
[08:14:29] <mhaberler> all 'work on the road'?
[08:15:58] <psha> yea )
[09:01:48] <psha> glib works bad with multiinheritance...
[09:02:30] <psha> currently i see only way to add hal-pin-changed signal via direct __gsignals__ variables...
[09:13:49] <mah> i thought that could be the issue
[09:16:03] <mhaberler> zguzgzu
[09:16:14] <mhaberler> sorry...
[09:24:37] <psha> not serious though
[09:25:10] <psha> i think it's time to discuss 'share' examples today in the evening with others
[09:25:16] <psha> and then request merge
[09:26:54] <psha> you may check current state in gladevcp-glib branch
[09:29:08] <mah> i will be short on time today - guests. only on iphone client
[09:36:09] <mhaberler> mhaberler is now known as mhaberler_
[09:53:43] <mhaberler__> mhaberler__ is now known as mhaberler
[11:42:08] <mhaberler> which branch - gladevcp or gladevcp-glib? looked at -glib
[11:42:54] <psha> gladevcp-glib
[11:43:02] <psha> but i'm picking patches on glib2 now
[11:43:07] <psha> will be there in minutes
[11:47:10] <mhaberler> look, I'll be gone for the evening, will give it a good spin tomorrow - nothing realistically I can do today
[11:47:43] <psha> ok
[11:47:54] <psha> then i'll delay master merge till tomorrow
[11:48:09] <psha> so pick glib2 branch when you'll have time
[11:48:21] <psha> it's identical to glib branch but with cleaner commits
[11:48:31] <mhaberler> I think that's ok.
[11:48:32] <mhaberler> glib2 - will do.
[11:48:34] <mhaberler> are you going to push meter as well?
[11:48:48] <psha> yes
[11:48:52] <mhaberler> whoa
[11:49:06] <psha> meter, combobox, glib, and examples i think
[11:49:11] <mhaberler> have you tried hal-pin-change in glade?
[11:49:13] <psha> and load of fixes
[11:49:17] <psha> yes, it's there
[11:49:23] <mhaberler> and works ;-?
[11:49:27] <psha> dunno :)
[11:49:34] <psha> have to check :)
[11:49:37] <mhaberler> that is key
[11:49:49] <mhaberler> otherwise, lots of odd coding
[11:49:51] <psha> it's last patch in series
[11:50:03] <psha> i'm just picking GPin's for widgets
[11:50:14] <psha> first is hal_glib.py (committed)
[11:50:19] <psha> second - GPin/GComponent
[11:50:24] <psha> third - hal-pin-changed
[11:50:38] <psha> i'm on second - splitting it from signals
[11:54:32] <mhaberler> on a hal-pin-change, whats the argument now? pin value? hal pin? widget?
[11:56:06] <psha> i think no arg
[11:56:10] <psha> or pin value?
[11:56:25] <psha> or just GPin
[11:56:27] <mhaberler> I am just Joe User
[11:57:00] <psha> then decide what's better for you
[11:57:39] <mhaberler> no arg doesnt make much sense
[11:57:40] <mhaberler> I would suggest the widget because its most general
[11:57:51] <psha> widget is always bound to signal
[11:58:05] <psha> there is one mandatory argument - GObject on which signal is emited
[11:58:12] <psha> and any number of optional
[11:58:23] <mhaberler> fine, then like so I guess:
[11:58:24] <mhaberler> def on_led_pin_change(self,halwidget,data=None):
[11:58:26] <mhaberler> print "_on_led_pin_change(pin=%s)" % (halwidget.hal_pin.get())
[11:58:56] <psha> maybe on_led_pin_change(self, widget, pin): print "Changed: %s" % pin.get()
[11:58:56] <psha> ?
[11:59:09] <psha> so you don't need to find what's name of hal_pin?
[11:59:22] <mhaberler> whats with widgets which have several pins
[11:59:36] <psha> yes, this is second argument for 'pin' arg
[12:00:16] <mhaberler> could there be an input widget with more than one pin? hard to dream up
[12:00:25] <psha> progressbar was
[12:00:30] <mhaberler> uh
[12:01:05] <mhaberler> either widget + method to get pin names, or widget + 2nd arg= *list* of pin names
[12:01:38] <psha> list is not needed
[12:01:53] <mhaberler> ok, how do you handle progressbar then
[12:01:54] <psha> if you have two pins and two pin changes - emit two hal-pin-change events
[12:02:44] <mhaberler> how do I distinguish in glade, different signal names? hal-foo-pin-changed and haƶ-bar-pin-changed?
[12:02:50] <mhaberler> ah, that looks good to me
[12:02:51] <psha> i think i won't bother with progressbar - HBar/VBar replaced it
[12:03:02] <mhaberler> fine, just keep the option open
[12:03:06] <psha> yes
[12:03:16] <psha> pushing glib2 branch
[12:04:10] <mhaberler> cant see it
[12:05:03] <psha> i've remembered that i've not added signal to hal bar
[12:05:25] <mhaberler> I will be only on chat from now on, no chance to test
[12:06:04] <psha> pushed
[12:17:07] <mhaberler> you break my code with this:
[12:17:09] <mhaberler> <<<<<<< HEAD
[12:17:10] <mhaberler> self.halwidgets = {}
[12:17:12] <mhaberler> self.gtkwidgets = {}
[12:17:13] <mhaberler> =======
[12:17:15] <mhaberler> self.widgets = {}
[12:17:16] <mhaberler> >>>>>>> refs/remotes/psha/gladevcp-glib2
[12:18:13] <psha> hm, i've not changed this part i think
[12:18:32] <psha> i've wrapped GComponent some lines higher
[12:18:41] <psha> that provides conflict
[12:19:37] <psha> btw what's purpose of gtkwidgets dict?
[12:20:57] <mhaberler> I'm running out of time, gotta go
[12:20:58] <mhaberler> Traceback (most recent call last):
[12:21:00] <mhaberler> File "/home/mah/emc2-dev/lib/python/gladevcp/hal_widgets.py", line 65, in <lambda>
[12:21:01] <mhaberler> self.hal_pin.connect('value-changed', lambda s: self.emit('hal-pin-changed', s))
[12:21:03] <mhaberler> TypeError: 0 parameters needed for signal hal-pin-changed; 1 given
[12:21:04] <mhaberler> Traceback (most recent call last):
[12:21:06] <mhaberler> File "/home/mah/emc2-dev/lib/python/gladevcp/hal_widgets.py", line 65, in <lambda>
[12:21:07] <mhaberler> self.hal_pin.connect('value-changed', lambda s: self.emit('hal-pin-changed', s))
[12:21:09] <mhaberler> TypeError: 0 parameters needed for signal hal-pin-changed; 1 given
[12:21:10] <mhaberler> cu evenings
[12:25:40] <psha> i bet it's conflict in merge
[12:25:42] <psha> with __gsignals__
[12:28:42] <CIA-41> EMC: 03jthornton 07v2.4_branch * r87e55f106ba9 10/docs/man/man1/gs2.1: fix copy and paste error
[12:49:27] <psha> mhaberler__: signal is working fine for me
[12:49:37] <psha> def on_hal_vbar1_hal_pin_changed(w, p): print "Bar changed %s" % p.value
[13:03:57] <mhaberler_> could have been a wrongly resolved merge issue
[13:05:16] <mhaberler_> which branches do we need - gladevcp examples glib2 + your widgets?
[13:06:18] <psha> glib2 for signals, meter for meter
[13:06:41] <psha> gladevcp is already include in glib2 and meter
[13:07:53] <mhaberler_> need to pass over examples to show new sig handling
[13:08:40] <mhaberler_> could you do a 10-liner on meter for docs?
[13:09:10] <psha> yes, sure
[13:09:35] <psha> i'll put it into wiki
[13:10:04] <mhaberler_> whoa!
[13:13:32] <mhaberler_> the times they are a-changing -_-'
[13:14:14] <mhaberler_> will you remove progressbar ?
[13:14:35] <psha> mark as deprecated first
[13:15:01] <mhaberler_> ok
[13:15:45] <mhaberler_> i'm on iphone colloquy in subway
[13:18:58] <psha> added
[13:22:56] <psha> i'v also added image there
[13:26:11] <mhaberler_> super, just saw it
[13:27:12] <mhaberler_> thinking of it, halwidgets is a misnomer - its really emcwidgets
[13:27:28] <mhaberler_> gremlim wont fit
[13:33:42] <psha> but what's for?
[13:33:45] <psha> for save/restore?
[13:33:52] <psha> is not Builder tree enought?
[15:00:22] <mhaberler_> no. naming. no, i am not going to touch it
[15:36:42] <JT-Shop> why are the docs for 2.5 tagged with "This documentation is no longer maintained. For documentation of the current version of emc2, please see http://www.linuxcnc.org/docview/html"
[15:40:05] <jepler> JT-Shop: argh, they shouldn't be.
[15:40:13] <jepler> JT-Shop: what specific URL?
[15:41:45] <JT-Shop> http://www.linuxcnc.org/docview/devel
[15:41:51] <jepler> aha
[15:42:01] <JT-Shop> I love the aha moments
[15:42:12] <jepler> thanks, fixed
[15:43:11] <jepler> that page (and the corresponding page for 2.4) are hand-written html. I accidentally added the "not maintained" banner to all versions of the docs, including 2.4 and devel, and when I realized it I just reuploaded all the generated documentation
[15:43:16] <jepler> but forgot about those hand-written pages
[15:45:05] <jepler> bbl
[15:45:59] <JT-Shop> thanks
[16:44:41] <psha> tom3p: hi
[16:57:36] <tom3p> hi psha, got snowed out of a flight from chi to ny this morning, now have a day in purgatory
[16:59:18] <psha> heh, i moved by train this night :)
[17:10:02] <tom3p> ok, so should i look at Geda or Dot ?
[17:10:15] <tom3p> ( i got a day now :)
[17:10:21] <psha> as you wish :)
[17:10:39] <psha> if you feel that it's possible to tune dot to provide sane results - then it's more easy :)
[17:10:57] <psha> if you feel it's not possible - better to stick with geda
[17:11:46] <tom3p> ok, i'll give dot some time and try for saner sizes and scalability
[17:13:02] <tom3p> the time investment in Geda was is in the devices, nothing in code, it was just how geda was applied iirc
[17:14:28] <psha> yes
[17:14:54] <psha> for geda you have to find sane way to expor components to it and return HAL file back
[17:15:42] <psha> as a workaround for dot i think it's reasonable to add command line option to limit output to given component (and related connections)
[17:20:03] <tom3p> to define the problem with dot graphs: the graphs are too big, have limited scalability, difficult navigation...
[17:20:04] <tom3p> if so, is the problem in the viewer ( meaning the data is good already)?
[17:21:15] <psha> i think the data is good
[17:21:28] <psha> svg has correct attributes on edges
[17:21:54] <psha> so you may point to edge and see what nodes it connects
[17:23:51] <tom3p> good, thats like highlighting a net in an eda tool , so I'll look at the viewers, there are many
[17:23:52] <tom3p> (installing one that makes point of interest large, and other data small, so graph stretches around area of interest )
[17:25:03] <psha> even browser (chromium) shows edge labels when you move mouse over it
[17:29:15] <tom3p> i'll look at chromium, i dont see any popup info in namaroka (ffox 3.6.13pre)
[19:06:55] <tom3p> ocamlgraph allows you to select any node and it become center of graph, looks great, but breaks on ':' '-' and on the meta objects like "motion [shape="record"
[19:08:23] <tom3p> you select the point of interest, that data centers itself and enlarges, and its net siblings get big and nearby, unassociated stuff moves to edge of disc view area.
[19:09:37] <tom3p> no luck so far getting it to display the complex objects you created with records
[19:19:12] <tom3p> ocamlgrqaph SHOULD handle the 'record' data type as seen here http://ubuntulandforever.blogspot.com/2010/01/ocamlgraph-graphical-graph-editor-based.html
[19:23:52] <psha> tom3p: it has some issues with records
[19:24:02] <psha> labels are hidden behind bars
[19:27:49] <psha> and also i don't understand how 'hyperbolic' zooming is working
[19:29:59] <psha> btw it may be good starting point if all other options would fail :)
[19:38:01] <tom3p> 2 screen shots so you can see difference, 2 diff nodes are dragged , the selected node gets bigger, the nets drag with them, http://imagebin.org/127604 http://imagebin.org/127605
[19:38:23] <tom3p> and nodes that are not nearby in the net are moved to edge of poincare's disc
[19:38:53] <psha> ah
[19:38:56] <psha> i see now
[19:39:04] <psha> but it's -editor is not working with records :(
[19:39:12] <tom3p> right
[19:39:14] <tom3p> :(
[19:40:15] <psha> somewhat parsing errors...
[19:41:00] <psha> ah
[19:41:03] <psha> digraph i think
[19:42:10] <tom3p> to try your file, remove the final ';' then it parses ok, but displays poorly
[19:42:55] <tom3p> (else you get an error on last char, so i removed the last char ;)
[19:43:22] <psha> ok
[19:44:05] <psha> records
[23:32:34] <moldovean> moldovean is now known as qq-
[23:36:00] <tomaw> [Global Notice] We're restarting services to fix some database issues; please remain patient as it will return soon.