From: SourceForge.net <no...@so...> - 2009-07-31 10:56:05
|
Plugin Bugs item #2829000, was opened at 2009-07-29 17:00 Message generated for change (Settings changed) made by shlomy You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=2829000&group_id=588 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None >Status: Closed >Resolution: Fixed Priority: 5 Private: No Submitted By: Bertalan Fodor (fodber) Assigned to: Shlomy Reinstein (shlomy) Summary: MyDoggy doesn't send DockableWindowUpdate messages Initial Comment: If I use the MyDoggy dockable framework, then DockableWindowUpdate ACTIVATE and DEACTIVE messages are not sent to the EditBus. ---------------------------------------------------------------------- >Comment By: Shlomy Reinstein (shlomy) Date: 2009-07-31 13:56 Message: Fixed in SVN rev. 15829. (In MyDoggyPlugin) ---------------------------------------------------------------------- Comment By: Bertalan Fodor (fodber) Date: 2009-07-31 09:17 Message: I beleive it is a synchronization/threading question... If the PDF viewer dockable is created asynchronously to loading the buffer and sending the BufferUpdate.LOADED message, then the PDF will be loaded automatically only if the dockable is accidentally created before the buffer load. ---------------------------------------------------------------------- Comment By: Shlomy Reinstein (shlomy) Date: 2009-07-30 22:34 Message: I tried this scenario, and seems to me that it worked fine... ---------------------------------------------------------------------- Comment By: Bertalan Fodor (fodber) Date: 2009-07-30 22:31 Message: Well, it won't break, certainly. See in the previous comment: - open a LilyPond file, process it, open and dock the PDF preview. The PDF appears - restart jEdit - the PDF should be automatically displayed ---------------------------------------------------------------------- Comment By: Shlomy Reinstein (shlomy) Date: 2009-07-30 20:54 Message: I just tried LilyPondTool with MyDoggyPlugin, and it seems to be working fine without the EditBus messages from the DockableWindowManager. Can you show a scenario where it doesnt? ---------------------------------------------------------------------- Comment By: Bertalan Fodor (fodber) Date: 2009-07-30 13:15 Message: Yes. http://lily4jedit.svn.sourceforge.net/viewvc/lily4jedit/trunk/LilyPondTool/src/lilytool/pdf/dockable/DockablePdfViewer.java Actually I'm waiting for the DockableWindowUpdate.ACTIVATED message :) Some example scenarios: 1. jEdit opens -> the dockable window should the current buffer 2. Have 2 buffers opened. Buffer1 is displayed in the dockable. Hide the dockable, change to buffer2, show the dockable -> the dockable should automatically display buffer2. So I need a message before the dockable window's paint method is called. ---------------------------------------------------------------------- Comment By: Shlomy Reinstein (shlomy) Date: 2009-07-30 13:08 Message: Can you be more specific - which EditBus messages are you expecting? And is this different between MyDoggy and the core docking framework? As far as I know both use lazy instantiation - they do not create the dockable panel until it is first used. Also, is your plugin source code available in SVN? Perhaps I can check it myself to see all the problems? ---------------------------------------------------------------------- Comment By: Bertalan Fodor (fodber) Date: 2009-07-30 12:40 Message: I've got another serious problem with that: the dockable window doesn't get the startup messages. I do need to do some activity right after the initial view and buffers opened. But it seems that the dockable window doesn't get any message that it is now visible. ---------------------------------------------------------------------- Comment By: Bertalan Fodor (fodber) Date: 2009-07-30 12:08 Message: Yes, the notification would be better, but if the dockableWindowVisible is working, then I could live with them. My only problem is about more than one instance, but that's a separate story. ---------------------------------------------------------------------- Comment By: Shlomy Reinstein (shlomy) Date: 2009-07-30 12:03 Message: That's what I was about to offer, but then I realized that this is not a state check, but rather an event notification that is needed here. ---------------------------------------------------------------------- Comment By: Romain Francois (rfrancois) Date: 2009-07-30 11:59 Message: Are you looking for the "isDockableWindowVisible" method of the DockableWindowManager class. public abstract boolean isDockableWindowVisible(String name); ---------------------------------------------------------------------- Comment By: Bertalan Fodor (fodber) Date: 2009-07-30 11:47 Message: That's fine. I actually need to know when the dockable panel is itself visible. ---------------------------------------------------------------------- Comment By: Shlomy Reinstein (shlomy) Date: 2009-07-30 11:45 Message: In the DockableWindowManager (the core docking framework), it is very simple to know when a dockable is active. MyDoggyPlugin offers some features that make it difficult to know. During startup, there is lazy instantiation of dockables, so until the dockable contents is actually used for the first time, it can be considered inactive. But once activated the first time, there is no real "deactivation", unless the dockable is really removed, as it can be laid out in different ways with other dockables, and you can also see a "shadow preview" of the dockable without actually making it visible by hovering on its button. ---------------------------------------------------------------------- Comment By: Bertalan Fodor (fodber) Date: 2009-07-30 10:05 Message: I have a dockable PDF viewer in LilyPondTool plugin, which displays to rendered version of the current file. Opening and decoding the PDF file is resource-intensive, so I want to open only when the PDF viewer is activated or is already displayed. So I need to check for activation and deactivation of the viewer. ---------------------------------------------------------------------- Comment By: Shlomy Reinstein (shlomy) Date: 2009-07-29 17:40 Message: Do you need them for your dockables? Can you be specific on what messages you expect? MyDoggy, as well as other modern docking frameworks, are much more flexible than the jEdit core docking framework and offer many situations that are impossible in the core framework. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=565475&aid=2829000&group_id=588 |