## The PLM Main Window

The PLM working environment should be self-explanatory, in particular with the tool tips appearing when your mouse is over the elements. Here is a little explanation of the components in case you fail to understand something. The main window is made of 5 main components:

- The menu: Placed on top of the window, it gives you access to some advanced commands such as exiting the program, and some other that we will detail later.
- The tool bar: Placed just below the menu, it gives you access to the four main commands:
  - The Start button, which begins the compilation and execution of the code you may have typed in the editor. At the end of the execution, it verifies whether you reach the situation constituting the objective of the exercise or not. If yes, you gain access to the next exercise using the Exercise menu. If not, you need to rework your code.
  - The Stop button allows you to interupt the execution of your code, what may reveal useful if you encounter an infinite loop.
  - The Reset button can be used to reset the world into its initial state.
  - The Demo button shows you the execution of the expected solution. During its execution, you may want to switch the seen world to see the different expected solutions.
    Please note that there is often several ways of achieving the awaited solution, and that the one presented during the demo is not more or less correct than the others. You are completely free to not follow strictly the process shown by the demo, as long as your final solution matches the exercise expectations.
- Mission and editor tabs: this is were you read this very text. This area contains several tabs to which you can access by clicking on their name on the top left. The first tab (which is always named Mission) contains a presentation of the current exercise. To solve an exercise, you need to write your code in the other tabs. For example, you can now clic on the Source Code tab to see the actual source. If it is empty, that's because you did not write any code yet.
- The console: Placed under the tabs, this is where any messages of the application will appear. This area is initially empty and white.
- World view Placed on the right of the tabs, it is constituted of five elements:
  - A scrolling menu allows to choose the world. Indeed, the program you write may be executed in several worlds to test it in differing conditions. This menu allows you to choose the world you want to see. Note that this scrolling menu is hidden if there is only one world in your exercise.
  - A slider placed right bellow allows to choose the animation speed of the world. More precisely, it allows to choose the delay (in milliseconds) that the buggles must wait after each action to allow you to see what they are doing.
  - A tab World represents the view of the world currently selected (from the scrolling menu). This view is thus constitued of a grid forming the several cells of the world, as well as several buggles awaiting for your orders.
  - An Objective tab displaying the world as it must be by the end of the exercise.
  - The interactive controls. Placed under the world view, these buttons allows you to interactively control the buggles. This way, you can try to manually bring your buggle to the scenario objective before writting the needed code in the editor.
    - A scrolling menu allows to select the buggle you want to control.
    - The Forward button let your buggle do one step forward.
    - The Backward button let it do one step backward.
    - The Turn left button ask your buggle to turn of 90° to its left.
    - The Turn right button asks the buggle to turn to the right (isn't this amazing?).
    - The Mark button requests your buggle to leave a mark behind it when it goes.