• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdelibs API Reference
  • KDE Home
  • Contact Us
 

KParts

  • KParts
  • PartManager
Public Types | Signals | Public Member Functions | Protected Slots | Protected Member Functions | Properties | List of all members
KParts::PartManager Class Reference

#include <partmanager.h>

Inheritance diagram for KParts::PartManager:
Inheritance graph
[legend]

Public Types

enum  Reason { ReasonLeftClick = 100, ReasonMidClick, ReasonRightClick, NoReason }
 
enum  SelectionPolicy { Direct, TriState }
 

Signals

void activePartChanged (KParts::Part *newPart)
 
void partAdded (KParts::Part *part)
 
void partRemoved (KParts::Part *part)
 

Public Member Functions

 PartManager (QWidget *parent)
 
 PartManager (QWidget *topLevel, QObject *parent)
 
virtual ~PartManager ()
 
short int activationButtonMask () const
 
virtual Part * activePart () const
 
virtual QWidget * activeWidget () const
 
void addManagedTopLevelWidget (const QWidget *topLevel)
 
virtual void addPart (Part *part, bool setActive=true)
 
bool allowNestedParts () const
 
virtual bool eventFilter (QObject *obj, QEvent *ev)
 
bool ignoreScrollBars () const
 
const QList< Part * > parts () const
 
int reason () const
 
void removeManagedTopLevelWidget (const QWidget *topLevel)
 
virtual void removePart (Part *part)
 
virtual void replacePart (Part *oldPart, Part *newPart, bool setActive=true)
 
virtual Part * selectedPart () const
 
virtual QWidget * selectedWidget () const
 
SelectionPolicy selectionPolicy () const
 
void setActivationButtonMask (short int buttonMask)
 
virtual void setActivePart (Part *part, QWidget *widget=0)
 
void setAllowNestedParts (bool allow)
 
void setIgnoreScrollBars (bool ignore)
 
virtual void setSelectedPart (Part *part, QWidget *widget=0)
 
void setSelectionPolicy (SelectionPolicy policy)
 

Protected Slots

void slotManagedTopLevelWidgetDestroyed ()
 
void slotObjectDestroyed ()
 
void slotWidgetDestroyed ()
 

Protected Member Functions

virtual void setActiveComponent (const KComponentData &instance)
 
void setIgnoreExplictFocusRequests (bool)
 

Properties

bool allowNestedParts
 
bool ignoreScrollBars
 
SelectionPolicy selectionPolicy
 

Detailed Description

The part manager is an object which knows about a collection of parts (even nested ones) and handles activation/deactivation.

Applications that want to embed parts without merging GUIs only use a KParts::PartManager. Those who want to merge GUIs use a KParts::MainWindow for example, in addition to a part manager.

Parts know about the part manager to add nested parts to it. See also KParts::Part::manager() and KParts::Part::setManager().

Definition at line 47 of file partmanager.h.

Member Enumeration Documentation

enum KParts::PartManager::Reason

This extends QFocusEvent::Reason with the non-focus-event reasons for partmanager to activate a part.

To test for "any focusin reason", use < ReasonLeftClick NoReason usually means: explicit activation with setActivePart.

Enumerator
ReasonLeftClick 
ReasonMidClick 
ReasonRightClick 
NoReason 

Definition at line 63 of file partmanager.h.

enum KParts::PartManager::SelectionPolicy

Selection policy. The default policy of a PartManager is Direct.

Enumerator
Direct 
TriState 

Definition at line 56 of file partmanager.h.

Constructor & Destructor Documentation

PartManager::PartManager ( QWidget *  parent)

Constructs a part manager.

Parameters
parentThe toplevel widget (window / dialog) the partmanager should monitor for activation/selection events

Definition at line 105 of file partmanager.cpp.

PartManager::PartManager ( QWidget *  topLevel,
QObject *  parent 
)

Constructs a part manager.

Parameters
topLevelThe toplevel widget (window / dialog ) the partmanager should monitor for activation/selection events
parentThe parent QObject.

Definition at line 116 of file partmanager.cpp.

PartManager::~PartManager ( )
virtual

Definition at line 127 of file partmanager.cpp.

Member Function Documentation

short int PartManager::activationButtonMask ( ) const
See also
setActivationButtonMask

Definition at line 180 of file partmanager.cpp.

Part * PartManager::activePart ( ) const
virtual

Returns the active part.

Definition at line 501 of file partmanager.cpp.

void KParts::PartManager::activePartChanged ( KParts::Part *  newPart)
signal

Emitted when the active part has changed.

See also
setActivePart()
QWidget * PartManager::activeWidget ( ) const
virtual

Returns the active widget of the current active part (see activePart ).

Definition at line 506 of file partmanager.cpp.

void PartManager::addManagedTopLevelWidget ( const QWidget *  topLevel)

Adds the topLevel widget to the list of managed toplevel widgets.

Usually a PartManager only listens for events (for activation/selection) for one toplevel widget (and its children) , the one specified in the constructor. Sometimes however (like for example when using the KDE dockwidget library) , it is necessary to extend this.

Definition at line 569 of file partmanager.cpp.

void PartManager::addPart ( Part *  part,
bool  setActive = true 
)
virtual

Adds a part to the manager.

Sets it to the active part automatically if setActive is true (default ). Behavior fix in KDE3.4: the part's widget is shown only if setActive is true, it used to be shown in all cases before.

Definition at line 340 of file partmanager.cpp.

bool KParts::PartManager::allowNestedParts ( ) const
See also
setAllowNestedParts
bool PartManager::eventFilter ( QObject *  obj,
QEvent *  ev 
)
virtual

Definition at line 185 of file partmanager.cpp.

bool KParts::PartManager::ignoreScrollBars ( ) const
See also
setIgnoreScrollBars
void KParts::PartManager::partAdded ( KParts::Part *  part)
signal

Emitted when a new part has been added.

See also
addPart()
void KParts::PartManager::partRemoved ( KParts::Part *  part)
signal

Emitted when a part has been removed.

See also
removePart()
const QList< Part * > PartManager::parts ( ) const

Returns the list of parts being managed by the partmanager.

Definition at line 564 of file partmanager.cpp.

int PartManager::reason ( ) const
Returns
the reason for the last activePartChanged signal emitted.
See also
Reason

Definition at line 596 of file partmanager.cpp.

void PartManager::removeManagedTopLevelWidget ( const QWidget *  topLevel)

Removes the topLevel widget from the list of managed toplevel widgets.

See also
addManagedTopLevelWidget

Definition at line 582 of file partmanager.cpp.

void PartManager::removePart ( Part *  part)
virtual

Removes a part from the manager (this does not delete the object) .

Sets the active part to 0 if part is the activePart() .

Definition at line 378 of file partmanager.cpp.

void PartManager::replacePart ( Part *  oldPart,
Part *  newPart,
bool  setActive = true 
)
virtual

Replaces oldPart with newPart, and sets newPart as active if setActive is true.

This is an optimised version of removePart + addPart

Definition at line 397 of file partmanager.cpp.

Part * PartManager::selectedPart ( ) const
virtual

Returns the current selected part.

Definition at line 540 of file partmanager.cpp.

QWidget * PartManager::selectedWidget ( ) const
virtual

Returns the selected widget of the current selected part (see selectedPart ).

Definition at line 545 of file partmanager.cpp.

SelectionPolicy KParts::PartManager::selectionPolicy ( ) const

Returns the current selection policy.

void PartManager::setActivationButtonMask ( short int  buttonMask)

Specifies which mouse buttons the partmanager should react upon.

By default it reacts on all mouse buttons (LMB/MMB/RMB).

Parameters
buttonMaska combination of Qt::ButtonState values e.g. Qt::LeftButton | Qt::MidButton

Definition at line 175 of file partmanager.cpp.

void PartManager::setActiveComponent ( const KComponentData &  instance)
protectedvirtual

Changes the active instance when the active part changes.

The active instance is used by KBugReport and KAboutDialog. Override if you really need to - usually you don't need to.

Definition at line 495 of file partmanager.cpp.

void PartManager::setActivePart ( Part *  part,
QWidget *  widget = 0 
)
virtual

Sets the active part.

The active part receives activation events.

widget can be used to specify which widget was responsible for the activation. This is important if you have multiple views for a document/part , like in KOffice .

Definition at line 415 of file partmanager.cpp.

void PartManager::setAllowNestedParts ( bool  allow)

Specifies whether the partmanager should handle/allow nested parts or not.

This is a property the shell has to set/specify. Per default we assume that the shell cannot handle nested parts. However in case of a KOffice shell for example we allow nested parts. A Part is nested (a child part) if its parent object inherits KParts::Part. If a child part is activated and nested parts are not allowed/handled, then the top parent part in the tree is activated.

Definition at line 155 of file partmanager.cpp.

void PartManager::setIgnoreExplictFocusRequests ( bool  ignore)
protected

Sets whether the PartManager ignores explict set focus requests from the part.

By default this option is set to false. Set it to true to prevent the part from sending explicit set focus requests to the client application.

Since
4.10

Definition at line 601 of file partmanager.cpp.

void PartManager::setIgnoreScrollBars ( bool  ignore)

Specifies whether the partmanager should ignore mouse click events for scrollbars or not.

If the partmanager ignores them, then clicking on the scrollbars of a non-active/non-selected part will not change the selection or activation state.

The default value is false (read: scrollbars are NOT ignored).

Definition at line 165 of file partmanager.cpp.

void PartManager::setSelectedPart ( Part *  part,
QWidget *  widget = 0 
)
virtual

Sets the selected part.

The selected part receives selection events.

widget can be used to specify which widget was responsible for the selection. This is important if you have multiple views for a document/part , like in KOffice .

Definition at line 511 of file partmanager.cpp.

void PartManager::setSelectionPolicy ( SelectionPolicy  policy)

Sets the selection policy of the partmanager.

Definition at line 145 of file partmanager.cpp.

void PartManager::slotManagedTopLevelWidgetDestroyed ( )
protectedslot

Definition at line 590 of file partmanager.cpp.

void PartManager::slotObjectDestroyed ( )
protectedslot

Removes a part when it is destroyed.

Definition at line 550 of file partmanager.cpp.

void PartManager::slotWidgetDestroyed ( )
protectedslot

Definition at line 556 of file partmanager.cpp.

Property Documentation

bool PartManager::allowNestedParts
readwrite

Definition at line 52 of file partmanager.h.

bool PartManager::ignoreScrollBars
readwrite

Definition at line 53 of file partmanager.h.

PartManager::SelectionPolicy PartManager::selectionPolicy
readwrite

Definition at line 51 of file partmanager.h.


The documentation for this class was generated from the following files:
  • partmanager.h
  • partmanager.cpp
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:50:42 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KParts

Skip menu "KParts"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Modules
  • Related Pages

kdelibs API Reference

Skip menu "kdelibs API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  • kjsembed
  •   WTF
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Nepomuk-Core
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal