Search Results

Search found 28389 results on 1136 pages for 'visual studio 2008 ide'.

Page 407/1136 | < Previous Page | 403 404 405 406 407 408 409 410 411 412 413 414  | Next Page >

  • Project Time Tracker

    - by Geertjan
    Based on yesterday's blog entry, let's do something semi useful and display, in the project popup, which is available when you right-click a project in the Projects window, the time since the last change was made anywhere in the project, i.e., we can listen recursively to any changes done within a project and then update the popup with the newly acquired information, dynamically: import java.awt.event.ActionEvent; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Collection; import java.util.List; import javax.swing.AbstractAction; import org.netbeans.api.project.Project; import org.netbeans.api.project.ProjectUtils; import org.openide.awt.ActionID; import org.openide.awt.ActionReference; import org.openide.awt.ActionRegistration; import org.openide.awt.StatusDisplayer; import org.openide.filesystems.FileAttributeEvent; import org.openide.filesystems.FileChangeListener; import org.openide.filesystems.FileEvent; import org.openide.filesystems.FileRenameEvent; import org.openide.util.Lookup; import org.openide.util.LookupEvent; import org.openide.util.LookupListener; import org.openide.util.Utilities; import org.openide.util.WeakListeners; @ActionID( category = "Demo", id = "org.ptt.TrackProjectSelectionAction") @ActionRegistration( lazy = false, displayName = "NOT-USED") @ActionReference( path = "Projects/Actions", position = 0) public final class TrackProjectSelectionAction extends AbstractAction implements LookupListener, FileChangeListener { private Lookup.Result<Project> projects; private Project context; private Long startTime; private Long changedTime; private DateFormat formatter; private List<Project> timedProjects; public TrackProjectSelectionAction() { putValue("popupText", "Timer"); formatter = new SimpleDateFormat("HH:mm:ss"); timedProjects = new ArrayList<Project>(); projects = Utilities.actionsGlobalContext().lookupResult(Project.class); projects.addLookupListener( WeakListeners.create(LookupListener.class, this, projects)); resultChanged(new LookupEvent(projects)); } @Override public void resultChanged(LookupEvent le) { Collection<? extends Project> allProjects = projects.allInstances(); if (allProjects.size() == 1) { Project currentProject = allProjects.iterator().next(); if (!timedProjects.contains(currentProject)) { String currentProjectName = ProjectUtils.getInformation(currentProject).getDisplayName(); putValue("popupText", "Start Timer for Project: " + currentProjectName); StatusDisplayer.getDefault().setStatusText( "Current Project: " + currentProjectName); timedProjects.add(currentProject); context = currentProject; } } } @Override public void actionPerformed(ActionEvent e) { refresh(); } protected void refresh() { startTime = System.currentTimeMillis(); String formattedStartTime = formatter.format(startTime); putValue("popupText", "Timer started: " + formattedStartTime + " (" + ProjectUtils.getInformation(context).getDisplayName() + ")"); } @Override public void fileChanged(FileEvent fe) { changedTime = System.currentTimeMillis(); formatter = new SimpleDateFormat("mm:ss"); String formattedLapse = formatter.format(changedTime - startTime); putValue("popupText", "Time since last change: " + formattedLapse + " (" + ProjectUtils.getInformation(context).getDisplayName() + ")"); startTime = changedTime; } @Override public void fileFolderCreated(FileEvent fe) {} @Override public void fileDataCreated(FileEvent fe) {} @Override public void fileDeleted(FileEvent fe) {} @Override public void fileRenamed(FileRenameEvent fre) {} @Override public void fileAttributeChanged(FileAttributeEvent fae) {} } Some more work needs to be done to complete the above, i.e., for each project you somehow need to maintain the start time and last change and redisplay that whenever the user right-clicks the project.

    Read the article

  • Advanced Experiments with JavaScript, CSS, HTML, JavaFX, and Java

    - by Geertjan
    Once you're embedding JavaScript, CSS, and HTML into your Java desktop application, via the JavaFX browser, a whole range of new possibilities open up to you. For example, here's an impressive page on-line, notice that you can drag items and drop them in new places: http://nettuts.s3.amazonaws.com/127_iNETTUTS/demo/index.html The source code of the above is provided too, so you can drop the various files directly into your NetBeans module and use the JavaFX WebEngine to load the HTML page into the JavaFX browser. Once the JavaFX browser is in a NetBeans TopComponent, you'll have the start of an off-line news composer, something like this: WebView view = new WebView(); view.setMinSize(widthDouble, heightDouble); view.setPrefSize(widthDouble, heightDouble); webengine = view.getEngine(); URL url = getClass().getResource("index.html"); webengine.load(url.toExternalForm()); webengine.getLoadWorker().stateProperty().addListener( new ChangeListener() { @Override public void changed(ObservableValue ov, State oldState, State newState) { if (newState == State.SUCCEEDED) { Document document = (Document) webengine.executeScript("document"); NodeList list = document.getElementById("columns").getChildNodes(); for (int i = 0; i < list.getLength(); i++) { EventTarget et = (EventTarget) list.item(i); et.addEventListener("click", new EventListener() { @Override public void handleEvent(Event evt) { instanceContent.add(new Date()); } }, true); } } } }); The above is the code showing how, whenever a news item is clicked, the current date can be published into the Lookup. As you can see, I have a viewer component listening to the Lookup for dates.

    Read the article

  • Restoring OutlineView Changes

    - by Geertjan
    Spent the last afternoons working with Ruben Hinojo, who I met recently at the Tinkerforge/NetBeans integration course in Germany. He's Spanish, lives in Scotland, and joined the course by flying from Edinburgh to Amsterdam and then driving from there to the course in Germany. Since then he spent some days in Amsterdam and we've been working a bit in a cafe in Amsterdam. He's working freelance on a freight management system on the NetBeans Platform and here's a pic of him and his application: I showed him a few things to improve the initial appearance of the application, such as removing the unneeded tab in the editor position and displaying data at startup so that the main window isn't empty initially. He, in turn, told me about something I didn't know about, where "freightViewer" below is an OutlineView: void writeProperties(java.util.Properties p) {     // better to version settings since initial version as advocated at     // http://wiki.apidesign.org/wiki/PropertyFiles     p.setProperty("version", "1.0");     freightViewer.writeSettings(p, "FreightViewer"); } void readProperties(java.util.Properties p) {     String version = p.getProperty("version");     freightViewer.readSettings(p, "FreightViewer"); } The "OutlineView.read/writeSettings" enables you to save/restore changes to an OutlineView, e.g., column width, column position, and which columns are displayed/hidden. In the user dir, within the .settings file of the TopComponent (in config/Windows2Local/Components), you'll then find content like this, where the "FreightViewer" argument above is now the prefix of the name of each property element: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE properties PUBLIC "-//org.ruben.viewer//RubenViewer//EN" "http://www.netbeans.org/dtds/properties-1_0.dtd"> <properties>     <property name="FreightViewerOutlineViewOutlineColumn-1-shortDescription" value="Type"/>     <property name="FreightViewerETableColumn-1-HeaderValue" value="Type"/>     <property name="FreightViewerColumnsNumber" value="3"/>     <property name="FreightViewerETableColumn-0-PreferredWidth" value="75"/>     <property name="FreightViewerETableColumn-2-HeaderValue" value="Description"/>     <property name="version" value="1.0"/>     <property name="FreightViewerETableColumn-2-SortRank" value="0"/>     <property name="FreightViewerETableColumn-2-Width" value="122"/>     <property name="FreightViewerETableColumn-0-ModelIndex" value="0"/>     <property name="FreightViewerETableColumn-1-Width" value="123"/>     <property name="FreightViewerHiddenColumnsNumber" value="0"/>     <property name="FreightViewerETableColumn-0-SortRank" value="0"/>     <property name="FreightViewerETableColumn-1-ModelIndex" value="1"/>     <property name="FreightViewerETableColumn-1-PreferredWidth" value="75"/>     <property name="FreightViewerETableColumn-0-Ascending" value="true"/>     <property name="FreightViewerETableColumn-2-ModelIndex" value="2"/>     <property name="FreightViewerETableColumn-1-Ascending" value="true"/>     <property name="FreightViewerETableColumn-2-PreferredWidth" value="75"/>     <property name="FreightViewerETableColumn-1-SortRank" value="0"/>     <property name="FreightViewerETableColumn-0-HeaderValue" value="Nodes"/>     <property name="FreightViewerETableColumn-2-Ascending" value="true"/>     <property name="FreightViewerETableColumn-0-Width" value="122"/>     <property name="FreightViewerOutlineViewOutlineColumn-2-shortDescription" value="Description"/> </properties> NB: However, note as described in this issue, i.e., since 7.2, hiding a column isn't persisted and in fact causes problems. I replaced the org-openide-explorer.jar with a previous one, from 7.1.1, and then the problem was solved. But now the enhancements in the OutlineView since 7.2 are no longer present, of course. So, looking forward to seeing this problem fixed.

    Read the article

  • Finding the try for an except or finally [migrated]

    - by ?s?
    I'm dealing with some code that has fantastically long methods (10k lines!) and some odd use of try-finally and try-except blocks. Some of the latter are long by themselves, and don't always have the try at the start of the method. Obviously I'm trying to refactor the code, but in the meantime just being able to fix a couple of common pathologies would be much easier if I could jump to the start of a block and see what is happening there. When it's 20+ pages away finding it even with the CNPack rainbows is just tedious. I'm using D2010 and have GExperts (with DelForExp), CNPack and DDevExtensions installed, but I can't find anything that lets me jump from the try to the finally or back. Am I missing something? Is there another add-in that I can use that will get me this?

    Read the article

  • NASCIO Award for NetBeans Platform Legislative Software

    - by Geertjan
    Two days ago, 23 October 2012, the Kansas Legislative Information System and Services (KLISS) was awarded the 2012 NASCIO Award for Open Government at the NASCIO annual State IT Recognition awards. KLISS is developed by Propylon in partnership with the executive and legislative branches of the Kansas Government involving a complete overhaul of the Legislature's IT systems. This video gives an overview of the system: In other good news, Propylon has recently announced that it will work with the Indiana Legislative Services Agency to implement a complete Legislative Enterprise Architecture. For details on the NetBeans Platform angle to all this, in addition to watching the movie above, see Legislative Software on NetBeans. And note that Java developers with NetBeans Platform experience are welcome to apply to work at Propylon. And congratulations to the Propylon team!

    Read the article

  • Viewing the NetBeans Central Registry (Part 2)

    - by Geertjan
    Jens Hofschröer, who has one of the very best NetBeans Platform blogs (if you more or less understand German), and who wrote, sometime ago, the initial version of the Import Statement Organizer, as well as being the main developer of a great gear design & manufacturing tool on the NetBeans Platform in Aachen, commented on my recent blog entry "Viewing the NetBeans Central Registry", where the root Node of the Central Registry is shown in a BeanTreeView, with the words: "I wrapped that Node in a FilterNode to provide the 'position' attribute and the 'file extension'. All Children are wrapped too. Then I used an OutlineView to show these two properties. Great tool to find wrong layer entries." I asked him for the code he describes above and he sent it to me. He discussed it here in his blog, while all the code involved can be read below. The result is as follows, where you can see that the OutlineView shows information that my simple implementation (via a BeanTreeView) kept hidden: And so here is the definition of the Node. class LayerPropertiesNode extends FilterNode { public LayerPropertiesNode(Node node) { super(node, isFolder(node) ? Children.create(new LayerPropertiesFactory(node), true) : Children.LEAF); } private static boolean isFolder(Node node) { return null != node.getLookup().lookup(DataFolder.class); } @Override public String getDisplayName() { return getLookup().lookup(FileObject.class).getName(); } @Override public Image getIcon(int type) { FileObject fo = getLookup().lookup(FileObject.class); try { DataObject data = DataObject.find(fo); return data.getNodeDelegate().getIcon(type); } catch (DataObjectNotFoundException ex) { Exceptions.printStackTrace(ex); } return super.getIcon(type); } @Override public Image getOpenedIcon(int type) { return getIcon(type); } @Override public PropertySet[] getPropertySets() { Set set = Sheet.createPropertiesSet(); set.put(new PropertySupport.ReadOnly<Integer>( "position", Integer.class, "Position", null) { @Override public Integer getValue() throws IllegalAccessException, InvocationTargetException { FileObject fileEntry = getLookup().lookup(FileObject.class); Integer posValue = (Integer) fileEntry.getAttribute("position"); return posValue != null ? posValue : Integer.valueOf(0); } }); set.put(new PropertySupport.ReadOnly<String>( "ext", String.class, "Extension", null) { @Override public String getValue() throws IllegalAccessException, InvocationTargetException { FileObject fileEntry = getLookup().lookup(FileObject.class); return fileEntry.getExt(); } }); PropertySet[] original = super.getPropertySets(); PropertySet[] withLayer = new PropertySet[original.length + 1]; System.arraycopy(original, 0, withLayer, 0, original.length); withLayer[withLayer.length - 1] = set; return withLayer; } private static class LayerPropertiesFactory extends ChildFactory<FileObject> { private final Node context; public LayerPropertiesFactory(Node context) { this.context = context; } @Override protected boolean createKeys(List<FileObject> list) { FileObject folder = context.getLookup().lookup(FileObject.class); FileObject[] children = folder.getChildren(); List<FileObject> ordered = FileUtil.getOrder(Arrays.asList(children), false); list.addAll(ordered); return true; } @Override protected Node createNodeForKey(FileObject key) { AbstractNode node = new AbstractNode(org.openide.nodes.Children.LEAF, key.isFolder() ? Lookups.fixed(key, DataFolder.findFolder(key)) : Lookups.singleton(key)); return new LayerPropertiesNode(node); } } } Then here is the definition of the Action, which pops up a JPanel, displaying an OutlineView: @ActionID(category = "Tools", id = "de.nigjo.nb.layerview.LayerViewAction") @ActionRegistration(displayName = "#CTL_LayerViewAction") @ActionReferences({ @ActionReference(path = "Menu/Tools", position = 1450, separatorBefore = 1425) }) @Messages("CTL_LayerViewAction=Display XML Layer") public final class LayerViewAction implements ActionListener { @Override public void actionPerformed(ActionEvent e) { try { Node node = DataObject.find(FileUtil.getConfigRoot()).getNodeDelegate(); node = new LayerPropertiesNode(node); node = new FilterNode(node) { @Override public Component getCustomizer() { LayerView view = new LayerView(); view.getExplorerManager().setRootContext(this); return view; } @Override public boolean hasCustomizer() { return true; } }; NodeOperation.getDefault().customize(node); } catch (DataObjectNotFoundException ex) { Exceptions.printStackTrace(ex); } } private static class LayerView extends JPanel implements ExplorerManager.Provider { private final ExplorerManager em; public LayerView() { super(new BorderLayout()); em = new ExplorerManager(); OutlineView view = new OutlineView("entry"); view.addPropertyColumn("position", "Position"); view.addPropertyColumn("ext", "Extension"); add(view); } @Override public ExplorerManager getExplorerManager() { return em; } } }

    Read the article

  • Invoking JavaScript from Java

    - by Geertjan
    Here's an Action class defined in Java. The Action class executes a script via the JavaFX WebEngine: @NbBundle.Messages("CTL_AddBananasAction=Add Banana") private class AddBananasAction extends AbstractAction { public AddBananasAction() { super(Bundle.CTL_AddBananasAction()); } @Override public void actionPerformed(ActionEvent e) { Platform.runLater(new Runnable() { @Override public void run() { webengine.executeScript("addBanana(' " + newBanana + " ') "); } }); } }How does the 'executescript' call know where to find the JavaScript file? Well, earlier in the code, the WebEngine loaded an HTML file, where the JavaScript file was registered: WebView view = new WebView(); view.setMinSize(widthDouble, heightDouble); view.setPrefSize(widthDouble, heightDouble); webengine = view.getEngine(); URL url = getClass().getResource("home.html"); webengine.load(url.toExternalForm()); Finally, here's a skeleton 'addBanana' method, which is invoked via the Action class shown above: function addBanana(user){ statustext.text(user); } By the way, if you have your JavaScript and CSS embedded within your HTML file, the code navigator combines all three into the same window, which is kind of cool:

    Read the article

  • Update 3 for "NetBeans Platform for Beginners"

    - by Geertjan
    The latest monthly update of NetBeans Platform for Beginners was released during the last few days. Without any question at all, this book is awesome. I love how it is a 'living book' and that on a monthly basis new updates are made available. In this particular update, as before, reader comments and questions have led to changes and enhancements in the book. In addition, there's now a tighter integration between the long list of samples on GitHub and the book, since wherever a sample relates to a text in the book, the book has a handy icon, so that you know when to hop over to GitHub to get a related sample. Do you have comments or questions about the book? That's what the feedback link is for: https://leanpub.com/nbp4beginners/feedback And there's also a free sample, just in case you'd like to get a feel for the book prior to buying it: http://samples.leanpub.com/nbp4beginners-sample.pdf If you're from a company where you're all sharing a single copy of the book, it would be great if you'd go back and support this great project (and hopefully encourage future books being written) by buying additional copies, ideally one for each developer. Let's show the authors that writing books on the NetBeans Platform is a really profitable thing to do (and I'm hoping they'll write one on Maven and the NetBeans Platform, as well)!

    Read the article

  • Two Sessions All Humans Should Watch Right Now

    - by Geertjan
    At conferences, I definitely prefer technical sessions over any other kind of session. That's partly because I want to walk away from a conference with new libraries and APIs to play with, such as the AT&T ARO tool that I've been blogging about over the past few days thanks to being introduced to it in a great session by Doug Sillars at Oredev, in Malmo, Sweden. I only say the above to set the scene. And the scene is that I avoid sessions that deal with "agile topics" or whatever that means. I mean those sessions where you're meant to reflect on some way you're developing nothing in particular and then come away with new ways of doing that. I avoid those. Not because I don't necessarily like those or think I have nothing to learn, both of which I don't (or do, depending on how you read double negatives), but because there are so many sessions to attend that I focus on those that actually give me more technical knowledge that I can do something with immediately. Having said all that, here's two absolutely wonderful sessions (and probably many more but I really liked these two) presented at Oredev over the last few days, one by JB Rainsberger and the other by Woody Zuill, both very nice people who I met for the first time during the last few days, and who aren't paying me to promote them, and who're still struggling to figure out how to say my name. Whether you're a developer or manager or whatever you are, take this on trust, and simply watch these screencasts, hey, at most you're going to lose two hours of your life that you would've spent doing something else: Speaking for myself, I'm going to be watching both these presentations again several times in my life, that's for sure.

    Read the article

  • Should Scala IDE Worksheets be part of your open git repository?

    - by JacobusR
    Those familiar with Scala IDE will know about the great testing environment offered by the Scala Worksheet. You can scribble and scratch, much like in the REPL, but with all the goodness added by the IDE as a whole (refactoring, saving, error checking, etc). When you create a worksheet, it is created with the .sc extension, and also creates a artifact under a hidden directory called .worksheet. This is all fine and dandy, but should one include these in your public .git repositories? People who does not use Scala IDE (or older versions) may find these files confusing. On the other hand, making some of your experiments public to developers who are using Scala IDE, may give them a quick start into experimenting and learning the project.

    Read the article

  • Squibbly Update: Multiple Document Support

    - by Geertjan
    An update on Squibbly, the recently announced free and open source integration framework for LibreOffice! Now multiple documents can be opened at the same time, either from "File | Open File" or from the File Browser (i.e., the rebranded Favorites window). Click to enlarge the image below to get a fuller perspective on Squibbly: Take note of the tabs at the bottom of the editor-area in the screenshot above, and especially when you click the image to enlarge it. Multiple tabs are available at the same time, each representing a different open document. Click a different tab and its document is activated and brought to the front of the application. That means multiple LibreOffice applications can be used simultaneously, each could be undocked from the frame of the application, and the user can work with multiple documents, from multiple LibreOffice applications, all at the same time. Info from this forum entry were useful in getting to the above solution: http://www.oooforum.org/forum/viewtopic.phtml?t=41955 Still several focus-related problems to solve for the application to be ready for general usage.

    Read the article

  • Develop for Desktop and Mobile at once

    - by Hola Soy Edu Feliz Navidad
    I need to develop a programm that is going to read some information from a special USB device and access information via Web Socket (socket.io preferred). My client wants to deploy this app on Mac OS X, Windows, Android and iOS. I was looking for development softwares valid for both: Desktop and Mobile, but it is still not clear for me and that´s what I found. Unity - Looks very good but to create a native plugin for reading from the device it lloks like I need the PRO edition. Adobe Air - Looks good but I´m not sure if I can write Native Plugins for all wanted platforms. LiveCode - Still inmature (lots of bugs) and I don´t know if it is possible to write native plugins for my device. Is there any other good platform for my case? What´s your option?

    Read the article

  • AgroSense in Java Magazine November/December 2012

    - by Geertjan
    AgroSense, the Duke's Choice Award winning open source farm management system from the Netherlands, is featured in the hot-off-the-presses latest edition of the always awesome Java Magazine (November/December 2012): Read the whole article after subscribing for free to the magazine, via clicking the image above or by clicking this link. Note: If you're reading this and your sofware organization is doing anything at all that relates to farm management, consider porting your software to an AgroSense plugin. That would save you an immense amount of time and your users will get a comprehensive farm management system out of the box. Don't reinvent the wheel: create your farm management software on top of the AgroSense Platform!

    Read the article

  • Microsoft Visual Studio 2010: Turn Ideas into Solutions

    Explore upcoming webcasts on Microsoft Visual Studio 2010 as we explain how the development system can help you simplify the entire development process and deliver better applications. Learn about Visual Studio Team Foundation Server code management tasks, creating rich user experiences with Microsoft Silverlight, debugging features and capabilities, and working with Microsoft SharePoint Server 2010....Did you know that DotNetSlackers also publishes .net articles written by top known .net Authors? We already have over 80 articles in several categories including Silverlight. Take a look: here.

    Read the article

  • Screencast: "Unlocking the Java EE Platform with HTML5"

    - by Geertjan
    The Java EE platform aims to increase your productivity and reduce the amount of scaffolding code needed in Java enterprise applications. It encompasses a range of specifications, such as JPA, EJB, JSF, and JAX-RS. How do these specifications fit together in an application, and how do they relate to each other? And how can HTML5 be used to leverage Java EE? In this recording of a session I did last week at Oredev in Malmo, Sweden, you learn how Java EE works and how it can be integrated with HTML5 front ends, via HTML, JavaScript, and CSS.

    Read the article

  • Inputting Visual Extras in Your Webpage and SEO

    If you or your SEO consultant plan on having a successful website that is ranked high and recognized by search engines and crawlers, make sure that you review the below points to different visual extras that may be put into your website and possibly affect its rating. It's good Search Engine Optimization to have an attractive website, however, too many, and in some cases, any of these visual extras may actually hurt your website.

    Read the article

  • Install Visual Studio 2010 on SSD drive, or HDD for better performance?

    - by Steve
    I'm going to be installing Visual Studio 2010. I already have my source code on the SSD. For best performance, especially time to open the solution and compiling time, would it be better to install VS 2010 on the SSD or install it on the HDD. If both were on the SSD, loading the VS 2010 files would be quicker, but there would be contention between loading the source and the program files. Thanks!

    Read the article

  • Tissue Specific Electrochemical Fingerprinting on the NetBeans Platform

    - by Geertjan
    Proteomics and metalloproteomics are rapidly developing interdisciplinary fields providing enormous amounts of data to be classified, evaluated, and interpreted. Approaches offered by bioinformatics and also by biostatistical data analysis and treatment are therefore becoming increasingly relevant. A bioinformatics tool has been developed at universities in Prague and Brno, in the Czech Republic, for analysis and visualization in this domain, on the NetBeans Platform: More info:  http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0049654

    Read the article

< Previous Page | 403 404 405 406 407 408 409 410 411 412 413 414  | Next Page >