//--------------------------------------------------------------------------- void TfrmMain::apply(::Move& move) { TStringsEnumerator *e = move.getEffects()->GetEnumerator(); while(e->MoveNext()) { if(e->Current[1] == '!') { Memo5->Lines->Delete(Memo5->Lines->IndexOf(e->Current.SubString(2,e->Current.Length())) ); } else //add something { Memo5->Lines->Add(e->Current); } } TStringList *tmpState = new TStringList(); TStringsEnumerator *eM = Memo5->Lines->GetEnumerator(); while(eM->MoveNext()) { tmpState->Add(eM->Current); } Memo5->Clear(); tmpState->Sort(); Memo5->Lines->AddStrings(tmpState); tmpState->Free(); eM->Free(); }
void __fastcall TfrmMain::WMDropFiles(TWMDropFiles& Message) { int Count = DragQueryFile(reinterpret_cast<void*>(Message.Drop), 0xFFFFFFFF, NULL, 0); try { char FileBuf[MAX_PATH+1]; if (Count > 0) { TStringList* FileList = new TStringList(); try { for (int i = 0; i < Count; i++) { DragQueryFile(reinterpret_cast<void*>(Message.Drop), i, FileBuf, sizeof(FileBuf)); FileList->Add(FileBuf); } FileList->Sort(); reSource->Lines->BeginUpdate(); try { reSource->Lines->Clear(); for (int i = 0; i < FileList->Count; i++) reSource->Lines->Add(StringFromFile(FileList->Strings[i])); } __finally { reSource->Lines->EndUpdate(); } } __finally { delete FileList; } } } __finally {
//--------------------------------------------------------------------------- void __fastcall TFontMakerForm::EnumFonts() { FontSelectComboBox->Items->Clear(); ::EnumFonts(Canvas->Handle, NULL, (int (__stdcall *)())FontEnumProc, reinterpret_cast<LPARAM>(this)); TStringList *list = new TStringList(); list->Assign(FontSelectComboBox->Items); list->Sort(); FontSelectComboBox->Items->Assign(list); delete list; int n = FontSelectComboBox->Items->IndexOf(Canvas->Font->Name); if(n!=-1) { FontSelectComboBox->ItemIndex = n; } else { int n = FontSelectComboBox->Items->IndexOf(CreateButton->Font->Name); if(n != -1) FontSelectComboBox->ItemIndex = n; else FontSelectComboBox->ItemIndex = 0; } }
//--------------------------------------------------------------------------- /// Metoda odpowiada za wyci¹gniêcie oraz sparsowanie poszczególnych danych produktu /// po czym przypisuje te dane do przekazanego obiektu. void __fastcall ParsujDane::ZaladujDaneProduktu() { AnsiString znacznikDaneProduktu, znacznikMarka, nazwaMarki, znacznikModel, nazwaModel, znacznikKod, kodProduktu, znacznikRodzUrz, rodzajUrzadzenia, znacznikKategoria, kategoria, dodUwagi, str; int index; TStringList *listaKat = new TStringList; try { listaKat->Add("Komputery"); listaKat->Add("Fotografia"); listaKat->Add("Telefony_i_akcesoria"); listaKat->Sort(); //---- znacznikDaneProduktu = "keys : ["; DaneProduktuText = ZnajdzDane(Text, znacznikDaneProduktu, ']'); UsunZnacznik(DaneProduktuText, "'"); //---- ` znacznikKategoria = "Cat1: \'"; kategoria = ZnajdzDane(Text, znacznikKategoria, '\''); bool x = listaKat->Find(kategoria, index); if (!listaKat->Find(kategoria, index)) { BladKategorii = true; ShowMessage("Proces parsowania tekstu nie powiód³ siê - brak parsera dla wybranej kategorii!"); return; } //---- znacznikMarka = "\"Producent: "; nazwaMarki = ZnajdzDane(DaneProduktuText, znacznikMarka, '\"'); //---- znacznikModel = "\"" + nazwaMarki; znacznikModel = znacznikModel.LowerCase(); DaneProduktuText = DaneProduktuText.LowerCase(); nazwaModel = ZnajdzDane(DaneProduktuText, znacznikModel, '\"'); //---- while (true) { DaneProduktuText.Delete(DaneProduktuText.Pos(","), 1); if (DaneProduktuText.IsEmpty()) break; str = ZnajdzDane(DaneProduktuText, '\"', '\"'); if (str.Pos(":") == 0) continue; dodUwagi += str + ";"; } //---- znacznikKod = "productID: \'"; kodProduktu = ZnajdzDane(Text, znacznikKod, '\''); //---- znacznikRodzUrz = "catmin: \'"; rodzajUrzadzenia = ZnajdzDane(Text, znacznikRodzUrz, '\''); // ---- FProdukt->DodajDaneProduktu(nazwaMarki, nazwaModel, kodProduktu.ToInt(), rodzajUrzadzenia, dodUwagi); } catch(...) { if (listaKat != NULL) delete listaKat; listaKat = NULL; throw; } if (listaKat != NULL) delete listaKat; listaKat = NULL; }
void __fastcall TPreferencencesForm::FillGroup(AnsiString Name) { g_pLocalStrings->SelectSection("PreferencencesForm"); String Caption = g_pLocalStrings->GetSectionStringW(Name.c_str()); AnsiString PluginClassName = "PPrefs_"+Name; IDCMapSys* pSys = GetDCMapSys(); TStringList* List = new TStringList; if(pSys->SelectClass(PluginClassName.c_str())) { TTreeNode* pNode = TreeView->Items->Add(0,Caption); do { List->Add(pSys->GetPluginName()); } while(pSys->Next()); List->Sort(); for(int i=0;i<List->Count;i++) { IDCMapVCLPanel* pPanel; pPanel = GetDCMapCore()->CreateModuleTyped<IDCMapVCLPanel>(PluginClassName.c_str(),List->Strings[i].c_str()); if(!pPanel)continue; TFrame* pFrame = pPanel->CreateFrame(); pFrame->Align = alClient; pFrame->Visible = false; pFrame->Parent = ClientPanel; m_vecPanels.push_back(pPanel); TreeView->Items->AddChildObject(pNode,pPanel->GetCaption(),pFrame); } delete List; } }