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>
This commit is contained in:
commit
c864304695
564 files changed
+100804
No files matched your search
@@ -0,0 +1,38 @@
|
||||
#pragma once
|
||||
#include "ContentView.h"
|
||||
#include "Document/ProjectWorkspace.h"
|
||||
#include "UI/CompositorMenus.h"
|
||||
#include "UI/ProjectTabs.h"
|
||||
#include <QMainWindow>
|
||||
#include <QToolBar>
|
||||
|
||||
// The window: the front tab's editor under the tab strip.
|
||||
class ProjectWorkspaceView : public QMainWindow {
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ProjectWorkspaceView(ProjectWorkspace &workspace, QWidget *parent = nullptr);
|
||||
|
||||
ContentView *content() const { return m_content; }
|
||||
ProjectTabStrip *tabs() const { return m_tabs; }
|
||||
|
||||
protected:
|
||||
void closeEvent(QCloseEvent *event) override;
|
||||
|
||||
private:
|
||||
void synchronize();
|
||||
void synchronizeSession();
|
||||
void watchFront();
|
||||
|
||||
ProjectWorkspace &m_workspace;
|
||||
QToolBar *const m_toolbar;
|
||||
ProjectTabStrip *const m_tabs;
|
||||
QAction *m_newCanvas = nullptr;
|
||||
QAction *m_fit = nullptr;
|
||||
QAction *m_actualPixels = nullptr;
|
||||
QAction *m_zoomIn = nullptr;
|
||||
QAction *m_zoomOut = nullptr;
|
||||
ContentView *m_content = nullptr;
|
||||
// Held until its editor goes, as Swift's views hold sessions.
|
||||
std::shared_ptr<ProjectTab> m_shownTab;
|
||||
QMetaObject::Connection m_sessionWatch;
|
||||
};
|
||||
Reference in new issue
Block a user