You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(12) |
Jun
(48) |
Jul
(35) |
Aug
|
Sep
(7) |
Oct
(19) |
Nov
(4) |
Dec
(10) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(6) |
Feb
(17) |
Mar
(8) |
Apr
(23) |
May
(12) |
Jun
(11) |
Jul
(10) |
Aug
(6) |
Sep
(7) |
Oct
(1) |
Nov
(7) |
Dec
(2) |
2002 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
(1) |
Jun
|
Jul
(2) |
Aug
(1) |
Sep
(8) |
Oct
(5) |
Nov
(1) |
Dec
|
2003 |
Jan
|
Feb
|
Mar
(3) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
(6) |
Oct
|
Nov
|
Dec
|
2004 |
Jan
|
Feb
(3) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
(2) |
2005 |
Jan
(6) |
Feb
(1) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(15) |
Nov
|
Dec
|
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(4) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Leandro R. <lea...@gm...> - 2007-05-04 08:14:45
|
SGkuIEkgYmVnaW4gdGhlIHRyYW5zbGF0aW9uIGJ1dCB3aGVuIHlvdSBjb252ZXJ0IHRoZSBzZ21s LCB0byBodG1sIGZvcgpleGFtcGxlLCB0aGUgYWN1dGVzIGRvZXNuJ3QgYXBlYXIgd2VsbCwgwr9o b3cgY291bGQgSSBjb252ZXJ0IHRoZSBzZ21sCnRvIGh0bWwgY29ycmVjdGx5PyDCv3NwYW5pc2gg dHJhbnNsYXRvcnMgY291bGQgZ2l2ZSBtZSBzb21lIHRpcD8KClRoYW5rcywKICAgICAgICAgICAg IExlYW5kcm8gUmVndWVpcm8KCk9uIDUvMy8wNywgTGVhbmRybyBSZWd1ZWlybyA8bGVhbmRyby5y ZWd1ZWlyb0BnbWFpbC5jb20+IHdyb3RlOgo+IE9LLiBJJ3ZlIGdvdCBpdC4gSSBkb3dubG9hZGVk IHRoZSBtYW4gcGFnZSB0b28uIEZpcnN0IEkgd2lsbCB0cmFuc2xhdGUKPiBpdCBhbmQgdGhlbiBJ IHdpbGwgc2VlIGhvdyB0byBjb252ZXJ0IGZyb20gc2dtbCB0byBodG1sL3BkZi9ldGMKPgo+IFRo YW5rcywKPiAgICAgICAgICAgICAgICAgICBMZWFuZHJvIFJlZ3VlaXJvCj4KPiBPbiA1LzMvMDcs IE5pY29sYWksIEpvaGFubmVzCj4gPEpvaGFubmVzLk5pY29sYWlAc3R1ZGVudC5ocGkudW5pLXBv dHNkYW0uZGU+IHdyb3RlOgo+ID4gWWVhaCwgaXQgaXMgbGlrZSB0cmFuc2xhdGluZyBodG1sLiBU aGUgc2dtbCBmaWxlcyBhcmUgIGxvY2F0ZWQgaW4gdGhlIGFyY2hpdmVzLCB5b3UgY2FuIGRvd25s b2FkIHRoZW0gZnJvbSBzb3VyY2Vmb3JnZS4gVGhlIHNnbWwgZmlsZXMgYXJlIGxvY2F0ZWQgaW4g dGhlIERvY3VtZW50YXRpb24gZGlyZWN0b3J5Lgo+ID4KPiA+IFJlZ2FyZHMKPiA+Cj4gPiBKb2hh bm5lcwo+ID4KPiA+Cj4gPiAtLS0tLVVyc3Byw7xuZ2xpY2hlIE5hY2hyaWNodC0tLS0tCj4gPiBW b246IHJlYWx0aW1lYmF0dGxlLWRldmVsLWJvdW5jZXNAbGlzdHMuc291cmNlZm9yZ2UubmV0IGlt IEF1ZnRyYWcgdm9uIExlYW5kcm8gUmVndWVpcm8KPiA+IEdlc2VuZGV0OiBEbyAwMy4wNS4yMDA3 IDE2OjI0Cj4gPiBBbjogcmVhbHRpbWViYXR0bGUtZGV2ZWxAbGlzdHMuc291cmNlZm9yZ2UubmV0 Cj4gPiBCZXRyZWZmOiBSZTogW1JlYWx0aW1lYmF0dGxlLWRldmVsXSB0cmFuc2xhdGlvbiBvZiBk b2N1bWVudGF0aW9uCj4gPgo+ID4gT2gsIEl0J3MgbGlrZSB0cmFuc2xhdGluZyBIVE1MLCBpc24n dCBpdD8gV2hlcmUgY291bGQgSSBkb3dubG9hZCB0aGUgc2dtbCBmaWxlPwo+ID4KPiA+IFRoYW5r cywKPiA+ICAgICAgICAgICAgICAgICBMZWFuZHJvIFJlZ3VlaXJvCj4gPgo+ID4gT24gNS8zLzA3 LCBOaWNvbGFpLCBKb2hhbm5lcwo+ID4gPEpvaGFubmVzLk5pY29sYWlAc3R1ZGVudC5ocGkudW5p LXBvdHNkYW0uZGU+IHdyb3RlOgo+ID4gPgo+ID4gPiBZb3UganVzdCBoYXZlIHRvIHRyYW5zbGF0 ZSB0aGUgdGhpbmdzIGJlaGluZCB0aGUgdGFncyA4LSkKPiA+ID4KPiA+ID4gLS0tLS1VcnNwcsO8 bmdsaWNoZSBOYWNocmljaHQtLS0tLQo+ID4gPiBWb246IExlYW5kcm8gUmVndWVpcm8gW21haWx0 bzpsZWFuZHJvLnJlZ3VlaXJvQGdtYWlsLmNvbV0KPiA+ID4gR2VzZW5kZXQ6IERvIDAzLjA1LjIw MDcgMTY6MDYKPiA+ID4gQW46IE5pY29sYWksIEpvaGFubmVzCj4gPiA+IEJldHJlZmY6IFJlOiBb UmVhbHRpbWViYXR0bGUtZGV2ZWxdIHRyYW5zbGF0aW9uIG9mIGRvY3VtZW50YXRpb24KPiA+ID4K PiA+ID4gSGksIGEgbG90IG9mIHRoYW5rcyBmb3IgcXVpY2sgcmVwbHlpbmcuCj4gPiA+Cj4gPiA+ IEkgbmV2ZXIgaGF2ZSBoZWFyZCBhYm91dCBsaW51eGRvYywgdW5sZXNzIEkgaGF2ZSB0cmFuc2xh dGVkIHNvbWUKPiA+ID4gaG93dG9zIHRvIGdhbGljaWFuLiBTZWFyY2hpbmcgb24gR29vZ2xlIEkg Zm91bmQgdGhhdCBsaW5rczoKPiA+ID4gaHR0cDovL3RsZHAub3JnL0hPV1RPL0hvd3Rvcy13aXRo LUxpbnV4RG9jLmh0bWwKPiA+ID4gaHR0cDovL2VzLnRsZHAub3JnL0NPTU8tSU5TRkxVRy9DT01P cy9MaW51eGRvYy1Db21vLwo+ID4gPgo+ID4gPiBJIHdpbGwgdHJ5IHRvIHVuZGVyc3RhbmQgaG93 IHRvIHVzZSBsaW51eGRvYyB0byBnZW5lcmF0ZSBmcm9tIHNnbWwsCj4gPiA+IGJ1dCBmaXJzdCBJ IGhhdmUgdG8gdHJhbnNsYXRlLCBidXQgc2dtbCBpc24ndCBsaWtlIFhNTC9IVE1MPz8/IEhhdmUg SQo+ID4gPiBvbmx5IHRvIHRyYW5zbGF0ZSB0ZXh0IGJldHdlZW4gdGhlIHRhZ3M/Pwo+ID4gPgo+ ID4gPiBUaGFua3MsCj4gPiA+ICAgICAgICAgICAgICAgICAgTGVhbmRybyBSZWd1ZWlybwo+ID4g Pgo+ID4gPiBPbiA1LzMvMDcsIE5pY29sYWksIEpvaGFubmVzCj4gPiA+IDxKb2hhbm5lcy5OaWNv bGFpQHN0dWRlbnQuaHBpLnVuaS1wb3RzZGFtLmRlPiB3cm90ZToKPiA+ID4gPiBIaSBMZWFuZHJv LAo+ID4gPiA+Cj4gPiA+ID4gZmlyc3QgdGhhbmtzIGEgbG90IGZvciB5b3VyIGhlbHAuIEJhc2lj YWxseSwgd2UgaGF2ZSBpbmZvIHBhZ2VzLCBvbmxpbmUgZG9jdW1lbnRhdGlvbiwgcGRmIGFuZCBk dmkgdGhhdCBhcmUgYWxsIGdlbmVyYXRlZCBvdXQgb2YgYW4gc2dtbC1maWxlLgo+ID4gPiA+IEFy ZSB5b3UgZmFtaWxpYXIgd2l0aCBsaW51eGRvYyBhbmQgc2dtbD8gQ3VycmVudGx5LCBzZ21sIGZp bGVzIGFyZSBhdmFpbGFibGUgZm9yIHRoZSBTcGFuaXNoLCBHZXJtYW4gYW5kIEVuZ2xpc2ggdHJh bnNsYXRpb24uIElmIHlvdSBwbGF5IGFyb3VuZCB3aXRoIGFuIGV4aXN0aW5nIHNnbWwgZmlsZSBh bmQgdHlwZSBtYWtlLCB0aGUgbGludXhkb2Mgd2lsbCBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGFs bCBvdGhlciBkb2N1bWVudHMgZm9yIHlvdS4gSWYgeW91IHByb3ZpZGUgdXMgYW4gc2dtbC1maWxl LCBJIHdpbGwgaW50ZWdyYXRlIGl0IGluIHRoZSBidWlsZGluZyBwcm9jZXNzIHNvIHlvdSBkbyBu b3QgaGF2ZSB0byBtZXNzIGFyb3VuZCB3aXRoIHRoZSBhdXRvdG9vbHMuCj4gPiA+ID4KPiA+ID4g PiBJZiB3cml0aW5nIGFuIHNnbWwgZmlsZSBpcyB0b28gdGVkaW91cywgeW91IG1pZ2h0IGNvbnNp ZGVyIHRvIG9ubHkgcHJvdmlkZSBhIEdhbGljaWFuIGh0bWwgaGVscCAoYXMgd2UgaGF2ZSBmb3Ig RnJlbmNoKS4KPiA+ID4gPgo+ID4gPiA+IFJlZ2FyZHMKPiA+ID4gPgo+ID4gPiA+IEpvaGFubmVz Cj4gPiA+ID4KPiA+ID4gPiAtLS0tLVVyc3Byw7xuZ2xpY2hlIE5hY2hyaWNodC0tLS0tCj4gPiA+ ID4gVm9uOiByZWFsdGltZWJhdHRsZS1kZXZlbC1ib3VuY2VzQGxpc3RzLnNvdXJjZWZvcmdlLm5l dCBpbSBBdWZ0cmFnIHZvbiBMZWFuZHJvIFJlZ3VlaXJvCj4gPiA+ID4gR2VzZW5kZXQ6IERvIDAz LjA1LjIwMDcgMTM6NDQKPiA+ID4gPiBBbjogcmVhbHRpbWViYXR0bGUtZGV2ZWxAbGlzdHMuc291 cmNlZm9yZ2UubmV0Cj4gPiA+ID4gQmV0cmVmZjogW1JlYWx0aW1lYmF0dGxlLWRldmVsXSB0cmFu c2xhdGlvbiBvZiBkb2N1bWVudGF0aW9uCj4gPiA+ID4KPiA+ID4gPiBIaS4gSSBhbSBpbnRlcmVz dGVkIG9uIHRyYW5zbGF0ZSBSVEIgZG9jdW1lbnRhdGlvbiB0byBnYWxpY2lhbi4KPiA+ID4gPgo+ ID4gPiA+IEkgcmVndWxhcmx5IHRyYW5zbGF0ZSBmcmVlIHNvZnR3YXJlIHRvIGdhbGljaWFuLCBh bmQgSSB0cmFuc2xhdGVkIHNvbWUKPiA+ID4gPiBkb2N1bWVudGF0aW9uLCBpbmNsdWRlZCB0aGUg dGV4dCBvZiBHTlUgR1BMLCBidXQgSSBkb24ndCBrbm93IGhvdyB0bwo+ID4gPiA+IHRyYW5zbGF0 ZSB0aGUgZG9jdW1lbnRhdGlvbiwgd2hhdCBJIGhhdmUgdG8gZG93bmxvYWQ/PyBob3cgY291bGQg SSBnZXQKPiA+ID4gPiB0aGUgZG9jdW1lbnRhdGlvbiBpbiB2YXJpb3VzIGZvcm1hdHM/Pwo+ID4g PiA+Cj4gPiA+ID4gVGhhbmtzLAo+ID4gPiA+ICAgICAgICAgICAgICAgICAgIExlYW5kcm8gUmVn dWVpcm8KPiA+ID4gPgo+ID4gPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+ID4gPiBUaGlzIFNGLm5l dCBlbWFpbCBpcyBzcG9uc29yZWQgYnkgREIyIEV4cHJlc3MKPiA+ID4gPiBEb3dubG9hZCBEQjIg RXhwcmVzcyBDIC0gdGhlIEZSRUUgdmVyc2lvbiBvZiBEQjIgZXhwcmVzcyBhbmQgdGFrZQo+ID4g PiA+IGNvbnRyb2wgb2YgeW91ciBYTUwuIE5vIGxpbWl0cy4gSnVzdCBkYXRhLiBDbGljayB0byBn ZXQgaXQgbm93Lgo+ID4gPiA+IGh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvcG93ZXJiYXIvZGIyLwo+ ID4gPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4g PiA+ID4gUmVhbHRpbWViYXR0bGUtZGV2ZWwgbWFpbGluZyBsaXN0Cj4gPiA+ID4gUmVhbHRpbWVi YXR0bGUtZGV2ZWxAbGlzdHMuc291cmNlZm9yZ2UubmV0Cj4gPiA+ID4gaHR0cHM6Ly9saXN0cy5z b3VyY2Vmb3JnZS5uZXQvbGlzdHMvbGlzdGluZm8vcmVhbHRpbWViYXR0bGUtZGV2ZWwKPiA+ID4g Pgo+ID4gPiA+Cj4gPiA+Cj4gPiA+Cj4gPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gPiBUaGlzIFNGLm5l dCBlbWFpbCBpcyBzcG9uc29yZWQgYnkgREIyIEV4cHJlc3MKPiA+IERvd25sb2FkIERCMiBFeHBy ZXNzIEMgLSB0aGUgRlJFRSB2ZXJzaW9uIG9mIERCMiBleHByZXNzIGFuZCB0YWtlCj4gPiBjb250 cm9sIG9mIHlvdXIgWE1MLiBObyBsaW1pdHMuIEp1c3QgZGF0YS4gQ2xpY2sgdG8gZ2V0IGl0IG5v dy4KPiA+IGh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvcG93ZXJiYXIvZGIyLwo+ID4gX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiA+IFJlYWx0aW1lYmF0dGxl LWRldmVsIG1haWxpbmcgbGlzdAo+ID4gUmVhbHRpbWViYXR0bGUtZGV2ZWxAbGlzdHMuc291cmNl Zm9yZ2UubmV0Cj4gPiBodHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5m by9yZWFsdGltZWJhdHRsZS1kZXZlbAo+ID4KPiA+Cj4K |
From: Leandro R. <lea...@gm...> - 2007-05-03 14:37:41
|
T0suIEkndmUgZ290IGl0LiBJIGRvd25sb2FkZWQgdGhlIG1hbiBwYWdlIHRvby4gRmlyc3QgSSB3 aWxsIHRyYW5zbGF0ZQppdCBhbmQgdGhlbiBJIHdpbGwgc2VlIGhvdyB0byBjb252ZXJ0IGZyb20g c2dtbCB0byBodG1sL3BkZi9ldGMKClRoYW5rcywKICAgICAgICAgICAgICAgICAgTGVhbmRybyBS ZWd1ZWlybwoKT24gNS8zLzA3LCBOaWNvbGFpLCBKb2hhbm5lcwo8Sm9oYW5uZXMuTmljb2xhaUBz dHVkZW50LmhwaS51bmktcG90c2RhbS5kZT4gd3JvdGU6Cj4gWWVhaCwgaXQgaXMgbGlrZSB0cmFu c2xhdGluZyBodG1sLiBUaGUgc2dtbCBmaWxlcyBhcmUgIGxvY2F0ZWQgaW4gdGhlIGFyY2hpdmVz LCB5b3UgY2FuIGRvd25sb2FkIHRoZW0gZnJvbSBzb3VyY2Vmb3JnZS4gVGhlIHNnbWwgZmlsZXMg YXJlIGxvY2F0ZWQgaW4gdGhlIERvY3VtZW50YXRpb24gZGlyZWN0b3J5Lgo+Cj4gUmVnYXJkcwo+ Cj4gSm9oYW5uZXMKPgo+Cj4gLS0tLS1VcnNwcsO8bmdsaWNoZSBOYWNocmljaHQtLS0tLQo+IFZv bjogcmVhbHRpbWViYXR0bGUtZGV2ZWwtYm91bmNlc0BsaXN0cy5zb3VyY2Vmb3JnZS5uZXQgaW0g QXVmdHJhZyB2b24gTGVhbmRybyBSZWd1ZWlybwo+IEdlc2VuZGV0OiBEbyAwMy4wNS4yMDA3IDE2 OjI0Cj4gQW46IHJlYWx0aW1lYmF0dGxlLWRldmVsQGxpc3RzLnNvdXJjZWZvcmdlLm5ldAo+IEJl dHJlZmY6IFJlOiBbUmVhbHRpbWViYXR0bGUtZGV2ZWxdIHRyYW5zbGF0aW9uIG9mIGRvY3VtZW50 YXRpb24KPgo+IE9oLCBJdCdzIGxpa2UgdHJhbnNsYXRpbmcgSFRNTCwgaXNuJ3QgaXQ/IFdoZXJl IGNvdWxkIEkgZG93bmxvYWQgdGhlIHNnbWwgZmlsZT8KPgo+IFRoYW5rcywKPiAgICAgICAgICAg ICAgICAgTGVhbmRybyBSZWd1ZWlybwo+Cj4gT24gNS8zLzA3LCBOaWNvbGFpLCBKb2hhbm5lcwo+ IDxKb2hhbm5lcy5OaWNvbGFpQHN0dWRlbnQuaHBpLnVuaS1wb3RzZGFtLmRlPiB3cm90ZToKPiA+ Cj4gPiBZb3UganVzdCBoYXZlIHRvIHRyYW5zbGF0ZSB0aGUgdGhpbmdzIGJlaGluZCB0aGUgdGFn cyA4LSkKPiA+Cj4gPiAtLS0tLVVyc3Byw7xuZ2xpY2hlIE5hY2hyaWNodC0tLS0tCj4gPiBWb246 IExlYW5kcm8gUmVndWVpcm8gW21haWx0bzpsZWFuZHJvLnJlZ3VlaXJvQGdtYWlsLmNvbV0KPiA+ IEdlc2VuZGV0OiBEbyAwMy4wNS4yMDA3IDE2OjA2Cj4gPiBBbjogTmljb2xhaSwgSm9oYW5uZXMK PiA+IEJldHJlZmY6IFJlOiBbUmVhbHRpbWViYXR0bGUtZGV2ZWxdIHRyYW5zbGF0aW9uIG9mIGRv Y3VtZW50YXRpb24KPiA+Cj4gPiBIaSwgYSBsb3Qgb2YgdGhhbmtzIGZvciBxdWljayByZXBseWlu Zy4KPiA+Cj4gPiBJIG5ldmVyIGhhdmUgaGVhcmQgYWJvdXQgbGludXhkb2MsIHVubGVzcyBJIGhh dmUgdHJhbnNsYXRlZCBzb21lCj4gPiBob3d0b3MgdG8gZ2FsaWNpYW4uIFNlYXJjaGluZyBvbiBH b29nbGUgSSBmb3VuZCB0aGF0IGxpbmtzOgo+ID4gaHR0cDovL3RsZHAub3JnL0hPV1RPL0hvd3Rv cy13aXRoLUxpbnV4RG9jLmh0bWwKPiA+IGh0dHA6Ly9lcy50bGRwLm9yZy9DT01PLUlOU0ZMVUcv Q09NT3MvTGludXhkb2MtQ29tby8KPiA+Cj4gPiBJIHdpbGwgdHJ5IHRvIHVuZGVyc3RhbmQgaG93 IHRvIHVzZSBsaW51eGRvYyB0byBnZW5lcmF0ZSBmcm9tIHNnbWwsCj4gPiBidXQgZmlyc3QgSSBo YXZlIHRvIHRyYW5zbGF0ZSwgYnV0IHNnbWwgaXNuJ3QgbGlrZSBYTUwvSFRNTD8/PyBIYXZlIEkK PiA+IG9ubHkgdG8gdHJhbnNsYXRlIHRleHQgYmV0d2VlbiB0aGUgdGFncz8/Cj4gPgo+ID4gVGhh bmtzLAo+ID4gICAgICAgICAgICAgICAgICBMZWFuZHJvIFJlZ3VlaXJvCj4gPgo+ID4gT24gNS8z LzA3LCBOaWNvbGFpLCBKb2hhbm5lcwo+ID4gPEpvaGFubmVzLk5pY29sYWlAc3R1ZGVudC5ocGku dW5pLXBvdHNkYW0uZGU+IHdyb3RlOgo+ID4gPiBIaSBMZWFuZHJvLAo+ID4gPgo+ID4gPiBmaXJz dCB0aGFua3MgYSBsb3QgZm9yIHlvdXIgaGVscC4gQmFzaWNhbGx5LCB3ZSBoYXZlIGluZm8gcGFn ZXMsIG9ubGluZSBkb2N1bWVudGF0aW9uLCBwZGYgYW5kIGR2aSB0aGF0IGFyZSBhbGwgZ2VuZXJh dGVkIG91dCBvZiBhbiBzZ21sLWZpbGUuCj4gPiA+IEFyZSB5b3UgZmFtaWxpYXIgd2l0aCBsaW51 eGRvYyBhbmQgc2dtbD8gQ3VycmVudGx5LCBzZ21sIGZpbGVzIGFyZSBhdmFpbGFibGUgZm9yIHRo ZSBTcGFuaXNoLCBHZXJtYW4gYW5kIEVuZ2xpc2ggdHJhbnNsYXRpb24uIElmIHlvdSBwbGF5IGFy b3VuZCB3aXRoIGFuIGV4aXN0aW5nIHNnbWwgZmlsZSBhbmQgdHlwZSBtYWtlLCB0aGUgbGludXhk b2Mgd2lsbCBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGFsbCBvdGhlciBkb2N1bWVudHMgZm9yIHlv dS4gSWYgeW91IHByb3ZpZGUgdXMgYW4gc2dtbC1maWxlLCBJIHdpbGwgaW50ZWdyYXRlIGl0IGlu IHRoZSBidWlsZGluZyBwcm9jZXNzIHNvIHlvdSBkbyBub3QgaGF2ZSB0byBtZXNzIGFyb3VuZCB3 aXRoIHRoZSBhdXRvdG9vbHMuCj4gPiA+Cj4gPiA+IElmIHdyaXRpbmcgYW4gc2dtbCBmaWxlIGlz IHRvbyB0ZWRpb3VzLCB5b3UgbWlnaHQgY29uc2lkZXIgdG8gb25seSBwcm92aWRlIGEgR2FsaWNp YW4gaHRtbCBoZWxwIChhcyB3ZSBoYXZlIGZvciBGcmVuY2gpLgo+ID4gPgo+ID4gPiBSZWdhcmRz Cj4gPiA+Cj4gPiA+IEpvaGFubmVzCj4gPiA+Cj4gPiA+IC0tLS0tVXJzcHLDvG5nbGljaGUgTmFj aHJpY2h0LS0tLS0KPiA+ID4gVm9uOiByZWFsdGltZWJhdHRsZS1kZXZlbC1ib3VuY2VzQGxpc3Rz LnNvdXJjZWZvcmdlLm5ldCBpbSBBdWZ0cmFnIHZvbiBMZWFuZHJvIFJlZ3VlaXJvCj4gPiA+IEdl c2VuZGV0OiBEbyAwMy4wNS4yMDA3IDEzOjQ0Cj4gPiA+IEFuOiByZWFsdGltZWJhdHRsZS1kZXZl bEBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQKPiA+ID4gQmV0cmVmZjogW1JlYWx0aW1lYmF0dGxlLWRl dmVsXSB0cmFuc2xhdGlvbiBvZiBkb2N1bWVudGF0aW9uCj4gPiA+Cj4gPiA+IEhpLiBJIGFtIGlu dGVyZXN0ZWQgb24gdHJhbnNsYXRlIFJUQiBkb2N1bWVudGF0aW9uIHRvIGdhbGljaWFuLgo+ID4g Pgo+ID4gPiBJIHJlZ3VsYXJseSB0cmFuc2xhdGUgZnJlZSBzb2Z0d2FyZSB0byBnYWxpY2lhbiwg YW5kIEkgdHJhbnNsYXRlZCBzb21lCj4gPiA+IGRvY3VtZW50YXRpb24sIGluY2x1ZGVkIHRoZSB0 ZXh0IG9mIEdOVSBHUEwsIGJ1dCBJIGRvbid0IGtub3cgaG93IHRvCj4gPiA+IHRyYW5zbGF0ZSB0 aGUgZG9jdW1lbnRhdGlvbiwgd2hhdCBJIGhhdmUgdG8gZG93bmxvYWQ/PyBob3cgY291bGQgSSBn ZXQKPiA+ID4gdGhlIGRvY3VtZW50YXRpb24gaW4gdmFyaW91cyBmb3JtYXRzPz8KPiA+ID4KPiA+ ID4gVGhhbmtzLAo+ID4gPiAgICAgICAgICAgICAgICAgICBMZWFuZHJvIFJlZ3VlaXJvCj4gPiA+ Cj4gPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+ID4gVGhpcyBTRi5uZXQgZW1haWwgaXMgc3BvbnNv cmVkIGJ5IERCMiBFeHByZXNzCj4gPiA+IERvd25sb2FkIERCMiBFeHByZXNzIEMgLSB0aGUgRlJF RSB2ZXJzaW9uIG9mIERCMiBleHByZXNzIGFuZCB0YWtlCj4gPiA+IGNvbnRyb2wgb2YgeW91ciBY TUwuIE5vIGxpbWl0cy4gSnVzdCBkYXRhLiBDbGljayB0byBnZXQgaXQgbm93Lgo+ID4gPiBodHRw Oi8vc291cmNlZm9yZ2UubmV0L3Bvd2VyYmFyL2RiMi8KPiA+ID4gX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiA+ID4gUmVhbHRpbWViYXR0bGUtZGV2ZWwg bWFpbGluZyBsaXN0Cj4gPiA+IFJlYWx0aW1lYmF0dGxlLWRldmVsQGxpc3RzLnNvdXJjZWZvcmdl Lm5ldAo+ID4gPiBodHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5mby9y ZWFsdGltZWJhdHRsZS1kZXZlbAo+ID4gPgo+ID4gPgo+ID4KPiA+Cj4gLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQo+IFRoaXMgU0YubmV0IGVtYWlsIGlzIHNwb25zb3JlZCBieSBEQjIgRXhwcmVzcwo+IERvd25s b2FkIERCMiBFeHByZXNzIEMgLSB0aGUgRlJFRSB2ZXJzaW9uIG9mIERCMiBleHByZXNzIGFuZCB0 YWtlCj4gY29udHJvbCBvZiB5b3VyIFhNTC4gTm8gbGltaXRzLiBKdXN0IGRhdGEuIENsaWNrIHRv IGdldCBpdCBub3cuCj4gaHR0cDovL3NvdXJjZWZvcmdlLm5ldC9wb3dlcmJhci9kYjIvCj4gX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBSZWFsdGltZWJh dHRsZS1kZXZlbCBtYWlsaW5nIGxpc3QKPiBSZWFsdGltZWJhdHRsZS1kZXZlbEBsaXN0cy5zb3Vy Y2Vmb3JnZS5uZXQKPiBodHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5m by9yZWFsdGltZWJhdHRsZS1kZXZlbAo+Cj4K |
From: Leandro R. <lea...@gm...> - 2007-05-03 14:24:49
|
T2gsIEl0J3MgbGlrZSB0cmFuc2xhdGluZyBIVE1MLCBpc24ndCBpdD8gV2hlcmUgY291bGQgSSBk b3dubG9hZCB0aGUgc2dtbCBmaWxlPwoKVGhhbmtzLAogICAgICAgICAgICAgICAgTGVhbmRybyBS ZWd1ZWlybwoKT24gNS8zLzA3LCBOaWNvbGFpLCBKb2hhbm5lcwo8Sm9oYW5uZXMuTmljb2xhaUBz dHVkZW50LmhwaS51bmktcG90c2RhbS5kZT4gd3JvdGU6Cj4KPiBZb3UganVzdCBoYXZlIHRvIHRy YW5zbGF0ZSB0aGUgdGhpbmdzIGJlaGluZCB0aGUgdGFncyA4LSkKPgo+IC0tLS0tVXJzcHLDvG5n bGljaGUgTmFjaHJpY2h0LS0tLS0KPiBWb246IExlYW5kcm8gUmVndWVpcm8gW21haWx0bzpsZWFu ZHJvLnJlZ3VlaXJvQGdtYWlsLmNvbV0KPiBHZXNlbmRldDogRG8gMDMuMDUuMjAwNyAxNjowNgo+ IEFuOiBOaWNvbGFpLCBKb2hhbm5lcwo+IEJldHJlZmY6IFJlOiBbUmVhbHRpbWViYXR0bGUtZGV2 ZWxdIHRyYW5zbGF0aW9uIG9mIGRvY3VtZW50YXRpb24KPgo+IEhpLCBhIGxvdCBvZiB0aGFua3Mg Zm9yIHF1aWNrIHJlcGx5aW5nLgo+Cj4gSSBuZXZlciBoYXZlIGhlYXJkIGFib3V0IGxpbnV4ZG9j LCB1bmxlc3MgSSBoYXZlIHRyYW5zbGF0ZWQgc29tZQo+IGhvd3RvcyB0byBnYWxpY2lhbi4gU2Vh cmNoaW5nIG9uIEdvb2dsZSBJIGZvdW5kIHRoYXQgbGlua3M6Cj4gaHR0cDovL3RsZHAub3JnL0hP V1RPL0hvd3Rvcy13aXRoLUxpbnV4RG9jLmh0bWwKPiBodHRwOi8vZXMudGxkcC5vcmcvQ09NTy1J TlNGTFVHL0NPTU9zL0xpbnV4ZG9jLUNvbW8vCj4KPiBJIHdpbGwgdHJ5IHRvIHVuZGVyc3RhbmQg aG93IHRvIHVzZSBsaW51eGRvYyB0byBnZW5lcmF0ZSBmcm9tIHNnbWwsCj4gYnV0IGZpcnN0IEkg aGF2ZSB0byB0cmFuc2xhdGUsIGJ1dCBzZ21sIGlzbid0IGxpa2UgWE1ML0hUTUw/Pz8gSGF2ZSBJ Cj4gb25seSB0byB0cmFuc2xhdGUgdGV4dCBiZXR3ZWVuIHRoZSB0YWdzPz8KPgo+IFRoYW5rcywK PiAgICAgICAgICAgICAgICAgIExlYW5kcm8gUmVndWVpcm8KPgo+IE9uIDUvMy8wNywgTmljb2xh aSwgSm9oYW5uZXMKPiA8Sm9oYW5uZXMuTmljb2xhaUBzdHVkZW50LmhwaS51bmktcG90c2RhbS5k ZT4gd3JvdGU6Cj4gPiBIaSBMZWFuZHJvLAo+ID4KPiA+IGZpcnN0IHRoYW5rcyBhIGxvdCBmb3Ig eW91ciBoZWxwLiBCYXNpY2FsbHksIHdlIGhhdmUgaW5mbyBwYWdlcywgb25saW5lIGRvY3VtZW50 YXRpb24sIHBkZiBhbmQgZHZpIHRoYXQgYXJlIGFsbCBnZW5lcmF0ZWQgb3V0IG9mIGFuIHNnbWwt ZmlsZS4KPiA+IEFyZSB5b3UgZmFtaWxpYXIgd2l0aCBsaW51eGRvYyBhbmQgc2dtbD8gQ3VycmVu dGx5LCBzZ21sIGZpbGVzIGFyZSBhdmFpbGFibGUgZm9yIHRoZSBTcGFuaXNoLCBHZXJtYW4gYW5k IEVuZ2xpc2ggdHJhbnNsYXRpb24uIElmIHlvdSBwbGF5IGFyb3VuZCB3aXRoIGFuIGV4aXN0aW5n IHNnbWwgZmlsZSBhbmQgdHlwZSBtYWtlLCB0aGUgbGludXhkb2Mgd2lsbCBhdXRvbWF0aWNhbGx5 IGdlbmVyYXRlIGFsbCBvdGhlciBkb2N1bWVudHMgZm9yIHlvdS4gSWYgeW91IHByb3ZpZGUgdXMg YW4gc2dtbC1maWxlLCBJIHdpbGwgaW50ZWdyYXRlIGl0IGluIHRoZSBidWlsZGluZyBwcm9jZXNz IHNvIHlvdSBkbyBub3QgaGF2ZSB0byBtZXNzIGFyb3VuZCB3aXRoIHRoZSBhdXRvdG9vbHMuCj4g Pgo+ID4gSWYgd3JpdGluZyBhbiBzZ21sIGZpbGUgaXMgdG9vIHRlZGlvdXMsIHlvdSBtaWdodCBj b25zaWRlciB0byBvbmx5IHByb3ZpZGUgYSBHYWxpY2lhbiBodG1sIGhlbHAgKGFzIHdlIGhhdmUg Zm9yIEZyZW5jaCkuCj4gPgo+ID4gUmVnYXJkcwo+ID4KPiA+IEpvaGFubmVzCj4gPgo+ID4gLS0t LS1VcnNwcsO8bmdsaWNoZSBOYWNocmljaHQtLS0tLQo+ID4gVm9uOiByZWFsdGltZWJhdHRsZS1k ZXZlbC1ib3VuY2VzQGxpc3RzLnNvdXJjZWZvcmdlLm5ldCBpbSBBdWZ0cmFnIHZvbiBMZWFuZHJv IFJlZ3VlaXJvCj4gPiBHZXNlbmRldDogRG8gMDMuMDUuMjAwNyAxMzo0NAo+ID4gQW46IHJlYWx0 aW1lYmF0dGxlLWRldmVsQGxpc3RzLnNvdXJjZWZvcmdlLm5ldAo+ID4gQmV0cmVmZjogW1JlYWx0 aW1lYmF0dGxlLWRldmVsXSB0cmFuc2xhdGlvbiBvZiBkb2N1bWVudGF0aW9uCj4gPgo+ID4gSGku IEkgYW0gaW50ZXJlc3RlZCBvbiB0cmFuc2xhdGUgUlRCIGRvY3VtZW50YXRpb24gdG8gZ2FsaWNp YW4uCj4gPgo+ID4gSSByZWd1bGFybHkgdHJhbnNsYXRlIGZyZWUgc29mdHdhcmUgdG8gZ2FsaWNp YW4sIGFuZCBJIHRyYW5zbGF0ZWQgc29tZQo+ID4gZG9jdW1lbnRhdGlvbiwgaW5jbHVkZWQgdGhl IHRleHQgb2YgR05VIEdQTCwgYnV0IEkgZG9uJ3Qga25vdyBob3cgdG8KPiA+IHRyYW5zbGF0ZSB0 aGUgZG9jdW1lbnRhdGlvbiwgd2hhdCBJIGhhdmUgdG8gZG93bmxvYWQ/PyBob3cgY291bGQgSSBn ZXQKPiA+IHRoZSBkb2N1bWVudGF0aW9uIGluIHZhcmlvdXMgZm9ybWF0cz8/Cj4gPgo+ID4gVGhh bmtzLAo+ID4gICAgICAgICAgICAgICAgICAgTGVhbmRybyBSZWd1ZWlybwo+ID4KPiA+IC0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KPiA+IFRoaXMgU0YubmV0IGVtYWlsIGlzIHNwb25zb3JlZCBieSBEQjIgRXhw cmVzcwo+ID4gRG93bmxvYWQgREIyIEV4cHJlc3MgQyAtIHRoZSBGUkVFIHZlcnNpb24gb2YgREIy IGV4cHJlc3MgYW5kIHRha2UKPiA+IGNvbnRyb2wgb2YgeW91ciBYTUwuIE5vIGxpbWl0cy4gSnVz dCBkYXRhLiBDbGljayB0byBnZXQgaXQgbm93Lgo+ID4gaHR0cDovL3NvdXJjZWZvcmdlLm5ldC9w b3dlcmJhci9kYjIvCj4gPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwo+ID4gUmVhbHRpbWViYXR0bGUtZGV2ZWwgbWFpbGluZyBsaXN0Cj4gPiBSZWFsdGlt ZWJhdHRsZS1kZXZlbEBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQKPiA+IGh0dHBzOi8vbGlzdHMuc291 cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL3JlYWx0aW1lYmF0dGxlLWRldmVsCj4gPgo+ID4K Pgo+Cg== |
From: Leandro R. <lea...@gm...> - 2007-05-03 11:44:38
|
Hi. I am interested on translate RTB documentation to galician. I regularly translate free software to galician, and I translated some documentation, included the text of GNU GPL, but I don't know how to translate the documentation, what I have to download?? how could I get the documentation in various formats?? Thanks, Leandro Regueiro |
From: Nicolai J. <Joh...@st...> - 2006-06-28 07:41:51
|
The whole communication in realtimebattle works over standard input and = standard output, so you only has to use the functions in your favourite = language to echo hello world on the screen or scan for user input. Basically, it is that easy, you may have to worry about to use = blocking/non-blocking I/O (see RealTimeBattle Manual for further = information). Whether a program is a binary or not, basically does not matter, there = are also sample robots written in Java included. Regards Johannes -----Urspr=FCngliche Nachricht----- Von: rea...@li... im Auftrag von = Lucas Mallory Gesendet: Mi 28.06.2006 03:19 An: rea...@li... Betreff: [Realtimebattle-devel] Python Robots =20 Hello. I'm trying to build a robot using python as the language. To get started, I'm trying to get Raziel to run with version 1.0.7=20 My problem is can't figure out how to get the python programs to connect = to the realtimebattle games server. It seems all the other programs are = compiled binaries (except for the perl programs). Thanks for any help. Using Tomcat but need to do more? Need to support web services, = security? Get stuff done quickly with pre-integrated technology to make your job = easier Download IBM WebSphere Application Server v.1.0.1 based on Apache = Geronimo http://sel.as-us.falkag.net/sel?cmd=3Dlnk&kid=3D120709&bid=3D263057&dat=3D= 121642 _______________________________________________ Realtimebattle-devel mailing list Rea...@li... https://lists.sourceforge.net/lists/listinfo/realtimebattle-devel |
From: Lucas M. <luc...@in...> - 2006-06-28 01:20:07
|
Hello. I'm trying to build a robot using python as the language. To get started, I'm trying to get Raziel to run with version 1.0.7 My problem is can't figure out how to get the python programs to connect to the realtimebattle games server. It seems all the other programs are compiled binaries (except for the perl programs). Thanks for any help. |
From: Anthony D. <an...@de...> - 2005-10-28 04:18:57
|
Johannes Nicolai wrote: > I have finally managed to clarify the jBot license, it's simply freeware: > http://www.jars.com/games/other/resource.php/16361 Generally, freeware != free software. In particular, you generally are not allowed to sell freeware, which fails DFSG 1. Second, "freeware" is not a software license. Nor is it legal term. We really have no idea what it means. |
From: Johannes N. <joh...@hp...> - 2005-10-27 09:29:33
|
Hi, due to the new port options and Alfonso's fullscreen feature, we need to update our translations. I have already done this for the German translation. If you are willing to translate the new entries, please let me know. PS: Don't worry if you are not familiar with the gettext facilities, I can help you with that. Johannes |
From: Johannes N. <joh...@hp...> - 2005-10-27 08:42:47
|
On Thursday 27 October 2005 03:03, Alfonso Acosta wrote: > To be able to integrate the map editor and to create on-the-fly map > previews (which was an idea which came to my head in the last few > days when thinking about how to avoid having to generate map > screenshots) I propose splitting the ArenaBase class in ArenaStatic > and ArenaDynamic. > > An ArenaStatic would be just a map (mainly a list of Shapes and the > parsing method) and would be the superclass of DynamicArena (a > time-changing Arena) which would be the superclass of ArenaReplay and > ArenaRealtime Idea is accepted Thanks a lot for your efforts Johannes > > 2005/10/27, Alfonso Acosta <alf...@gm...>: > > Hi, > > > > The map editor which was at RealTimeBattle/utils/MapEditor/src > > compiled perfectly with gtk+-2.0 using gcc-3.4 by adding just a few > > "using userspace std" in a few files. > > > > The problem is that the tool is not functional at all (it was just at > > its begining state). Is that the only version of the tool aviable? > > > > A thing which I don't like from its design is that an independent > > executable is generated which doesn't make use of the rest of the code > > (i.e. it doesn't make use of the main source tree). That forces > > reinventing the wheel for things such as parsing the arena file etc > > ... > > > > My suggestion is writing an editor from scratch and integrate it in > > the main tree. > > > > What do you think? > > > > Cheers, > > > > Fons > > > > -- > > Alfonso Acosta (Fons) > > My Space: http://www.myspace.com/2opremio > > Home Page: http://fons.net.dhis.org/ > > Broadcom 6345 Linux distribution: http://brcm6345-linux.sourceforge.net/ > > -- > Alfonso Acosta (Fons) > My Space: http://www.myspace.com/2opremio > Home Page: http://fons.net.dhis.org/ > Broadcom 6345 Linux distribution: http://brcm6345-linux.sourceforge.net/ > > > ------------------------------------------------------- > This SF.Net email is sponsored by the JBoss Inc. > Get Certified Today * Register for a JBoss Training Course > Free Certification Exam for All Training Attendees Through End of 2005 > Visit http://www.jboss.com/services/certification for more information > _______________________________________________ > Realtimebattle-devel mailing list > Rea...@li... > https://lists.sourceforge.net/lists/listinfo/realtimebattle-devel |
From: Johannes N. <joh...@hp...> - 2005-10-27 08:42:00
|
On Thursday 27 October 2005 02:17, Alfonso Acosta wrote: > Hi, > > The map editor which was at RealTimeBattle/utils/MapEditor/src > compiled perfectly with gtk+-2.0 using gcc-3.4 by adding just a few > "using userspace std" in a few files. > > The problem is that the tool is not functional at all (it was just at > its begining state). Is that the only version of the tool aviable? Unfortunately, the new RTB team does not know about it. Perhaps a member of the older team can answer this question. > > A thing which I don't like from its design is that an independent > executable is generated which doesn't make use of the rest of the code > (i.e. it doesn't make use of the main source tree). That forces > reinventing the wheel for things such as parsing the arena file etc > ... Of course it should use the main source tree. The idea of an independent executable should be kept. In the future we try to completely separate the GUI from the core. > My suggestion is writing an editor from scratch and integrate it in > the main tree. Agree, but keep the idea of an independent executable. > > What do you think? > > Cheers, > > Fons > > -- > Alfonso Acosta (Fons) > My Space: http://www.myspace.com/2opremio > Home Page: http://fons.net.dhis.org/ > Broadcom 6345 Linux distribution: http://brcm6345-linux.sourceforge.net/ > > > ------------------------------------------------------- > This SF.Net email is sponsored by the JBoss Inc. > Get Certified Today * Register for a JBoss Training Course > Free Certification Exam for All Training Attendees Through End of 2005 > Visit http://www.jboss.com/services/certification for more information > _______________________________________________ > Realtimebattle-devel mailing list > Rea...@li... > https://lists.sourceforge.net/lists/listinfo/realtimebattle-devel |
From: Alfonso A. <alf...@gm...> - 2005-10-27 01:03:53
|
To be able to integrate the map editor and to create on-the-fly map previews (which was an idea which came to my head in the last few days when thinking about how to avoid having to generate map screenshots) I propose splitting the ArenaBase class in ArenaStatic and ArenaDynamic. An ArenaStatic would be just a map (mainly a list of Shapes and the parsing method) and would be the superclass of DynamicArena (a time-changing Arena) which would be the superclass of ArenaReplay and ArenaRealtime 2005/10/27, Alfonso Acosta <alf...@gm...>: > Hi, > > The map editor which was at RealTimeBattle/utils/MapEditor/src > compiled perfectly with gtk+-2.0 using gcc-3.4 by adding just a few > "using userspace std" in a few files. > > The problem is that the tool is not functional at all (it was just at > its begining state). Is that the only version of the tool aviable? > > A thing which I don't like from its design is that an independent > executable is generated which doesn't make use of the rest of the code > (i.e. it doesn't make use of the main source tree). That forces > reinventing the wheel for things such as parsing the arena file etc > ... > > My suggestion is writing an editor from scratch and integrate it in > the main tree. > > What do you think? > > Cheers, > > Fons > > -- > Alfonso Acosta (Fons) > My Space: http://www.myspace.com/2opremio > Home Page: http://fons.net.dhis.org/ > Broadcom 6345 Linux distribution: http://brcm6345-linux.sourceforge.net/ > -- Alfonso Acosta (Fons) My Space: http://www.myspace.com/2opremio Home Page: http://fons.net.dhis.org/ Broadcom 6345 Linux distribution: http://brcm6345-linux.sourceforge.net/ |
From: Alfonso A. <alf...@gm...> - 2005-10-27 00:17:54
|
Hi, The map editor which was at RealTimeBattle/utils/MapEditor/src compiled perfectly with gtk+-2.0 using gcc-3.4 by adding just a few "using userspace std" in a few files. The problem is that the tool is not functional at all (it was just at its begining state). Is that the only version of the tool aviable? A thing which I don't like from its design is that an independent executable is generated which doesn't make use of the rest of the code (i.e. it doesn't make use of the main source tree). That forces reinventing the wheel for things such as parsing the arena file etc ... My suggestion is writing an editor from scratch and integrate it in the main tree. What do you think? Cheers, Fons -- Alfonso Acosta (Fons) My Space: http://www.myspace.com/2opremio Home Page: http://fons.net.dhis.org/ Broadcom 6345 Linux distribution: http://brcm6345-linux.sourceforge.net/ |
From: Johannes N. <joh...@hp...> - 2005-10-25 09:39:39
|
I have finally managed to clarify the jBot license, it's simply freeware: http://www.jars.com/games/other/resource.php/16361 So every robot in the package complies to the Debian Policy regarding the main section. Johannes On Monday 24 October 2005 17:58, Remi Vanicat wrote: > 2005/10/24, Johannes Nicolai <joh...@hp...>: > > If anybody of you has written a robot, that is not included in the > > samples of 1.0.8. please feel free to send it to the list. > > We are urging for sophisticated robots (like those, who took part in the > > World Champion Ships), but also really simple ones in standard and exotic > > languages. > > You do not have to cope about integrating your robot in the installation > > and deployment process, we will do this step for you. > > About this, and about the robot included into realtime for now, I've a > request/question: some of them doesn't include a copyright: empty, > perl, raziel, rotate_and_fire, seek_and_destroy, and some other does > contain a copyright, but with no licence (that i can understood): > jBot, perl-skeleton. It make them difficult to include in the debian > package because we try to not include things we are not sure they are > free software, and as some robot are said to be contrib, I cannot know > if they are realy free or not. > > - So for robot you will submit please, please put a copyright and a > licence (preferably free) for us to distribute, modify and use it, > > - and for robot already included, could we have some clarification ? > (I know that rotate_and_fire and seek_and_destroy were there for a > very long time so are probably part of realtimebatlle and so under the > same licence, and empty and raziel are so short that one could argue > that they are not realy copyrighthable, but I would prefer to have > some clarification before making the new package) > > > ------------------------------------------------------- > This SF.Net email is sponsored by the JBoss Inc. > Get Certified Today * Register for a JBoss Training Course > Free Certification Exam for All Training Attendees Through End of 2005 > Visit http://www.jboss.com/services/certification for more information > _______________________________________________ > Realtimebattle-devel mailing list > Rea...@li... > https://lists.sourceforge.net/lists/listinfo/realtimebattle-devel |
From: Johannes N. <joh...@hp...> - 2005-10-24 16:28:47
|
AFAIK, rotate_and_fire, seek_and_destroy and empty are part of RealTimeBattle I know the author of raziel who aggreed that this piece of code can be used in any way. The same applies to the perl bot. jBot has no special license in the code, I will try to contact Ingo Beckmann for clarification. Johannes On Monday 24 October 2005 17:58, Remi Vanicat wrote: > 2005/10/24, Johannes Nicolai <joh...@hp...>: > > If anybody of you has written a robot, that is not included in the > > samples of 1.0.8. please feel free to send it to the list. > > We are urging for sophisticated robots (like those, who took part in the > > World Champion Ships), but also really simple ones in standard and exotic > > languages. > > You do not have to cope about integrating your robot in the installation > > and deployment process, we will do this step for you. > > About this, and about the robot included into realtime for now, I've a > request/question: some of them doesn't include a copyright: empty, > perl, raziel, rotate_and_fire, seek_and_destroy, and some other does > contain a copyright, but with no licence (that i can understood): > jBot, perl-skeleton. It make them difficult to include in the debian > package because we try to not include things we are not sure they are > free software, and as some robot are said to be contrib, I cannot know > if they are realy free or not. > > - So for robot you will submit please, please put a copyright and a > licence (preferably free) for us to distribute, modify and use it, > > - and for robot already included, could we have some clarification ? > (I know that rotate_and_fire and seek_and_destroy were there for a > very long time so are probably part of realtimebatlle and so under the > same licence, and empty and raziel are so short that one could argue > that they are not realy copyrighthable, but I would prefer to have > some clarification before making the new package) > > > ------------------------------------------------------- > This SF.Net email is sponsored by the JBoss Inc. > Get Certified Today * Register for a JBoss Training Course > Free Certification Exam for All Training Attendees Through End of 2005 > Visit http://www.jboss.com/services/certification for more information > _______________________________________________ > Realtimebattle-devel mailing list > Rea...@li... > https://lists.sourceforge.net/lists/listinfo/realtimebattle-devel |
From: Remi V. <rem...@gm...> - 2005-10-24 15:58:52
|
2005/10/24, Johannes Nicolai <joh...@hp...>: > If anybody of you has written a robot, that is not included in the sample= s of > 1.0.8. please feel free to send it to the list. > We are urging for sophisticated robots (like those, who took part in the = World > Champion Ships), but also really simple ones in standard and exotic > languages. > You do not have to cope about integrating your robot in the installation = and > deployment process, we will do this step for you. About this, and about the robot included into realtime for now, I've a request/question: some of them doesn't include a copyright: empty, perl, raziel, rotate_and_fire, seek_and_destroy, and some other does contain a copyright, but with no licence (that i can understood): jBot, perl-skeleton. It make them difficult to include in the debian package because we try to not include things we are not sure they are free software, and as some robot are said to be contrib, I cannot know if they are realy free or not. - So for robot you will submit please, please put a copyright and a licence (preferably free) for us to distribute, modify and use it, - and for robot already included, could we have some clarification ? (I know that rotate_and_fire and seek_and_destroy were there for a very long time so are probably part of realtimebatlle and so under the same licence, and empty and raziel are so short that one could argue that they are not realy copyrighthable, but I would prefer to have some clarification before making the new package) |
From: Johannes N. <joh...@hp...> - 2005-10-24 12:37:37
|
If anybody of you has written a robot, that is not included in the samples of 1.0.8. please feel free to send it to the list. We are urging for sophisticated robots (like those, who took part in the World Champion Ships), but also really simple ones in standard and exotic languages. You do not have to cope about integrating your robot in the installation and deployment process, we will do this step for you. Thanks in advance Johannes Nicolai for the RealTimeBattle Team Framework Group |
From: Johannes N. <joh...@hp...> - 2005-10-22 11:52:03
|
Thanks to the patch, we will do everything possible to try it out and work it in ASAP. Johannes On Friday 21 October 2005 18:17, Alfonso Acosta wrote: > Hi! > > I'm glad to send a patch which adds a fullscreen-mode to te arena > window. Fell free to test it and add it to the CVS. > > > Index: include/ArenaWindow.h > =================================================================== > RCS file: /cvsroot/realtimebattle/RealTimeBattleNew/include/ArenaWindow.h,v > retrieving revision 1.1.1.1 > diff -u -r1.1.1.1 ArenaWindow.h > --- include/ArenaWindow.h 10 Jan 2005 18:35:27 -0000 1.1.1.1 > +++ include/ArenaWindow.h 21 Oct 2005 16:13:50 -0000 > @@ -53,12 +53,17 @@ > > void set_window_title (); > > - static gboolean hide_window ( GtkWidget* widget, GdkEvent* > event, + static gboolean hide_window ( GtkWidget* widget, GdkEvent* > event, class ArenaWindow* arenawindow_p ); static void show_window > ( GtkWidget* widget, > class ArenaWindow* arenawindow_p ); > + static gboolean hide_fs_controls ( class ArenaWindow* arenawindow_p ); > + static gboolean show_fs_controls ( GtkWidget* widget, GdkEvent* event, > + class ArenaWindow* arenawindow_p ); > static void no_zoom ( GtkWidget* widget, > class ArenaWindow* arenawindow_p ); > + static void toggle_fullscreen ( GtkWidget* widget, > + class ArenaWindow* arenawindow_p ); > static void zoom_in ( GtkWidget* widget, > class ArenaWindow* arenawindow_p ); > static void zoom_out ( GtkWidget* widget, > @@ -99,7 +104,9 @@ > const Vector2D& end, > GdkColor& colour, > const bool filled ); > - > + > + void hide_cursor( GtkWidget* widget ); > + void unhide_cursor( GtkWidget* widget ); > GtkWidget* get_drawing_area () { return drawing_area; } > GtkWidget* get_scrolled_window () { return scrolled_window; } > GtkWidget* get_window_p () { return window_p; } > @@ -112,14 +119,19 @@ > private: > > GtkWidget* window_p; > + GtkWidget* button_table; > GtkWidget* scrolled_window; > GtkWidget* drawing_area; > + GtkWidget* fs_controls; > > Vector2D scrolled_window_size; > int zoom; // The zoom when pressed on one of the zoombuttons > double drawing_area_scale; > > bool window_shown; > + bool fs_controls_shown; > + bool fullscreen; > + static const guint fs_popup_timeout_ms = 3 * 1000; > }; > > #include "ArenaController.h" > Index: src/ArenaWindow.cc > =================================================================== > RCS file: /cvsroot/realtimebattle/RealTimeBattleNew/src/ArenaWindow.cc,v > retrieving revision 1.3 > diff -u -r1.3 ArenaWindow.cc > --- src/ArenaWindow.cc 17 Apr 2005 10:06:02 -0000 1.3 > +++ src/ArenaWindow.cc 21 Oct 2005 16:13:51 -0000 > @@ -43,9 +43,11 @@ > const int default_y_pos ) > { > // The window widget > + fullscreen = 0; > + fs_controls_shown = 0; > window_p = gtk_window_new( GTK_WINDOW_TOPLEVEL ); > gtk_widget_set_name( window_p, "RTB Arena" ); > - > + > set_window_title(); > > gtk_container_border_width( GTK_CONTAINER( window_p ), 12 ); > @@ -79,12 +81,15 @@ > { string( _(" Zoom In ") ) + string("[+] "), > (GtkSignalFunc) ArenaWindow::zoom_in }, > { string( _(" Zoom Out ") ) + string("[-] "), > - (GtkSignalFunc) ArenaWindow::zoom_out } }; > + (GtkSignalFunc) ArenaWindow::zoom_out }, > + { string( _(" Toggle Fullscreen ") ) + string("[F] "), > + (GtkSignalFunc) ArenaWindow::toggle_fullscreen }}; > > - GtkWidget* button_table = gtk_table_new( 1, 3, TRUE ); > + button_table = gtk_table_new( 1, 4, TRUE ); > gtk_box_pack_start( GTK_BOX( vbox ), button_table, FALSE, FALSE, 0 ); > - > - for( int i=0; i < 3; i++ ) > + > + > + for( int i=0; i < 4; i++ ) > { > GtkWidget* button = > gtk_button_new_with_label( buttons[i].label.c_str() ); > @@ -113,9 +118,18 @@ > default_width - 48, default_height - 80 ); > gtk_signal_connect( GTK_OBJECT( drawing_area ), "expose_event", > (GtkSignalFunc) ArenaWindow::redraw, (gpointer) this > ); - > - gtk_widget_set_events( drawing_area, GDK_EXPOSURE_MASK ); > - > + g_signal_connect( G_OBJECT (window_p), "motion-notify-event", > + G_CALLBACK (ArenaWindow::show_fs_controls), > + (gpointer) this ); > + g_signal_connect( G_OBJECT (window_p), "button-press-event", > + G_CALLBACK (ArenaWindow::show_fs_controls), > + (gpointer) this ); > + > + gtk_widget_set_events( drawing_area, > + GDK_EXPOSURE_MASK | > + GDK_POINTER_MOTION_MASK | > + GDK_BUTTON_PRESS_MASK ); > + > gtk_scrolled_window_add_with_viewport > ( GTK_SCROLLED_WINDOW( scrolled_window ), drawing_area ); > gtk_widget_show( drawing_area ); > @@ -140,6 +154,8 @@ > > ArenaWindow::~ArenaWindow() > { > + if ( fullscreen ) > + gtk_widget_destroy( fs_controls ); > gtk_widget_destroy( window_p ); > } > > @@ -159,8 +175,8 @@ > > // Warning: event can be NULL, do not use event! > gboolean > -ArenaWindow::hide_window( GtkWidget* widget, GdkEvent* event, > - class ArenaWindow* arenawindow_p ) > +ArenaWindow::hide_window ( GtkWidget* widget, GdkEvent* event, > + class ArenaWindow* arenawindow_p ) > { > if( arenawindow_p->is_window_shown() ) > { > @@ -171,6 +187,8 @@ > GtkWidget* menu_item = > controlwindow_p->get_show_arena_menu_item(); > gtk_check_menu_item_set_active( GTK_CHECK_MENU_ITEM( > menu_item ), FALSE ); > } > + if ( arenawindow_p->fullscreen ) > + toggle_fullscreen( NULL, arenawindow_p ); > } > return true; > } > @@ -187,6 +205,89 @@ > } > } > > + > +void > +ArenaWindow::unhide_cursor( GtkWidget* widget ) > +{ > + gdk_window_set_cursor( widget->window , NULL); > +} > + > +void > +ArenaWindow::hide_cursor( GtkWidget* widget ) > +{ > + gchar bits[] = { 0 }; > + GdkColor color = { 0, 0, 0, 0 }; > + GdkPixmap *pixmap; > + GdkCursor *cursor; > + > + pixmap = gdk_bitmap_create_from_data( NULL, bits, 1, 1 ); > + cursor = gdk_cursor_new_from_pixmap( pixmap, pixmap, &color, &color, 0, > 0 ); + gdk_window_set_cursor( widget->window , cursor ); > +} > + > +gboolean > +ArenaWindow::show_fs_controls ( GtkWidget* widget, GdkEvent* event, > + class ArenaWindow* arenawindow_p ) > +{ > + static guint popup_timeout_tag; > + int controls_width, controls_height; > + GdkScreen *screen; > + GdkRectangle fullscreen_rect; > + > + if( !arenawindow_p->fullscreen ) > + return FALSE; > + if( arenawindow_p->fs_controls_shown ) > + { > + // restart the timer > + g_source_remove( popup_timeout_tag ); > + popup_timeout_tag = > + g_timeout_add( arenawindow_p->fs_popup_timeout_ms, > + (GSourceFunc) ArenaWindow::hide_fs_controls, > + (gpointer) arenawindow_p); > + return FALSE; > + } > + arenawindow_p->fs_controls_shown = 1; > + // position popup controls > + screen = gtk_window_get_screen( GTK_WINDOW ( arenawindow_p->window_p ) > ); + gdk_screen_get_monitor_geometry( screen, > + gdk_screen_get_monitor_at_window > + ( screen, arenawindow_p->window_p->window ), > + &fullscreen_rect ); > + gtk_window_get_size ( GTK_WINDOW ( arenawindow_p->fs_controls ), > + &controls_width, &controls_height ); > + gtk_window_set_screen( GTK_WINDOW ( arenawindow_p->fs_controls ), > screen ); + gtk_window_resize( GTK_WINDOW ( arenawindow_p->fs_controls ), > + fullscreen_rect.width, > + controls_height ); > + gtk_window_move( GTK_WINDOW ( arenawindow_p->fs_controls ), > + fullscreen_rect.x, > + fullscreen_rect.y ); > + > + arenawindow_p->unhide_cursor( arenawindow_p->drawing_area ); > + > + gtk_widget_show( arenawindow_p->fs_controls ); > + // popup hiding timer > + popup_timeout_tag = > + g_timeout_add( arenawindow_p->fs_popup_timeout_ms, > + (GSourceFunc) ArenaWindow::hide_fs_controls, > + (gpointer) arenawindow_p ); > + > + return FALSE; > +} > + > +gboolean > +ArenaWindow::hide_fs_controls( class ArenaWindow* arenawindow_p ) > +{ > + if( !arenawindow_p->fullscreen ) > + return FALSE; > + if( !arenawindow_p->fs_controls_shown ) > + return FALSE; > + arenawindow_p->fs_controls_shown = 0; > + arenawindow_p->hide_cursor ( arenawindow_p->drawing_area ); > + gtk_widget_hide( arenawindow_p->fs_controls ); > + return FALSE; > +} > + > void > ArenaWindow::clear_area() > { > @@ -520,6 +621,58 @@ > arenawindow_p->drawing_area_scale_changed( true ); > } > > +// Warning! Do not use widget, may be NULL or undefined > +void > +ArenaWindow::toggle_fullscreen( GtkWidget* widget, class ArenaWindow* > arenawindow_p ) > +{ > + // FIXME: center drawing area? > + static GtkWidget *old_bt_vbox; > + static gulong handler_id; > + GtkWidget *scrolled_window = arenawindow_p->scrolled_window; > + GtkWidget *window_p = arenawindow_p->get_window_p(); > + GtkWidget *button_table = arenawindow_p->button_table; > + GtkWidget *drawing_area = arenawindow_p->drawing_area; > + GtkWidget *fs_controls; > + if( !arenawindow_p->fullscreen ) > + { > + // change window style > + gtk_container_set_border_width( GTK_CONTAINER( window_p ), 0 ); > + // create fs control popup window > + fs_controls = gtk_window_new( GTK_WINDOW_POPUP ); > + arenawindow_p->fs_controls = fs_controls; > + // move button table to the popupwindow > + old_bt_vbox = gtk_widget_get_parent( button_table ); > + gtk_widget_ref ( button_table ); > + gtk_container_remove( GTK_CONTAINER( old_bt_vbox ), button_table ); > + gtk_container_add( GTK_CONTAINER( fs_controls ), button_table ); > + gtk_widget_unref( button_table ); > + > + arenawindow_p->hide_cursor( drawing_area ); > + > + gtk_window_fullscreen( GTK_WINDOW( window_p ) ); > + } > + else > + { > + fs_controls = arenawindow_p->fs_controls; > + arenawindow_p->unhide_cursor ( arenawindow_p->drawing_area ); > + // restore button table > + gtk_widget_ref( button_table ); > + gtk_container_remove( GTK_CONTAINER( fs_controls ), button_table ); > + gtk_box_pack_start( GTK_BOX( old_bt_vbox ), > + button_table, FALSE, FALSE, 0 ); > + gtk_widget_unref( button_table ); > + gtk_box_reorder_child( GTK_BOX( old_bt_vbox ), button_table, 0 ); > + // destroy fs control popup window > + arenawindow_p->fs_controls_shown = 0; > + gtk_widget_destroy( fs_controls ); > + // restore window style > + gtk_container_set_border_width( GTK_CONTAINER( window_p ), 12 ); > + > + gtk_window_unfullscreen( GTK_WINDOW( window_p ) ); > + } > + arenawindow_p->fullscreen = !arenawindow_p->fullscreen; > +} > + > gint > ArenaWindow::keyboard_handler( GtkWidget* widget, GdkEventKey *event, > class ArenaWindow* arenawindow_p ) > @@ -541,7 +694,12 @@ > case GDK_KP_Insert: > no_zoom( NULL, arenawindow_p ); > break; > - > + > + case GDK_f: > + case GDK_F: > + toggle_fullscreen( NULL, arenawindow_p ); > + break; > + > default: > return FALSE; > } > > > > > -- > Alfonso Acosta (Fons) > My Space: http://www.myspace.com/2opremio > Home Page: http://fons.net.dhis.org/ > Broadcom 6345 Linux distribution: http://brcm6345-linux.sourceforge.net/ > > > ------------------------------------------------------- > This SF.Net email is sponsored by: > Power Architecture Resource Center: Free content, downloads, discussions, > and more. http://solutions.newsforge.com/ibmarch.tmpl > _______________________________________________ > Realtimebattle-devel mailing list > Rea...@li... > https://lists.sourceforge.net/lists/listinfo/realtimebattle-devel |
From: Johannes N. <joh...@hp...> - 2005-10-22 11:51:02
|
No, please feel free to port it, we would be very happy about it. Thanks Johannes On Friday 21 October 2005 18:29, Alfonso Acosta wrote: > Hi! > > Is anyone already in charge of porting the editor to the version? > > Cheers, > > -- > Alfonso Acosta (Fons) > My Space: http://www.myspace.com/2opremio > Home Page: http://fons.net.dhis.org/ > Broadcom 6345 Linux distribution: http://brcm6345-linux.sourceforge.net/ > > > ------------------------------------------------------- > This SF.Net email is sponsored by: > Power Architecture Resource Center: Free content, downloads, discussions, > and more. http://solutions.newsforge.com/ibmarch.tmpl > _______________________________________________ > Realtimebattle-devel mailing list > Rea...@li... > https://lists.sourceforge.net/lists/listinfo/realtimebattle-devel |
From: Alfonso A. <alf...@gm...> - 2005-10-21 16:30:04
|
Hi! Is anyone already in charge of porting the editor to the version? Cheers, -- Alfonso Acosta (Fons) My Space: http://www.myspace.com/2opremio Home Page: http://fons.net.dhis.org/ Broadcom 6345 Linux distribution: http://brcm6345-linux.sourceforge.net/ |
From: Alfonso A. <alf...@gm...> - 2005-10-21 16:17:30
|
Hi! I'm glad to send a patch which adds a fullscreen-mode to te arena window. Fell free to test it and add it to the CVS. Index: include/ArenaWindow.h =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvsroot/realtimebattle/RealTimeBattleNew/include/ArenaWindow.h,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 ArenaWindow.h --- include/ArenaWindow.h=0910 Jan 2005 18:35:27 -0000=091.1.1.1 +++ include/ArenaWindow.h=0921 Oct 2005 16:13:50 -0000 @@ -53,12 +53,17 @@ void set_window_title (); - static gboolean hide_window ( GtkWidget* widget, GdkEvent* even= t, + static gboolean hide_window ( GtkWidget* widget, GdkEvent* event, class ArenaWindow* arenawindow_p ); static void show_window ( GtkWidget* widget, class ArenaWindow* arenawindow_p ); + static gboolean hide_fs_controls ( class ArenaWindow* arenawindow_p ); + static gboolean show_fs_controls ( GtkWidget* widget, GdkEvent* event, + class ArenaWindow* arenawindow_p ); static void no_zoom ( GtkWidget* widget, class ArenaWindow* arenawindow_p ); + static void toggle_fullscreen ( GtkWidget* widget, + class ArenaWindow* arenawindow_p ); static void zoom_in ( GtkWidget* widget, class ArenaWindow* arenawindow_p ); static void zoom_out ( GtkWidget* widget, @@ -99,7 +104,9 @@ const Vector2D& end, GdkColor& colour, const bool filled ); - + + void hide_cursor( GtkWidget* widget ); + void unhide_cursor( GtkWidget* widget ); GtkWidget* get_drawing_area () { return drawing_area; } GtkWidget* get_scrolled_window () { return scrolled_window; } GtkWidget* get_window_p () { return window_p; } @@ -112,14 +119,19 @@ private: GtkWidget* window_p; + GtkWidget* button_table; GtkWidget* scrolled_window; GtkWidget* drawing_area; + GtkWidget* fs_controls; Vector2D scrolled_window_size; int zoom; // The zoom when pressed on one of the zoombuttons double drawing_area_scale; bool window_shown; + bool fs_controls_shown; + bool fullscreen; + static const guint fs_popup_timeout_ms =3D 3 * 1000; }; #include "ArenaController.h" Index: src/ArenaWindow.cc =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvsroot/realtimebattle/RealTimeBattleNew/src/ArenaWindow.cc,v retrieving revision 1.3 diff -u -r1.3 ArenaWindow.cc --- src/ArenaWindow.cc=0917 Apr 2005 10:06:02 -0000=091.3 +++ src/ArenaWindow.cc=0921 Oct 2005 16:13:51 -0000 @@ -43,9 +43,11 @@ const int default_y_pos ) { // The window widget + fullscreen =3D 0; + fs_controls_shown =3D 0; window_p =3D gtk_window_new( GTK_WINDOW_TOPLEVEL ); gtk_widget_set_name( window_p, "RTB Arena" ); - + set_window_title(); gtk_container_border_width( GTK_CONTAINER( window_p ), 12 ); @@ -79,12 +81,15 @@ { string( _(" Zoom In ") ) + string("[+] "), (GtkSignalFunc) ArenaWindow::zoom_in }, { string( _(" Zoom Out ") ) + string("[-] "), - (GtkSignalFunc) ArenaWindow::zoom_out } }; + (GtkSignalFunc) ArenaWindow::zoom_out }, + { string( _(" Toggle Fullscreen ") ) + string("[F] "), + (GtkSignalFunc) ArenaWindow::toggle_fullscreen }}; - GtkWidget* button_table =3D gtk_table_new( 1, 3, TRUE ); + button_table =3D gtk_table_new( 1, 4, TRUE ); gtk_box_pack_start( GTK_BOX( vbox ), button_table, FALSE, FALSE, 0 ); - - for( int i=3D0; i < 3; i++ ) + + + for( int i=3D0; i < 4; i++ ) { GtkWidget* button =3D gtk_button_new_with_label( buttons[i].label.c_str() ); @@ -113,9 +118,18 @@ default_width - 48, default_height - 80 ); gtk_signal_connect( GTK_OBJECT( drawing_area ), "expose_event", (GtkSignalFunc) ArenaWindow::redraw, (gpointer) this= ); - - gtk_widget_set_events( drawing_area, GDK_EXPOSURE_MASK ); - + g_signal_connect( G_OBJECT (window_p), "motion-notify-event", +=09=09 G_CALLBACK (ArenaWindow::show_fs_controls), +=09=09 (gpointer) this ); + g_signal_connect( G_OBJECT (window_p), "button-press-event", +=09=09 G_CALLBACK (ArenaWindow::show_fs_controls), +=09=09 (gpointer) this ); + + gtk_widget_set_events( drawing_area, +=09=09=09 GDK_EXPOSURE_MASK | +=09=09=09 GDK_POINTER_MOTION_MASK | +=09=09=09 GDK_BUTTON_PRESS_MASK ); + gtk_scrolled_window_add_with_viewport ( GTK_SCROLLED_WINDOW( scrolled_window ), drawing_area ); gtk_widget_show( drawing_area ); @@ -140,6 +154,8 @@ ArenaWindow::~ArenaWindow() { + if ( fullscreen ) + gtk_widget_destroy( fs_controls ); gtk_widget_destroy( window_p ); } @@ -159,8 +175,8 @@ // Warning: event can be NULL, do not use event! gboolean -ArenaWindow::hide_window( GtkWidget* widget, GdkEvent* event, - class ArenaWindow* arenawindow_p ) +ArenaWindow::hide_window ( GtkWidget* widget, GdkEvent* event, +=09=09=09 class ArenaWindow* arenawindow_p ) { if( arenawindow_p->is_window_shown() ) { @@ -171,6 +187,8 @@ GtkWidget* menu_item =3D controlwindow_p->get_show_arena_menu_it= em(); gtk_check_menu_item_set_active( GTK_CHECK_MENU_ITEM( menu_item ), FALSE ); } + if ( arenawindow_p->fullscreen ) +=09toggle_fullscreen( NULL, arenawindow_p ); } =09return true; } @@ -187,6 +205,89 @@ } } + +void +ArenaWindow::unhide_cursor( GtkWidget* widget ) +{ + gdk_window_set_cursor( widget->window , NULL); +} + +void +ArenaWindow::hide_cursor( GtkWidget* widget ) +{ + gchar bits[] =3D { 0 }; + GdkColor color =3D { 0, 0, 0, 0 }; + GdkPixmap *pixmap; + GdkCursor *cursor; + + pixmap =3D gdk_bitmap_create_from_data( NULL, bits, 1, 1 ); + cursor =3D gdk_cursor_new_from_pixmap( pixmap, pixmap, &color, &color, 0= , 0 ); + gdk_window_set_cursor( widget->window , cursor ); +} + +gboolean +ArenaWindow::show_fs_controls ( GtkWidget* widget, GdkEvent* event, +=09=09=09=09class ArenaWindow* arenawindow_p ) +{ + static guint popup_timeout_tag; + int controls_width, controls_height; + GdkScreen *screen; + GdkRectangle fullscreen_rect; + + if( !arenawindow_p->fullscreen ) + return FALSE; + if( arenawindow_p->fs_controls_shown ) + { + // restart the timer + g_source_remove( popup_timeout_tag ); + popup_timeout_tag =3D +=09g_timeout_add( arenawindow_p->fs_popup_timeout_ms, +=09=09 (GSourceFunc) ArenaWindow::hide_fs_controls, +=09=09 (gpointer) arenawindow_p); + return FALSE; + } + arenawindow_p->fs_controls_shown =3D 1; + // position popup controls + screen =3D gtk_window_get_screen( GTK_WINDOW ( arenawindow_p->window_p )= ); + gdk_screen_get_monitor_geometry( screen, +=09=09=09=09 gdk_screen_get_monitor_at_window +=09=09=09=09 ( screen, arenawindow_p->window_p->window ), +=09=09=09=09 &fullscreen_rect ); + gtk_window_get_size ( GTK_WINDOW ( arenawindow_p->fs_controls ), +=09=09=09&controls_width, &controls_height ); + gtk_window_set_screen( GTK_WINDOW ( arenawindow_p->fs_controls ), scree= n ); + gtk_window_resize( GTK_WINDOW ( arenawindow_p->fs_controls ), +=09=09 fullscreen_rect.width, +=09=09 controls_height ); + gtk_window_move( GTK_WINDOW ( arenawindow_p->fs_controls ), +=09=09 fullscreen_rect.x, +=09=09 fullscreen_rect.y ); + + arenawindow_p->unhide_cursor( arenawindow_p->drawing_area ); + + gtk_widget_show( arenawindow_p->fs_controls ); + // popup hiding timer + popup_timeout_tag =3D + g_timeout_add( arenawindow_p->fs_popup_timeout_ms, +=09=09 (GSourceFunc) ArenaWindow::hide_fs_controls, +=09=09 (gpointer) arenawindow_p ); + + return FALSE; +} + +gboolean +ArenaWindow::hide_fs_controls( class ArenaWindow* arenawindow_p ) +{ + if( !arenawindow_p->fullscreen ) + return FALSE; + if( !arenawindow_p->fs_controls_shown ) + return FALSE; + arenawindow_p->fs_controls_shown =3D 0; + arenawindow_p->hide_cursor ( arenawindow_p->drawing_area ); + gtk_widget_hide( arenawindow_p->fs_controls ); + return FALSE; +} + void ArenaWindow::clear_area() { @@ -520,6 +621,58 @@ arenawindow_p->drawing_area_scale_changed( true ); } +// Warning! Do not use widget, may be NULL or undefined +void +ArenaWindow::toggle_fullscreen( GtkWidget* widget, class ArenaWindow* arenawindow_p ) +{ + // FIXME: center drawing area? + static GtkWidget *old_bt_vbox; + static gulong handler_id; + GtkWidget *scrolled_window =3D arenawindow_p->scrolled_window; + GtkWidget *window_p =3D arenawindow_p->get_window_p(); + GtkWidget *button_table =3D arenawindow_p->button_table; + GtkWidget *drawing_area =3D arenawindow_p->drawing_area; + GtkWidget *fs_controls; + if( !arenawindow_p->fullscreen ) + { + // change window style + gtk_container_set_border_width( GTK_CONTAINER( window_p ), 0 ); + // create fs control popup window + fs_controls =3D gtk_window_new( GTK_WINDOW_POPUP ); + arenawindow_p->fs_controls =3D fs_controls; + // move button table to the popupwindow + old_bt_vbox =3D gtk_widget_get_parent( button_table ); + gtk_widget_ref ( button_table ); + gtk_container_remove( GTK_CONTAINER( old_bt_vbox ), button_table ); + gtk_container_add( GTK_CONTAINER( fs_controls ), button_table ); + gtk_widget_unref( button_table ); + + arenawindow_p->hide_cursor( drawing_area ); + + gtk_window_fullscreen( GTK_WINDOW( window_p ) ); + } + else + { + fs_controls =3D arenawindow_p->fs_controls; + arenawindow_p->unhide_cursor ( arenawindow_p->drawing_area ); + // restore button table + gtk_widget_ref( button_table ); + gtk_container_remove( GTK_CONTAINER( fs_controls ), button_table ); + gtk_box_pack_start( GTK_BOX( old_bt_vbox ), +=09=09=09 button_table, FALSE, FALSE, 0 ); + gtk_widget_unref( button_table ); + gtk_box_reorder_child( GTK_BOX( old_bt_vbox ), button_table, 0 ); + // destroy fs control popup window + arenawindow_p->fs_controls_shown =3D 0; + gtk_widget_destroy( fs_controls ); + // restore window style + gtk_container_set_border_width( GTK_CONTAINER( window_p ), 12 ); + + gtk_window_unfullscreen( GTK_WINDOW( window_p ) ); + } + arenawindow_p->fullscreen =3D !arenawindow_p->fullscreen; +} + gint ArenaWindow::keyboard_handler( GtkWidget* widget, GdkEventKey *event, class ArenaWindow* arenawindow_p ) @@ -541,7 +694,12 @@ case GDK_KP_Insert: no_zoom( NULL, arenawindow_p ); break; - + + case GDK_f: + case GDK_F: + toggle_fullscreen( NULL, arenawindow_p ); + break; + default: return FALSE; } -- Alfonso Acosta (Fons) My Space: http://www.myspace.com/2opremio Home Page: http://fons.net.dhis.org/ Broadcom 6345 Linux distribution: http://brcm6345-linux.sourceforge.net/ |
From: Johannes N. <joh...@hp...> - 2005-10-12 07:23:52
|
On Saturday, the RealTimeBattle Team Framework Goup will release=20 RealTimeBattle 1.0.8 So if you have got last minute wishes or patches, feel free to write them t= o=20 the list immediately, perhaps they will go in 1.0.8 as well. To get an overview about the changes to be expected, take a look about a=20 preview version of the Release Notes. If you have suggestions or questions to the notes, write to list as well: =2D--- PREVIEW---- The RealTimeBattle Framework Group (http://rtb-team.sf.net) proudly announc= es=20 RealTimeBattle 1.0.8 There is a long distance between the last version and the current one, beca= use=20 we have integrated improvements from different developer teams around the=20 globe who have only little time to work on RealTimeBattle. So what's new on the 1.0.8 version? We will list the ten most important poi= nts=20 here: 1. Beginning separation of GUI and Core Now, the first steps are made to separate the GUI components from the=20 simulation core. If you compile RealTimeBattle with the --enable-network=20 option, you can connect to the RealTimeBattle core via TCP/IP on a port=20 specified as command line parameter. You will be able to start and watch=20 tournaments from remote. With this approach, new external clients and=20 visualization plugins can be developed without changing the core. The=20 protocols corresponds to the protocol used for logging tournaments. At the= =20 moment, there is only one client available, that is still in development.=20 There are progresses in external clients that also support sound and commen= ts=20 about the running games. Thanks to Mr. Friendly (Volker Str=F6bel) for his= =20 efforts to get things done. 2. More sample robots, improved sample robots With version 1.0.7 we started to distribute a variety of different robots i= n=20 different programming languages in the Extended Edition. We have recognized= ,=20 that almost every person interested in RealTimeBattle downloaded this=20 version, so we will only release an Extended Version for 1.0.8. The sample robots has been improved and new robots were introduced: The=20 RealTimeBattle Team Framework now supports two more strategies (Cobra and=20 Columbus) and Raziel (a python bot) joined the other robots. Thanks to=20 Sebastian Rolof, Tino Truppel and Torsten Sachse. 3. Code Cleanup All custom collection classes in the code were replaced by STL containers.= =20 RealTimeBattle will now stand a Denial of Service Attack by an evil robot a= nd=20 is no longer vulnerable to several buffer overflow possibilities. Thanks to= =20 Georg Zetzsche for helping me with this issue. RealTimeBattle will not cras= h=20 any longer if a wrong tournament file or arena file is supplied. Thanks to= =20 Christian Heinemann for his work. 4. Bug Fixing =46eatures that were broken in 1.0.6 and 1.0.7 like the replaying and recor= ding=20 of log files or the compilation without GUI now work again. For further=20 details about the fixed bugs, see our bugtracker on=20 https://sourceforge.net/tracker/?group_id=3D561&atid=3D100561 5. Supported platforms RealTimeBattle 1.0.8 was successfully compiled and tested under =2D Linux (32 and 64 Bit x-86, Alpha) =2D Open BSD (x-86) =2D Free BSD (x-86) =2D Net BSD (x-86) =2D Mac OS X 10.2 =2D Solaris 9 (sparc and x-86) =2D Windows with the Cygwin environment Thanks to Simen R=F8kaas for his distribution to the Windows port. It would be cool, if some volunteer would manage to create some binary=20 packages (e. g. RPM, MSI) for RealTimeBattle 1.0.8. At the moment, the only= =20 distribution we know, that already ships with RealTimeBattle is Debian. 6. Team Support=20 RealTimeBattle now supports teams without changing the protocol. The RobotI= nfo=20 message now distinguishes friends and enemies. All team members get the sam= e=20 colour. To assign to a team, you have to specify the team name with your=20 name. "Name foo Team: bar" lets your robot "foo" join the Team "bar". 7. Updated Documentation The English and German documentation will tell you everything about the new= =20 features like team support and GUI/Core separation. Furthermore, outdated=20 links and email addresses were updated. Documentation for other languages=20 still do not reflect the latest changes. We need volunteers to update them. 8. Introduction of the RealTimeBattle Security Infrastructure While we are planning the next World Champion Ship (probably held in Potsda= m=20 on the RoboClash 2006), we have developed a method to guarantee, that robot= s=20 must behave according the rules. Deletion of files, spying out other=20 binaries, establishing network connections, sending signals to non team=20 mates, creating files in other directories than the team directory,=20 interacting with other processes not part of the team, misuse of resources= =20 like memory, CPU and disk space and other evil actions will be automaticall= y=20 prevented by the applied mechanism. The solution works with a portable syst= em=20 call interposition tool named systrace (www.systrace.org). The RealTimeBatt= le=20 security infrastructure mainly consists of a shell script=20 (create_guardedrobot.sh) that automatically creates wrapper scripts and=20 system call policies for the competing robots. The RealTimeBattle Security= =20 Infrastructure is described in detail in chapter seven of "Secure executio= n=20 of untrusted code" on http://www.myhpi.de/~nicolai/sichereausfuehrung.pdf= =20 (only available in German). 9. Tournament Pack To get an overview about how clever robots can act in the RealTimeBattle=20 arenas, we have packed the log files of all champion ships together and=20 released them in a separate download file. This is nothing really new, but= =20 very convenient because otherwise you have to download a lot of files. =46or those who took part in the recorded tournaments: We would be very hap= py,=20 if you could provide us with the source code of your robots so that we can= =20 add it to the sample robots. 10. Diagram Pack We always search new interested developers to assist us improving=20 RealTimeBattle and the RealTimeBattle Team Framework. In order to get a qui= ck=20 overview about the architecture of RealTimeBattle and the Framework, we hav= e=20 packaged all existing design and analysis diagrams (UML and FMC) in a=20 separate download. Sometimes, you can save a lot of time studying these=20 diagrams instead of reading the code over and over. If you have further questions about one or more points, please contact us o= ver=20 our mailing lists. Have a lot of fun Johannes Nicolai for the RealTimeBattle Team Framework Group |
From: Johannes N. <joh...@hp...> - 2005-03-14 10:57:45
|
Hi, in the last weeks, our team spent some efforts to port and test the newest RTB version to about ten different architectures including: Windows (thanks to Simen) with Cygwin and X server Open BSD Net BSD Free BSD Solaris 9 (Sparc / i386) Mac OS X 10.2 (tested without GUI) Linux (i386, AMD 64, Alpha) We are not sure, whether the port to Windows should result in a new release 1.0.8 or if we should wait until some other improvements still in progress are ready (like sound support, restructuring of the source code, enabling the secure execution of unknown robot code, new sample robots) are ready. Please tell us if you are interested in a new version that support the new platforms immediately or if you want to wait until the end of next month and get the whole rest together with the new ports. For the ones who are just looking about a nice job, see https://sourceforge.net/pm/task.php?group_project_id=41012&group_id=561&func=browse and https://sourceforge.net/pm/?group_id=106969 to get an impression what things should be done in the near future. We need every volunteer, any help is really appreciated. Thank you Johannes |
From: <si...@si...> - 2005-02-06 15:44:38
|
Hi folks I'm working on more robust file handling in RTB, and have just checked in a version which should handle errors in arena files. Please feel free to check it out. I have included two checks: First, when the files are added to the arena file list, a file is skipped if it does not start with "scale ". Second, when an arena file is added to a game and the game is started, any parsing error will end the tournament in a normal manner and write a message to stderr. This in contrast to previous version where RTB was shut down on arena file parsing error. I will continue robustifying the other files. Regards, Simen R. |
From: Johannes N. <joh...@st...> - 2005-01-24 20:48:43
|
Due to our new members we got as a result of our sourceforge job offers (yes, that really works 8-), I have written down all suggestions what to do in the newer future in the task manager. Cause most of the task that were in here are already outdated, you can find the current ones in the new created subproject "RealTimeBattle reloaded" : https://sourceforge.net/pm/task.php?group_project_id=41012&group_id=561&func=browse Have a lot of fun with the new jobs and help to get RealTimeBattle even better. Johannes Nicolai |
From: Johannes N. <joh...@st...> - 2005-01-10 18:50:09
|
Unfortunately, the module realtimebattle seems empty with the web interface but is not if you check it out. You will find an attempt of Benoit to improve the game there. So I decided to put the newest version (1.0.7 Extended edition with all applied patches, a new version of the rtb-team framework and the fixed log file facilities) in a new created module "RealTimeBattleNew". To avoid confusion, I have placed a file in the other two modules stressing that these ones are discontinued at the moment and therefore should not be used. Deleting them is not a good idea, because there are still some parts of RTB like the map editor that is not ported to the new gcc and gtk versions and some nice ideas like team support, the network part and many other changes that can be valueable for further development in it. By the way, is there any volunteer to port the map editor to the newest version (should not be too difficult but a job that would be very appreciated by the users of this game)? While addressing this issue, what do you think of placing some developer help needed / job offers on sourceforge? I had done this for the RTB Team Framework and had some success with it. Johannes |