This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | Integrate editor status bar with IDE status bar | ||
---|---|---|---|
Product: | editor | Reporter: | mvinar <mvinar> |
Component: | -- Other -- | Assignee: | issues@editor <issues> |
Status: | RESOLVED FIXED | ||
Severity: | blocker | ||
Priority: | P1 | ||
Version: | 3.x | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | ENHANCEMENT | Exception Reporter: | |
Bug Depends on: | 35659 | ||
Bug Blocks: | 209259, 35736 |
Description
mvinar
2003-08-21 10:57:42 UTC
For basic status info, there's not much to this. For the various sections the editor maintains, that's probably more work. But in order to implement other proposals, we need to implement a status API of some sort anyway. Such an API should be reasonably straightforward, though. Off the top of my head, something like: register by: StatusProviderRegistry.getDefault().registerProvider ("someName", MyStatusProvider) StatusProviderRegistry.getDefault().setStatus("some status"); [no doubt someone will want to make this XML. Actually this would be useful as it would allow for display ordering using XML layer ordering constraints] public interface StatusProvider { /** Set the status. Most implementations will simply use Strings, but an implementation that does something more complex (such as display progress of a long-running process) may want to use other objects */ public void setStatus (Object o); public Component getStatusComponent(); //maybe include some event listener stuff so component //can indicate when it should be removed. //also perhaps require an event be fired on an update, //so some sort of auto-hiding of long-unused status //components could be automated } public abstract class StatusProviderRegistry { public void getDefault() { //find an instance } public StatusProvider getStatusProvider(String name) { //fetch it from a hashmap, XML. a remote EJB or //whatever } public StatusProvider registerStatusProvider(String name, StatusProvider someProvider) { //etc... } } Hack factor: 1 Difficulty: 4 (needs new API) Already integrated. |