示例#1
0
文件: Builder.cpp 项目: eval1749/evm
// See also Parser::CloseFinally.
void Builder::EmitCloses(
  Instruction& ref_inst,
  FrameReg* const pStart,
  FrameReg* const pEnd) {

  for (auto pRunner = pStart;
    pRunner != pEnd;
    pRunner = pRunner->GetOuter()) {

    ref_inst.bblock().InsertBeforeI(*new(zone()) CloseI(pRunner), &ref_inst);

    if (auto const pOpenI = pRunner->GetDefI()->DynamicCast<OpenFinallyI>()) {
      auto& v1 = NewValues();

      ref_inst.bblock().InsertBeforeI(
          *new(zone()) ValuesI(
              v1,
              *pOpenI->GetVy()->GetDefI()->StaticCast<ValuesI>()),
          &ref_inst);

      ref_inst.bblock().InsertBeforeI(
        *new(zone()) CallI(*Ty_Void, *Void, pOpenI->op0(), v1),
        &ref_inst);
    }
  }
}
示例#2
0
void __fastcall TfrmMain::ButtonLineClick(TObject *Sender)
{
  Chart->Options->ChartKind = ckChartLine;
  for (int i = 0; Chart->Options->PenCount; i++)
     Chart->Options->PenMarkerKind[i] = pmkNone;

  NewValues();
}
示例#3
0
void __fastcall TfrmMain::ButtonLineMarkerClick(TObject *Sender)
{
  Chart->Options->ChartKind = ckChartLine;
  Chart->Options->PenMarkerKind[0] = pmkDiamond; // demonstrate both Diamond and Circle Marks.
  Chart->Options->PenMarkerKind[1] = pmkDiamond;
  Chart->Options->PenMarkerKind[2] = pmkCircle;

  NewValues();
}
示例#4
0
/*!
 *\~english
 *	Update values in database.
 *	Udate values in current document header.
 *\~russian
 *	Обновляет значения в базе данных.
 *	Обновляет значения в текущей шапке документа.
 *\~
 *\return \~english error code.\~russian код ошибки.\~
 */
int
wDocument::Update()
{
    if ( dbobj ) {
        return dbobj->Update();
        NewValues();
    }
    else return err_abstractobj;
}
示例#5
0
void __fastcall TfrmMain::MenuSecondaryAxisModeClick(TObject *Sender)
{
  MenuSecondaryAxisMode->Checked = ! MenuSecondaryAxisMode->Checked;

  if (MenuSecondaryAxisMode->Checked)
  {
    ButtonLine->Down = true;
    ButtonLineClick(Sender);
  }
  else
    NewValues();
}
示例#6
0
/*!
 *\~english
 *	Select object in database.
 *\~russian
 *	Выбирает объект в базе данных.
 *\~
 *\param id -\~english database record id.\~russian id объекта в базе данных.\~
 *\return id -\~english error code.\~russian код ошибки.\~
 */
ERR_Code
wDocument::Select( qulonglong id )
{
    ERR_Code err = aWidget::Select ( id );
    /*	if ( err )
    	{
    		printf( "select document error %i\n", err );
    		return err;
    	}
    */	NewValues();
    emit( changeObj(QString("idd=%1").arg(id)));
    emit( changeObjId(id));
    return err_noerror;
}
示例#7
0
/*!
 *\~english
 *\~russian
 *\~
 *\return \~english \~russian \~
 */
int
wDocument::New()
{
    ERR_Code err = aWidget::New();
    qulonglong idd;
    if ( err ) return  err;
    NewValues();
    idd = uid();
//	printf("<<<<<<<<<<<<<<<NEW id=%llu\n",idd);
    aLog::print(aLog::Info, tr("wDocument new ok"));
    emit( changeObj(QString("idd=%1").arg(idd)));
    emit( changeObjId(idd));

    return err_noerror;
}
示例#8
0
void __fastcall TfrmMain::DateTimeAxisModeClick(TObject *Sender)
{
  DateTimeAxisMode->Checked = !DateTimeAxisMode->Checked;
  NewValues();
}
示例#9
0
void __fastcall TfrmMain::LargeDataset576samples1Click(TObject *Sender)
{
   LargeDataset576samples1->Checked = ! LargeDataset576samples1->Checked;
   NewValues();
}
示例#10
0
void __fastcall TfrmMain::Generatenewrandomvalues1Click(TObject *Sender)
{
 NewValues();
}
示例#11
0
void __fastcall TfrmMain::ShowgapinLineChart1Click(TObject *Sender)
{
  ShowgapinLineChart1->Checked = !ShowgapinLineChart1->Checked;
  ButtonLine->Down = true;
  NewValues();
}
示例#12
0
void __fastcall TfrmMain::FormCreate(TObject *Sender)
{
  if (Chart != NULL)
    NewValues();
}
示例#13
0
void __fastcall TfrmMain::ButtonBarAveClick(TObject *Sender)
{
  Chart->Options->ChartKind = ckChartBarAverage;

  NewValues();
}
示例#14
0
void __fastcall TfrmMain::ButtonStackedBarClick(TObject *Sender)
{
  Chart->Options->ChartKind = ckChartStackedBar;
  NewValues();
}
示例#15
0
void __fastcall TfrmMain::ButtonBarChartClick(TObject *Sender)
{
  Chart->Options->ChartKind = ckChartBar;
  NewValues();
  //Chart->PlotGraph();
}