We're working on a newer version of the plugin, and it looks like it'll be ready earlier than I expected. It's probably best to make the one-line change for now. I'll do my best to make sure the newer version is bug-free for the current fink version of everything before I release it, but that may mean bugging you guys with a couple more questions since I really don't know that much about Tk or blt.
Thanks, -Michael On Wed, Dec 9, 2009 at 4:13 PM, Jack Howarth <howa...@bromo.med.uc.edu>wrote: > Michael, > Changes that William Scott made to fink's blt for coot caused the pymol > tk interface > to get stuck with a watch cursor icon after the APBS tools window was > closed. I found > that pymol 1.1r1 didn't suffer from this problem against that blt whereas > all of the > pymol 1.2 releases did. Looking at Warren's commit... > > > http://pymol.svn.sourceforge.net/viewvc/pymol/trunk/pymol/modules/pmg_tk/startup/apbs_tools.py?r1=3748&r2=3761 > > Warren seems to have been tinkering with the line... > > #self.dialog.activate(geometry = 'centerscreenalways', globalMode = > 'nograb') > > Unfortunately, he rarely addded comments to the code changes in his commits > so it > is difficult to tell what he was trying to achieve with that. My own guess > is that > blt destablizes pymol and he was hacking around that. FYI, I think blt gets > dragged > in by Pmw. Looking at http://pmw.sourceforge.net/doc/starting.html, I > see... > > ------------- > Requirements > > Pmw.1.3 requires the _tkinter and Tkinter modules. It works with python > versions 1.5.2 and greater (tested up to 2.2.1) and Tk versions 8.0 and > greater (tested up to 8.3.2). > > If the BLT extension to Tk is present, Pmw will use the BLT busy command > during modal dialogs to display a clock cursor. Also, the Pmw.Blt interface > to the BLT busy, graph, stripchart, tabset and vector commands will be > available. BLT versions 2.4i and greater are supported (tested up to 2.4u). > You can find BLT at http://www.tcltk.com/blt/. > ------------- > So unfortunately, I don't think we can 'turn off' the blt usage in Pmw > without building > Pmw in the absence of blt. I guess this is hopeful though for the long term > support > of pymol. If only Pmw interacts directly with blt, we shouldn't have to do > anything in > pymol for blt 3.0 other than upgrade to a Pmw release which understand blt > 3.0's > interfaces. > Jack > > > On Wed, Dec 09, 2009 at 03:14:09PM -0500, Michael Lerner wrote: > > I don't call blt directly from my plugin. In fact, I don't plot anything > in > > the plugin, so unless Pmw automatically makes some blt calls for me, the > > plugin is probably blt-free. > > > > I haven't used pynmr before but it looks like you have to either compile > > something or get a precompiled binary from the web. I'd rather stick with > > pure python for the APBS Tools plugin. > > > > It looks to me like the plugin is closing PyMOL rather than crashing it > when > > I make the suggested changes under Ubuntu. > > > > -michael > > > > On Wed, Dec 9, 2009 at 12:05 PM, Jack Howarth <howa...@bromo.med.uc.edu > >wrote: > > > > > Michael, > > > Do you know if the APBS Tools plugin uses blt? I have working under > > > the assumption that these problems are a manifestation of breakage in > > > the existing blt 2.4z. Have you consider changing ABPS Tools to > > > function more like pynmr (ie open its own window instead of a dialog)? > > > I don't think I've ever seen pynmr crash pymol. > > > Jack > > > > > > On Wed, Dec 09, 2009 at 11:14:08AM -0500, Michael Lerner wrote: > > > > Hi, > > > > > > > > When I try that on my Ubuntu image, it makes it so that quitting the > > > plugin > > > > causes PyMOL to quit. > > > > > > > > I don't really know much about tk. If there's a standard way to open > / > > > > destroy the plugin, I'd be glad to change things around. As far as I > > > know, > > > > the relevant bits are > > > > > > > > def __init__(self,app): > > > > self.parent = app.root > > > > > > > > # Create the dialog. > > > > self.dialog = Pmw.Dialog(self.parent, > > > > buttons = ('Register APBS Use', > > > 'Register > > > > PDB2PQR Use', 'Set grid', 'Run APBS', 'Exit APBS tools'), > > > > title = 'PyMOL APBS Tools', > > > > command = self.execute) > > > > self.dialog.protocol('WM_DELETE_WINDOW',self.quit) > > > > self.dialog.withdraw() > > > > Pmw.setbusycursorattributes(self.dialog.component('hull')) > > > > ... > > > > self.showAppModal() > > > > > > > > def showAppModal(self): > > > > #self.dialog.activate(geometry = 'centerscreenfirst', > globalMode > > > = > > > > 'nograb') > > > > #self.dialog.activate(geometry = 'centerscreenalways', > globalMode > > > = > > > > 'nograb') > > > > #self.dialog.activate(geometry = 'centerscreenfirst') > > > > self.dialog.show() > > > > > > > > def execute(self, result, refocus=True): > > > > if result == 'Register APBS Use': > > > > ... > > > > else: > > > > # > > > > # Doing it this way takes care of clicking on the x in > the > > > top > > > > of the > > > > # window, which as result set to None. > > > > # > > > > if __name__ == '__main__': > > > > # > > > > # dies with traceback, but who cares > > > > # > > > > self.parent.destroy() > > > > else: > > > > #self.dialog.deactivate(result) > > > > global APBS_BINARY_LOCATION, APBS_PSIZE_LOCATION > > > > APBS_BINARY_LOCATION = self.binary.getvalue() > > > > APBS_PSIZE_LOCATION = self.psize.getvalue() > > > > #self.dialog.withdraw() > > > > #self.dialog.destroy() # stops CPU hogging, perhaps > fixes > > > > Ubuntu bug MGL > > > > self.quit() > > > > def quit(self): > > > > self.dialog.quit() > > > > self.parent.quit() > > > > #self.dialog.withdraw() > > > > #self.dialog.destroy() > > > > > > > > > > > > by the way, we've started a google wave about the plugin. I can add > any > > > of > > > > you that want to be on it. > > > > > > > > -michael > > > > > > > > On Sat, Dec 5, 2009 at 12:02 AM, William G. Scott < > > > > wgsc...@chemistry.ucsc.edu> wrote: > > > > > > > > > Hi Jack: > > > > > > > > > > Again, many thanks. It has been a busy day so I didn't get a > chance to > > > try > > > > > this until just now, but it fixed this highly annoying problem > > > immediately. > > > > > > > > > > I'll pass it along upstream. > > > > > > > > > > All the best, > > > > > > > > > > Bill > > > > > > > > > > > > > > > On Dec 4, 2009, at 8:25 AM, Jack Howarth wrote: > > > > > > > > > > > Bill, > > > > > > Looking through the changes in the abps_tools.py script from > > > > > > pymol 1.r1 to the current 1.2r2, I believe I've found the > offending > > > > > > code. If I revert the change... > > > > > > > > > > > > --- modules/pmg_tk/startup/apbs_tools.py.broken 2009-12-04 > > > > > 11:11:03.000000000 -0500 > > > > > > +++ modules/pmg_tk/startup/apbs_tools.py 2009-12-04 > > > > > 11:18:08.000000000 -0500 > > > > > > @@ -1124,7 +1124,7 @@ > > > > > > self.showAppModal() > > > > > > > > > > > > def showAppModal(self): > > > > > > - self.dialog.activate(geometry = 'centerscreenfirst', > > > globalMode > > > > > = 'nograb') > > > > > > + #self.dialog.activate(geometry = 'centerscreenfirst', > > > globalMode > > > > > = 'nograb') > > > > > > self.dialog.show() > > > > > > #self.dialog.activate(geometry = 'centerscreenalways') > > > > > > > > > > > > I find that the use of the ABPS tools window no longer nukes the > use > > > of > > > > > the main tk > > > > > > interface menus afterwards. You may want to update the current > > > pymol-py > > > > > package with > > > > > > that change. I haven't tested it yet but this might also solve > the > > > same > > > > > issue with > > > > > > pymol-py and the current x86_64 blt package. > > > > > > Jack > > > > > > > > > > > > > > > > > > > > > > -- > > > > Michael Lerner, Ph.D. > > > > IRTA Postdoctoral Fellow > > > > Laboratory of Computational Biology NIH/NHLBI > > > > 5635 Fishers Lane, Room T909, MSC 9314 > > > > Rockville, MD 20852 (UPS/FedEx/Reality) > > > > Bethesda MD 20892-9314 (USPS) > > > > > > > > > > > -- > > Michael Lerner, Ph.D. > > IRTA Postdoctoral Fellow > > Laboratory of Computational Biology NIH/NHLBI > > 5635 Fishers Lane, Room T909, MSC 9314 > > Rockville, MD 20852 (UPS/FedEx/Reality) > > Bethesda MD 20892-9314 (USPS) > -- Michael Lerner, Ph.D. IRTA Postdoctoral Fellow Laboratory of Computational Biology NIH/NHLBI 5635 Fishers Lane, Room T909, MSC 9314 Rockville, MD 20852 (UPS/FedEx/Reality) Bethesda MD 20892-9314 (USPS)
------------------------------------------------------------------------------ Return on Information: Google Enterprise Search pays you back Get the facts. http://p.sf.net/sfu/google-dev2dev
_______________________________________________ Fink-devel mailing list Fink-devel@lists.sourceforge.net http://news.gmane.org/gmane.os.apple.fink.devel Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-devel