Skip to content

MUI Theme integration and improvements

Nick Andrews edited this page Sep 13, 2025 · 17 revisions

Plan for Improving MUI/AROS Theme Handling

Background and Current Situation

AROS theming and MUI theming are similar in concept but diverge in structure and naming conventions. This makes it harder to reuse or port themes between the two systems. Key differences include:

  • Image Storage Paths

    • MUI:
      images/<themename>/<optional style>/<size>/#?
      
    • AROS:
      THEME:Images/Gadgets/#?
      
  • Image Formats

    • MUI:
      • .mf0, .mf1, etc. for images with multiple states
      • .mbr for single images
      • All stored as IFF ILBM
    • AROS:
      • Flat filenames, no multi-state support, no standardized extensions
  • Naming Differences

    • Certain identifiers differ (e.g., ArrowLeft in MUI vs. Previous in AROS).

This mismatch complicates theme development and prevents straightforward theme sharing between MUI and AROS.


Proposed Changes

The goal is to align AROS theming with MUI conventions while retaining enough flexibility for backward compatibility.

  1. Unify directory and naming structure

    • Adopt a consistent scheme:
      THEME:Images/<size>/<name>.mbr
      
    • Reserve space for multi-state image formats (.mf0, .mf1) even if not immediately supported.
  2. Standardize names and extensions

    • Update current AROS theme asset names to match MUI’s naming (e.g., ArrowLeft instead of Previous).
    • Convert all single images to .mbr.
  3. Improve theme discovery

    • Update the “External” option to scan Presets/Themes/ for usable image sets.
    • Dynamically generate image specifications for Zune configs.
  4. Integrate with system tools

    • Update C:Decoration to use the revised scheme.
    • Maintain fallback support for legacy paths during transition.
  5. Lay groundwork for advanced features

    • Add support for multi-state images (.mf0/.mf1).
    • Prepare for optional style directories in the future (like MUI’s <optional style>).

Implementation Roadmap

Phase 1: Directory and Naming Standardization

  • Define the new canonical path format:

Clone this wiki locally