Wt examples  3.2.1
Public Member Functions | Static Public Attributes | Protected Member Functions
FolderView Class Reference

A specialized treeview that supports a custom drop event. More...

#include <FolderView.h>

Inheritance diagram for FolderView:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 FolderView (Wt::WContainerWidget *parent=0)
 Constructor.
- Public Member Functions inherited from Wt::WTreeView
 WTreeView (WContainerWidget *parent=0)
void setColumnFormat (int column, const WString &format)
WString columnFormat (int column) const
void setExpanded (const WModelIndex &, bool expanded)
bool isExpanded (const WModelIndex &index) const
void collapse (const WModelIndex &index)
void expand (const WModelIndex &index)
void expandToDepth (int depth)
void setRootIsDecorated (bool show)
bool rootIsDecorated () const
virtual void resize (const WLength &width, const WLength &height)
Signal< WModelIndex > & collapsed ()
Signal< WModelIndex > & expanded ()
virtual WWidgetitemWidget (const WModelIndex &index) const
virtual void setModel (WAbstractItemModel *model)
virtual void setColumnWidth (int column, const WLength &width)
virtual void setAlternatingRowColors (bool enable)
virtual void setRowHeight (const WLength &rowHeight)
virtual void setHeaderHeight (const WLength &height)
virtual void setColumnBorder (const WColor &color)
virtual void setColumnHidden (int column, bool hidden)
virtual void setRowHeaderCount (int count)
virtual int pageCount () const
virtual int pageSize () const
virtual int currentPage () const
virtual void setCurrentPage (int page)
virtual void scrollTo (const WModelIndex &index, ScrollHint hint=EnsureVisible)
WAbstractItemModelmodel () const
void setRootIndex (const WModelIndex &rootIndex)
const WModelIndexrootIndex () const
void setItemDelegate (WAbstractItemDelegate *delegate)
WAbstractItemDelegateitemDelegate () const
void setItemDelegateForColumn (int column, WAbstractItemDelegate *delegate)
WAbstractItemDelegateitemDelegateForColumn (int column) const
WAbstractItemDelegateitemDelegate (const WModelIndex &index) const
WAbstractItemDelegateitemDelegate (int column) const
void setHeaderItemDelegate (WAbstractItemDelegate *delegate)
WAbstractItemDelegateheaderItemDelegate () const
virtual void setColumnAlignment (int column, AlignmentFlag alignment)
virtual AlignmentFlag columnAlignment (int column) const
virtual void setHeaderAlignment (int column, WFlags< AlignmentFlag > alignment)
AlignmentFlag headerAlignment (int column) const
AlignmentFlag horizontalHeaderAlignment (int column) const
AlignmentFlag verticalHeaderAlignment (int column) const
void setHeaderWordWrap (int column, bool enabled)
virtual bool alternatingRowColors () const
void sortByColumn (int column, SortOrder order)
int sortColumn () const
SortOrder sortOrder () const
void setSortingEnabled (bool enabled)
void setSortingEnabled (int column, bool enabled)
bool isSortingEnabled () const
bool isSortingEnabled (int column) const
void setColumnResizeEnabled (bool enabled)
bool isColumnResizeEnabled () const
void setSelectionBehavior (SelectionBehavior behavior)
SelectionBehavior selectionBehavior () const
void setSelectionMode (SelectionMode mode)
SelectionMode selectionMode () const
WItemSelectionModelselectionModel () const
void setSelectedIndexes (const WModelIndexSet &indexes)
void select (const WModelIndex &index, SelectionFlag option=Select)
bool isSelected (const WModelIndex &index) const
WModelIndexSet selectedIndexes () const
void setDragEnabled (bool enable)
void setDropsEnabled (bool enable)
const WLengthrowHeight () const
WLength columnWidth (int column) const
bool isColumnHidden (int column) const
void hideColumn (int column)
void showColumn (int column)
void setHeaderHeight (const WLength &height, bool multiLine)
const WLengthheaderHeight () const
void setEditTriggers (WFlags< EditTrigger > editTriggers)
WFlags< EditTriggereditTriggers () const
void setEditOptions (WFlags< EditOption > options)
WFlags< EditOptioneditOptions () const
void edit (const WModelIndex &index)
void closeEditor (const WModelIndex &index, bool saveData=true)
void closeEditors (bool saveData=true)
WValidator::State validateEditor (const WModelIndex &index)
WValidator::State validateEditors ()
bool isEditing (const WModelIndex &index) const
bool isValid (const WModelIndex &index) const
Signal< WModelIndex,
WMouseEvent > & 
clicked ()
Signal< WModelIndex,
WMouseEvent > & 
doubleClicked ()
Signal< WModelIndex,
WMouseEvent > & 
mouseWentDown ()
Signal< WModelIndex,
WMouseEvent > & 
mouseWentUp ()
SignalselectionChanged ()
SignalpageChanged ()
Signal< int, WLength > & columnResized ()
int rowHeaderCount () const
void setColumn1Fixed (bool enable)
bool column1Fixed () const
 WCompositeWidget (WContainerWidget *parent=0)
 WCompositeWidget (WWidget *implementation, WContainerWidget *parent)
virtual const std::string id () const
virtual void setPositionScheme (PositionScheme scheme)
virtual PositionScheme positionScheme () const
virtual void setOffsets (const WLength &offset, WFlags< Side > sides=All)
virtual WLength offset (Side s) const
virtual WLength width () const
virtual WLength height () const
virtual void setMinimumSize (const WLength &width, const WLength &height)
virtual WLength minimumWidth () const
virtual WLength minimumHeight () const
virtual void setMaximumSize (const WLength &width, const WLength &height)
virtual WLength maximumWidth () const
virtual WLength maximumHeight () const
virtual void setLineHeight (const WLength &height)
virtual WLength lineHeight () const
virtual void setFloatSide (Side s)
virtual Side floatSide () const
virtual void setClearSides (WFlags< Side > sides)
virtual WFlags< SideclearSides () const
virtual void setMargin (const WLength &margin, WFlags< Side > sides=All)
virtual WLength margin (Side side) const
virtual void setHiddenKeepsGeometry (bool enabled)
virtual bool hiddenKeepsGeometry () const
virtual void setHidden (bool hidden, const WAnimation &animation=WAnimation())
virtual bool isHidden () const
virtual bool isVisible () const
virtual void setDisabled (bool disabled)
virtual bool isDisabled () const
virtual bool isEnabled () const
virtual void setPopup (bool popup)
virtual bool isPopup () const
virtual void setInline (bool isInline)
virtual bool isInline () const
virtual void setDecorationStyle (const WCssDecorationStyle &style)
virtual WCssDecorationStyledecorationStyle ()
virtual void setStyleClass (const WString &styleClass)
virtual WString styleClass () const
virtual void addStyleClass (const WString &styleClass, bool force=false)
virtual void removeStyleClass (const WString &styleClass, bool force=false)
virtual void setVerticalAlignment (AlignmentFlag alignment, const WLength &length=WLength::Auto)
virtual AlignmentFlag verticalAlignment () const
virtual WLength verticalAlignmentLength () const
virtual void setToolTip (const WString &text, TextFormat textFormat=PlainText)
virtual WString toolTip () const
virtual void refresh ()
virtual void setAttributeValue (const std::string &name, const WString &value)
virtual WString attributeValue (const std::string &name) const
virtual void setJavaScriptMember (const std::string &name, const std::string &value)
virtual std::string javaScriptMember (const std::string &name) const
virtual void callJavaScriptMember (const std::string &name, const std::string &args)
virtual void load ()
virtual bool loaded () const
virtual void setTabIndex (int index)
virtual int tabIndex () const
virtual void setId (const std::string &id)
virtual WWidgetfind (const std::string &name)
virtual void setSelectable (bool selectable)
virtual void doJavaScript (const std::string &js)
virtual void propagateSetEnabled (bool enabled)
virtual ~WWidget ()
WWidgetparent () const
void setWidth (const WLength &width)
void setHeight (const WLength &height)
virtual void positionAt (const WWidget *widget, Orientation orientation=Vertical)
std::string jsRef () const
virtual void acceptDrops (const std::string &mimeType, const WString &hoverStyleClass=WString())
virtual void stopAcceptDrops (const std::string &mimeType)
virtual void htmlText (std::ostream &out)
bool isRendered () const
void hide ()
void animateHide (const WAnimation &animation)
void show ()
void animateShow (const WAnimation &animation)
void enable ()
void disable ()
bool layoutSizeAware () const
 WObject (WObject *parent=0)
virtual ~WObject ()
void setObjectName (const std::string &name)
virtual std::string objectName () const
void resetLearnedSlots ()
void resetLearnedSlot (void(T::*method)())
WStatelessSlot * implementStateless (void(T::*method)())
WStatelessSlot * implementStateless (void(T::*method)(), void(T::*undoMethod)())
WStatelessSlot * implementJavaScript (void(T::*method)(), const std::string &jsCode)
void addChild (WObject *child)
virtual void removeChild (WObject *child)
const std::vector< WObject * > & children () const

Static Public Attributes

static const char * FileSelectionMimeType = "application/x-computers-selection"
 Constant that indicates the mime type for a selection of files.

Protected Member Functions

virtual void dropEvent (const Wt::WDropEvent &event, const Wt::WModelIndex &target)
 Drop event.
- Protected Member Functions inherited from Wt::WTreeView
virtual void enableAjax ()
 WAbstractItemView (WContainerWidget *parent=0)
virtual WWidgetcreateExtraHeaderWidget (int column)
WWidgetextraHeaderWidget (int column)
virtual WWidgetcreatePageNavigationBar ()
void setImplementation (WWidget *widget)
WWidgetimplementation ()
virtual int boxPadding (Orientation orientation) const
virtual int boxBorder (Orientation orientation) const
void setLayoutSizeAware (bool sizeAware)
virtual void layoutSizeChanged (int width, int height)
 WWidget (WContainerWidget *parent=0)
virtual void dropEvent (WDropEvent dropEvent)
virtual WStatelessSlot * getStateless (Method method)

Additional Inherited Members

- Public Types inherited from Wt::WTreeView
enum  EditTrigger
enum  EditOption
enum  ScrollHint
- Public Types inherited from Wt::WAbstractItemView
- Public Attributes inherited from Wt::WTreeView
 NoEditTrigger
 SingleClicked
 DoubleClicked
 SelectedClicked
 SingleEditor
 MultipleEditors
 SaveWhenClosed
 LeaveEditorsOpen
 EnsureVisible
 PositionAtTop
 PositionAtBottom
 PositionAtCenter
- Public Attributes inherited from Wt::WAbstractItemView

Detailed Description

A specialized treeview that supports a custom drop event.

Definition at line 19 of file FolderView.h.


Constructor & Destructor Documentation

FolderView::FolderView ( Wt::WContainerWidget parent = 0)

Constructor.

Definition at line 19 of file FolderView.C.

: WTreeView(parent)
{
/*
* Accept drops for the custom mime type.
*/
}

Member Function Documentation

void FolderView::dropEvent ( const Wt::WDropEvent event,
const Wt::WModelIndex target 
)
protectedvirtual

Drop event.

Reimplemented from Wt::WTreeView.

Definition at line 28 of file FolderView.C.

{
/*
* We reimplement the drop event to handle the dropping of a
* selection of computers.
*
* The test below would always be true in this case, since we only
* indicated support for that particular mime type.
*/
if (event.mimeType() == FileSelectionMimeType) {
/*
* The source object for a drag of a selection from a WTreeView is
* a WItemSelectionModel.
*/
= dynamic_cast<WItemSelectionModel *>(event.source());
#ifdef WT_THREADED
int result = WMessageBox::show
("Drop event",
"Move "
+ boost::lexical_cast<std::string>(selection->selectedIndexes().size())
+ " files to folder '"
+ boost::any_cast<WString>(target.data(DisplayRole)).toUTF8()
+ "' ?",
Yes | No);
#else
int result = Yes;
#endif
if (result == Yes) {
/*
* You can access the source model from the selection and
* manipulate it.
*/
WAbstractItemModel *sourceModel = selection->model();
WModelIndexSet toChange = selection->selectedIndexes();
for (WModelIndexSet::reverse_iterator i = toChange.rbegin();
i != toChange.rend(); ++i) {
WModelIndex index = *i;
/*
* Copy target folder to file. Since we are using a
* dynamic WSortFilterProxyModel that filters on folder, this
* will also result in the removal of the file from the
* current view.
*/
std::map<int, boost::any> data = model()->itemData(target);
sourceModel->setItemData(index, data);
}
}
}
}

Member Data Documentation

const char * FolderView::FileSelectionMimeType = "application/x-computers-selection"
static

Constant that indicates the mime type for a selection of files.

Every kind of dragged data should be identified using a unique mime type.

Definition at line 26 of file FolderView.h.


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

Generated on Wed Jun 13 2012 for the C++ Web Toolkit (Wt) by doxygen 1.8.1