Getting to Know the IDE
In this video , you’ll learn: What a workspace is, how to create a workspace, how to switch workspaces, what a perspective is, how to add a new perspective to the IDE, how to re-arrange tabs and much more.
Thank you for joining me for this video, getting to know the Servoy IDE, for Servoy University I’m Bob Cusick. The first time you launch Servoy, you’ll see this large welcome screen. To get rid of the welcome screen and to see the actual development environment, click the Close box. This is the main development environment, and we’ll talk about this in more detail in just one minute. But first I wanted to explain to you how the files are stored during the development process. All of the files are stored in what’s called a workspace. A workspace is simply a special folder on your hard drive, and all of your solutions are stored there, all of your scripts, all of the forms, everything that makes up your Servoy solution is stored in this workspace. In my installation, I created the install of Servoy on the root of my C drive. By default, it goes into your C program files. Likewise, I created a brand new workspace called the Servoy University workspace, again, at the top level of the C drive. It does not have to be at the top level of your hard drive. It can be any place. So to make a new workspace, simply create a new folder. So I’m going to make a new folder here. I’m going to call it Bob Test workspace. And that’s all there is to it. Once you’re back in Servoy developer, to change your workspace, simply come up to the file menu and choose workspace. Then choose other. Here it shows you the default workspace that you’re currently using. To specify a different one, simply click the Browse button. And navigate to the folder that you want to use. Here in this case, we’re going to use Bob Test workspace. Then click OK. Once you click OK, so it will automatically restart. Because your workspace folder is empty, Servoy thinks this is the first time you’ve come into the program and all you’ve done is change your workspace. So again, you see the welcome and you can get rid of it using the Xbox. All right. That’s enough about workspaces for now. Let’s talk about the actual IDE itself. Here you’ll see a number of different sections. On the far left is the Solution Explorer. There’s a tree that you can use to navigate your whole solution. On the bottom, there are various tabs about problems, bookmarks, classic search, search, tasks, and profiler view, which we’ll talk about in greater detail later. And then on the right hand side, there’s an outline view and a properties view. Now the great thing about the Servoy IDE and Eclipse in general is the fact that you can reconfigure all of these windows and sections to be anything that makes sense to you. You can also have different perspectives. Right now, as you can see, we’re in the Servoy design perspective. However, it’s easy to add different perspectives for team sharing, for debugging, and other things that you may want to do during your development cycle. It’s really easy to add a perspective. Simply click the plus button, choose other, and then you’ll see a dialog box of the different perspectives that you can use. The one that we’re going to add is called Debug. You’ll use the Debug perspective when you’re working with your methods. To add the Debug perspective, simply click it and then click OK. And now you see we have two different perspectives. We have the Debug perspective and the Servoy design perspective. To switch between them, just click. You can also hide the words so you just have the icons there, which I like to do. To do that, simply right click on the plus button and uncheck Show text. Now you’ll have just the little icons. As I mentioned before, it’s easy to change in resize objects and you can even change window locations. So let’s go to our Debug perspective. And now I’m going to rearrange these windows. So for example, I can take this outline view and bring it to the top. So now I have all of these controls together. I can also take something like variables, for example. Click and hold and drag it to the outside. And you’ll see a preview of where it’s going to be when you let go of the mouse. So here I have the variables going all the way up and down the screen. I’m going to do the same thing for the break points. I’m going to drag those over here. I’m going to drag my expressions over here. And I’m going to drag my outline view over here. And finally, I’m going to take my interactive console and drag it over here as well. So now we have a customized perspective. And this can be customized however you like it, whatever makes sense to you. If you do something that’s too crazy and you want to get it back to the way it was originally, you can do that too. Go to the Window menu and choose Reset Perspective. It’ll make sure that you want to reset the debug perspective for the defaults. Click OK. And now everything is back the way it was. Now that we’re back in the design perspective, let’s talk for a minute about preferences. Depending on the platform that you’re on, choose preferences. They can either be under the Servoy Developer menu on Mac OS or here on Windows 7, it’s under the Window menu. Preferences. Now, there’s lots of preferences that you can set in Eclipse. Everything from languages and help and JavaScript coloring. But the one that I’m going to take a look at in this video is the Servoy Preferences. So here we have the Servoy Designer. And you can set things like the grid size and the grid point size and the color and whether you want to show or snap to it. There’s a guide size when you duplicate objects and copy and paste offset. You can have different kinds of metrics or units of measure. The default is pixels. In the Developer, there’s the new Run-Serve-Boy application server with enhanced security. This was introduced in Servoy 5.2. You also have options for I-18-N or Internationalization. A services section where you can make sure that the web server is running and you can set the HTTP port and the RMI port as well. These commands are command lines that are run when the application is first started up. You can see there’s a startup launcher and a shutdown launcher. And right now those are starting up and shutting down the Postgres database. So I would encourage you to explore these preferences on your own. There’s lots of great stuff in here. Next, let’s take a look at the Solution Explorer. This is the main navigational area here on the left-hand side. Starting at the top we have the Resources node. And under the Resources node we have database servers. And if you click on database servers and expand them, you’ll see all of the named database connections that are currently existing. There’s also a Styles node, User and Group Security, I-18-N or Internationalization files, and Templates. You’ll see a list of all of your solutions that you have checked out into your current workspace. Right now I don’t have any. Followed by the name of the Active Solution and then a JavaScript library or JS lib. The JS lib node contains all of the common JavaScript functions that you will need during your development. For example arrays and dates and strings, numbers, math, regular expressions, their statements, special operators, and XML. After the JS lib is the application node. Inside the application node are all of the functions that you have available to you that can get and set information about the environment. So you can see how many active clients there are, you can beep. All of the things that have to do with the system are found under the application node. If you expand the application node, you’ll see that there are application constants. There’s a JS event and a UUID set of functions. We’ll get more into what those mean in a future video. After the application, you have the Solution Model node. The Solution Model node is used for creating objects on the fly at one time. Anything that you create inside of the Servoyian Developer IDE, you can also create at runtime. That includes fields, valuables, relationships, forms, anything that you can do in the IDE, you can do at runtime using the Solution Model. Next is the Database Manager node. If you want to interact directly with the database to do your own queries or execute stored procedures, or any of those kinds of things where you’re dealing with data directly on the back end, database manager is where you would go for those kinds of commands. Next is a UTILs node, and this is made for commonly used functions, date formatting, string formatting, all of those kinds of things. There’s a History object. So, if you’re a solution contains lots of different forms, you can easily go backwards and forwards using the History object. During runtime, this History object is also populated, so you can programmatically have a Back button and a Forward button for your users to navigate with. The next node is the Security node. You can control all of the security settings just as if you could use the Graphical User Interface to build all of the permissions, users, groups, passwords, assigning users to groups, setting, visible, and accessible options for options. For objects on forms, you can do that programmatically using the Security node. Next we have IATN or Internationalization. This is the node that you’ll use when you want to make your Solutions multilingual. Next we have the Servoy Exception node. The Servoy Exception node allows you to have a single method or a single place where you can do all of your error checking. During this series, we’ll show you how to use this node and how to maximize your error checking. Next we have the JS Unit node and the JS Unit node allows you to build automated testing into your solution. Then here at the bottom is the Plugins node. And the Plugins node once you expand that, you’ll see all of the Plugins that come with Servoy. And there’s quite a lot of them. So there’s Agent Amortization Dialogues, Excel Export, a file plug-in that allows you to interact with the local files. To add folders, add files, choose files, etc. There’s a headless client plug-in that allows you to start up or manage a headless client session. An HTTP plug-in that allows you to post and get forms from the Internet. There’s an images plug-in that allows you to get the contents of an image and to resize them to make thumbnails etc. There’s a full SMTP mail plug-in, so you can actually send mail out of the server. And you can send mail out of different accounts. You can programmatically log into different named user accounts on different servers. So you can do both pop and SMTP. So that means you can get and receive email into your solution. Scrolling down a bit here, we have the Maintenance plug-in. Maintenance plug-in allows you to do things that you could do on the server side. So you can send messages to clients, you can get the number of connected clients, etc. Then there’s the PDF output plug-in. This is a very powerful plug-in that lets you do a PDF output from any form. There’s a raw SQL plug-in that will execute any SQL that you pass to it. So you can create tables, you can drop tables. Needless to say, you should use that with care. But if you want to interact with straight SQL against your database, you can do it easily with the raw SQL plug-in. The next plug-in is the scheduler. The scheduler will do what’s called a cron job or a time job. You can set up as many timed jobs as you want and they can run whatever method you want at any interval that you want. This is really handy when you’re building something like a batch processor that will run on the server and move data in between tables or check for some of the different checks for certain conditions to be true or false. It’s very, very helpful if you’re building that type of application. Next you have the serialized plug-in. This will allow you to serialize objects out to JSON and take JSON files and read them in. Spell checking, pretty self-explanatory. You have a text export, have a UDP plug-in. A UDP plug-in allows you to send messages to individual clients by their IP address. So if you want to do a simple text or a chat application, that’s where you can use UDP. There’s the window plug-in that allows you to do various things within a window itself. So you can set it to full screen, remove the tool bars, get tool bars, set your menus, all kinds of interesting things you can do with the window menu. And finally, there’s the XML reader and it does just what you’d expect it to do. Well, that’s about it for the overview of getting to know the Servoy IDE. Thank you for watching.