123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495 |
- //---------------------------------------------------------------------------
- #include <vcl.h>
- #include "ITSSkinF.h"
- #include "ITSUtilF.h"
- #include "AppGlobalF.h"
- #include "WindowMsgF.h"
- #include "CDSVmsIfscF.h"
- #include "CDSFontF.h"
- #include "CDSVmsFormF.h"
- #pragma hdrstop
- #include "FrmVmsMsgUserDispOldF.h"
- #include "VMSM610MF.h"
- #include "VMSM620MF.h"
- #include "VMSM630MF.h"
- #include "VMSSEL0MF.h"
- #include "VMSEDT0MF.h"
- //---------------------------------------------------------------------------
- #pragma package(smart_init)
- #pragma link "cxButtons"
- #pragma link "cxCalendar"
- #pragma link "cxContainer"
- #pragma link "cxControls"
- #pragma link "cxDropDownEdit"
- #pragma link "cxEdit"
- #pragma link "cxGraphics"
- #pragma link "cxGroupBox"
- #pragma link "cxLabel"
- #pragma link "cxLookAndFeelPainters"
- #pragma link "cxLookAndFeels"
- #pragma link "cxMaskEdit"
- #pragma link "cxPC"
- #pragma link "cxPCdxBarPopupMenu"
- #pragma link "cxSpinEdit"
- #pragma link "cxSplitter"
- #pragma link "cxTextEdit"
- #pragma link "cxTimeEdit"
- #pragma link "dxSkinBlack"
- #pragma link "dxSkinBlue"
- #pragma link "dxSkinCaramel"
- #pragma link "dxSkinCoffee"
- #pragma link "dxSkinDarkRoom"
- #pragma link "dxSkinDarkSide"
- #pragma link "dxSkinFoggy"
- #pragma link "dxSkinGlassOceans"
- #pragma link "dxSkiniMaginary"
- #pragma link "dxSkinLilian"
- #pragma link "dxSkinLiquidSky"
- #pragma link "dxSkinLondonLiquidSky"
- #pragma link "dxSkinMcSkin"
- #pragma link "dxSkinMoneyTwins"
- #pragma link "dxSkinOffice2007Black"
- #pragma link "dxSkinOffice2007Blue"
- #pragma link "dxSkinOffice2007Green"
- #pragma link "dxSkinOffice2007Pink"
- #pragma link "dxSkinOffice2007Silver"
- #pragma link "dxSkinOffice2010Black"
- #pragma link "dxSkinOffice2010Blue"
- #pragma link "dxSkinOffice2010Silver"
- #pragma link "dxSkinsCore"
- #pragma link "dxSkinscxPCPainter"
- #pragma link "dxSkinSeven"
- #pragma link "dxSkinSharp"
- #pragma link "dxSkinSilver"
- #pragma link "dxSkinStardust"
- #pragma link "cxRadioGroup"
- #pragma link "cxClasses"
- #pragma link "cxCustomData"
- #pragma link "cxData"
- #pragma link "cxDataStorage"
- #pragma link "cxDBData"
- #pragma link "cxFilter"
- #pragma link "cxGrid"
- #pragma link "cxGridCustomTableView"
- #pragma link "cxGridCustomView"
- #pragma link "cxGridDBTableView"
- #pragma link "cxGridLevel"
- #pragma link "cxGridTableView"
- #pragma link "cxStyles"
- #pragma link "cxCheckBox"
- #pragma link "cxImage"
- #pragma link "cxButtonEdit"
- #pragma link "cxBlobEdit"
- #pragma link "cxColorComboBox"
- #pragma link "cxCalc"
- #pragma link "VmsDesignerF"
- #pragma link "FRAME_VmsSchListF"
- #pragma link "cxHint"
- #pragma link "dxCustomHint"
- #pragma link "dxScreenTip"
- #pragma link "dxSkinsForm"
- #pragma resource "*.dfm"
- TFrmVmsMsgUserDispOld *FrmVmsMsgUserDispOld = NULL;
- //---------------------------------------------------------------------------
- __fastcall TFrmVmsMsgUserDispOld::TFrmVmsMsgUserDispOld(TComponent* Owner)
- : TForm(Owner)
- {
- //CMM_SetFormPosition(g_AppCfg.bSaveForm);
- ITSSkin_Initialize(Application, g_AppCfg.sLang);
- ITSSkin_Caption(false);
- ITSSkin_Load(this);
- //CMM_LoadForm(g_sFormsDir, this);
- SetColorScheme(g_AppCfg.sSkinName);
- FUpdate= false;
- FTitle = Caption;//"VMS 자동 스케줄 관리";
- FListSymb = new TList;
- EditMode = false;
- FRAMEVmsSchList1->PnlTop->Visible = false;
- FRAMEVmsSchList1->PnlBottom->Visible = false;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::SetColorScheme(String ASkinName)
- {
- dxSkinController1->SkinName = ASkinName;
- dxSkinController1->Refresh();
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::CommClose()
- {
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::FormCreate(TObject *Sender)
- {
- InitDbLoading();
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::InitDbLoading()
- {
- Application->ProcessMessages();
- if (!VmsCtlrManager) {
- VmsCtlrManager = new TVmsCtlrManager();
- }
- VmsCtlrManager->LoadVmsModlSize();
- VmsCtlrManager->LoadFromDb();
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::FormShow(TObject *Sender)
- {
- Refresh();
- FormInit();
- ChangeEditMode(1);
- TmrShow->Enabled = true;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::FormInit()
- {
- APP_FillVmsSizeType(CbSizeType, false);
- FNewDb = false;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::TmrShowTimer(TObject *Sender)
- {
- TmrShow->Enabled = false;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::BtnCloseClick(TObject *Sender)
- {
- Close();
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::FormClose(TObject *Sender, TCloseAction &Action)
- {
- CommClose();
- FrmVmsMsgUserDispOld = NULL;
- Action = caFree;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::FormCloseQuery(TObject *Sender, bool &CanClose)
- {
- if (FUpdate)
- {
- POST_MSG(Application->MainForm->Handle, WM_DATABASE_REFRESH, WP_MSG_14, 0);
- }
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::ChangeEditMode(int AEdit)
- {
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::ClearSymbloList()
- {
- for(int ii = 0; ii < FListSymb->Count; ii++)
- {
- Graphics::TBitmap *bitmap = (Graphics::TBitmap *)FListSymb->Items[ii];
- delete bitmap;
- }
- FListSymb->Clear();
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::CbSizeTypePropertiesChange(TObject *Sender)
- {
- EdFocus->SetFocus();
- BtnSearchClick(NULL);
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::BtnSearchClick(TObject *Sender)
- {
- RefreshData();
- EdFocus->SetFocus();
- ChangeEditMode(1);
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::RefreshData()
- {
- FormClear();
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::FormClear()
- {
- FSelIdx = -1;
- EdVmsNmbr->Clear();
- GrpSchedule->Caption = lblTitle->Caption;//"▶ 자동 스케줄 설정";
- FNewDb = false;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::DisplayInfo()
- {
- return;
- FormClear();
- FSelIdx = CMM_GetRecordIndex(FRAMEVmsSchList1->TvList);
- if (FSelIdx < 0) return;
- TcxDataController *pGDC = FRAMEVmsSchList1->TvList->DataController;
- String sVmsNmbr = VarToStr(pGDC->Values[FSelIdx][FRAMEVmsSchList1->Column01->Index]);
- EdVmsNmbr->Text = sVmsNmbr;
- GrpSchedule->Caption = lblTitle->Caption + " (" + VarToStr(pGDC->Values[FSelIdx][FRAMEVmsSchList1->Column02->Index]) + ": " + VarToStr(pGDC->Values[FSelIdx][FRAMEVmsSchList1->Column03->Index]) + ")";
- //LoadVmsScheduleInfo(sVmsNmbr);
- //DrawTrafficScenarioForm();
- //DrawVideoStreamScenarioForm(eSchTp_video);
- //DrawVideoStreamScenarioForm(eSchTp_stream);
- ChangeEditMode(3);
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::TvFormCellDblClick(TcxCustomGridTableView *Sender, TcxGridTableDataCellViewInfo *ACellViewInfo,
- TMouseButton AButton, TShiftState AShift,
- bool &AHandled)
- {
- if (!ACellViewInfo) return;
- int nRow = Sender->DataController->FocusedRecordIndex;
- if( nRow <= -1 )
- return;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmVmsMsgUserDispOld::TvGridCellDblClick(TcxCustomGridTableView *Sender, TcxGridTableDataCellViewInfo *ACellViewInfo,
- TMouseButton AButton, TShiftState AShift,
- bool &AHandled)
- {
- if (!ACellViewInfo) return;
- int nRow = Sender->DataController->FocusedRecordIndex;
- if( nRow <= -1 )
- return;
- TcxGridDataController *pGDC = (TcxGridDataController*)Sender->DataController;
- int nColIdx = ACellViewInfo->Item->Index;
- //ShowMessage(String(Sender->Tag) + " " + String(nColIdx));
- String sFormId = VarToStr(pGDC->Values[nRow][0]);
- String sStrDate = VarToStr(pGDC->Values[nRow][7]);
- String sEndDate = VarToStr(pGDC->Values[nRow][8]);
- if (nColIdx == 4 || nColIdx == 5)
- {
- //표출기간설정
- TVMSSEL0M *pSelDate = new TVMSSEL0M(this);
- pSelDate->FStrTime = sStrDate;
- pSelDate->FEndTime = sEndDate;
- pSelDate->ShowModal();
- bool bSelected = pSelDate->FSelected;
- sStrDate = pSelDate->FStrTime;
- sEndDate = pSelDate->FEndTime;
- delete pSelDate;
- pSelDate = NULL;
- if (bSelected)
- {
- pGDC->Values[nRow][4] = ITSUtil_FormatStr(sStrDate, STR_HHNN);;
- pGDC->Values[nRow][5] = ITSUtil_FormatStr(sEndDate, STR_HHNN);;
- pGDC->Values[nRow][7] = sStrDate;
- pGDC->Values[nRow][8] = sEndDate;
- }
- return;
- }
- if (Sender->Tag == eSchTp_traffic)
- {
- if (VarToStr(pGDC->Values[nRow][15]).ToIntDef(0) == 15)
- {
- //도형식배경 소통정보 폼
- Application->MessageBox(FrmLang->lblSchErr1->Caption.c_str(),//L"VMS 교통정보 폼 구간 설정\r\n도형식 배경소통정보 폼은 폼관리 화면에서 설정 가능합니다.",
- FTitle.c_str(), MB_OK|MB_ICONERROR|MB_APPLMODAL);
- return;
- }
- // 소통정보 폼 정보구간 설정
- TVMSM610M *pIfscFrm = new TVMSM610M(this);
- pIfscFrm->FVmsNmbr = EdVmsNmbr->Text;
- pIfscFrm->FFormId = sFormId;
- pIfscFrm->FVmsTypeCd = FVmsTypeCd;
- pIfscFrm->FVmsWidth = FVmsWidth;
- pIfscFrm->FVmsHeight = FVmsHeight;
- pIfscFrm->FIfscId[0] = VarToStr(pGDC->Values[nRow][9]);
- pIfscFrm->FIfscId[1] = VarToStr(pGDC->Values[nRow][10]);
- pIfscFrm->FIfscId[2] = VarToStr(pGDC->Values[nRow][11]);
- pIfscFrm->FIfscId[3] = VarToStr(pGDC->Values[nRow][12]);
- pIfscFrm->FIfscId[4] = VarToStr(pGDC->Values[nRow][16]);
- pIfscFrm->FIfscId[5] = VarToStr(pGDC->Values[nRow][17]);
- pIfscFrm->FIfscId[6] = VarToStr(pGDC->Values[nRow][18]);
- pIfscFrm->FIfscId[7] = VarToStr(pGDC->Values[nRow][19]);
- //pIfscFrm->FVmsType = VarToStr(pGDC->Values[nRow][13]).ToIntDef(0);
- pIfscFrm->FFormColor = VarToStr(pGDC->Values[nRow][14]);
- pIfscFrm->FFormType = VarToStr(pGDC->Values[nRow][15]).ToIntDef(0);
- pIfscFrm->ShowModal();
- if (pIfscFrm->FSelected)
- {
- TStream *pImgStream = new TMemoryStream();
- try
- {
- void *p;
- Variant v;
- pIfscFrm->ImgForm->Picture->Bitmap->SaveToStream(pImgStream);
- int aBound[]={0, pImgStream->Size - 1};
- v = VarArrayCreate(aBound, 1, varByte);
- p = VarArrayLock(v);
- pImgStream->Position = 0;
- pImgStream->Read(p, pImgStream->Size);
- VarArrayUnlock(v);
- pGDC->Values[nRow][1] = v;
- }
- __finally
- {
- SAFE_DELETE(pImgStream);
- }
- pGDC->Values[nRow][ 9] = pIfscFrm->FIfscId[0];
- pGDC->Values[nRow][10] = pIfscFrm->FIfscId[1];
- pGDC->Values[nRow][11] = pIfscFrm->FIfscId[2];
- pGDC->Values[nRow][12] = pIfscFrm->FIfscId[3];
- pGDC->Values[nRow][16] = pIfscFrm->FIfscId[4];
- pGDC->Values[nRow][17] = pIfscFrm->FIfscId[5];
- pGDC->Values[nRow][18] = pIfscFrm->FIfscId[6];
- pGDC->Values[nRow][19] = pIfscFrm->FIfscId[7];
- }
- delete pIfscFrm;
- pIfscFrm = NULL;
- }
- if (Sender->Tag == eSchTp_video)
- {
- TVMSM620M *pVideoFrm = new TVMSM620M(this);
- pVideoFrm->FVmsNmbr = EdVmsNmbr->Text;
- pVideoFrm->FFormId = sFormId;
- pVideoFrm->FVmsTypeCd = FVmsTypeCd;
- pVideoFrm->FVmsWidth = FVmsWidth;
- pVideoFrm->FVmsHeight = FVmsHeight;
- pVideoFrm->FSymbLibNmbr = VarToStr(pGDC->Values[nRow][20]);
- pVideoFrm->FStreamAddr = VarToStr(pGDC->Values[nRow][21]);
- //pVideoFrm->FVmsType = VarToStr(pGDC->Values[nRow][13]).ToIntDef(0);
- pVideoFrm->FFormColor = VarToStr(pGDC->Values[nRow][14]);
- pVideoFrm->FFormType = VarToStr(pGDC->Values[nRow][15]).ToIntDef(0);
- pVideoFrm->ShowModal();
- if (pVideoFrm->FSelected)
- {
- TStream *pImgStream = new TMemoryStream();
- try
- {
- void *p;
- Variant v;
- pVideoFrm->ImgForm->Picture->Bitmap->SaveToStream(pImgStream);
- int aBound[]={0, pImgStream->Size - 1};
- v = VarArrayCreate(aBound, 1, varByte);
- p = VarArrayLock(v);
- pImgStream->Position = 0;
- pImgStream->Read(p, pImgStream->Size);
- VarArrayUnlock(v);
- pGDC->Values[nRow][1] = v;
- }
- __finally
- {
- SAFE_DELETE(pImgStream);
- }
- pGDC->Values[nRow][20] = pVideoFrm->FSymbLibNmbr;
- pGDC->Values[nRow][21] = pVideoFrm->FStreamAddr;
- }
- delete pVideoFrm;
- pVideoFrm = NULL;
- }
- if (Sender->Tag == eSchTp_stream)
- {
- TVMSM630M *pStreamFrm = new TVMSM630M(this);
- pStreamFrm->FVmsNmbr = EdVmsNmbr->Text;
- pStreamFrm->FFormId = sFormId;
- pStreamFrm->FVmsTypeCd = FVmsTypeCd;
- pStreamFrm->FVmsWidth = FVmsWidth;
- pStreamFrm->FVmsHeight = FVmsHeight;
- pStreamFrm->FSymbLibNmbr = VarToStr(pGDC->Values[nRow][20]);
- pStreamFrm->FStreamAddr = VarToStr(pGDC->Values[nRow][21]);
- //pStreamFrm->FVmsType = VarToStr(pGDC->Values[nRow][13]).ToIntDef(0);
- pStreamFrm->FFormColor = VarToStr(pGDC->Values[nRow][14]);
- pStreamFrm->FFormType = VarToStr(pGDC->Values[nRow][15]).ToIntDef(0);
- pStreamFrm->ShowModal();
- if (pStreamFrm->FSelected)
- {
- TStream *pImgStream = new TMemoryStream();
- try
- {
- void *p;
- Variant v;
- pStreamFrm->ImgForm->Picture->Bitmap->SaveToStream(pImgStream);
- int aBound[]={0, pImgStream->Size - 1};
- v = VarArrayCreate(aBound, 1, varByte);
- p = VarArrayLock(v);
- pImgStream->Position = 0;
- pImgStream->Read(p, pImgStream->Size);
- VarArrayUnlock(v);
- pGDC->Values[nRow][1] = v;
- }
- __finally
- {
- SAFE_DELETE(pImgStream);
- }
- pGDC->Values[nRow][20] = pStreamFrm->FSymbLibNmbr;
- pGDC->Values[nRow][21] = pStreamFrm->FStreamAddr;
- }
- delete pStreamFrm;
- pStreamFrm = NULL;
- }
- }
- //---------------------------------------------------------------------------
|