Ejemplo n.º 1
0
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));
}
Ejemplo n.º 2
0
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));
}