Files
OmaPhoto/src/UI/LayerAppearanceControls.h
T
雷电芽衣andClaude c864304695
Release / deb (push) Canceled after 0s
Release / rpm (push) Canceled after 0s
Release / arch (push) Canceled after 0s
Release / publish (push) Canceled after 0s
OmaPhoto 1.0.0: the Linux port of Compositor
A layered image editor for Linux and Omarchy, ported from Compositor
(github.com/robbietilton/Compositor), whose Swift source is its
specification. It reads and writes Compositor's .comp projects.

Packages for Ubuntu, Fedora and Arch come from the release workflow;
scripts/install/ holds one install script per distribution family,
and flake.nix serves NixOS.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-26 00:44:52 -04:00

34 lines
839 B
C++

#pragma once
#include "Document/EditorSession.h"
#include <QLineEdit>
#include <QSlider>
#include <QWidget>
class BlendModePicker;
// The active layer's blend mode and opacity.
class LayerAppearanceControls : public QWidget {
Q_OBJECT
public:
explicit LayerAppearanceControls(EditorSession &session, QWidget *parent = nullptr);
~LayerAppearanceControls() override;
protected:
bool eventFilter(QObject *watched, QEvent *event) override;
private:
void synchronize();
void step(double percent);
void releaseFocus();
void sync();
void applyPercentage();
EditorSession &m_session;
BlendModePicker *const m_picker;
QSlider *const m_slider;
QLineEdit *const m_percentage;
// The layer the controls were last made for.
std::optional<QUuid> m_layerID;
bool m_syncing = false;
};