5 messages in com.perforce.perforce-user[p4] ANNOUNCE - TkP4 - P4 client GUI ...| From | Sent On | Attachments |
|---|---|---|
| Rick Macdonald | 06 Apr 2000 07:42 | |
| Thomas Quinot | 06 Apr 2000 07:59 | |
| Rick Macdonald | 06 Apr 2000 08:04 | |
| Gregg G. Wonderly | 06 Apr 2000 08:40 | |
| Rick Macdonald | 06 Apr 2000 09:07 |
| Subject: | [p4] ANNOUNCE - TkP4 - P4 client GUI for UNIX![]() |
|---|---|
| From: | Rick Macdonald (ric...@vsl.com) |
| Date: | 04/06/2000 08:04:08 AM |
| List: | com.perforce.perforce-user |
OK, it's time to confess that I've been writing TkP4, a UNIX clone of P4Win.
It's written in pure Tcl/Tk (v8.0 and newer) without any extensions required. It will therefore run on any UNIX platform that supports Tcl/Tk and the p4 command line client (which I execute to do the actual work). It's a bit nicer than many Tcl/Tk apps in that it has a tree widget, multi-column listbox, balloon help (tooltips), and some drag-and-drop (for moving files between changelists).
Here is a screenshot:
http://www.cuug.ab.ca/~macdonal/tkp4/tkp4.gif
I started development a couple of hours after they cancelled the Java client project last June or so. I was sure that a browser based GUI wouldn't be enough for our needs, and wouldn't be what p4win was. Also, p4web would be at least 6 months away.
I hesitate to announce TkP4 now, just when p4web has arrived, but I fear the disappointment voiced recently might inspire somebody to start out on their own so I felt it was time to make tkp4 known to perhaps save some duplication of effort.
Back in July I did tell two Perforce employees what I was doing, and that I would eventually share it with the Perforce community, and they thanked me for that.
I am in the middle of some changes at the moment. It's obviously a work in progress, but it's very functional and I could make a snapshot available soon. It does most of what p4win does except I haven't gotten to some major items such as integrate, resolve, jobs, and preference customization. It's based on p4win 99.1. I haven't yet done a catch-up with v99.2 features.
I purposely left integrate/resolve for last, because I just didn't get the way p4win v99.1 did things. I haven't checked out the v99.2 changes yet.
My intent all along was to first clone the basic p4win, then add macros or wizards for common multi-step tasks not supported by p4win. Hopefully I can come up with a way for prople to extend TkP4 with their own macros. So far I've just added one main one: a file rename wizard that does the branch/delete steps for you. I've added lots of minor things, some of which coincidentally have appeared in v99.2 (server history pick list, for example).
At this point I'm not looking for help with development, for largely selfish reasons: This has been a great P4 learning experience! I get very familiar with p4win as I clone it, very familiar with the command line p4 as I use it to do what needs to be done, and very familiar with general perforce depot issues as I add each feature. This is clearly a benefit for me and my employer, plus we've had use of this UNIX GUI for some time now.
Once the basics are done, sure, I hope whoever is interested and able to contribute will do so. I'll apply for a Perforce Public Depot userid soon and publish tkp4 in my guest branch.
I'm the author of a couple of other Tk open source programs: TkGnats (a GUI front-end for the GNU GNATS bug tracking system) and TkSETI (a GUI front-end for the distributed computing project for SETI, The Search for Extraterrestrial Intelligence).
http://www.cuug.ab.ca/~macdonal/tkgnats http://www.cuug.ab.ca/~macdonal/tkseti
...RickM...




