Advertisement
Guest User

Untitled

a guest
Feb 12th, 2016
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.73 KB | None | 0 0
  1.     private: System::Void SelectedCharacter_Load(System::Object^  sender, System::EventArgs^  e) {
  2.                  Process::get()->RefresherTibiaClients();
  3.  
  4.                  std::map<uint32_t, TibiaProcessInfo> processes = Process::get()->GetProcessesMap();
  5.  
  6.                  auto version = NeutralManager::get()->getTibiaVersion();
  7.  
  8.                  if (processes.size() <= 0)
  9.                      return;
  10.  
  11.                  for (auto process : processes){
  12.                       bool continue_for = false;
  13.                       String^ namechar = (process.second.player_name != "") ? gcnew String(process.second.player_name.c_str()) : "Offline";
  14.                       array<String^>^ arrayOffline = { Convert::ToString(version), namechar, Convert::ToString(process.second.pid) };
  15.                       Telerik::WinControls::UI::ListViewDataItem^ newItem = gcnew Telerik::WinControls::UI::ListViewDataItem(Convert::ToString(process.second.pid), arrayOffline);
  16.                       newItem->Tag = (int)process.second.pid;
  17.  
  18.                       list_character->Items->Add(newItem);
  19.                  }
  20.     }
  21.     private: System::Void RefreshTibiaOpen_Tick(System::Object^  sender, System::EventArgs^  e) {
  22.                  Process::get()->RefresherTibiaClients();
  23.  
  24.                  std::map<uint32_t, TibiaProcessInfo> processes = Process::get()->GetProcessesMap();
  25.  
  26.                  auto version = NeutralManager::get()->getTibiaVersion();
  27.  
  28.                  if (processes.size() <= 0)
  29.                      return;
  30.  
  31.                  System::Collections::Generic::LinkedList<Telerik::WinControls::UI::ListViewDataItem^> items_remove;
  32.  
  33.                  for each(auto item in list_character->Items){
  34.                      int temp_pid = Convert::ToInt32(item->SubItems[2]);
  35.  
  36.                      if (processes.find(temp_pid) == processes.end())
  37.                          items_remove.AddLast(item);
  38.                      else{
  39.                          auto it = processes.find(temp_pid);
  40.                          String^ temp_name = Convert::ToString(item->SubItems[1]) ;
  41.                          item["Character Name"] = gcnew String("");
  42.                         // MessageBox::Show(Convert::ToString(item->SubItems[1]));
  43.                      }                   
  44.                  }
  45.  
  46.                  for each(auto item in items_remove)
  47.                      list_character->Items->Remove(item);
  48.  
  49.                  for (auto process : processes){
  50.                      bool continue_for = false;
  51.  
  52.                      String^ namechar = (process.second.player_name != "") ? gcnew String(process.second.player_name.c_str()) : "Offline";
  53.                      array<String^>^ arrayOffline = { Convert::ToString(version), namechar, Convert::ToString(process.second.pid) };
  54.                      Telerik::WinControls::UI::ListViewDataItem^ newItem = gcnew Telerik::WinControls::UI::ListViewDataItem(Convert::ToString(process.second.pid), arrayOffline);
  55.  
  56.                      for each(auto item in list_character->Items){
  57.                          item->SubItems[1] = gcnew String("");
  58.                          if (Convert::ToInt32(item->SubItems[2]) == (int)process.second.pid){
  59.                              continue_for = true;
  60.                              break;
  61.                          }
  62.  
  63.                      }
  64.  
  65.                      if (continue_for)
  66.                          continue;
  67.  
  68.                      list_character->Items->Add(newItem);
  69.                  }
  70.                
  71.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement