digiKam
Digikam::ItemPropertiesSideBar Class Reference
+ Inheritance diagram for Digikam::ItemPropertiesSideBar:

Public Types

enum  StateSavingDepth { INSTANCE , DIRECT_CHILDREN , RECURSIVE }
 
enum  TextStyle { ActiveIconText = 0 , AllIconsText = 2 }
 

Public Slots

void slotImageSelectionChanged (const QRect &rect)
 
void slotLoadMetadataFilters ()
 
virtual void slotNoCurrentItem ()
 

Signals

void signalChangedTab (QWidget *w)
 
void signalSetupExifTool ()
 
void signalSetupMetadataFilters (int)
 
void signalViewChanged ()
 

Public Member Functions

void activeNextTab ()
 
void activePreviousTab ()
 
void appendButton (const QPixmap &pic, int id=-1, QMenu *const popup=nullptr, const QString &not_used_yet=QString())
 
void appendTab (const QPixmap &pic, int id=-1, const QString &text=QString())
 
void appendTab (QWidget *const w, const QIcon &pic, const QString &title)
 
void backup ()
 
void backup (const QList< QWidget * > &thirdWidgetsToBackup, QList< int > *const sizes)
 
DMultiTabBarButtonbutton (int id) const
 
void deleteTab (QWidget *const w)
 
void expand ()
 
QWidget * getActiveTab () const
 
StateSavingDepth getStateSavingDepth () const
 
bool isExpanded () const
 
bool isTabRaised (int id) const
 
virtual void itemChanged (const QUrl &url, const QRect &rect=QRect(), DImg *const img=nullptr)
 
 ItemPropertiesSideBar (QWidget *const parent, SidebarSplitter *const splitter, Qt::Edge side=Qt::LeftEdge, bool mimimizedDefault=false)
 
void loadState ()
 
Qt::Edge position () const
 
void removeButton (int id)
 
void removeTab (int id)
 
void restore ()
 
void restore (const QList< QWidget * > &thirdWidgetsToRestore, const QList< int > &sizes)
 
void saveState ()
 
void setActiveTab (QWidget *const w)
 
virtual void setConfigGroup (const KConfigGroup &group)
 
virtual void setEntryPrefix (const QString &prefix)
 
void setPosition (Qt::Edge pos)
 
void setStateSavingDepth (const StateSavingDepth depth)
 
void setStyle (TextStyle style)
 
void setTab (int id, bool state)
 
void shrink ()
 
SidebarSplittersplitter () const
 
DMultiTabBarTabtab (int id) const
 
TextStyle tabStyle () const
 
 ~ItemPropertiesSideBar () override
 

Protected Slots

virtual void slotChangedTab (QWidget *tab)
 

Protected Member Functions

void doLoadState () override
 
void doSaveState () override
 
QString entryName (const QString &base) const
 
virtual void fontChange (const QFont &)
 
KConfigGroup getConfigGroup () const
 
virtual void setImagePropertiesInformation (const QUrl &url)
 
void updateSeparator ()
 

Protected Attributes

ItemPropertiesColorsTabm_colorTab
 
QRect m_currentRect
 
QUrl m_currentURL
 
bool m_dirtyColorTab
 
bool m_dirtyGpsTab
 
bool m_dirtyHistoryTab
 
bool m_dirtyMetadataTab
 
bool m_dirtyPropertiesTab
 
DImgm_image
 
ItemPropertiesMetadataTabm_metadataTab
 
QStackedWidget * m_propertiesStackedView
 
ItemPropertiesTabm_propertiesTab
 
ItemSelectionPropertiesTabm_selectionPropertiesTab
 

Member Enumeration Documentation

◆ StateSavingDepth

This enum defines the "depth" of the StateSavingObject::loadState() and StateSavingObject::saveState() methods.

Enumerator
INSTANCE 

Only the instance the saving / restoring was invoked on is saved / restored.

DIRECT_CHILDREN 

The instance itself and all direct children of this instance implementing StateSavingObject are saved / restored.

RECURSIVE 

The instance and all children in the complete hierarchy are saved / restored.

◆ TextStyle

The list of available styles for DMultiTabBar

Enumerator
ActiveIconText 

Always shows icon, only show the text of active tabs.

AllIconsText 

Always shows the text and icons.

Constructor & Destructor Documentation

◆ ItemPropertiesSideBar()

Digikam::ItemPropertiesSideBar::ItemPropertiesSideBar ( QWidget *const  parent,
SidebarSplitter *const  splitter,
Qt::Edge  side = Qt::LeftEdge,
bool  mimimizedDefault = false 
)
explicit

◆ ~ItemPropertiesSideBar()

Digikam::ItemPropertiesSideBar::~ItemPropertiesSideBar ( )
override

Member Function Documentation

◆ activeNextTab()

void Digikam::Sidebar::activeNextTab ( )
inherited

◆ activePreviousTab()

void Digikam::Sidebar::activePreviousTab ( )
inherited

◆ appendButton()

void Digikam::DMultiTabBar::appendButton ( const QPixmap &  pic,
int  id = -1,
QMenu *const  popup = nullptr,
const QString &  not_used_yet = QString() 
)
inherited

append a new button to the button area. The button can later on be accessed with button(ID) eg for connecting signals to it

Parameters
pica pixmap for the button
idan arbitrary ID value. It will be emitted in the clicked signal for identifying the button if more than one button is connected to a signals.
popupA popup menu which should be displayed if the button is clicked
not_used_yetwill be used for a popup text in the future

References Digikam::DMultiTabBar::Private::btnTabSep, Digikam::DMultiTabBar::Private::buttons, Digikam::DMultiTabBar::DMultiTabBarButton, and Digikam::DMultiTabBar::Private::layout.

◆ appendTab() [1/2]

void Digikam::DMultiTabBar::appendTab ( const QPixmap &  pic,
int  id = -1,
const QString &  text = QString() 
)
inherited

append a new tab to the tab area. It can be accessed later on with tabb(id);

Parameters
pica bitmap for the tab
idan arbitrary ID which can be used later on to identify the tab
textif a mode with text is used it will be the tab text, otherwise a mouse over hint

References Digikam::DMultiTabBarFrame::appendTab(), and Digikam::DMultiTabBar::Private::internal.

Referenced by Digikam::Sidebar::appendTab().

◆ appendTab() [2/2]

void Digikam::Sidebar::appendTab ( QWidget *const  w,
const QIcon &  pic,
const QString &  title 
)
inherited

◆ backup() [1/2]

void Digikam::Sidebar::backup ( )
inherited

◆ backup() [2/2]

void Digikam::Sidebar::backup ( const QList< QWidget * > &  thirdWidgetsToBackup,
QList< int > *const  sizes 
)
inherited

Hide sidebar and backup minimized state. If there are other widgets in this splitter, stores their sizes in the provided list.

References Digikam::Sidebar::backup(), Digikam::SidebarSplitter::size(), and Digikam::Sidebar::Private::splitter.

◆ button()

DMultiTabBarButton * Digikam::DMultiTabBar::button ( int  id) const
inherited

get a pointer to a button within the button area identified by its ID

References Digikam::DMultiTabBar::Private::buttons, and Digikam::DMultiTabBarButton::id().

◆ deleteTab()

◆ doLoadState()

◆ doSaveState()

◆ entryName()

QString Digikam::StateSavingObject::entryName ( const QString &  base) const
protectedinherited

Always use this method to create config group entry names. This allows to manipulate the entry keys externally by eg. setting a prefix.

Parameters
baseoriginal name planned for the config group entry
Returns
entry name after manipulating it with externally set parameters

Referenced by Digikam::FilterSideBarWidget::doLoadState(), Digikam::AbstractAlbumTreeView::doLoadState(), Digikam::AbstractCheckableAlbumTreeView::doLoadState(), Digikam::LabelsTreeView::doLoadState(), Digikam::ImportItemPropertiesSideBarImport::doLoadState(), doLoadState(), Digikam::ItemPropertiesSideBarDB::doLoadState(), Digikam::TagCheckView::doLoadState(), Digikam::Sidebar::doLoadState(), Digikam::SearchTextBar::doLoadState(), ShowFoto::ShowfotoFolderViewSideBar::doLoadState(), ShowFoto::ShowfotoStackViewSideBar::doLoadState(), Digikam::FaceScanWidget::doLoadState(), Digikam::FuzzySearchView::doLoadState(), Digikam::GPSSearchView::doLoadState(), Digikam::FilterSideBarWidget::doSaveState(), Digikam::AbstractAlbumTreeView::doSaveState(), Digikam::AbstractCheckableAlbumTreeView::doSaveState(), Digikam::LabelsTreeView::doSaveState(), Digikam::ImportItemPropertiesSideBarImport::doSaveState(), doSaveState(), Digikam::ItemPropertiesSideBarDB::doSaveState(), Digikam::TagCheckView::doSaveState(), Digikam::Sidebar::doSaveState(), Digikam::SearchTextBar::doSaveState(), ShowFoto::ShowfotoFolderViewSideBar::doSaveState(), ShowFoto::ShowfotoStackViewSideBar::doSaveState(), Digikam::FaceScanWidget::doSaveState(), Digikam::FuzzySearchView::doSaveState(), and Digikam::GPSSearchView::doSaveState().

◆ expand()

◆ fontChange()

void Digikam::DMultiTabBar::fontChange ( const QFont &  )
protectedvirtualinherited

◆ getActiveTab()

QWidget * Digikam::Sidebar::getActiveTab ( ) const
inherited

◆ getConfigGroup()

KConfigGroup Digikam::StateSavingObject::getConfigGroup ( ) const
protectedinherited

Returns the config group that must be used for state saving and loading.

Returns
config group for state saving and loading

Referenced by Digikam::AlbumFolderViewSideBarWidget::AlbumFolderViewSideBarWidget(), Digikam::DateFolderViewSideBarWidget::DateFolderViewSideBarWidget(), Digikam::FilterSideBarWidget::doLoadState(), Digikam::TagViewSideBarWidget::doLoadState(), Digikam::TimelineSideBarWidget::doLoadState(), Digikam::MapWidgetView::doLoadState(), Digikam::TableView::doLoadState(), Digikam::AbstractAlbumTreeView::doLoadState(), Digikam::AbstractCheckableAlbumTreeView::doLoadState(), Digikam::LabelsTreeView::doLoadState(), Digikam::ImportItemPropertiesSideBarImport::doLoadState(), doLoadState(), Digikam::ItemPropertiesSideBarDB::doLoadState(), Digikam::TagsManager::doLoadState(), Digikam::TagCheckView::doLoadState(), Digikam::Sidebar::doLoadState(), Digikam::SearchTextBar::doLoadState(), ShowFoto::ShowfotoFolderViewSideBar::doLoadState(), ShowFoto::ShowfotoStackViewSideBar::doLoadState(), Digikam::FaceScanWidget::doLoadState(), Digikam::FuzzySearchView::doLoadState(), Digikam::GPSSearchView::doLoadState(), Digikam::FilterSideBarWidget::doSaveState(), Digikam::TagViewSideBarWidget::doSaveState(), Digikam::TimelineSideBarWidget::doSaveState(), Digikam::MapWidgetView::doSaveState(), Digikam::TableView::doSaveState(), Digikam::AbstractAlbumTreeView::doSaveState(), Digikam::AbstractCheckableAlbumTreeView::doSaveState(), Digikam::LabelsTreeView::doSaveState(), Digikam::ImportItemPropertiesSideBarImport::doSaveState(), doSaveState(), Digikam::ItemPropertiesSideBarDB::doSaveState(), Digikam::TagsManager::doSaveState(), Digikam::TagCheckView::doSaveState(), Digikam::Sidebar::doSaveState(), Digikam::SearchTextBar::doSaveState(), ShowFoto::ShowfotoFolderViewSideBar::doSaveState(), ShowFoto::ShowfotoStackViewSideBar::doSaveState(), Digikam::FaceScanWidget::doSaveState(), Digikam::FuzzySearchView::doSaveState(), Digikam::GPSSearchView::doSaveState(), Digikam::FuzzySearchSideBarWidget::FuzzySearchSideBarWidget(), Digikam::GPSSearchSideBarWidget::GPSSearchSideBarWidget(), Digikam::LabelsSideBarWidget::LabelsSideBarWidget(), Digikam::PeopleSideBarWidget::PeopleSideBarWidget(), Digikam::SearchSideBarWidget::SearchSideBarWidget(), Digikam::TagsManager::setupUi(), Digikam::TagViewSideBarWidget::TagViewSideBarWidget(), and Digikam::TimelineSideBarWidget::TimelineSideBarWidget().

◆ getStateSavingDepth()

StateSavingObject::StateSavingDepth Digikam::StateSavingObject::getStateSavingDepth ( ) const
inherited

Returns the depth used for state saving or loading. Default is StateSavingDepth::INSTANCE.

Returns
state saving / restoring depth

◆ isExpanded()

bool Digikam::Sidebar::isExpanded ( ) const
inherited

Return the visible status of current sidebar tab.

References Digikam::Sidebar::Private::minimized.

Referenced by Digikam::ItemIconView::toggleLeftSidebar(), and Digikam::ItemIconView::toggleRightSidebar().

◆ isTabRaised()

bool Digikam::DMultiTabBar::isTabRaised ( int  id) const
inherited

return the state of a tab, identified by its ID

References Digikam::DMultiTabBar::tab().

◆ itemChanged()

void Digikam::ItemPropertiesSideBar::itemChanged ( const QUrl &  url,
const QRect &  rect = QRect(),
DImg *const  img = nullptr 
)
virtual

◆ loadState()

void Digikam::StateSavingObject::loadState ( )
inherited

◆ position()

Qt::Edge Digikam::DMultiTabBar::position ( ) const
inherited

get the tabbar position.

Returns
position

References Digikam::DMultiTabBar::Private::position.

◆ removeButton()

void Digikam::DMultiTabBar::removeButton ( int  id)
inherited

remove a button with the given ID

References Digikam::DMultiTabBar::Private::btnTabSep, and Digikam::DMultiTabBar::Private::buttons.

◆ removeTab()

void Digikam::DMultiTabBar::removeTab ( int  id)
inherited

◆ restore() [1/2]

void Digikam::Sidebar::restore ( )
inherited

◆ restore() [2/2]

void Digikam::Sidebar::restore ( const QList< QWidget * > &  thirdWidgetsToRestore,
const QList< int > &  sizes 
)
inherited

Show sidebar and restore minimized state. Restores other widgets' sizes in splitter.

References Digikam::Sidebar::restore(), Digikam::SidebarSplitter::setSize(), and Digikam::Sidebar::Private::splitter.

◆ saveState()

◆ setActiveTab()

◆ setConfigGroup()

void Digikam::StateSavingObject::setConfigGroup ( const KConfigGroup &  group)
virtualinherited

Sets a dedicated config group that will be used to store and reload the state from. If this method is not called, a group based on the object name is used.

You can re-implement this method to pass the group set here to child objects. Don't forget to call this method in your implementation.

Parameters
groupconfig group to use for state saving and restoring

Reimplemented in Digikam::GPSSearchView, Digikam::FuzzySearchView, Digikam::FilterSideBarWidget, and Digikam::DateFolderView.

Referenced by Digikam::ImageWindow::closeEvent(), Digikam::DateFolderView::setConfigGroup(), Digikam::FilterSideBarWidget::setConfigGroup(), Digikam::FuzzySearchView::setConfigGroup(), and Digikam::GPSSearchView::setConfigGroup().

◆ setEntryPrefix()

void Digikam::StateSavingObject::setEntryPrefix ( const QString &  prefix)
virtualinherited

Define a prefix that will be used for every entry in the config group. The default prefix is empty.

You can re-implement this method to pass the prefix set here to child objects. Don't forget to call this method in your implementation.

Parameters
prefixthe prefix to use for the config entries

References prefix.

◆ setImagePropertiesInformation()

void Digikam::ItemPropertiesSideBar::setImagePropertiesInformation ( const QUrl &  url)
protectedvirtual

References Digikam::PhotoInfoContainer::aperture, Digikam::VideoInfoContainer::aspectRatio, Digikam::ItemPropertiesTab::aspectRatioToString(), Digikam::VideoInfoContainer::audioBitRate, Digikam::VideoInfoContainer::audioChannelType, Digikam::VideoInfoContainer::audioCodec, Digikam::DImg::colorModelToString(), Digikam::PhotoInfoContainer::dateTime, Digikam::VideoInfoContainer::duration, Digikam::PhotoInfoContainer::exposureMode, Digikam::PhotoInfoContainer::exposureProgram, Digikam::PhotoInfoContainer::exposureTime, Digikam::PhotoInfoContainer::flash, Digikam::PhotoInfoContainer::focalLength, Digikam::PhotoInfoContainer::focalLength35mm, Digikam::VideoInfoContainer::frameRate, Digikam::MetaEngine::hasSidecar(), Digikam::ItemPropertiesTab::humanReadableBytesCount(), Digikam::PhotoInfoContainer::isEmpty(), Digikam::VideoInfoContainer::isEmpty(), Digikam::PhotoInfoContainer::lens, Digikam::DImg::loadItemInfo(), m_propertiesTab, Digikam::PhotoInfoContainer::make, Digikam::PhotoInfoContainer::model, Digikam::DImg::originalBitDepth(), Digikam::DImg::originalColorModel(), Digikam::ItemPropertiesTab::permissionsString(), Digikam::DRawDecoder::rawFiles(), Digikam::PhotoInfoContainer::sensitivity, Digikam::ItemPropertiesTab::setCaption(), Digikam::ItemPropertiesTab::setFileModifiedDate(), Digikam::ItemPropertiesTab::setFileOwner(), Digikam::ItemPropertiesTab::setFilePermissions(), Digikam::ItemPropertiesTab::setFileSize(), Digikam::ItemPropertiesTab::setHasSidecar(), Digikam::ItemPropertiesTab::setImageBitDepth(), Digikam::ItemPropertiesTab::setImageColorMode(), Digikam::ItemPropertiesTab::setImageMime(), Digikam::ItemPropertiesTab::setImageRatio(), Digikam::ItemPropertiesTab::setItemDimensions(), Digikam::ItemPropertiesTab::setPhotoAperture(), Digikam::ItemPropertiesTab::setPhotoDateTime(), Digikam::ItemPropertiesTab::setPhotoExposureMode(), Digikam::ItemPropertiesTab::setPhotoExposureTime(), Digikam::ItemPropertiesTab::setPhotoFlash(), Digikam::ItemPropertiesTab::setPhotoFocalLength(), Digikam::ItemPropertiesTab::setPhotoInfoDisable(), Digikam::ItemPropertiesTab::setPhotoLens(), Digikam::ItemPropertiesTab::setPhotoMake(), Digikam::ItemPropertiesTab::setPhotoModel(), Digikam::ItemPropertiesTab::setPhotoSensitivity(), Digikam::ItemPropertiesTab::setPhotoWhiteBalance(), Digikam::ItemPropertiesTab::setRating(), Digikam::ItemPropertiesTab::setTags(), Digikam::ItemPropertiesTab::setVideoAspectRatio(), Digikam::ItemPropertiesTab::setVideoAudioBitRate(), Digikam::ItemPropertiesTab::setVideoAudioChannelType(), Digikam::ItemPropertiesTab::setVideoAudioCodec(), Digikam::ItemPropertiesTab::setVideoDuration(), Digikam::ItemPropertiesTab::setVideoFrameRate(), Digikam::ItemPropertiesTab::setVideoInfoDisable(), Digikam::ItemPropertiesTab::setVideoVideoCodec(), Digikam::ItemPropertiesTab::shortenedMakeInfo(), Digikam::ItemPropertiesTab::shortenedModelInfo(), Digikam::ItemPropertiesTab::showOrHideCaptionAndTags(), Digikam::VideoInfoContainer::videoCodec, and Digikam::PhotoInfoContainer::whiteBalance.

Referenced by slotChangedTab().

◆ setPosition()

void Digikam::DMultiTabBar::setPosition ( Qt::Edge  pos)
inherited

set the real position of the widget.

Parameters
posif the mode is horizontal, only use top, bottom, if it is vertical use left or right

References Digikam::DMultiTabBar::Private::internal, Digikam::DMultiTabBar::Private::position, and Digikam::DMultiTabBarFrame::setPosition().

Referenced by Digikam::DMultiTabBar::DMultiTabBar().

◆ setStateSavingDepth()

void Digikam::StateSavingObject::setStateSavingDepth ( const StateSavingDepth  depth)
inherited

Sets the depth used for state saving or loading.

Parameters
depthnew depth to use

◆ setStyle()

◆ setTab()

void Digikam::DMultiTabBar::setTab ( int  id,
bool  state 
)
inherited

set a tab to "raised"

Parameters
idThe ID of the tab to manipulate
statetrue == activated/raised, false == not active

References Digikam::DMultiTabBarTab::setState(), and Digikam::DMultiTabBar::tab().

Referenced by Digikam::Sidebar::deleteTab(), and Digikam::Sidebar::doLoadState().

◆ shrink()

◆ signalChangedTab

◆ signalSetupExifTool

void Digikam::ItemPropertiesSideBar::signalSetupExifTool ( )
signal

Referenced by ItemPropertiesSideBar().

◆ signalSetupMetadataFilters

void Digikam::ItemPropertiesSideBar::signalSetupMetadataFilters ( int  )
signal

Referenced by ItemPropertiesSideBar().

◆ signalViewChanged

void Digikam::Sidebar::signalViewChanged ( )
signalinherited

Is emitted, when tab is shrink or expanded

Referenced by Digikam::Sidebar::shrink().

◆ slotChangedTab

◆ slotImageSelectionChanged

void Digikam::ItemPropertiesSideBar::slotImageSelectionChanged ( const QRect &  rect)
slot

◆ slotLoadMetadataFilters

void Digikam::ItemPropertiesSideBar::slotLoadMetadataFilters ( )
slot

◆ slotNoCurrentItem

◆ splitter()

SidebarSplitter * Digikam::Sidebar::splitter ( ) const
inherited

◆ tab()

◆ tabStyle()

DMultiTabBar::TextStyle Digikam::DMultiTabBar::tabStyle ( ) const
inherited

get the display style of the tabs

Returns
display style

References Digikam::DMultiTabBar::Private::internal.

◆ updateSeparator()

void Digikam::DMultiTabBar::updateSeparator ( )
protectedinherited

Member Data Documentation

◆ m_colorTab

◆ m_currentRect

QRect Digikam::ItemPropertiesSideBar::m_currentRect
protected

◆ m_currentURL

QUrl Digikam::ItemPropertiesSideBar::m_currentURL
protected

◆ m_dirtyColorTab

bool Digikam::ItemPropertiesSideBar::m_dirtyColorTab
protected

◆ m_dirtyGpsTab

bool Digikam::ItemPropertiesSideBar::m_dirtyGpsTab
protected

◆ m_dirtyHistoryTab

bool Digikam::ItemPropertiesSideBar::m_dirtyHistoryTab
protected

Referenced by itemChanged(), and slotNoCurrentItem().

◆ m_dirtyMetadataTab

bool Digikam::ItemPropertiesSideBar::m_dirtyMetadataTab
protected

◆ m_dirtyPropertiesTab

bool Digikam::ItemPropertiesSideBar::m_dirtyPropertiesTab
protected

◆ m_image

DImg* Digikam::ItemPropertiesSideBar::m_image
protected

Referenced by itemChanged(), and slotChangedTab().

◆ m_metadataTab

◆ m_propertiesStackedView

QStackedWidget* Digikam::ItemPropertiesSideBar::m_propertiesStackedView
protected

◆ m_propertiesTab

ItemPropertiesTab* Digikam::ItemPropertiesSideBar::m_propertiesTab
protected

◆ m_selectionPropertiesTab

ItemSelectionPropertiesTab* Digikam::ItemPropertiesSideBar::m_selectionPropertiesTab
protected

The documentation for this class was generated from the following files: