X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=tools%2Fbuild_gtk_tree.js;h=d5179e07181f8fa85746d47bd4f4dd224b443b32;hb=67434ed3d36a71140908f569063a74dfae9aede0;hp=b8daccc471514e27afdf042610bd003efbbb9677;hpb=3ac830daf44a849fc826c86e57e6328a97446447;p=app.Builder.js diff --git a/tools/build_gtk_tree.js b/tools/build_gtk_tree.js index b8daccc47..d5179e071 100644 --- a/tools/build_gtk_tree.js +++ b/tools/build_gtk_tree.js @@ -133,9 +133,13 @@ function BuildLists () { if (m.memberOf == 'Gtk.Buildable') { return; } - if (m.name =='add_mnemonic_label') { + //"Gtk.Widget:add_accelerator", + //"Gtk.Widget:add_device_events" + + if (m.name.match(/^(add_mnemonic_label|add_accelerator|add_device_events)$/)) { return; } + // in theory you can not add a window to anything.. ??? //if ('Gtk.Window' == addable_type || methods[addable_type].extendsClasses.indexOf('Gtk.Window') > -1) { // return; @@ -300,6 +304,9 @@ right: if (typeof(usage[par]) == 'undefined') { usage[par] = []; } + + verifyUsage(par,cls); + usage[par].pushUnique(cls); if (typeof(tops[cls]) == 'undefined') { tops[cls] = []; @@ -340,25 +347,28 @@ right: } var duped = false; for(var dupe in usage) { - if (usage[par].join(',') == usage[dupe].join(',') ) { + if (par != dupe + && typeof(nusage[dupe]) != 'undefined' + && usage[par].join(',') == usage[dupe].join(',')) { duped = true; + if (typeof(usage_left[dupe]) == 'undefined') { usage_left[dupe] = []; } + //print(par+ ' is a dupe of ' + dupe); usage_left[dupe].pushUnique(par); break; } } - if (duped) { - continue; - } + if (duped) { + continue; + } nusage[par] = usage[par]; } usage = nusage; - print(JSON.stringify(nusage,null,4)); - Seed.exit(); - //print(JSON.stringify(methods['Gtk.Switch'],null,4)); + //print(JSON.stringify(nusage,null,4)); Seed.exit(); + print(JSON.stringify(methods['Gtk.TextView'],null,4)); var str = []; for(var par in usage) {