labplot  2.8.2
About: LabPlot is an application for plotting and analysis of 2D and 3D functions and data. It is a complete rewrite of LabPlot1 and lacks in the first release a lot of features available in the predecessor. On the other hand, the GUI and the usability is more superior.
  Fossies Dox: labplot-2.8.2.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

AbstractPart Class Referenceabstract

Base class of Aspects with MDI windows as views (AspectParts). More...

#include <AbstractPart.h>

Inheritance diagram for AbstractPart:
[legend]
Collaboration diagram for AbstractPart:
[legend]

Signals

void showRequested ()
 
void importFromFileRequested ()
 
void importFromSQLDatabaseRequested ()
 
void exportRequested ()
 
void printRequested ()
 
void printPreviewRequested ()
 
- Signals inherited from AbstractAspect
void aspectDescriptionAboutToChange (const AbstractAspect *)
 Emitted before the name, comment or caption spec is changed. More...
 
void aspectDescriptionChanged (const AbstractAspect *)
 Emitted after the name, comment or caption spec have changed. More...
 
void aspectAboutToBeAdded (const AbstractAspect *parent, const AbstractAspect *before, const AbstractAspect *child)
 Emitted before a new child is inserted. More...
 
void aspectAdded (const AbstractAspect *)
 Emitted after a new Aspect has been added to the tree. More...
 
void aspectAboutToBeRemoved (const AbstractAspect *)
 Emitted before an aspect is removed from its parent. More...
 
void aspectRemoved (const AbstractAspect *parent, const AbstractAspect *before, const AbstractAspect *child)
 Emitted from the parent after removing a child. More...
 
void aspectHiddenAboutToChange (const AbstractAspect *)
 Emitted before the hidden attribute is changed. More...
 
void aspectHiddenChanged (const AbstractAspect *)
 Emitted after the hidden attribute has changed. More...
 
void statusInfo (const QString &)
 Emitted whenever some aspect in the tree wants to give status information to the user. More...
 
void renameRequested ()
 
void selected (const AbstractAspect *)
 
void deselected (const AbstractAspect *)
 
void childAspectSelectedInView (const AbstractAspect *)
 
void childAspectDeselectedInView (const AbstractAspect *)
 

Public Member Functions

 AbstractPart (const QString &name, AspectType type)
 
 ~AbstractPart () override
 
virtual QWidget * view () const =0
 Construct a primary view on me. More...
 
void deleteView () const
 
PartMdiViewmdiSubWindow () const
 Wrap the view() into a PartMdiView. More...
 
bool hasMdiSubWindow () const
 
QMenu * createContextMenu () override
 Return AbstractAspect::createContextMenu() plus operations on the primary view. More...
 
virtual bool exportView () const =0
 
virtual bool printView ()=0
 
virtual bool printPreview () const =0
 
bool isDraggable () const override
 
QVector< AspectTypedropableOn () const override
 
virtual void registerShortcuts ()
 
virtual void unregisterShortcuts ()
 
- Public Member Functions inherited from AbstractAspect
 AbstractAspect (const QString &name, AspectType type)
 
 ~AbstractAspect () override
 
QString name () const
 
QString comment () const
 
void setCreationTime (const QDateTime &)
 
QDateTime creationTime () const
 
virtual Projectproject ()
 Return the Project this Aspect belongs to, or 0 if it is currently not part of one. More...
 
virtual QString path () const
 Return the path that leads from the top-most Aspect (usually a Project) to me. More...
 
void setHidden (bool)
 Set "hidden" property, i.e. whether to exclude this aspect from being shown in the explorer. More...
 
bool hidden () const
 
void setIsLoading (bool)
 
bool isLoading () const
 
virtual QIcon icon () const
 Return an icon to be used for decorating my views. More...
 
AspectType type () const
 
bool inherits (AspectType type) const
 
AbstractAspectparentAspect () const
 Return my parent Aspect or 0 if I currently don't have one. More...
 
AbstractAspectparent (AspectType type) const
 In the parent-child hierarchy, return the first parent of type. More...
 
void setParentAspect (AbstractAspect *)
 
Folderfolder ()
 Return the folder the Aspect is contained in or 0 if there is none. More...
 
bool isDescendantOf (AbstractAspect *other)
 Return whether the there is a path upwards to the given aspect. More...
 
void addChild (AbstractAspect *)
 Add the given Aspect to my list of children. More...
 
void addChildFast (AbstractAspect *)
 Add the given Aspect to my list of children without any checks and without putting this step onto the undo-stack. More...
 
virtual void finalizeAdd ()
 
QVector< AbstractAspect * > children (AspectType type, ChildIndexFlags flags={}) const
 
void insertChildBefore (AbstractAspect *child, AbstractAspect *before)
 Insert the given Aspect at a specific position in my list of children. More...
 
void insertChildBeforeFast (AbstractAspect *child, AbstractAspect *before)
 Insert the given Aspect at a specific position in my list of children.without any checks and without putting this step onto the undo-stack. More...
 
void reparent (AbstractAspect *newParent, int newIndex=-1)
 Move a child to another parent aspect and transfer ownership. More...
 
void removeChild (AbstractAspect *)
 Remove the given Aspect from my list of children. More...
 
void removeAllChildren ()
 Remove all child Aspects. More...
 
virtual QVector< AbstractAspect * > dependsOn () const
 
virtual void processDropEvent (const QVector< quintptr > &)
 
template<class T >
T * ancestor () const
 Return the closest ancestor of class T (or NULL if none found). More...
 
template<class T >
QVector< T * > children (ChildIndexFlags flags={}) const
 
template<class T >
T * child (int index, ChildIndexFlags flags={}) const
 
template<class T >
T * child (const QString &name) const
 Get child by name and class. More...
 
template<class T >
int childCount (ChildIndexFlags flags={}) const
 Return the number of child Aspects inheriting from given class. More...
 
template<class T >
int indexOfChild (const AbstractAspect *child, ChildIndexFlags flags={}) const
 Return (0 based) index of child in the list of children inheriting from class T. More...
 
void setSelected (bool)
 
void setUndoAware (bool)
 
virtual QUndoStack * undoStack () const
 Return the undo stack of the Project, or 0 if this Aspect is not part of a Project. More...
 
void exec (QUndoCommand *)
 Execute the given command, pushing it on the undoStack() if available. More...
 
void exec (QUndoCommand *command, const char *preChangeSignal, const char *postChangeSignal, QGenericArgument val0=QGenericArgument(), QGenericArgument val1=QGenericArgument(), QGenericArgument val2=QGenericArgument(), QGenericArgument val3=QGenericArgument())
 Execute command and arrange for signals to be sent before/after it is redone or undone. More...
 
void beginMacro (const QString &text)
 Begin an undo stack macro (series of commands) More...
 
void endMacro ()
 End the current undo stack macro. More...
 
virtual void save (QXmlStreamWriter *) const =0
 Save as XML. More...
 
virtual bool load (XmlStreamReader *, bool preview)=0
 Load from XML. More...
 

Protected Attributes

QWidget * m_partView {nullptr}
 
- Protected Attributes inherited from AbstractAspect
const AspectType m_type
 

Private Attributes

PartMdiViewm_mdiWindow {nullptr}
 

Additional Inherited Members

- Public Types inherited from AbstractAspect
enum class  ChildIndexFlag { IncludeHidden = 0x01 , Recursive = 0x02 , Compress = 0x04 }
 Flags which control numbering scheme of children. More...
 
- Public Slots inherited from AbstractAspect
bool setName (const QString &, bool autoUnique=true)
 AbstractAspect::setName sets the name of the abstract aspect. More...
 
void setComment (const QString &)
 
void remove ()
 Remove me from my parent's list of children. More...
 
- Protected Slots inherited from AbstractAspect
virtual void childSelected (const AbstractAspect *)
 
virtual void childDeselected (const AbstractAspect *)
 
- Protected Member Functions inherited from AbstractAspect
void info (const QString &text)
 Implementations should call this whenever status information should be given to the user. More...
 
bool readBasicAttributes (XmlStreamReader *)
 Load name and creation time from XML. More...
 
void writeBasicAttributes (QXmlStreamWriter *) const
 Save name and creation time to XML. More...
 
void writeCommentElement (QXmlStreamWriter *) const
 Save the comment to XML. More...
 
bool readCommentElement (XmlStreamReader *)
 Load comment from an XML element. More...
 

Detailed Description

Base class of Aspects with MDI windows as views (AspectParts).

File : AbstractPart.cpp Project : LabPlot

Description : Base class of Aspects with MDI windows as views.

Copyright : (C) 2008 Knut Franke (knut..nosp@m.fran.nosp@m.ke@gm.nosp@m.x.de) Copyright : (C) 2012 Alexander Semke (alexa.nosp@m.nder.nosp@m..semk.nosp@m.e@we.nosp@m.b.de)

  • This program 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 2 of the License, or * (at your option) any later version. *
  • This program 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 this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA *

Definition at line 36 of file AbstractPart.h.

Constructor & Destructor Documentation

◆ AbstractPart()

AbstractPart::AbstractPart ( const QString &  name,
AspectType  type 
)

Definition at line 51 of file AbstractPart.cpp.

◆ ~AbstractPart()

AbstractPart::~AbstractPart ( )
override

Definition at line 55 of file AbstractPart.cpp.

References m_mdiWindow.

Member Function Documentation

◆ createContextMenu()

◆ deleteView()

void AbstractPart::deleteView ( ) const

this function is called when PartMdiView, the mdi-subwindow-wrapper of the actual view, is closed (=deleted) in MainWindow. Makes sure that the view also gets deleted.

Definition at line 91 of file AbstractPart.cpp.

References m_mdiWindow, m_partView, and AbstractAspect::parentAspect().

Referenced by PartMdiView::closeEvent(), and DatapickerView::~DatapickerView().

◆ dropableOn()

QVector< AspectType > AbstractPart::dropableOn ( ) const
overridevirtual

Reimplemented from AbstractAspect.

Definition at line 167 of file AbstractPart.cpp.

References Folder, and Project.

◆ exportRequested

void AbstractPart::exportRequested ( )
signal

◆ exportView()

virtual bool AbstractPart::exportView ( ) const
pure virtual

◆ hasMdiSubWindow()

bool AbstractPart::hasMdiSubWindow ( ) const

Definition at line 83 of file AbstractPart.cpp.

References m_mdiWindow.

◆ importFromFileRequested

void AbstractPart::importFromFileRequested ( )
signal

◆ importFromSQLDatabaseRequested

void AbstractPart::importFromSQLDatabaseRequested ( )
signal

◆ isDraggable()

bool AbstractPart::isDraggable ( ) const
overridevirtual

Reimplemented from AbstractAspect.

Definition at line 158 of file AbstractPart.cpp.

References Matrix, AbstractAspect::parentAspect(), Spreadsheet, AbstractAspect::type(), and Workbook.

◆ mdiSubWindow()

PartMdiView * AbstractPart::mdiSubWindow ( ) const

Wrap the view() into a PartMdiView.

A new view is only created the first time this method is called; after that, a pointer to the pre-existing view is returned.

Definition at line 76 of file AbstractPart.cpp.

References m_mdiWindow.

Referenced by MainWin::activateSubWindowForAspect(), and WorksheetView::dragEnterEvent().

◆ printPreview()

virtual bool AbstractPart::printPreview ( ) const
pure virtual

◆ printPreviewRequested

void AbstractPart::printPreviewRequested ( )
signal

◆ printRequested

void AbstractPart::printRequested ( )
signal

◆ printView()

virtual bool AbstractPart::printView ( )
pure virtual

◆ registerShortcuts()

virtual void AbstractPart::registerShortcuts ( )
inlinevirtual

Reimplemented in Worksheet.

Definition at line 58 of file AbstractPart.h.

Referenced by PartMdiView::slotWindowStateChanged().

◆ showRequested

void AbstractPart::showRequested ( )
signal

◆ unregisterShortcuts()

virtual void AbstractPart::unregisterShortcuts ( )
inlinevirtual

Reimplemented in Worksheet.

Definition at line 59 of file AbstractPart.h.

Referenced by PartMdiView::slotWindowStateChanged().

◆ view()

QWidget * AbstractPart::view ( ) const
pure virtual

Construct a primary view on me.

The caller receives ownership of the view.

This method may be called multiple times during the life time of a Part, or it might not get called at all. Parts must not depend on the existence of a view for their operation.

Implemented in CantorWorksheet, Workbook, Datapicker, DatapickerImage, LiveDataSource, MQTTTopic, Matrix, Note, Spreadsheet, and Worksheet.

Referenced by DatapickerView::handleAspectAdded(), and PartMdiView::PartMdiView().

Member Data Documentation

◆ m_mdiWindow

PartMdiView* AbstractPart::m_mdiWindow {nullptr}
mutableprivate

◆ m_partView


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