Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Nebula » GridTreeViewer
GridTreeViewer [message #582870] Mon, 04 June 2007 17:08
Michael Houston is currently offline Michael HoustonFriend
Messages: 2
Registered: July 2009
Junior Member
This is a multi-part message in MIME format.
--------------010702030308040407080708
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

I ran across the need to use the grid viewer as a tree, and discovered
that this wasn't possible with the provided GridViewer. I have
implemented a Tree Viewer based on the grid, which seems to work as
expected.

I've attached the source code so that anyone else who needs this can use
it (or not).

Mike.

--------------010702030308040407080708
Content-Type: text/plain;
name="GridTreeViewer.java"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="GridTreeViewer.java"

cGFja2FnZSBvcmcuZWNsaXBzZS5uZWJ1bGEuamZhY2UuZ3JpZHZpZXdlcjsN Cg0KaW1wb3J0
IGphdmEudXRpbC5MaXN0Ow0KDQppbXBvcnQgb3JnLmVjbGlwc2UuamZhY2Uu dmlld2Vycy5B
YnN0cmFjdFRyZWVWaWV3ZXI7DQppbXBvcnQgb3JnLmVjbGlwc2UuamZhY2Uu dmlld2Vycy5W
aWV3ZXJSb3c7DQppbXBvcnQgb3JnLmVjbGlwc2UubmVidWxhLmpmYWNlLmdy aWR2aWV3ZXIu
R3JpZFZpZXdlclJvdzsNCmltcG9ydCBvcmcuZWNsaXBzZS5uZWJ1bGEud2lk Z2V0cy5ncmlk
LkdyaWQ7DQppbXBvcnQgb3JnLmVjbGlwc2UubmVidWxhLndpZGdldHMuZ3Jp ZC5HcmlkSXRl
bTsNCmltcG9ydCBvcmcuZWNsaXBzZS5zd3QuU1dUOw0KaW1wb3J0IG9yZy5l Y2xpcHNlLnN3
dC5ldmVudHMuVHJlZUxpc3RlbmVyOw0KaW1wb3J0IG9yZy5lY2xpcHNlLnN3 dC53aWRnZXRz
LkNvbXBvc2l0ZTsNCmltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0cy5D b250cm9sOw0K
aW1wb3J0IG9yZy5lY2xpcHNlLnN3dC53aWRnZXRzLkl0ZW07DQppbXBvcnQg b3JnLmVjbGlw
c2Uuc3d0LndpZGdldHMuV2lkZ2V0Ow0KDQpwdWJsaWMgY2xhc3MgR3JpZFRy ZWVWaWV3ZXIg
ZXh0ZW5kcyBBYnN0cmFjdFRyZWVWaWV3ZXIgew0KCXByaXZhdGUgR3JpZCBn cmlkOw0KCXBy
aXZhdGUgR3JpZFZpZXdlclJvdyBjYWNoZWRSb3c7DQoNCglwdWJsaWMgR3Jp ZFRyZWVWaWV3
ZXIoQ29tcG9zaXRlIHBhcmVudCkgew0KCQlzdXBlcigpOw0KCQlncmlkID0g bmV3IEdyaWQo
cGFyZW50LCBTV1QuTk9STUFMKTsNCgkJaG9va0NvbnRyb2woZ3JpZCk7DQoJ fQ0KDQoJcHVi
bGljIEdyaWQgZ2V0R3JpZCgpIHsNCgkJcmV0dXJuIGdyaWQ7DQoJfQ0KDQoJ QE92ZXJyaWRl
DQoJcHJvdGVjdGVkIHZvaWQgYWRkVHJlZUxpc3RlbmVyKENvbnRyb2wgY29u dHJvbCwgVHJl
ZUxpc3RlbmVyIGxpc3RlbmVyKSB7DQoJCSgoR3JpZCkgY29udHJvbCkuYWRk VHJlZUxpc3Rl
bmVyKGxpc3RlbmVyKTsNCgl9DQoNCglAT3ZlcnJpZGUNCglwcm90ZWN0ZWQg SXRlbVtdIGdl
dENoaWxkcmVuKFdpZGdldCBvKSB7DQoJCWlmIChvIGluc3RhbmNlb2YgR3Jp ZEl0ZW0pIHsN
CgkJCXJldHVybiAoKEdyaWRJdGVtKSBvKS5nZXRJdGVtcygpOw0KCQl9DQoJ CWlmIChvIGlu
c3RhbmNlb2YgR3JpZCkgew0KCQkJcmV0dXJuICgoR3JpZCkgbykuZ2V0SXRl bXMoKTsNCgkJ
fQ0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCglAT3ZlcnJpZGUNCglwcm90ZWN0 ZWQgYm9vbGVh
biBnZXRFeHBhbmRlZChJdGVtIGl0ZW0pIHsNCgkJcmV0dXJuICgoR3JpZEl0 ZW0pIGl0ZW0p
LmlzRXhwYW5kZWQoKTsNCgl9DQoNCglAT3ZlcnJpZGUNCglwcm90ZWN0ZWQg aW50IGdldEl0
ZW1Db3VudChDb250cm9sIGNvbnRyb2wpIHsNCgkJcmV0dXJuICgoR3JpZCkg Y29udHJvbCku
Z2V0SXRlbUNvdW50KCk7DQoJfQ0KDQoJQE92ZXJyaWRlDQoJcHJvdGVjdGVk IGludCBnZXRJ
dGVtQ291bnQoSXRlbSBpdGVtKSB7DQoJCXJldHVybiAoKEdyaWRJdGVtKSBp dGVtKS5nZXRJ
dGVtQ291bnQoKTsNCgl9DQoNCglAT3ZlcnJpZGUNCglwcm90ZWN0ZWQgSXRl bVtdIGdldEl0
ZW1zKEl0ZW0gaXRlbSkgew0KCQlyZXR1cm4gKChHcmlkSXRlbSkgaXRlbSku Z2V0SXRlbXMo
KTsNCgl9DQoNCglAT3ZlcnJpZGUNCglwcm90ZWN0ZWQgSXRlbSBnZXRQYXJl bnRJdGVtKEl0
ZW0gaXRlbSkgew0KCQlyZXR1cm4gKChHcmlkSXRlbSkgaXRlbSkuZ2V0UGFy ZW50SXRlbSgp
Ow0KCX0NCg0KCUBPdmVycmlkZQ0KCXByb3RlY3RlZCBJdGVtW10gZ2V0U2Vs ZWN0aW9uKENv
bnRyb2wgY29udHJvbCkgew0KCQlyZXR1cm4gKChHcmlkKSBjb250cm9sKS5n ZXRTZWxlY3Rp
b24oKTsNCgl9DQoNCglAT3ZlcnJpZGUNCglwcm90ZWN0ZWQgSXRlbSBuZXdJ dGVtKFdpZGdl
dCBwYXJlbnQsIGludCBzdHlsZSwgaW50IGluZGV4KSB7DQoJCUdyaWRJdGVt IGl0ZW07DQoN
CgkJaWYgKHBhcmVudCBpbnN0YW5jZW9mIEdyaWRJdGVtKSB7DQoJCQlpdGVt ID0gKEdyaWRJ
dGVtKSBjcmVhdGVOZXdSb3dQYXJ0KGdldFZpZXdlclJvd0Zyb21JdGVtKHBh cmVudCksDQoJ
CQkJCXN0eWxlLCBpbmRleCkuZ2V0SXRlbSgpOw0KCQl9IGVsc2Ugew0KCQkJ aXRlbSA9IChH
cmlkSXRlbSkgY3JlYXRlTmV3Um93UGFydChudWxsLCBzdHlsZSwgaW5kZXgp LmdldEl0ZW0o
KTsNCgkJfQ0KDQoJCXJldHVybiBpdGVtOw0KCX0NCgkNCgkvKioNCgkgKiBD cmVhdGUgYSBu
ZXcgVmlld2VyUm93IGF0IHJvd0luZGV4DQoJICogDQoJICogQHBhcmFtIHBh cmVudA0KCSAq
IEBwYXJhbSBzdHlsZQ0KCSAqIEBwYXJhbSByb3dJbmRleA0KCSAqIEByZXR1 cm4gVmlld2Vy
Um93DQoJICovDQoJcHJpdmF0ZSBWaWV3ZXJSb3cgY3JlYXRlTmV3Um93UGFy dChWaWV3ZXJS
b3cgcGFyZW50LCBpbnQgc3R5bGUsIGludCByb3dJbmRleCkgew0KCQlpZiAo cGFyZW50ID09
IG51bGwpIHsNCgkJCWlmIChyb3dJbmRleCA+PSAwKSB7DQoJCQkJcmV0dXJu IGdldFZpZXdl
clJvd0Zyb21JdGVtKG5ldyBHcmlkSXRlbShncmlkLCBzdHlsZSwgcm93SW5k ZXgpKTsNCgkJ
CX0NCgkJCXJldHVybiBnZXRWaWV3ZXJSb3dGcm9tSXRlbShuZXcgR3JpZEl0 ZW0oZ3JpZCwg
c3R5bGUpKTsNCgkJfQ0KDQoJCWlmIChyb3dJbmRleCA+PSAwKSB7DQoJCQly ZXR1cm4gZ2V0
Vmlld2VyUm93RnJvbUl0ZW0obmV3IEdyaWRJdGVtKChHcmlkSXRlbSkgcGFy ZW50LmdldEl0
ZW0oKSwNCgkJCQkJU1dULk5PTkUsIHJvd0luZGV4KSk7DQoJCX0NCg0KCQly ZXR1cm4gZ2V0
Vmlld2VyUm93RnJvbUl0ZW0obmV3IEdyaWRJdGVtKChHcmlkSXRlbSkgcGFy ZW50LmdldEl0
ZW0oKSwNCgkJCQlTV1QuTk9ORSkpOw0KCX0NCg0KCUBPdmVycmlkZQ0KCXBy b3RlY3RlZCB2
b2lkIHJlbW92ZUFsbChDb250cm9sIGNvbnRyb2wpIHsNCgkJKChHcmlkKSBj b250cm9sKS5y
ZW1vdmVBbGwoKTsNCgl9DQoNCglAT3ZlcnJpZGUNCglwcm90ZWN0ZWQgdm9p ZCBzZXRFeHBh
bmRlZChJdGVtIGl0ZW0sIGJvb2xlYW4gZXhwYW5kKSB7DQoJCSgoR3JpZEl0 ZW0paXRlbSku
c2V0RXhwYW5kZWQoZXhwYW5kKTsNCgl9DQoNCglAT3ZlcnJpZGUNCglwcm90 ZWN0ZWQgdm9p
ZCBzZXRTZWxlY3Rpb24oTGlzdCBpdGVtcykgew0KCQlJdGVtW10gY3VycmVu dCA9IGdldFNl
bGVjdGlvbihnZXRHcmlkKCkpOw0KDQoJCS8vIERvbid0IGJvdGhlciByZXNl dHRpbmcgdGhl
IHNhbWUgc2VsZWN0aW9uDQoJCWlmIChpc1NhbWVTZWxlY3Rpb24oaXRlbXMs IGN1cnJlbnQp
KSB7DQoJCQlyZXR1cm47DQoJCX0NCg0KCQlHcmlkSXRlbVtdIG5ld0l0ZW1z ID0gbmV3IEdy
aWRJdGVtW2l0ZW1zLnNpemUoKV07DQoJCWl0ZW1zLnRvQXJyYXkobmV3SXRl bXMpOw0KCQln
ZXRHcmlkKCkuc2V0U2VsZWN0aW9uKG5ld0l0ZW1zKTsNCgl9DQoNCglAT3Zl cnJpZGUNCglw
cm90ZWN0ZWQgdm9pZCBzaG93SXRlbShJdGVtIGl0ZW0pIHsNCgkJZ2V0R3Jp ZCgpLnNob3dJ
dGVtKChHcmlkSXRlbSkgaXRlbSk7DQoJCQ0KCX0NCg0KCUBPdmVycmlkZQ0K CXB1YmxpYyBD
b250cm9sIGdldENvbnRyb2woKSB7DQoJCXJldHVybiBnZXRHcmlkKCk7DQoJ fQ0KDQoJQE92
ZXJyaWRlDQoJcHJvdGVjdGVkIFZpZXdlclJvdyBnZXRWaWV3ZXJSb3dGcm9t SXRlbShXaWRn
ZXQgaXRlbSkgew0KCQlpZiggY2FjaGVkUm93ID09IG51bGwgKSB7DQoJCQlj YWNoZWRSb3cg
PSBuZXcgR3JpZFZpZXdlclJvdygoR3JpZEl0ZW0pIGl0ZW0pOw0KCQl9IGVs c2Ugew0KCQkJ
Y2FjaGVkUm93LnNldEl0ZW0oKEdyaWRJdGVtKSBpdGVtKTsNCgkJfQ0KCQkN CgkJcmV0dXJu
IGNhY2hlZFJvdzsNCgl9DQoNCglAT3ZlcnJpZGUNCglwcm90ZWN0ZWQgV2lk Z2V0IGdldENv
bHVtblZpZXdlck93bmVyKGludCBjb2x1bW5JbmRleCkgew0KCQlpZiAoY29s dW1uSW5kZXgg
PCAwIHx8ICggY29sdW1uSW5kZXggPiAwICYmIGNvbHVtbkluZGV4ID49IGdl dEdyaWQoKS5n
ZXRDb2x1bW5Db3VudCgpICkgKSB7DQoJCQlyZXR1cm4gbnVsbDsNCgkJfQ0K DQoJCWlmIChn
ZXRHcmlkKCkuZ2V0Q29sdW1uQ291bnQoKSA9PSAwKS8vIEhhbmcgaXQgb2Zm IHRoZSB0YWJs
ZSBpZiBpdA0KCQkJcmV0dXJuIGdldEdyaWQoKTsNCg0KCQlyZXR1cm4gZ2V0 R3JpZCgpLmdl
dENvbHVtbihjb2x1bW5JbmRleCk7DQoJfQ0KDQoJQE92ZXJyaWRlDQoJcHJv dGVjdGVkIGlu
dCBkb0dldENvbHVtbkNvdW50KCkgew0KCQlyZXR1cm4gZ3JpZC5nZXRDb2x1 bW5Db3VudCgp
Ow0KCX0NCg0KfQ==
--------------010702030308040407080708--
Previous Topic:dynamic number of columns in CompositeTable
Next Topic:GridTreeViewer
Goto Forum:
  


Current Time: Thu Apr 25 11:03:34 GMT 2024

Powered by FUDForum. Page generated in 0.02826 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top