Control GUI Developer Guidelines Logo
2

Table of Contents

  • 1. Introduction
    • 1.1. Scope
    • 1.2. Definitions and Conventions
      • 1.2.1. Abbreviations and Acronyms
      • 1.2.2. Definitions
  • 2. Related Documents
    • 2.1. Applicable Documents
    • 2.2. Reference Documents
  • 3. Context of ELT Control GUIs
    • 3.1. Users
    • 3.2. Locations
      • 3.2.1. Control Room
      • 3.2.2. ELT Plateau
      • 3.2.3. GRAF/VRAF Remote operations
    • 3.3. Software Environment
  • 4. Development Stack
    • 4.1. Toolkit and Language
    • 4.2. Communication Middleware and External Libraries
    • 4.3. Tooling
  • 5. Ergonomics
    • 5.1. Visual Design
    • 5.2. Fonts
    • 5.3. Widgets Style
    • 5.4. Colour Scheme
    • 5.5. Icon and Images
  • 6. Design Guidelines
    • 6.1. Icon selection
    • 6.2. Progress and Feedback – Presentation to the user
    • 6.3. Data loss operations
    • 6.4. Desktop or Menu entry in the system
    • 6.5. Operations that involves risks
    • 6.6. Lists, Tables, and too much data
    • 6.7. The system is too complex to present it on a UI
    • 6.8. Response from a remote procedure is expensive to process
    • 6.9. What fonts and colors should I use?
    • 6.10. The design of the application includes 3D graphics. How can these be included and what considerations I should take?
    • 6.11. I need to create a new widget. How can I?
    • 6.12. What graphical design should I follow for an application?
    • 6.13. When the application is resized, all elements are fixed to coordinates.
    • 6.14. Users keep making mistakes using the application. What can I do?
    • 6.15. Keyboard shortcuts
    • 6.16. User Manual or documentation for the application
    • 6.17. Expert users
  • 7. Coding Guidelines
    • 7.1. Language Agnostic Guidelines
      • 7.1.1. Widget Names
      • 7.1.2. Application Identification
      • 7.1.3. Additional “About” Entries
      • 7.1.4. Organization of Classes
    • 7.2. Python
      • 7.2.1. Basic GUI Application
    • 7.3. C++
      • 7.3.1. New Widget, Plugin and Bindings to Python
        • 7.3.1.1. Widgets
        • 7.3.1.2. Plugin
        • 7.3.1.3. Bindings
Control GUI Developer Guidelines
  • Control GUI Developer Guidelines

Control GUI Developer Guidelines

Table of Contents

  • 1. Introduction
    • 1.1. Scope
    • 1.2. Definitions and Conventions
  • 2. Related Documents
    • 2.1. Applicable Documents
    • 2.2. Reference Documents
  • 3. Context of ELT Control GUIs
    • 3.1. Users
    • 3.2. Locations
    • 3.3. Software Environment
  • 4. Development Stack
    • 4.1. Toolkit and Language
    • 4.2. Communication Middleware and External Libraries
    • 4.3. Tooling
  • 5. Ergonomics
    • 5.1. Visual Design
    • 5.2. Fonts
    • 5.3. Widgets Style
    • 5.4. Colour Scheme
    • 5.5. Icon and Images
  • 6. Design Guidelines
    • 6.1. Icon selection
    • 6.2. Progress and Feedback – Presentation to the user
    • 6.3. Data loss operations
    • 6.4. Desktop or Menu entry in the system
    • 6.5. Operations that involves risks
    • 6.6. Lists, Tables, and too much data
    • 6.7. The system is too complex to present it on a UI
    • 6.8. Response from a remote procedure is expensive to process
    • 6.9. What fonts and colors should I use?
    • 6.10. The design of the application includes 3D graphics. How can these be included and what considerations I should take?
    • 6.11. I need to create a new widget. How can I?
    • 6.12. What graphical design should I follow for an application?
    • 6.13. When the application is resized, all elements are fixed to coordinates.
    • 6.14. Users keep making mistakes using the application. What can I do?
    • 6.15. Keyboard shortcuts
    • 6.16. User Manual or documentation for the application
    • 6.17. Expert users
  • 7. Coding Guidelines
    • 7.1. Language Agnostic Guidelines
    • 7.2. Python
    • 7.3. C++
Next

© Copyright 2021-2026 ESO - European Southern Observatory.