4. Balise File & Projects

Since version 1.1, Balise files and data are organized according to projects. This feature is made necessary by the fact that some files (e.g. icon images files) need to be accessed at edit time by Balise and at run time when the interface is loaded in a totally different context (e.g. jar files). A project defines three directories:

Projects are set and edited using the Project menu of the edit window. It is recommended that they use the .bpr extension.

Interface definition files are standalone balise files. As compared to buoy interface files, they contain additional information, such as which widget is to be prototyped and which is not. Of course, they also contain the whole buoy interface. If you associate a project file to an interface definition file (which *strongly* recommended), then each time you save the interface, the plain buoy xml definition file will also be exported with the same name in the interfaces folder. An advantage of having buoy interfaces stored in interfaces folder is that the file name is specified in the prototyped code. The same project can be used for several interfaces, but you must have one project each time the folders where you place interfaces and images change. The trade off is that once saved project files and balise files must not be moved. If a balise file is moved, then the project must be edited so that the location of project relative to balise file is correct. If you move a project file, then edit the project to set correctly the root folder and reset the project file location in every balise file that points to this project file.