Project

General

Profile

Bug #2408 » main.cpp

Florian Ransmayr, 11/13/2013 12:46 PM

 
#include <Wt/WApplication>
#include <Wt/WStandardItemModel>
#include <Wt/WStandardItem>
#include <Wt/WContainerWidget>
#include <Wt/WTableView>
#include <Wt/WTreeView>

using namespace Wt;

int cols = 0;
int rows = 0;

class TestApp : public WApplication
{
public:
void createRow(std::vector<WStandardItem *>& row, int size,
const std::string& s) {

row.clear();

for (int i = 0; i < size; ++i) {
WStandardItem *t
= new WStandardItem(s + " c" + boost::lexical_cast<std::string>(i));

row.push_back(t);
}
}

WStandardItemModel *createModel() {
WStandardItemModel *model_ = new WStandardItemModel(0, cols, this);

for (int i = 0; i < cols; ++i)
model_->setHeaderData(i, Horizontal,
"col " + boost::lexical_cast<std::string>(i));

std::vector<WStandardItem *> row;

for (unsigned i = 0; i < rows; ++i) {
createRow(row, cols, "Item "+ boost::lexical_cast<std::string>(i));
model_->appendRow(row);
}

return model_;
}

TestApp(const WEnvironment& env) : WApplication(env)
{
WStandardItemModel *model = createModel();

WTableView *tv = new WTableView(root());
tv->decorationStyle().setBorder(WBorder(WBorder::Solid, 1, black));
tv->setHeight(250);
tv->setModel(model);
tv->setColumnWidth(0, Wt::WLength(240));
WTreeView *trv = new WTreeView(root());
trv->decorationStyle().setBorder(WBorder(WBorder::Solid, 1, black));
trv->setHeight(250);
trv->setModel(model);
trv->setColumnWidth(0, Wt::WLength(240));

}

void foo() {
}

private:
};

WApplication *createApplication(const WEnvironment& env)
{
TestApp *app = new TestApp(env);

return app;
}

int main(int argc, char *argv[])
{
return WRun(argc, argv, &createApplication);
}
(1-1/2)