Wt examples  3.3.8
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ExampleSourceViewer Class Reference

A simple widget to visualise a set of example source files. More...

#include <ExampleSourceViewer.h>

Inheritance diagram for ExampleSourceViewer:
Inheritance graph
[legend]

Public Member Functions

 ExampleSourceViewer (const std::string &deployPath, const std::string &examplesRoot, const std::string &examplesType)
 Constructor. More...
 
- Public Member Functions inherited from Wt::WContainerWidget
 WContainerWidget (WContainerWidget *parent=0)
 
 ~WContainerWidget ()
 
void setLayout (WLayout *layout)
 
void setLayout (WLayout *layout, WFlags< AlignmentFlag > alignment)
 
WLayoutlayout ()
 
virtual void addWidget (WWidget *widget)
 
virtual void insertBefore (WWidget *widget, WWidget *before)
 
virtual void insertWidget (int index, WWidget *widget)
 
virtual void removeWidget (WWidget *widget)
 
virtual void clear ()
 
virtual int indexOf (WWidget *widget) const
 
virtual WWidgetwidget (int index) const
 
virtual int count () const
 
void setContentAlignment (WFlags< AlignmentFlag > contentAlignment)
 
void setPadding (const WLength &padding, WFlags< Side > sides=All)
 
WLength padding (Side side) const
 
WFlags< AlignmentFlagcontentAlignment () const
 
void setOverflow (Overflow overflow, WFlags< Orientation > orientation=(Horizontal|Vertical))
 
void setList (bool list, bool ordered=false)
 
bool isList () const
 
bool isUnorderedList () const
 
bool isOrderedList () const
 
EventSignal< WScrollEvent > & scrolled ()
 
int scrollTop () const
 
int scrollLeft () const
 
- Public Member Functions inherited from Wt::WInteractWidget
 WInteractWidget (WContainerWidget *parent=0)
 
EventSignal< WKeyEvent > & keyWentDown ()
 
EventSignal< WKeyEvent > & keyPressed ()
 
EventSignal< WKeyEvent > & keyWentUp ()
 
EventSignalenterPressed ()
 
EventSignalescapePressed ()
 
EventSignal< WMouseEvent > & clicked ()
 
EventSignal< WMouseEvent > & doubleClicked ()
 
EventSignal< WMouseEvent > & mouseWentDown ()
 
EventSignal< WMouseEvent > & mouseWentUp ()
 
EventSignal< WMouseEvent > & mouseWentOut ()
 
EventSignal< WMouseEvent > & mouseWentOver ()
 
EventSignal< WMouseEvent > & mouseMoved ()
 
EventSignal< WMouseEvent > & mouseDragged ()
 
EventSignal< WMouseEvent > & mouseWheel ()
 
EventSignal< WTouchEvent > & touchStarted ()
 
EventSignal< WTouchEvent > & touchEnded ()
 
EventSignal< WTouchEvent > & touchMoved ()
 
EventSignal< WGestureEvent > & gestureStarted ()
 
EventSignal< WGestureEvent > & gestureChanged ()
 
EventSignal< WGestureEvent > & gestureEnded ()
 
void setDraggable (const std::string &mimeType, WWidget *dragWidget=0, bool isDragWidgetOnly=false, WObject *sourceWidget=0)
 
void unsetDraggable ()
 
void setMouseOverDelay (int delay)
 
int mouseOverDelay () const
 
virtual void setPopup (bool popup)
 
virtual void load ()
 
virtual bool isEnabled () const
 
- Public Member Functions inherited from Wt::WWebWidget
 WWebWidget (WContainerWidget *parent=0)
 
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 void resize (const WLength &width, const WLength &height)
 
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 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 bool hasStyleClass (const WString &styleClass) const
 
virtual void setVerticalAlignment (AlignmentFlag alignment, const WLength &length=WLength())
 
virtual AlignmentFlag verticalAlignment () const
 
virtual WLength verticalAlignmentLength () const
 
virtual void setToolTip (const WString &text, TextFormat textFormat=PlainText)
 
virtual void setDeferredToolTip (bool enable, 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 bool loaded () const
 
virtual void setId (const std::string &id)
 
virtual WWidgetfind (const std::string &name)
 
virtual WWidgetfindById (const std::string &id)
 
virtual void setSelectable (bool selectable)
 
virtual void doJavaScript (const std::string &javascript)
 
virtual const std::string id () const
 
void setLoadLaterWhenInvisible (bool)
 
std::string htmlTagName () const
 
void setHtmlTagName (const std::string &tag)
 
const std::vector< WWidget * > & children () const
 
SignalchildrenChanged ()
 
virtual void setCanReceiveFocus (bool enabled)
 
virtual bool canReceiveFocus () const
 
virtual bool setFirstFocus ()
 
virtual void setFocus (bool focus)
 
virtual bool hasFocus () const
 
virtual void setTabIndex (int index)
 
virtual int tabIndex () const
 
EventSignalblurred ()
 
EventSignalfocussed ()
 
virtual bool scrollVisibilityEnabled () const WT_CXX11ONLY(finaloverride)
 
virtual void setScrollVisibilityEnabled (bool enabled) WT_CXX11ONLY(finaloverride)
 
virtual int scrollVisibilityMargin () const WT_CXX11ONLY(finaloverride)
 
virtual void setScrollVisibilityMargin (int margin) WT_CXX11ONLY(finaloverride)
 
virtual Signal< bool > & scrollVisibilityChanged () WT_CXX11ONLY(finaloverride)
 
virtual bool isScrollVisible () const WT_CXX11ONLY(finaloverride)
 
virtual void setThemeStyleEnabled (bool enabled)
 
virtual bool isThemeStyleEnabled () const
 
- Public Member Functions inherited from Wt::WWidget
virtual ~WWidget ()
 
WWidgetparent () const
 
virtual void removeChild (WObject *child)
 
void setWidth (const WLength &width)
 
void setHeight (const WLength &height)
 
virtual void positionAt (const WWidget *widget, Orientation orientation=Vertical)
 
virtual void toggleStyleClass (const WString &styleClass, bool add, bool force=false)
 
std::string jsRef () const
 
void setFocus ()
 
virtual void acceptDrops (const std::string &mimeType, const WString &hoverStyleClass=WString())
 
virtual void stopAcceptDrops (const std::string &mimeType)
 
virtual void setObjectName (const std::string &name)
 
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
 
- Public Member Functions inherited from Wt::WObject
 WObject (WObject *parent=0)
 
virtual ~WObject ()
 
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)())
 
void isNotStateless ()
 
WStatelessSlot * implementJavaScript (void(T::*method)(), const std::string &jsCode)
 
void addChild (WObject *child)
 
const std::vector< WObject * > & children () const
 
WObjectparent () const
 

Private Member Functions

void cppTraverseDir (Wt::WStandardItem *parent, const boost::filesystem::path &path)
 
void javaTraverseDir (Wt::WStandardItem *parent, const boost::filesystem::path &path)
 
void javaTraversePackages (Wt::WStandardItem *parent, const boost::filesystem::path &srcPath, const std::string packageName)
 
void showFile ()
 Displayed the currently selected file. More...
 
void handlePathChange ()
 
void setExample (const std::string &exampleDir, const std::string &example)
 

Private Attributes

Wt::WTreeViewexampleView_
 
SourceViewsourceView_
 
std::string deployPath_
 
std::string examplesRoot_
 
std::string examplesType_
 
Wt::WStandardItemModelmodel_
 

Additional Inherited Members

- Public Types inherited from Wt::WContainerWidget
enum  Overflow
 
- Public Types inherited from Wt::WObject
typedef void(WObject::* Method) ()
 
- Static Public Member Functions inherited from Wt::WWebWidget
static WString escapeText (const WString &text, bool newlinesToo=false)
 
static std::string & escapeText (std::string &text, bool newlinestoo=false)
 
static bool removeScript (WString &text)
 
static std::string jsStringLiteral (const std::string &v, char delimiter= '\'')
 
- Static Public Member Functions inherited from Wt::WWidget
static WString tr (const char *key)
 
- Public Attributes inherited from Wt::WContainerWidget
 OverflowVisible
 
 OverflowAuto
 
 OverflowHidden
 
 OverflowScroll
 
- Protected Member Functions inherited from Wt::WInteractWidget
virtual void propagateSetEnabled (bool enabled)
 
- Protected Member Functions inherited from Wt::WWebWidget
virtual void enableAjax ()
 
virtual WStatelessSlot * getStateless (Method method)
 
virtual void render (WFlags< RenderFlag > flags)
 
- Protected Member Functions inherited from Wt::WWidget
void setLayoutSizeAware (bool sizeAware)
 
virtual void layoutSizeChanged (int width, int height)
 
 WWidget (WContainerWidget *parent=0)
 
virtual void dropEvent (WDropEvent dropEvent)
 
virtual int boxPadding (Orientation orientation) const
 
virtual int boxBorder (Orientation orientation) const
 
void scheduleRender (WFlags< RepaintFlag > flags=0)
 
- Static Protected Member Functions inherited from Wt::WObject
static WObjectsender ()
 

Detailed Description

A simple widget to visualise a set of example source files.

Definition at line 21 of file ExampleSourceViewer.h.

Constructor & Destructor Documentation

ExampleSourceViewer::ExampleSourceViewer ( const std::string &  deployPath,
const std::string &  examplesRoot,
const std::string &  examplesType 
)

Constructor.

Definition at line 71 of file ExampleSourceViewer.C.

74  : deployPath_(deployPath),
75  examplesRoot_(examplesRoot),
76  examplesType_(examplesType)
77 {
78  wApp->internalPathChanged().connect
80 
82 }

Member Function Documentation

void ExampleSourceViewer::cppTraverseDir ( Wt::WStandardItem parent,
const boost::filesystem::path &  path 
)
private

Definition at line 194 of file ExampleSourceViewer.C.

196 {
197  static const char *supportedFiles[] = {
198  ".C", ".cpp", ".h", ".css", ".xml", ".png", ".gif", ".csv", ".ico", 0
199  };
200 
201  FileItem* dir = new FileItem("/icons/yellow-folder-open.png", filename(path),
202  "");
203  parent->appendRow(dir);
204  parent = dir;
205  try {
206  std::set<fs::path> paths;
207 
208  fs::directory_iterator end_itr;
209  for (fs::directory_iterator i(path); i != end_itr; ++i)
210  paths.insert(*i);
211 
212  std::vector<FileItem*> classes, files;
213  std::vector<fs::path> dirs;
214 
215  while (!paths.empty()) {
216  fs::path p = *paths.begin();
217  paths.erase(p);
218 
219  // skip symbolic links and other files
220  if (fs::is_symlink(p))
221  continue;
222 
223  // skip files with an extension we do not want to handle
224  if (fs::is_regular(p)) {
225  std::string ext = fs::extension(p);
226  bool supported = false;
227  for (const char **s = supportedFiles; *s != 0; ++s)
228  if (*s == ext) {
229  supported = true;
230  break;
231  }
232 
233  if (!supported)
234  continue;
235  }
236 
237  // see if we have one file of a class (.C, .h)
238  fs::path companion = getCompanion(p);
239  if (!companion.empty()) {
240  std::set<fs::path>::iterator it_companion = paths.find(companion);
241 
242  if (it_companion != paths.end()) {
243  std::string className = stem(p);
244  escapeText(className);
245  std::string label = "<i>class</i> " + className;
246 
247  FileItem *classItem =
248  new FileItem("/icons/cppclass.png", label, std::string());
249  classItem->setFlags(classItem->flags() | ItemIsXHTMLText);
250 
251  FileItem *header = new FileItem("/icons/document.png", filename(p),
252  p.string());
253  FileItem *cpp = new FileItem("/icons/document.png",
254  filename(*it_companion),
255  (*it_companion).string());
256  classItem->appendRow(header);
257  classItem->appendRow(cpp);
258 
259  classes.push_back(classItem);
260  paths.erase(it_companion);
261  } else {
262  FileItem *file = new FileItem("/icons/document.png", filename(p),
263  p.string());
264  files.push_back(file);
265  }
266  } else if (fs::is_directory(p)) {
267  dirs.push_back(p);
268  } else {
269  FileItem *file = new FileItem("/icons/document.png", filename(p),
270  p.string());
271  files.push_back(file);
272  }
273  }
274 
275  std::sort(dirs.begin(), dirs.end(), comparePaths);
276 
277  for (unsigned int i = 0; i < classes.size(); i++)
278  parent->appendRow(classes[i]);
279 
280  for (unsigned int i = 0; i < files.size(); i++)
281  parent->appendRow(files[i]);
282 
283  for (unsigned int i = 0; i < dirs.size(); i++)
284  cppTraverseDir(parent, dirs[i]);
285  } catch (fs::filesystem_error& e) {
286  std::cerr << e.what() << std::endl;
287  }
288 }
static std::string stem(const fs::path &p)
WStandardItem which stores a file.
Definition: FileItem.h:28
ItemIsXHTMLText
void cppTraverseDir(Wt::WStandardItem *parent, const boost::filesystem::path &path)
static std::string filename(const fs::path &p)
static bool comparePaths(const fs::path &p1, const fs::path &p2)
static WString escapeText(const WString &text, bool newlinesToo=false)
void appendRow(const std::vector< WStandardItem * > &items)
void setFlags(WFlags< ItemFlag > flags)
static fs::path getCompanion(const fs::path &path)
WFlags< ItemFlag > flags() const
void ExampleSourceViewer::handlePathChange ( )
private

Definition at line 84 of file ExampleSourceViewer.C.

85 {
86  WApplication *app = wApp;
87 
88  if (app->internalPathMatches(deployPath_)) {
89  std::string example = app->internalPathNextPart(deployPath_);
90 
91  if (example.find("..") != std::string::npos
92  || example.find('/') != std::string::npos
93  || example.find('\\') != std::string::npos) {
94  app->setInternalPathValid(false);
95  setExample("INVALID_DIR", "INVALID");
96  } else
97  setExample(examplesRoot_ + example, example);
98  }
99 }
bool internalPathMatches(const std::string &path) const
void setExample(const std::string &exampleDir, const std::string &example)
void setInternalPathValid(bool valid)
std::string internalPathNextPart(const std::string &path) const
void ExampleSourceViewer::javaTraverseDir ( Wt::WStandardItem parent,
const boost::filesystem::path &  path 
)
private

Definition at line 324 of file ExampleSourceViewer.C.

326 {
327  FileItem* dir = new FileItem("/icons/yellow-folder-open.png", filename(path),
328  "");
329  parent->appendRow(dir);
330  parent = dir;
331 
332  std::vector<fs::path> files, dirs;
333 
334  fs::directory_iterator end_itr;
335  for (fs::directory_iterator i(path); i != end_itr; ++i) {
336  fs::path p = *i;
337  if (fs::is_directory(p)) {
338  if (filename(p) == "src") {
339  FileItem* dir = new FileItem("/icons/package-folder-open.png",
340  filename(p), "");
341  parent->appendRow(dir);
342  javaTraversePackages(dir, p, "");
343  } else
344  dirs.push_back(p);
345  } else {
346  files.push_back(p);
347  }
348  }
349 
350  std::sort(dirs.begin(), dirs.end(), comparePaths);
351  std::sort(files.begin(), files.end(), comparePaths);
352 
353  for (unsigned int i = 0; i < dirs.size(); i++)
354  javaTraverseDir(parent, dirs[i]);
355 
356  for (unsigned int i = 0; i < files.size(); i++) {
357  FileItem *file = new FileItem("/icons/document.png", filename(files[i]),
358  files[i].string());
359  parent->appendRow(file);
360  }
361 }
WStandardItem which stores a file.
Definition: FileItem.h:28
void javaTraverseDir(Wt::WStandardItem *parent, const boost::filesystem::path &path)
void javaTraversePackages(Wt::WStandardItem *parent, const boost::filesystem::path &srcPath, const std::string packageName)
static std::string filename(const fs::path &p)
static bool comparePaths(const fs::path &p1, const fs::path &p2)
void appendRow(const std::vector< WStandardItem * > &items)
void ExampleSourceViewer::javaTraversePackages ( Wt::WStandardItem parent,
const boost::filesystem::path &  srcPath,
const std::string  packageName 
)
private

Definition at line 290 of file ExampleSourceViewer.C.

293 {
294  fs::directory_iterator end_itr;
295 
296  FileItem *packageItem = 0;
297  for (fs::directory_iterator i(srcPath); i != end_itr; ++i) {
298  fs::path p = *i;
299  if (fs::is_regular(p)) {
300  if (!packageItem) {
301  packageItem = new FileItem("/icons/package.png", packageName, "");
302  parent->appendRow(packageItem);
303  }
304 
305  FileItem *file = new FileItem("/icons/javaclass.png", filename(p),
306  p.string());
307  packageItem->appendRow(file);
308  }
309  }
310 
311  for (fs::directory_iterator i(srcPath); i != end_itr; ++i) {
312  fs::path p = *i;
313  if (fs::is_directory(p)) {
314  std::string pn = packageName;
315  if (!pn.empty())
316  pn += ".";
317  pn += filename(p);
318 
319  javaTraversePackages(parent, p, pn);
320  }
321  }
322 }
WStandardItem which stores a file.
Definition: FileItem.h:28
void javaTraversePackages(Wt::WStandardItem *parent, const boost::filesystem::path &srcPath, const std::string packageName)
static std::string filename(const fs::path &p)
void appendRow(const std::vector< WStandardItem * > &items)
void ExampleSourceViewer::setExample ( const std::string &  exampleDir,
const std::string &  example 
)
private

Definition at line 101 of file ExampleSourceViewer.C.

103 {
104  clear();
105 
106  bool exists = false;
107  try {
108  exists = fs::exists(exampleDir);
109  } catch (std::exception&) {
110  }
111 
112  if (!exists) {
113  WApplication::instance()->setInternalPathValid(false);
114  addWidget(new WText("No such example: " + exampleDir));
115  return;
116  }
117 
118  model_ = new WStandardItemModel(0, 1, this);
119  if (examplesType_ == "CPP") {
120  cppTraverseDir(model_->invisibleRootItem(), exampleDir);
121  } else if (examplesType_ == "JAVA") {
122  javaTraverseDir(model_->invisibleRootItem(), exampleDir);
123  }
124 
125  WApplication::instance()->setTitle(tr("srcview.title." + example));
126  WText *title =
127  new WText(tr("srcview.title." + examplesType_ + "." + example));
128  title->setInternalPathEncoding(true);
129 
130  exampleView_ = new WTreeView();
132  exampleView_->resize(300, WLength::Auto);
136  exampleView_->setSelectionMode(SingleSelection);
140 
144  sourceView_->setStyleClass("source-view");
145 
146  /*
147  * Expand path to first file, to show something in the source viewer
148  */
149  WStandardItem *w = model_->item(0);
150  do {
151  exampleView_->setExpanded(w->index(), true);
152  if (w->rowCount() > 0)
153  w = w->child(0);
154  else {
156  w = 0;
157  }
158  } while (w);
159 
160  WVBoxLayout *topLayout = new WVBoxLayout();
161  topLayout->addWidget(title);
162 
163  WHBoxLayout *gitLayout = new WHBoxLayout();
164  gitLayout->addWidget(exampleView_, 0);
165  gitLayout->addWidget(sourceView_, 1);
166  topLayout->addLayout(gitLayout, 1);
167  gitLayout->setResizable(0);
168 
169  /*
170  * FIXME, in plain HTML mode, we should set a minimum size to the source
171  * view, and remove this in enableAjax() ?
172  */
173  // sourceView_->setHeight("100%");
174 
175  setLayout(topLayout);
176  setStyleClass("maindiv");
177 }
static const int FileNameRole
Definition: FileItem.h:33
Wt::WStandardItemModel * model_
void addLayout(WLayout *layout, int stretch=0, WFlags< AlignmentFlag > alignment=0)
virtual void resize(const WLength &width, const WLength &height)
static WString tr(const char *key)
void showFile()
Displayed the currently selected file.
WStandardItem * child(int row, int column=0) const
int rowCount() const
static const int FilePathRole
Definition: FileItem.h:32
virtual void setAlternatingRowColors(bool enable)
void setSelectionMode(SelectionMode mode)
Wt::WTreeView * exampleView_
WStandardItem * invisibleRootItem() const
void select(const WModelIndex &index, SelectionFlag option=Select)
virtual void setStyleClass(const WString &styleClass)
virtual void clear()
static const int ContentsRole
Definition: FileItem.h:31
WModelIndex index() const
Signal & selectionChanged()
void javaTraverseDir(Wt::WStandardItem *parent, const boost::filesystem::path &path)
void setInternalPathEncoding(bool enabled)
void setLayout(WLayout *layout)
void setResizable(int index, bool enabled=true, const WLength &initialSize=WLength::Auto)
void expandToDepth(int depth)
View class for source code.
Definition: SourceView.h:26
void cppTraverseDir(Wt::WStandardItem *parent, const boost::filesystem::path &path)
void setExpanded(const WModelIndex &, bool expanded)
virtual void setModel(WAbstractItemModel *model)
void addWidget(WWidget *widget, int stretch=0, WFlags< AlignmentFlag > alignment=0)
virtual void addWidget(WWidget *widget)
void setSortingEnabled(bool enabled)
virtual void setHeaderHeight(const WLength &height)
virtual Wt::Signals::connection connect(WObject *target, WObject::Method method)
WStandardItem * item(int row, int column=0) const
void ExampleSourceViewer::showFile ( )
private

Displayed the currently selected file.

Definition at line 365 of file ExampleSourceViewer.C.

365  {
366  if (exampleView_->selectedIndexes().empty())
367  return;
368 
369  WModelIndex selected = *exampleView_->selectedIndexes().begin();
370 
371  // expand a folder when clicked
372  if (exampleView_->model()->rowCount(selected) > 0
373  && !exampleView_->isExpanded(selected))
374  exampleView_->setExpanded(selected, true);
375 
376  // (for a file,) load data in source viewer
377  sourceView_->setIndex(selected);
378 }
WAbstractItemModel * model() const
WModelIndexSet selectedIndexes() const
virtual int rowCount(const WModelIndex &parent=WModelIndex()) const =0
Wt::WTreeView * exampleView_
bool isExpanded(const WModelIndex &index) const
void setExpanded(const WModelIndex &, bool expanded)
bool setIndex(const Wt::WModelIndex &index)
Sets the model index.
Definition: SourceView.C:30

Member Data Documentation

std::string ExampleSourceViewer::deployPath_
private

Definition at line 34 of file ExampleSourceViewer.h.

std::string ExampleSourceViewer::examplesRoot_
private

Definition at line 35 of file ExampleSourceViewer.h.

std::string ExampleSourceViewer::examplesType_
private

Definition at line 36 of file ExampleSourceViewer.h.

Wt::WTreeView* ExampleSourceViewer::exampleView_
private

Definition at line 31 of file ExampleSourceViewer.h.

Wt::WStandardItemModel* ExampleSourceViewer::model_
private

Definition at line 38 of file ExampleSourceViewer.h.

SourceView* ExampleSourceViewer::sourceView_
private

Definition at line 32 of file ExampleSourceViewer.h.


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

Generated on Mon Sep 4 2017 for the C++ Web Toolkit (Wt) by doxygen 1.8.11