Files
OmaPhoto/tests/EyedropperFixtures.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

39 lines
1.2 KiB
C

#pragma once
#include "InlineTextFixtures.h"
#include "UI/ColorPickerSheet.h"
// Shared by the Eyedropper's tests and picking's.
namespace {
// Red left, blue right, filling the view.
struct Picking : Canvas {
Picking()
{
QImage image(400, 300, QImage::Format_RGBA8888_Premultiplied);
image.fill(Qt::blue);
for (int y = 0; y < 300; ++y) {
for (int x = 0; x < 200; ++x)
image.setPixelColor(x, y, Qt::red);
}
session.insert(ImportedImage(image, image, QStringLiteral("Split")));
tool(NavigationTool::eyedropper);
}
void tool(NavigationTool tool)
{
session.selectTool(tool);
canvas->synchronizeDisplay();
}
QString foreground() const { return session.foregroundColor().hex(); }
const SampleRingOverlay &ring() const { return canvas->sampleRing(); }
bool picks() const { return shows(CanvasView::eyedropperCursor(canvas->devicePixelRatio())); }
};
inline QWidget *pickerPanel()
{
for (QWidget *widget : QApplication::topLevelWidgets()) {
if (widget->objectName() == ColorPickerPanelController::identifier() && widget->isVisible())
return widget;
}
return nullptr;
}
}