Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
AspectRatioClass.h File Reference
#include <QString>
#include <cmath>

Go to the source code of this file.

Namespaces

namespace  PhosphorLayout
 
namespace  PhosphorLayout::ScreenClassification
 Screen classification thresholds and utilities.
 

Enumerations

enum class  PhosphorLayout::AspectRatioClass {
  PhosphorLayout::Any = 0 , PhosphorLayout::Standard = 1 , PhosphorLayout::Ultrawide = 2 , PhosphorLayout::SuperUltrawide = 3 ,
  PhosphorLayout::Portrait = 4
}
 Screen aspect-ratio classification. More...
 

Functions

AspectRatioClass PhosphorLayout::ScreenClassification::classify (qreal aspectRatio)
 
AspectRatioClass PhosphorLayout::ScreenClassification::classify (int width, int height)
 
QString PhosphorLayout::ScreenClassification::toString (AspectRatioClass cls)
 
AspectRatioClass PhosphorLayout::ScreenClassification::fromString (const QString &str)
 
qreal PhosphorLayout::ScreenClassification::aspectRatioForClass (AspectRatioClass cls, qreal fallback=16.0/9.0)
 Representative aspect ratio for a class.
 
bool PhosphorLayout::ScreenClassification::matches (AspectRatioClass layoutClass, AspectRatioClass screenClass)
 Check if a layout's aspect ratio class matches the given screen class.
 

Variables

constexpr qreal PhosphorLayout::ScreenClassification::PortraitMax = 1.0
 AR < 1.0 → portrait.
 
constexpr qreal PhosphorLayout::ScreenClassification::UltrawideMin = 1.9
 AR ∈ [UltrawideMin, SuperUltrawideMin) → ultrawide.
 
constexpr qreal PhosphorLayout::ScreenClassification::SuperUltrawideMin = 2.8
 AR >= 2.8 → super-ultrawide.