Further reduction of include dependencies

This commit is contained in:
Ingo Weyrich 2019-11-01 21:20:52 +01:00
parent b58d38fc62
commit c1f9120ef4
23 changed files with 26 additions and 113 deletions

View File

@ -27,10 +27,6 @@
#include "LUT.h" #include "LUT.h"
#include "rt_math.h" #include "rt_math.h"
#ifdef _OPENMP
#include <omp.h>
#endif
using namespace rtengine; using namespace rtengine;
// This seems ugly, but way faster than any other solutions I tried // This seems ugly, but way faster than any other solutions I tried

View File

@ -25,8 +25,10 @@
#include "rtimage.h" #include "rtimage.h"
#include "multilangmgr.h" #include "multilangmgr.h"
#include "thumbbrowserbase.h" #include "thumbbrowserbase.h"
#include "thumbnail.h"
#include "../rtengine/procparams.h" #include "../rtengine/procparams.h"
#include "../rtengine/rtengine.h"
bool BatchQueueEntry::iconsLoaded(false); bool BatchQueueEntry::iconsLoaded(false);
Glib::RefPtr<Gdk::Pixbuf> BatchQueueEntry::savedAsIcon; Glib::RefPtr<Gdk::Pixbuf> BatchQueueEntry::savedAsIcon;

View File

@ -23,11 +23,13 @@
#include <gtkmm.h> #include <gtkmm.h>
#include "bqentryupdater.h" #include "bqentryupdater.h"
#include "options.h"
#include "thumbbrowserentrybase.h" #include "thumbbrowserentrybase.h"
#include "thumbnail.h"
#include "../rtengine/noncopyable.h" #include "../rtengine/noncopyable.h"
class Thumbnail;
namespace rtengine namespace rtengine
{ {
class ProcessingJob; class ProcessingJob;

View File

@ -22,6 +22,7 @@
#include "filepanel.h" #include "filepanel.h"
#include "procparamchangers.h" #include "procparamchangers.h"
#include "addsetids.h" #include "addsetids.h"
#include "thumbnail.h"
using namespace rtengine::procparams; using namespace rtengine::procparams;

View File

@ -20,7 +20,6 @@
#include "fileselectionchangelistener.h" #include "fileselectionchangelistener.h"
#include "paramsedited.h" #include "paramsedited.h"
#include "thumbnail.h"
#include "thumbnaillistener.h" #include "thumbnaillistener.h"
#include "toolpanelcoord.h" #include "toolpanelcoord.h"
@ -28,6 +27,7 @@
#include "../rtengine/procparams.h" #include "../rtengine/procparams.h"
class FilePanel; class FilePanel;
class Thumbnail;
class BatchToolPanelCoordinator : class BatchToolPanelCoordinator :
public ToolPanelCoordinator, public ToolPanelCoordinator,
public FileSelectionChangeListener, public FileSelectionChangeListener,

View File

@ -19,6 +19,8 @@
#include "bqentryupdater.h" #include "bqentryupdater.h"
#include "guiutils.h" #include "guiutils.h"
#include "options.h"
#include "thumbnail.h"
#include "../rtengine/utils.h" #include "../rtengine/utils.h"
namespace namespace

View File

@ -21,7 +21,8 @@
#include <glibmm/thread.h> #include <glibmm/thread.h>
#include "threadutils.h" #include "threadutils.h"
#include "thumbnail.h"
class Thumbnail;
namespace rtengine namespace rtengine
{ {

View File

@ -25,7 +25,6 @@
#include "curveeditor.h" #include "curveeditor.h"
#include "curveeditorgroup.h" #include "curveeditorgroup.h"
#include "guiutils.h" #include "guiutils.h"
#include "mycurve.h"
#include "toolpanel.h" #include "toolpanel.h"
class ColorAppearance final : class ColorAppearance final :

View File

@ -33,6 +33,7 @@
#include "procparamchangers.h" #include "procparamchangers.h"
#include "placesbrowser.h" #include "placesbrowser.h"
#include "pathutils.h" #include "pathutils.h"
#include "thumbnail.h"
using namespace rtengine::procparams; using namespace rtengine::procparams;

View File

@ -30,7 +30,6 @@
#include "profilepanel.h" #include "profilepanel.h"
#include "progressconnector.h" #include "progressconnector.h"
#include "saveasdlg.h" #include "saveasdlg.h"
#include "thumbnail.h"
#include "thumbnaillistener.h" #include "thumbnaillistener.h"
#include "toolpanelcoord.h" #include "toolpanelcoord.h"
@ -39,6 +38,7 @@
class EditorPanel; class EditorPanel;
class MyProgressBar; class MyProgressBar;
class Thumbnail;
struct EditorPanelIdleHelper { struct EditorPanelIdleHelper {
EditorPanel* epanel; EditorPanel* epanel;

View File

@ -33,6 +33,7 @@
#include "procparamchangers.h" #include "procparamchangers.h"
#include "rtimage.h" #include "rtimage.h"
#include "threadutils.h" #include "threadutils.h"
#include "thumbnail.h"
#include "../rtengine/dfmanager.h" #include "../rtengine/dfmanager.h"
#include "../rtengine/ffmanager.h" #include "../rtengine/ffmanager.h"

View File

@ -27,6 +27,7 @@
#include "rtimage.h" #include "rtimage.h"
#include "threadutils.h" #include "threadutils.h"
#include "thumbbrowserbase.h" #include "thumbbrowserbase.h"
#include "thumbnail.h"
#include "../rtengine/procparams.h" #include "../rtengine/procparams.h"

View File

@ -29,13 +29,14 @@
#include "imageareatoollistener.h" #include "imageareatoollistener.h"
#include "thumbbrowserentrybase.h" #include "thumbbrowserentrybase.h"
#include "thumbimageupdater.h" #include "thumbimageupdater.h"
#include "thumbnail.h"
#include "thumbnaillistener.h" #include "thumbnaillistener.h"
#include "../rtengine/noncopyable.h" #include "../rtengine/noncopyable.h"
#include "../rtengine/rtengine.h" #include "../rtengine/rtengine.h"
class FileBrowserEntry; class FileBrowserEntry;
class Thumbnail;
struct FileBrowserEntryIdleHelper { struct FileBrowserEntryIdleHelper {
FileBrowserEntry* fbentry; FileBrowserEntry* fbentry;
bool destroyed; bool destroyed;

View File

@ -37,6 +37,7 @@
#include "batchqueue.h" #include "batchqueue.h"
#include "placesbrowser.h" #include "placesbrowser.h"
#include "pathutils.h" #include "pathutils.h"
#include "thumbnail.h"
using namespace std; using namespace std;

View File

@ -21,6 +21,7 @@
#include "rtwindow.h" #include "rtwindow.h"
#include "inspector.h" #include "inspector.h"
#include "placesbrowser.h" #include "placesbrowser.h"
#include "thumbnail.h"
FilePanel::FilePanel () : parent(nullptr), error(0) FilePanel::FilePanel () : parent(nullptr), error(0)
{ {

View File

@ -27,7 +27,6 @@
#include "guiutils.h" #include "guiutils.h"
#include "pointermotionlistener.h" #include "pointermotionlistener.h"
#include "../rtengine/improccoordinator.h"
#include "../rtengine/LUT.h" #include "../rtengine/LUT.h"
#include "../rtengine/noncopyable.h" #include "../rtengine/noncopyable.h"

View File

@ -19,9 +19,9 @@
#pragma once #pragma once
#include "cropguilistener.h" #include "cropguilistener.h"
#include "thumbnail.h"
#include "toolbar.h" #include "toolbar.h"
class Thumbnail;
class ImageAreaToolListener class ImageAreaToolListener
{ {

View File

@ -20,6 +20,7 @@
#include "guiutils.h" #include "guiutils.h"
#include "imagearea.h" #include "imagearea.h"
#include "cursormanager.h" #include "cursormanager.h"
#include "options.h"
#include "../rtengine/procparams.h" #include "../rtengine/procparams.h"

View File

@ -24,6 +24,7 @@
#include "iccprofilecreator.h" #include "iccprofilecreator.h"
#include "cursormanager.h" #include "cursormanager.h"
#include "rtimage.h" #include "rtimage.h"
#include "thumbnail.h"
#include "whitebalance.h" #include "whitebalance.h"
#include "../rtengine/settings.h" #include "../rtengine/settings.h"

View File

@ -26,8 +26,10 @@
#include "guiutils.h" #include "guiutils.h"
#include "lwbuttonset.h" #include "lwbuttonset.h"
#include "threadutils.h" #include "threadutils.h"
#include "thumbnail.h"
#include "../rtengine/coord2d.h"
class Thumbnail;
class ThumbBrowserBase; class ThumbBrowserBase;
class ThumbBrowserEntryBase class ThumbBrowserEntryBase
{ {

View File

@ -26,6 +26,7 @@
#include "guiutils.h" #include "guiutils.h"
#include "threadutils.h" #include "threadutils.h"
#include "thumbnail.h"
#include "../rtengine/procparams.h" #include "../rtengine/procparams.h"

View File

@ -1,99 +0,0 @@
/*
* This file is part of RawTherapee.
*
* Copyright (c) 2004-2010 Gabor Horvath <hgabor@rawtherapee.com>
*
* RawTherapee is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* RawTherapee is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with RawTherapee. If not, see <https://www.gnu.org/licenses/>.
*/
#pragma once
#include <gtkmm.h>
#include "filecatalog.h"
#include "thumbnail.h"
class ThumbBrowserEntry
{
public:
// set by arrangeFiles():
int width; // minimal width
int height; // minimal height
int exp_width; // ararnged width
int startx; // x coord. in the widget
int starty; // y coord. in the widget
// thumbnail preview properties:
int prew; // width of the thumbnail
int preh; // height of the thumbnail
guint8* preview;
// file and directory attributes:
Glib::ustring filename;
Glib::ustring shortname;
Glib::ustring dirname;
// the associated thumbnail instance:
Thumbnail* thumbnail;
ThumbBrowserEntry (Thumbnail* thm, Glib::ustring fname, Glib::ustring sname, Glib::ustring dname, int h)
: thumbnail(thm), filename(fname), shortname(sname), dirname(dname), preh(h)
{
preview = thumbnail ? (guint8*) thumbnail->getThumbnailImage (prew, preh) : NULL;
}
bool operator< (FileDescr& other)
{
return shortname > other.shortname;
}
};
class ThumbBrowser : public Gtk::DrawingArea
{
protected:
int dx, dy, w, h;
Gdk::RGBA black;
Gdk::RGBA white;
Gdk::RGBA blue;
Gdk::RGBA bluew;
std::vector<ThumbBrowserEntry*> fd;
std::vector<ThumbBrowserEntry*> selected;
int rowHeight;
int numOfRows;
ThumbBrowserListener* tbl;
void arrangeFiles (int rows);
public:
ThumbBrowser ();
void addEntry (ThumbBrowserEntry* entry);
void setThumbBrowserListener (ThumbBrowserListener* l)
{
tbl = l;
}
virtual void on_realize();
virtual bool on_draw(const ::Cairo::RefPtr< Cairo::Context> &cr);
virtual bool on_button_press_event (GdkEventButton* event);
virtual bool on_button_release_event (GdkEventButton* event);
virtual void previewReady (FileDescr* fdn);
void resized (Gtk::Allocation& req);
void redraw ();
void styleChanged (const Glib::RefPtr<Gtk::Style>& style);
};

View File

@ -24,7 +24,6 @@
#include "curveeditor.h" #include "curveeditor.h"
#include "curveeditorgroup.h" #include "curveeditorgroup.h"
#include "guiutils.h" #include "guiutils.h"
#include "mycurve.h"
#include "toolpanel.h" #include "toolpanel.h"
class EditDataProvider; class EditDataProvider;