Beispiel #1
0
void CSVReportSet::initForm()
{

	new WText("<SCRIPT language='JavaScript' src='/Calendar.js'></SCRIPT>",this);
	new WText("<SCRIPT language='JavaScript' src='/basic.js'></SCRIPT>", this);
	new WText("<div id='view_panel' class='panel_view'>",this);


	m_pMainTable = new WSVMainTable(this,m_formText.szMainTitle,false);

	m_pReportListTable = new WSVFlexTable(m_pMainTable->GetContentTable()->elementAt(0,0), List, m_formText.szTBTitle);
	

	if (m_pReportListTable->GetContentTable() != NULL)
	{
		m_pReportListTable->AppendColumn("",WLength(5,WLength::Percentage));
		m_pReportListTable->SetDataRowStyle("table_data_grid_item_img");

		m_pReportListTable->AppendColumn(m_formText.szColName,WLength(55,WLength::Percentage));
		m_pReportListTable->SetDataRowStyle("table_data_grid_item_text");

		m_pReportListTable->AppendColumn(m_formText.szColPeriod,WLength(20,WLength::Percentage));
		m_pReportListTable->SetDataRowStyle("table_data_grid_item_img");

		m_pReportListTable->AppendColumn(m_formText.szColEdit,WLength(20,WLength::Percentage));
		m_pReportListTable->SetDataRowStyle("table_data_grid_item_text");
	}

	addPhoneListNew();
	connect(&m_signalMapper, SIGNAL(mapped(const std::string)), this, SLOT(EditRow(const std::string)));

	if (m_pReportListTable->GetActionTable() != NULL)
	{
		
		m_pReportListTable->SetNullTipInfo(szListEmpty);

		if(m_pListReport.size() <= 0)
		{
			m_pReportListTable->ShowNullTip();
		}
		else
		{
			m_pReportListTable->HideNullTip();
		}
		
		m_pReportListTable->AddStandardSelLink(m_formText.szTipSelAll1 ,m_formText.szTipSelNone,m_formText.szTipSelInv);
		connect(m_pReportListTable->pSelAll, SIGNAL(clicked()), this, SLOT(SelAll()));
		connect(m_pReportListTable->pSelNone, SIGNAL(clicked()), this, SLOT(SelNone()));
		connect(m_pReportListTable->pSelReverse, SIGNAL(clicked()), this, SLOT(SelInvert()));


		WTable *pTbl;

		m_pReportListTable->GetActionTable()->elementAt(0,1)->setContentAlignment(AlignCenter);
		m_pReportListTable->GetActionTable()->elementAt(0,1)->setStyleClass("textbold");
		pTbl = new WTable(m_pReportListTable->GetActionTable()->elementAt(0,1));

		pTbl->setStyleClass("widthauto");
		m_pDel = new WSVButton(pTbl->elementAt(0,1),m_formText.szTipDel, "button_bg_del.png", "", false);

		if(!GetUserRight("m_reportlistDel"))
			m_pDel->hide();
		else
			m_pDel->show();

		if (m_pDel)
		{
			m_pDel->setToolTip(m_formText.szTipDel);
			connect(m_pDel , SIGNAL(clicked()),this, SLOT(BeforeDelPhone()));
		}

		m_pReportListTable->GetActionTable()->elementAt(0,2)->setContentAlignment(AlignRight);
		m_pAdd = new WSVButton(m_pReportListTable->GetActionTable()->elementAt(0,2),m_formText.szAddPhoneBut, "button_bg_add_black.png", m_formText.szTipAddNew, true);
		if(!GetUserRight("m_reportlistAdd"))
			m_pAdd->hide();
		else
			m_pAdd->show();

		if (m_pAdd)
		{
			m_pAdd->setToolTip(m_formText.szTipAddNew);
			WObject::connect(m_pAdd, SIGNAL(clicked()),"showbar();", this, SLOT(AddPhone())
				, WObject::ConnectionType::JAVASCRIPTDYNAMIC);
		}

		//隐藏按钮
		pHideBut = new WPushButton("hide button",this);
		if(pHideBut)
		{
			pHideBut->setToolTip("Hide Button");
			connect(pHideBut,SIGNAL(clicked()),this,SLOT(DelPhone()));
			pHideBut->hide();
		}
		
	}








//	new WText("\n<SCRIPT language='JavaScript' src='/basic.js'></SCRIPT>", this);
////	new WText("<SCRIPT language='JavaScript' src='/Calendar.js'></SCRIPT>", this);
//	//CMainTable * T1table = new CMainTable(this ,"统计报告");
//		
//	WTable* T1table = new WTable(this);
//	T1table->setStyleClass("t1");
//	new WText(m_formText.szMainTitle, T1table->elementAt(0,0));
//	T1table->elementAt(0,0)->setStyleClass("t1title");
//	
//
//	WTable * TitleTable = new WTable(T1table->elementAt(1,0));
//
//	TitleTable->setStyleClass("t3");
		



	//Jansion.zhou 2006-12-25
	m_pConnErr = new WText("", (WContainerWidget *)this);
	m_pConnErr->decorationStyle().setForegroundColor(Wt::red);
	m_pConnErr ->hide();



	//if(m_pReportListTable->GetContentTable() != NULL)
	//{
	//	m_pReportListTable->AppendRows("");
	//	//int NowRows = m_pReportListTable->GeDataTable()->numRows();
	//	m_pConnErr = new WText("", m_pReportListTable->AppendRowsContent(0, "","",m_formText.szConnErr));
	//	m_pConnErr->decorationStyle().setForegroundColor(Wt::red);
	//}

	
	//测试连接SVDB
	std::list<string> sectionlist;
	bool IsConn = GetIniFileSections(sectionlist, "smsconfig.ini");
	if(!IsConn)
	{
		//连接SVDB失败
		m_pConnErr ->setText(m_formText.szConnErr);
		m_pConnErr ->show();
	}





	pTranslateBtn = new WPushButton(strTranslate, this);
	connect(pTranslateBtn, SIGNAL(clicked()), this, SLOT(Translate()));	
    pTranslateBtn->setToolTip(strTranslateTip);
	pTranslateBtn->hide();

	pExChangeBtn = new WPushButton(strRefresh, this);
	connect(pExChangeBtn, SIGNAL(clicked()), this, SLOT(ExChange()));	
	pExChangeBtn->setToolTip(strRefreshTip);
	pExChangeBtn->hide();
	//翻译
	int bTrans = GetIniFileInt("translate", "translate", 0, "general.ini");
	if(bTrans == 1)
	{
		pTranslateBtn->show();
		pExChangeBtn->show();
	}
	else
	{
		pTranslateBtn->hide();
		pExChangeBtn->hide();
	}

	////主框架帮助按钮	
	//m_pHelpImg = new WImage("../icons/help.gif", (WContainerWidget *)TitleTable->elementAt( 0, 1));
	//m_pHelpImg -> hide();
	//m_pHelpImg ->setStyleClass("helpimg");
	//TitleTable->elementAt(0, 1) -> setContentAlignment(AlignTop | AlignRight);
	//WObject::connect(m_pHelpImg, SIGNAL(clicked()), this, SLOT(MainHelp()));

	//

	////接受列表
	////WTable * m_pListGeneral = new WTable(this);
	//WTable * m_pListGeneral = new WTable(T1table->elementAt(2,0));
	//
	//m_pListGeneral ->setStyleClass("t2");
	//
	////接受列表收/放显示栏
	//pHide2 = new WImage("../icons/open.gif", (WContainerWidget *)m_pListGeneral->elementAt( 0, 0));
 //   if ( pHide2 )
 //   {
 //       pHide2->decorationStyle().setCursor(WCssDecorationStyle::Pointer);
 //       WObject::connect(pHide2, SIGNAL(clicked()), this, SLOT(showSmsList2()));   
 //       pHide2->hide();        
 //   }
 //   pShow2 = new WImage("../icons/close.gif", (WContainerWidget *)m_pListGeneral->elementAt( 0, 0));
 //   if ( pShow2 )
 //   {
 //       pShow2->decorationStyle().setCursor(WCssDecorationStyle::Pointer);
 //       WObject::connect(pShow2, SIGNAL(clicked()), this, SLOT(hideSmsList2())); 
 //   }
	//m_pListGeneral->elementAt(0, 0)->setStyleClass("t2title");
	//new WText(m_formText.szTBTitle, (WContainerWidget *)m_pListGeneral->elementAt( 0, 0));

	//table2 = new WTable((WContainerWidget *)m_pListGeneral->elementAt(1,0));
	////table2 -> setStyleClass("bg_Border");
	//table2 ->setStyleClass("t3");

	//PrintDebugString("Init Old Table\n");

 //   if ( table2 )
 //   {
 //       addPhoneList(table2);
	//	connect(&m_signalMapper, SIGNAL(mapped(const std::string)), this, SLOT(EditRow(const std::string)));

	//	PrintDebugString("Init Old Table2\n");

	//	//AddGroupOperate(table2);
	//}
		
	new WText("</div>", this);

	AddJsParam("uistyle", "viewpan");
	AddJsParam("fullstyle", "true");
	AddJsParam("bGeneral", "false");
	new WText("<SCRIPT language='JavaScript' src='/Script.js'></SCRIPT>", this);

}
Beispiel #2
0
void HighScoresWidget::update()
{
  clear();
  
  new WText("<h2>Hall of fame</h2>", this);
  
  int ranking = session_->findRanking();
  
  std::string yourScore;
  if (ranking == 1)
    yourScore = "Congratulations! You are currently leading the pack.";
  else {
    yourScore = "You are currently ranked number "
      + boost::lexical_cast<std::string>(ranking)
      + ". Almost there !";
  }

  WText *score = new WText("<p>" + yourScore + "</p>", this);
  score->addStyleClass("score");
  
  std::vector<User> top = session_->topUsers(20);

  WTable *table = new WTable(this);

  new WText("Rank", table->elementAt(0, 0));
  new WText("User", table->elementAt(0, 1));
  new WText("Games", table->elementAt(0, 2));
  new WText("Score", table->elementAt(0, 3));
  new WText("Last game", table->elementAt(0, 4));
  table->setHeaderCount(1);

  int formerScore = -1;
  int rank = 0;
  for (unsigned i = 0; i < top.size(); i++) {
    User u = top[i];

    if (u.score != formerScore) {
      formerScore = u.score;
      ++rank;
    }
    
    int row = table->rowCount();
    new WText(boost::lexical_cast<std::string>(rank),
	      table->elementAt(row, 0));
    new WText(u.name, table->elementAt(row, 1));
    new WText(boost::lexical_cast<std::string>(u.gamesPlayed),
	      table->elementAt(row, 2));
    new WText(boost::lexical_cast<std::string>(u.score),
	      table->elementAt(row, 3));
    if (!u.lastGame.isNull())
      new WText(u.lastGame.timeTo(WDateTime::currentDateTime())
		+ " ago", table->elementAt(row, 4));
    else
      new WText("---", table->elementAt(row, 4));
    
    if (session_->login().loggedIn() && session_->userName() == u.name)
      table->rowAt(row)->setId("self");
  }

  WText *fineprint = new WText(tr("highscore.info"), this);
  fineprint->addStyleClass("fineprint");
}
Beispiel #3
0
void TrendReportFrame::initQueryTable(WSVFlexTable **pFlexTable_Add ,int nRow,std::string strTitle, WSVMainTable * pUserTable)
{
	*pFlexTable_Add = new WSVFlexTable((WContainerWidget *)pUserTable->GetContentTable()->elementAt(nRow,0), Blank, strTitle); 

	WSVFlexTable *pFlexTable = *pFlexTable_Add;



	if(pFlexTable->GetContentTable() != NULL)
	{
		//标题链接
		WTable *QueryTitleTable1 = new WTable(pFlexTable->GetContentTable()->elementAt(0,0));

		QueryTitleTable1->elementAt(0, 1)->resize(WLength(8,WLength::Percentage),0);
		WText * p2HourText = new WText("2h", QueryTitleTable1->elementAt(0, 1));
		p2HourText->setStyleClass("linktext");
		connect(p2HourText, SIGNAL(clicked()), "showbar();" ,this, SLOT(Query2HourText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 2)->resize(WLength(8,WLength::Percentage),0);
		WText * p4HourText = new WText("4h", QueryTitleTable1->elementAt(0, 2));
		p4HourText->setStyleClass("linktext");
		connect(p4HourText, SIGNAL(clicked()), "showbar();" ,this, SLOT(Query4HourText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 3)->resize(WLength(8,WLength::Percentage),0);
		WText * p8HourText = new WText("8h", QueryTitleTable1->elementAt(0, 3));
		p8HourText->setStyleClass("linktext");
		connect(p8HourText, SIGNAL(clicked()), "showbar();" ,this, SLOT(Query8HourText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 4)->resize(WLength(8,WLength::Percentage),0);
		WText * p1DayText = new WText("1d", QueryTitleTable1->elementAt(0, 4));
		p1DayText->setStyleClass("linktext");
		connect(p1DayText, SIGNAL(clicked()), "showbar();" ,this, SLOT(Query1DayText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 5)->resize(WLength(8,WLength::Percentage),0);
		WText * p3DayText = new WText("3d", QueryTitleTable1->elementAt(0, 5));
		p3DayText->setStyleClass("linktext");
		connect(p3DayText, SIGNAL(clicked()), "showbar();" ,this, SLOT(Query3DayText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 6)->resize(WLength(8,WLength::Percentage),0);
		WText * p5DayText = new WText("5d", QueryTitleTable1->elementAt(0, 6));
		p5DayText->setStyleClass("linktext");
		connect(p5DayText, SIGNAL(clicked()), "showbar();" ,this, SLOT(Query5DayText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 7)->resize(WLength(8,WLength::Percentage),0);
		WText * p1WeekText = new WText("1w", QueryTitleTable1->elementAt(0, 7));
		p1WeekText->setStyleClass("linktext");
		connect(p1WeekText, SIGNAL(clicked()), "showbar();" ,this, SLOT(Query1WeekText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 8)->resize(WLength(12,WLength::Percentage),0);
		WText * pCurWeekText = new WText(strWeek, QueryTitleTable1->elementAt(0, 8));
		pCurWeekText->setStyleClass("linktext");
		connect(pCurWeekText, SIGNAL(clicked()), "showbar();" ,this, SLOT(QueryCurWeekText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 9)->resize(WLength(8,WLength::Percentage),0);
		WText * p1MonthText = new WText("1m", QueryTitleTable1->elementAt(0, 9));
		p1MonthText->setStyleClass("linktext");
		connect(p1MonthText, SIGNAL(clicked()), "showbar();" ,this, SLOT(Query1MonthText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 10)->resize(WLength(8,WLength::Percentage),0);
		WText * p3MonthText = new WText("3m", QueryTitleTable1->elementAt(0, 10));
		p3MonthText->setStyleClass("linktext");
		connect(p3MonthText, SIGNAL(clicked()), "showbar();" ,this, SLOT(Query3MonthText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 11)->resize(WLength(8,WLength::Percentage),0);
		WText * p6MonthText = new WText("6m", QueryTitleTable1->elementAt(0, 11));
		p6MonthText->setStyleClass("linktext");
		connect(p6MonthText, SIGNAL(clicked()), "showbar();" ,this, SLOT(Query6MonthText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		QueryTitleTable1->elementAt(0, 12)->resize(WLength(12,WLength::Percentage),0);
		WText * pCurDayText = new WText(strDay, QueryTitleTable1->elementAt(0, 12));
		pCurDayText->setStyleClass("linktext");
		connect(pCurDayText, SIGNAL(clicked()), "showbar();" ,this, SLOT(QueryCurDayText()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	

		//时间
		WTable * QueryTitleTable2 = new WTable((WContainerWidget *)pFlexTable->GetContentTable()->elementAt(1,0));
		pFlexTable->GetContentTable()->elementAt(1, 0)->setContentAlignment(AlignTop | AlignCenter);

		QueryTitleTable2->resize(WLength(100,WLength::Percentage),WLength(30,WLength::Pixel));
		TTime curTime = TTime::GetCurrentTimeEx();
		new WText(strStartTimeLabel, QueryTitleTable2->elementAt(0, 0));
		pAlertStartTime = new WLineEdit("", QueryTitleTable2->elementAt(0, 1));
		TTimeSpan ts(0,24,0,0);
		curTime -= ts;
		pAlertStartTime->setText(curTime.Format());
		pAlertStartTime->setStyleClass("input_text");
		strcpy(pAlertStartTime->contextmenu_ , "onFocus=\"calendar()\"");

		curTime = TTime::GetCurrentTimeEx();
		new WText(strEndTimeLabel, QueryTitleTable2->elementAt(0, 3));
		pAlertEndTime = new WLineEdit("", QueryTitleTable2->elementAt(0, 4));
		pAlertEndTime->setText(curTime.Format());
		pAlertEndTime->setStyleClass("input_text");
		strcpy(pAlertEndTime->contextmenu_ , "onFocus=\"calendar()\"");

		pFlexTable->ShowOrHideHelp();
		pFlexTable->HideAllErrorMsg();
	}	

	if(pFlexTable->GetActionTable()!=NULL)
	{
		WTable *pTbl;
		pTbl = new WTable(pFlexTable->GetActionTable()->elementAt(0, 1));

		WSVButton * pQueryBtn = new WSVButton(pTbl->elementAt(0,0), strQueryBtn, "button_bg_m_black.png", "", true);
		connect(pQueryBtn, SIGNAL(clicked()), "showbar();" ,this, SLOT(TrendReportQuery()) , WObject::ConnectionType::JAVASCRIPTDYNAMIC);	
	}
}
Beispiel #4
0
void CSVPlanSet::InitFlexTable(std::string strTitle1, std::string strTitle2)
{
	ReceiveAddrSetTable = new WSVFlexTable(pMainTable->GetContentTable()->elementAt(1,0), List, strTitle1);

	//new WText("\n<SCRIPT language='JavaScript' src='/basic.js'></SCRIPT>", this);
	//WTable * m_pGeneral4 = new WTable(this);
	//WTable * m_pGeneral = new WTable( this );
	//m_pGeneral ->setStyleClass("t2");
    //if ( m_pGeneral )

	ReceiveAddrSetTable->SetDivId("listpan1");
	if(ReceiveAddrSetTable->GetContentTable()!=NULL)
    {
		strListHeights += "200";
		strListHeights += ",";
		strListPans += ReceiveAddrSetTable->GetDivId();
		strListPans += ",";
		strListTitles +=  ReceiveAddrSetTable->dataTitleTable->formName();
		strListTitles += ",";
		
		ReceiveAddrSetTable->AppendColumn("", WLength(5, WLength::Percentage));
		ReceiveAddrSetTable->SetDataRowStyle("table_data_grid_item_img");
		ReceiveAddrSetTable->AppendColumn(m_FormShowText.szColName, WLength(70, WLength::Percentage));
		ReceiveAddrSetTable->SetDataRowStyle("table_data_grid_item_img");
		ReceiveAddrSetTable->AppendColumn(m_FormShowText.szColMod, WLength(25, WLength::Percentage));
		ReceiveAddrSetTable->SetDataRowStyle("table_data_grid_item_text");
		
//older list table header
//		// 列表
//		ContainerReceiveAddrSetTable = new WTable((WContainerWidget *) m_pGeneral->elementAt(1,0));
//		ContainerReceiveAddrSetTable -> setStyleClass("t3");
//		ReceiveAddrSetTable = new WTable((WContainerWidget *) ContainerReceiveAddrSetTable->elementAt(0,0));
//		nullTable = new WTable((WContainerWidget *) ContainerReceiveAddrSetTable->elementAt(1, 0));
//
//		ReceiveAddrSetTable->setStyleClass("t3");
//		ReceiveAddrSetTable->setCellPadding(0);
//		ReceiveAddrSetTable->setCellSpaceing(0);
//		nullTable -> setStyleClass("t8");
//
//		// 添加表头
//		// 全选  clicked 事件处理 函数 SelAll
////		new WText(m_FormShowText.szColStatus, (WContainerWidget*)ReceiveAddrSetTable->elementAt(0, 0));
//		new WText("", (WContainerWidget*)ReceiveAddrSetTable->elementAt(0, 0));
//		new WText(m_FormShowText.szColName, (WContainerWidget*)ReceiveAddrSetTable->elementAt(0, 1));
////		new WText(m_FormShowText.szColType, (WContainerWidget*)ReceiveAddrSetTable->elementAt(0, 2));
//		new WText(m_FormShowText.szColMod, (WContainerWidget*)ReceiveAddrSetTable->elementAt(0, 2));
//		ReceiveAddrSetTable->elementAt(0, 0)->setStyleClass("t3title");
//		ReceiveAddrSetTable->elementAt(0, 1)->setStyleClass("t3title");
//		ReceiveAddrSetTable->elementAt(0, 2)->setStyleClass("t3title");
//		ReceiveAddrSetTable->elementAt(0, 3)->setStyleClass("t3title");

		updateRangeSchedule();
	}

	if(ReceiveAddrSetTable->GetActionTable()!=NULL)
	{
		ReceiveAddrSetTable->AddStandardSelLink(m_FormShowText.szTipSelAll , m_FormShowText.szTipNotSelAll, m_FormShowText.szTipInvSel );
		WObject::connect(ReceiveAddrSetTable->pSelAll, SIGNAL(clicked()), this, SLOT(SelAll()));
		WObject::connect(ReceiveAddrSetTable->pSelNone, SIGNAL(clicked()), this, SLOT(SelNone()));
		WObject::connect(ReceiveAddrSetTable->pSelReverse, SIGNAL(clicked()), this, SLOT(SelInvert()));

		WTable *pTbl;
		ReceiveAddrSetTable->GetActionTable()->elementAt(0,1)->setContentAlignment(AlignCenter);
		ReceiveAddrSetTable->GetActionTable()->elementAt(0,1)->setStyleClass("textbold");

		pTbl = new WTable(ReceiveAddrSetTable->GetActionTable()->elementAt(0,1));
		pTbl->setStyleClass("widthauto");
		WSVButton * DelBtn = new WSVButton(pTbl->elementAt(0,0),m_FormShowText.szTipDel,"button_bg_del.png",m_FormShowText.szTipDel, false);
		connect(DelBtn, SIGNAL(clicked()) ,this, SLOT(BeforeDelPlan()));

		pTbl = new WTable(ReceiveAddrSetTable->GetActionTable()->elementAt(0,2));
		ReceiveAddrSetTable->GetActionTable()->elementAt(0,2)->setContentAlignment(AlignRight);
		WSVButton * btn = new WSVButton(ReceiveAddrSetTable->GetActionTable()->elementAt(0,2),m_FormShowText.szAddRelPlanBut,"button_bg_add_black.png",m_FormShowText.szAddRelPlanBut, true);
		connect(btn, SIGNAL(clicked()), this, SLOT(AddPlan()));
	

//
		//ft = new CFlexTable();
		//ft->AddGroupOperate(m_pGeneral,m_FormShowText.szValDel);
		//ft->AddGroupAddBtn(m_pGeneral,m_FormShowText.szAddRelPlanBut);
		//WObject::connect(ft->pSelAll, SIGNAL(clicked()), this, SLOT(SelAll()));
		//WObject::connect(ft->pSelNone, SIGNAL(clicked()), this, SLOT(SelNone()));
		//WObject::connect(ft->pSelinvert, SIGNAL(clicked()), this, SLOT(SelInvert()));
  //      WObject::connect(ft->pDel , SIGNAL(clicked()) ,this, SLOT(BeforeDelPlan()));
		//WObject::connect(ft->pAdd, SIGNAL(clicked()), this, SLOT(AddPlan()));

		connect(&m_signalMapper, SIGNAL(mapped(const std::string)), this, SLOT(EditPlan(const std::string)));
		
		//ReceiveAddrSetTable->SetNullTipInfo(strSepPlanNull);


		ReceiveAddrSetTable->SetNullTipInfo(strSepPlanNull);

		if(m_pListPlan.size() <= 0)
		{
			//OutputDebugString("---------------- NO S ------------------\n");
			//OutputDebugString(("---------------- NO S"+ strSepPlanNull + " ------------------\n").c_str());
			ReceiveAddrSetTable->ShowNullTip();
		}
		else
		{
			//OutputDebugString("---------------- Yes S------------------\n");
			ReceiveAddrSetTable->HideNullTip();
		}

		//隐藏按钮
		pHideBut = new WPushButton("hide button",this);
		if(pHideBut)
		{
			pHideBut->setToolTip("Hide Button");
			connect(pHideBut,SIGNAL(clicked()),this,SLOT(DelPlan()));
			pHideBut->hide();
		}

		//隐藏按钮
		pHideBut1 = new WPushButton("hide button",this);
		if(pHideBut1)
		{
			pHideBut1->setToolTip("Hide Button");
			connect(pHideBut1,SIGNAL(clicked()),this,SLOT(DelPlan1()));
			pHideBut1->hide();
		}
	}
Beispiel #5
0
void CSVAddPlan::showMainForm()
{
	
	string szMon,szThurs,szWed,szTues,szFri,szSat,szSun,szDisable,szEnable,szfrom,szTo,szAddRelPlanBut;
	//Resource
	OBJECT objRes=LoadResource("default", "localhost");  
	if( objRes !=INVALID_VALUE )
	{	
		MAPNODE ResNode=GetResourceNode(objRes);
		if( ResNode != INVALID_VALUE )
		{
			FindNodeValue(ResNode,"IDS_Time_Area_Task_Add",szAddRelPlanBut);

			FindNodeValue(ResNode,"IDS_Disable",szDisable);
			FindNodeValue(ResNode,"IDS_Enable",szEnable);
			FindNodeValue(ResNode,"IDS_Monday",szMon);
			FindNodeValue(ResNode,"IDS_Tuesday",szThurs);
			FindNodeValue(ResNode,"IDS_Wednesday",szWed);
			FindNodeValue(ResNode,"IDS_Thursday",szTues);
			FindNodeValue(ResNode,"IDS_Friday",szFri);
			FindNodeValue(ResNode,"IDS_Saturday",szSat);
			FindNodeValue(ResNode,"IDS_Sunday",szSun);
			FindNodeValue(ResNode,"IDS_From",szfrom);
			FindNodeValue(ResNode,"IDS_To",szTo);
		}
		CloseResource(objRes);
	}

	
	new WText("<SCRIPT language='JavaScript' src='/basic.js'></SCRIPT>", this);
	new WText("<div id='view_panel' class='panel_view'>", this);


OutputDebugString("----------------strUser----------------\n");
	pMainTable = new WSVMainTable(this, szTitle, true);
	if(pMainTable->pHelpImg)
	{
		connect(pMainTable->pHelpImg, SIGNAL(clicked()),this,SLOT(AddPlanHelp()));
	}
	

	AddRangeTable = new WSVFlexTable((WContainerWidget *)pMainTable->GetContentTable()->elementAt(1,0), Group, m_FormShowText.szAddReTitle);

	if (AddRangeTable->GetContentTable() != NULL)
	{
		AddRangeTable->AppendRows(m_FormShowText.szBasicAdd);

		m_pName = new WLineEdit("", AddRangeTable->AppendRowsContent(0, m_FormShowText.szRunName+"<span class =required>*</span>", m_FormShowText.szRunNameHelp, m_FormShowText.szErrorMsg));
		//m_pName -> setTextSize(50);
		m_pName->resize(WLength(300, WLength::Pixel),WLength(20, WLength::Pixel));
		m_pName->setStyleClass("input_text");
		
		new WText("", AddRangeTable->AppendRowsContent(0, "", "", m_FormShowText.szErrorMsg1));

		m_pTasklist = new CTaskList(NULL, AddRangeTable,m_FormShowText.strWeekHelp);
		/*
		m_pCombo[0] = new WComboBox(RecList->elementAt(0, 1));
		m_pCombo[0]->addItem(szEnable);
		m_pCombo[0]->addItem(szDisable);
		pFrom[0] = new WText(szfrom, RecList->elementAt(0, 2));
		m_pStart[0] = new WLineEdit("00:00", RecList->elementAt(0, 3));
		m_pStart[0]->setStyleClass("input_text");
		pTo[0] = new WText(szTo, RecList->elementAt(0, 4));
		m_pEnd[0] = new WLineEdit("23:59", RecList->elementAt(0, 5));
		m_pEnd[0]->setStyleClass("input_text");

		for (int i=1; i<7; i++)
		{
			WTable *RecList = new WTable(AddRangeTable->AppendRowsContent(0, DayType[i], "", ""));
			RecList->setStyleClass("widthauto");
			m_pCombo[i] = new WComboBox(RecList->elementAt(0, 1));
			m_pCombo[i]->addItem(szEnable);
			m_pCombo[i]->addItem(szDisable);
			pFrom[i] = new WText(szfrom, RecList->elementAt(0, 2));
			m_pStart[i] = new WLineEdit("00:00", RecList->elementAt(0, 3));
			m_pStart[i]->setStyleClass("input_text");
			pTo[i] = new WText(szTo, RecList->elementAt(0, 4));
			m_pEnd[i] = new WLineEdit("23:59", RecList->elementAt(0, 5));
			m_pEnd[i]->setStyleClass("input_text");
		}
		*/
		AddRangeTable->AppendRows(m_FormShowText.szAdvanceAdd);
		textarea = new WTextArea("", AddRangeTable->AppendRowsContent(1, m_FormShowText.szDescript, "", ""));
		textarea->resize(WLength(400, WLength::Pixel),WLength(100, WLength::Pixel));
		textarea->setStyleClass("input_text");

		AddRangeTable->ShowOrHideHelp();
		AddRangeTable->HideAllErrorMsg();
	}

	if (AddRangeTable->GetActionTable() != NULL)
	{
		WTable *pGroupOperate = new WTable(AddRangeTable->GetActionTable()->elementAt(0, 1));
		pGroupOperate->setStyleClass("widthauto");

		WSVButton * pSave = new WSVButton(pGroupOperate->elementAt(0,0),m_FormShowText.szSaveBut,"button_bg_m_black.png",m_FormShowText.szSaveBut,true);
		WObject::connect(pSave, SIGNAL(clicked()), this, SLOT(Save()));
		//pGroupOperate->elementAt(0,0)-> addWidget(pSave);

		WSVButton * pCancel = new WSVButton(pGroupOperate->elementAt(0,1),m_FormShowText.szCancelBut,"button_bg_m.png",m_FormShowText.szCancelBut,false);
		WObject::connect(pCancel, SIGNAL(clicked()), this, SLOT(Cancel()));

		//pGroupOperate->elementAt(0,0)-> addWidget(pCancel);
		//pGroupOperate->elementAt(0,0)->setContentAlignment(AlignCenter);
		
	}

	//new WText("</div>");

	//Jansion.zhou 2006-12-25
 //   WTable * TitleTable = new WTable(this);
	//TitleTable->setStyleClass("t3");
	//m_pErrMsg = new WText("", (WContainerWidget *)TitleTable->elementAt(0,0));
 //   m_pErrMsg->decorationStyle().setForegroundColor(Wt::red);
 //   m_pErrMsg->hide();

	//Jansion.zhou 2006-12-25
	////connect svdb failure WText
	//m_pConnErr = new WText("", (WContainerWidget *)TitleTable->elementAt(0, 0));
	//m_pConnErr->decorationStyle().setForegroundColor(Wt::red);
	//m_pConnErr ->hide();
	



	new WText("</div>", this);

	AddJsParam("uistyle", "viewpan");
	AddJsParam("fullstyle", "true");
	AddJsParam("bGeneral", "false");
	new WText("<SCRIPT language='JavaScript' src='/Script.js'></SCRIPT>", this);
}
VanetMobilityModelForm::VanetMobilityModelForm(WContainerWidget* parent)
{
    WTable* t = new WTable(this);
    int row = 0;

    WLabel* l = new WLabel(tr("vanet.property.form.mobility.combo"), t->elementAt(row, 0));
    mobilityCombo_ = new WComboBox(t->elementAt(row, 1));
    mobilityCombo_->addItem(tr("vanet.property.form.mobility.combo.im"));
    mobilityCombo_->addItem(tr("vanet.property.form.mobility.combo.lc"));
    mobilityCombo_->activated().connect(this, &VanetMobilityModelForm::mobilityChanged);
    l->setBuddy(mobilityCombo_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.minspeed"), t->elementAt(row, 0));
    minSpeed_ = new WDoubleSpinBox(t->elementAt(row, 1));
    minSpeed_->setDecimals(1);
    minSpeed_->setMaximum(100.0);
    minSpeed_->setMinimum(0.0);
    minSpeed_->setValue(0.0);
    l->setBuddy(minSpeed_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.maxspeed"), t->elementAt(row, 0));
    maxSpeed_ = new WDoubleSpinBox(t->elementAt(row, 1));
    maxSpeed_->setDecimals(1);
    maxSpeed_->setMaximum(300.0);
    maxSpeed_->setMinimum(0.0);
    maxSpeed_->setValue(0.0);
    l->setBuddy(maxSpeed_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.length"), t->elementAt(row, 0));
    length_ = new WDoubleSpinBox(t->elementAt(row, 1));
    length_->setDecimals(1);
    length_->setMaximum(20.0);
    length_->setMinimum(0.0);
    length_->setValue(5.0);
    l->setBuddy(length_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.maxaccel"), t->elementAt(row, 0));
    maxAccel_ = new WDoubleSpinBox(t->elementAt(row, 1));
    maxAccel_->setDecimals(1);
    maxAccel_->setMaximum(10.0);
    maxAccel_->setMinimum(0.0);
    maxAccel_->setValue(0.6);
    l->setBuddy(maxAccel_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.comfydecel"), t->elementAt(row, 0));
    comfyDecel_ = new WDoubleSpinBox(t->elementAt(row, 1));
    comfyDecel_->setDecimals(1);
    comfyDecel_->setMaximum(10.0);
    comfyDecel_->setMinimum(0.0);
    comfyDecel_->setValue(0.6);
    l->setBuddy(comfyDecel_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.jamdist"), t->elementAt(row, 0));
    jamDistance_ = new WDoubleSpinBox(t->elementAt(row, 1));
    jamDistance_->setDecimals(1);
    jamDistance_->setMaximum(5.0);
    jamDistance_->setMinimum(0.0);
    jamDistance_->setValue(2.0);
    l->setBuddy(jamDistance_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.t"), t->elementAt(row, 0));
    safeTimeHeadway_ = new WDoubleSpinBox(t->elementAt(row, 1));
    safeTimeHeadway_->setDecimals(1);
    safeTimeHeadway_->setMaximum(10.0);
    safeTimeHeadway_->setMinimum(0.0);
    safeTimeHeadway_->setValue(1.5);
    l->setBuddy(safeTimeHeadway_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.step"), t->elementAt(row, 0));
    step_ = new WDoubleSpinBox(t->elementAt(row, 1));
    step_->setDecimals(1);
    step_->setMaximum(10.0);
    step_->setMinimum(0.1);
    step_->setValue(0.9);
    l->setBuddy(step_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.stay"), t->elementAt(row, 0));
    stay_ = new WDoubleSpinBox(t->elementAt(row, 1));
    stay_->setDecimals(1);
    stay_->setMaximum(10.0);
    stay_->setMinimum(0.0);
    stay_->setValue(0.0);
    l->setBuddy(stay_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.bsave"), t->elementAt(row, 0));
    bsave_ = new WDoubleSpinBox(t->elementAt(row, 1));
    bsave_->setDecimals(1);
    bsave_->setMaximum(10.0);
    bsave_->setMinimum(0.0);
    bsave_->setValue(4.0);
    bsave_->setDisabled(true);
    l->setBuddy(bsave_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.p"), t->elementAt(row, 0));
    politeness_ = new WDoubleSpinBox(t->elementAt(row, 1));
    politeness_->setDecimals(1);
    politeness_->setMaximum(1.0);
    politeness_->setMinimum(0.0);
    politeness_->setValue(0.5);
    politeness_->setDisabled(true);
    l->setBuddy(politeness_);
    
    ++row;
    l = new WLabel(tr("vanet.property.form.mobility.athr"), t->elementAt(row, 0));
    accelThresh_ = new WDoubleSpinBox(t->elementAt(row, 1));
    accelThresh_->setDecimals(1);
    accelThresh_->setMaximum(10.0);
    accelThresh_->setMinimum(0.0);
    accelThresh_->setValue(0.2);
    accelThresh_->setDisabled(true);
    l->setBuddy(accelThresh_);
    
    ++row;
    t->elementAt(row, 0)->setColumnSpan(2);
    random_ = new WCheckBox(tr("vanet.property.form.mobility.random"), t->elementAt(row, 0));
    random_->setCheckState(Unchecked);
    
    ++row;
    t->elementAt(row, 0)->setColumnSpan(2);
    ignoreBorders_ = new WCheckBox(tr("vanet.property.form.mobility.ignoreborders"), t->elementAt(row, 0));
    ignoreBorders_->setCheckState(Unchecked);
}
void CmsSubscribers::Impl::FillDataTable(const CmsSubscribers::Impl::Table &tableType)
{
    try {
        SubscribersTableContainer->clear();

        WTable *table = new WTable(SubscribersTableContainer);
        table->setStyleClass("table table-striped table-hover");
        table->setHeaderCount(1, Orientation::Horizontal);

        table->elementAt(0, 0)->addWidget(new WText(tr("cms-subscribers-no")));
        table->elementAt(0, 1)->addWidget(new WText(tr("cms-subscribers-inbox")));
        table->elementAt(0, 2)->addWidget(new WText(tr("cms-subscribers-subscription")));
        table->elementAt(0, 3)->addWidget(new WText(tr("cms-subscribers-pending-confirm")));
        table->elementAt(0, 4)->addWidget(new WText(tr("cms-subscribers-pending-cancel")));
        table->elementAt(0, 5)->addWidget(new WText(tr("cms-subscribers-join-date")));
        table->elementAt(0, 6)->addWidget(new WText(tr("cms-subscribers-update-date")));
        table->elementAt(0, 7)->addWidget(new WText(tr("cms-subscribers-uuid")));

        result r;
        switch (tableType) {
        case Table::All:
            r = Pool::Database()->Sql()
                    << (format("SELECT inbox, uuid, subscription, pending_confirm, pending_cancel, join_date, update_date"
                               " FROM \"%1%\" ORDER BY inbox COLLATE \"en_US.UTF-8\" ASC;")
                        % Pool::Database()->GetTableName("SUBSCRIBERS")).str();
            break;
        case Table::EnFa:
            r = Pool::Database()->Sql()
                    << (format("SELECT inbox, uuid, subscription, pending_confirm, pending_cancel, join_date, update_date"
                               " FROM \"%1%\" WHERE subscription = 'en_fa' ORDER BY inbox COLLATE \"en_US.UTF-8\" ASC;")
                        % Pool::Database()->GetTableName("SUBSCRIBERS")).str();
            break;
        case Table::En:
            r = Pool::Database()->Sql()
                    << (format("SELECT inbox, uuid, subscription, pending_confirm, pending_cancel, join_date, update_date"
                               " FROM \"%1%\" WHERE subscription = 'en' ORDER BY inbox COLLATE \"en_US.UTF-8\" ASC;")
                        % Pool::Database()->GetTableName("SUBSCRIBERS")).str();
            break;
        case Table::Fa:
            r = Pool::Database()->Sql()
                    << (format("SELECT inbox, uuid, subscription, pending_confirm, pending_cancel, join_date, update_date"
                               " FROM \"%1%\" WHERE subscription = 'fa' ORDER BY inbox COLLATE \"en_US.UTF-8\" ASC;")
                        % Pool::Database()->GetTableName("SUBSCRIBERS")).str();
            break;
        case Table::Inactive:
            r = Pool::Database()->Sql()
                    << (format("SELECT inbox, uuid, subscription, pending_confirm, pending_cancel, join_date, update_date"
                               " FROM \"%1%\" WHERE subscription = 'none' ORDER BY inbox COLLATE \"en_US.UTF-8\" ASC;")
                        % Pool::Database()->GetTableName("SUBSCRIBERS")).str();
            break;
        }

        int i = 0;
        while(r.next()) {
            ++i;
            string inbox;
            string uuid;
            string subscription;
            string pending_confirm;
            string pending_cancel;
            string join_date;
            string update_date;

            r >> inbox >> uuid >> subscription >> pending_confirm >> pending_cancel >> join_date >> update_date;

            WString subscriptionTypeName;
            WString pendingConfirmTypeName;
            WString pendingCancelTypeName;

            this->GetSubscriptionTypeName(subscription, subscriptionTypeName);
            this->GetSubscriptionTypeName(pending_confirm, pendingConfirmTypeName);
            this->GetSubscriptionTypeName(pending_cancel, pendingCancelTypeName);

            WString joinDate;
            WString updateDate;

            this->GetDate(join_date, joinDate);
            this->GetDate(join_date, updateDate);

            table->elementAt(i, 0)->addWidget(new WText(WString::fromUTF8(lexical_cast<string>(i))));
            table->elementAt(i, 1)->addWidget(new WText(WString::fromUTF8(inbox)));
            table->elementAt(i, 2)->addWidget(new WText(subscriptionTypeName));
            table->elementAt(i, 3)->addWidget(new WText(pendingConfirmTypeName));
            table->elementAt(i, 4)->addWidget(new WText(pendingCancelTypeName));
            table->elementAt(i, 5)->addWidget(new WText(joinDate));
            table->elementAt(i, 6)->addWidget(new WText(updateDate));
            table->elementAt(i, 7)->addWidget(new WText(WString::fromUTF8(uuid)));
        }
    }

    catch (boost::exception &ex) {
        LOG_ERROR(boost::diagnostic_information(ex));
    }

    catch (std::exception &ex) {
        LOG_ERROR(ex.what());
    }

    catch (...) {
        LOG_ERROR(UNKNOWN_ERROR);
    }
}
Beispiel #8
0
WWidget *MvcWidgets::proxyModels()
{
  WContainerWidget *result = new WContainerWidget();

  topic("WAbstractProxyModel", "WSortFilterProxyModel", result);
  addText(tr("mvc-proxymodels"), result);

  WStandardItemModel* cocktails = new WStandardItemModel(result);
  cocktails->appendRow(new WStandardItem("The Last WordLime Rickey"));
  cocktails->appendRow(new WStandardItem("Gin pahit"));
  cocktails->appendRow(new WStandardItem("Alexander"));
  cocktails->appendRow(new WStandardItem("Montgomery"));
  cocktails->appendRow(new WStandardItem("Gin Sour"));
  cocktails->appendRow(new WStandardItem("Hanky-Panky"));
  cocktails->appendRow(new WStandardItem("Gimlet"));
  cocktails->appendRow(new WStandardItem("Chocolate Soldier"));
  cocktails->appendRow(new WStandardItem("Joker"));
  cocktails->appendRow(new WStandardItem("Mickey Slim"));
  cocktails->appendRow(new WStandardItem("Long Island Iced Tea"));
  cocktails->appendRow(new WStandardItem("Old Etonian"));
  cocktails->appendRow(new WStandardItem("Lorraine"));
  cocktails->appendRow(new WStandardItem("Bijou"));
  cocktails->appendRow(new WStandardItem("Bronx"));
  cocktails->appendRow(new WStandardItem("Gin and tonic"));
  cocktails->appendRow(new WStandardItem("Pall Mall"));
  cocktails->appendRow(new WStandardItem("Gin Fizz"));
  cocktails->appendRow(new WStandardItem("French 75"));
  cocktails->appendRow(new WStandardItem("Martini"));
  cocktails->appendRow(new WStandardItem("Negroni"));
  cocktails->appendRow(new WStandardItem("20th Century"));
  cocktails->appendRow(new WStandardItem("My Fair Lady"));
  cocktails->appendRow(new WStandardItem("Gibson"));

  addText("<b>Filter regular expression: </b>", result);
  regexpFilter = new WLineEdit(result);
  regexpFilter->setText("Gi.*");
  regexpFilter->enterPressed().
    connect(this, &MvcWidgets::changeRegexp);
  WPushButton *filter = new WPushButton("Apply", result);
  filter->clicked().
    connect(this, &MvcWidgets::changeRegexp);
  
  std::vector<WAbstractItemModel*> models;
  std::vector<WString> headers;

  headers.push_back(WString("<b>Source:</b>"));
  models.push_back(cocktails);

  headers.push_back(WString("<b>Sorted proxy:</b>"));
  WSortFilterProxyModel *sortedCocktails = new WSortFilterProxyModel(this);
  sortedCocktails->setSourceModel(cocktails);
  sortedCocktails->setDynamicSortFilter(true);
  sortedCocktails->sort(0);
  models.push_back(sortedCocktails);

  headers.push_back(WString("<b>Filtered proxy:</b>"));
  filteredCocktails = new WSortFilterProxyModel(this);
  filteredCocktails->setSourceModel(cocktails);
  filteredCocktails->setDynamicSortFilter(true);
  filteredCocktails->setFilterKeyColumn(0);
  filteredCocktails->setFilterRole(Wt::DisplayRole);
  filteredCocktails->setFilterRegExp(regexpFilter->text());
  models.push_back(filteredCocktails);

  headers.push_back(WString("<b>Sorted and filtered proxy:</b>"));
  filteredSortedCocktails = new WSortFilterProxyModel(this);
  filteredSortedCocktails->setSourceModel(cocktails);
  filteredSortedCocktails->setDynamicSortFilter(true);
  filteredSortedCocktails->setFilterKeyColumn(0);
  filteredSortedCocktails->setFilterRole(Wt::DisplayRole);
  filteredSortedCocktails->setFilterRegExp(regexpFilter->text());
  filteredSortedCocktails->sort(0);
  models.push_back(filteredSortedCocktails);

  WTable *layout = new WTable(result);

  for (unsigned i = 0; i < headers.size(); ++i) {
    layout->columnAt(i)->setWidth(WLength(25, WLength::Percentage));
    layout->elementAt(0, i)->setPadding(4);
    layout->elementAt(0, i)->setContentAlignment(AlignCenter);

    addText(headers[i], layout->elementAt(0, i));
    new WBreak(layout->elementAt(0, i));

    WSelectionBox *view = new WSelectionBox(layout->elementAt(0, i));
    view->setModel(models[i]);
    view->setVerticalSize(cocktails->rowCount());
    view->resize(WLength(90, WLength::Percentage), WLength::Auto);
  }

  return result;
}
Beispiel #9
0
//添加栏目
void WSPopTable::AppendRows(std::string strRowName)
{
	int iLast = pFirstTable->numRows();
	iLast++;

	//RowTitle
	WTable * pTitleTable = new WTable((WContainerWidget *)pFirstTable->elementAt(iLast,0));
	pTitleTable->setStyleClass("padding_5");
	pTitleTable->resize(WLength(100,WLength::Percentage),WLength());
	pTitleTable->elementAt(0,0)->setStyleClass("textbold");
	pTitleText = new WText(strRowName, pTitleTable->elementAt(0,0));

	//Help
	if(bHelp)
	{
		pTitleTable->elementAt(0, 1)->setContentAlignment(AlignRight|AlignTop);
		pHelpImg = new WImage("/Images/help.png","", pTitleTable->elementAt(0, 1));
		pHelpImg->setStyleClass("hand");
	}

	//RowContent
	iLast++;
	pFirstTable->elementAt(iLast,0)->setStyleClass("padding_2");
	
	WTable * pRowContentTable = new WTable((WContainerWidget *)pFirstTable->elementAt(iLast, 0));
	
	pRowContentTable->resize(WLength(100,WLength::Percentage),WLength());
	
	//top
	ShowTop(pRowContentTable);

	//content
	pRowContentTable->elementAt(1, 0)->setStyleClass("pop_table_mid_l");	
	
	WTable * pReturnTable = new WTable((WContainerWidget *)pRowContentTable->elementAt(1, 1));
	
	pReturnTable->resize(WLength(100,WLength::Percentage),WLength());
	pReturnTable->setStyleClass("bgcolor");

	//
	pReturnTable->elementAt(0, 0)->setStyleClass("padding_5");
	m_pListContentTable.push_back(new WTable((WContainerWidget *)pReturnTable->elementAt(0, 0)));

	//分隔线
	pReturnTable->elementAt(1,0)->setStyleClass("padding_5");
	WTable * pLineTable = new WTable((WContainerWidget *)pReturnTable->elementAt(1, 0));
	pLineTable->resize(WLength(100,WLength::Percentage), WLength());
	pLineTable->elementAt(0, 0)->setStyleClass("table_data_input_space");
	new WImage("/Images/space.gif","",pLineTable->elementAt(0, 0));
	
	//ActionTable
	pReturnTable->elementAt(2,0)->setStyleClass("padding_2");
	m_pListActionTable.push_back(new WTable((WContainerWidget *)pReturnTable->elementAt(2,0)));

	pRowContentTable->elementAt(1, 2)->setStyleClass("pop_table_mid_r");
	
	//bottom
	ShowBottom(pRowContentTable);
}