KJS::Object KstBindWindow::construct(KJS::ExecState *exec, const KJS::List& args) { QString name; if (args.size() > 1) { return createSyntaxError(exec); } if (args.size() == 1) { if (args[0].type() != KJS::StringType) { return createTypeError(exec, 0); } name = args[0].toString(exec).qstring(); } name = KstApp::inst()->newWindow(name); KstViewWindow *w = dynamic_cast<KstViewWindow*>(KstApp::inst()->findWindow(name)); if (!w) { return createGeneralError(exec, i18n("Failed to create new tab.")); } return KJS::Object(new KstBindWindow(exec, w)); }
KJS::Object KstBindPlot::construct(KJS::ExecState *exec, const KJS::List& args) { KstViewWindow *w = 0L; if (args.size() == 1) { w = extractWindow(exec, args[0]); if (!w) { return createTypeError(exec, 0); } } else { return createSyntaxError(exec); } QString n = w->createPlotObject(KST::suggestPlotName(), false); Kst2DPlotPtr p = *w->view()->findChildrenType<Kst2DPlot>(true).findTag(n); if (!p) { return createGeneralError(exec, i18n("Failed to create plot.")); } w->view()->paint(KstPainter::P_PAINT); return KJS::Object(new KstBindPlot(exec, p)); }