Guest User

Untitled

a guest
May 4th, 2020
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.88 KB | None | 0 0
  1. sender cpp:
  2.  
  3. void NameConvertorClass::start_convertor_slot(){
  4.     if ( ui->ovpn_dir_line->text().isEmpty() || ui->convert_dir_line->text().isEmpty() ) { return; }
  5.     if ( ui->ovpn_dir_line->text() == ui->convert_dir_line->text() ) { return; }
  6.  
  7.     QStringList ovpn_array = api->get_files_name(ui->ovpn_dir_line->text(), ".ovpn");
  8.     if ( ovpn_array.isEmpty() ) { return; }
  9.  
  10.     api->save_registry_settings("ovpn_name_convertor/control_menu");
  11.  
  12.     convertor = new ConversionResultsClass(api->get_ui_parametrs(), this);
  13.     convertor->setWindowModality( Qt::ApplicationModal );
  14.     convertor->show();
  15.     convertor->start_work(ovpn_array);
  16.  
  17.     connect(convertor, SIGNAL(finished()), convertor, SLOT(deleteLater()));
  18. }
  19.  
  20. ----------------------------------------------------------------------------------------------
  21.  
  22. recipient cpp:
  23.  
  24. ConversionResultsClass::ConversionResultsClass(QJsonObject ui_params_param, QWidget *parent) : QMainWindow(parent), ui(new Ui::conversion_result_ui), ui_params(ui_params_param){
  25.     ui->setupUi(this);
  26.  
  27.     ui->table->setSelectionMode(QAbstractItemView::NoSelection);
  28.     ui->table->setEditTriggers(QAbstractItemView::NoEditTriggers);
  29.  
  30.     ui->table->setColumnWidth(0, 10);
  31.     ui->table->setColumnWidth(1, 400);
  32.     ui->table->setColumnWidth(2, 70);
  33.  
  34.     frame = new CustomFrameClass(this, "Conversion result");
  35.     api = new ApiFunctionsClass(this);
  36. }
  37.  
  38. void ConversionResultsClass::start_work(QStringList ovpn_array){
  39.     set_table_elems(ovpn_array);
  40. }
  41.  
  42. void ConversionResultsClass::set_table_elems(QStringList files_array){
  43.     for ( QString ovpn_name : files_array ){
  44.         QString name = ovpn_name.split("/").back().split(".ovpn")[0];
  45.  
  46.         ui->table->setRowCount(ui->table->rowCount() +1);
  47.         int index = ui->table->rowCount() - 1;
  48.         ui->table->setRowHeight(index, 25);
  49.         ui->table->model()->setData(ui->table->model()->index(index,0),Qt::AlignCenter,Qt::TextAlignmentRole);
  50.  
  51.         QCheckBox *select_box = new QCheckBox();
  52.         QWidget *checkbox_widget = new QWidget();
  53.         QHBoxLayout *layout_checkbox = new QHBoxLayout(checkbox_widget);
  54.         layout_checkbox->addWidget(select_box);
  55.         layout_checkbox->setAlignment(Qt::AlignCenter);
  56.         layout_checkbox->setContentsMargins(0,0,0,0);
  57.         ui->table->setCellWidget(index, 0, checkbox_widget);
  58.  
  59.         QLabel *row_name = new QLabel();
  60.         row_name->setText(name);
  61.         row_name->setStyleSheet("font: 14px; color: rgb(167, 167, 167);");
  62.         row_name->setParent(ui->table);
  63.         ui->table->setCellWidget(index, 1, row_name);
  64.  
  65.         QComboBox *combo = new QComboBox();
  66.         QStringList country_array = {"AU", "AT", "AZ", "AL", "DZ", "VI", "AS", "AI", "AO", "AD", "AQ", "AG", "AR",
  67.                                     "AM", "AW", "AF", "BS", "BD", "BB", "BH", "BZ", "BY", "BE", "BJ", "BM", "BG",
  68.                                     "BO", "BQ", "BA", "BW", "BR", "IO", "VG", "BN", "BV", "BF", "BI", "BT", "VU",
  69.                                     "VA", "GB", "HU", "VE", "TL", "VN", "GA", "HT", "GY", "GM", "GH", "GP", "GT",
  70.                                     "GN", "GW", "DE", "GG", "GI", "HN", "HK", "GD", "GL", "GR", "GE", "GU", "DK",
  71.                                     "CD", "JE", "DJ", "DM", "DO", "EG", "ZM", "EH", "ZW", "IL", "IN", "ID", "JO",
  72.                                     "IQ", "IR", "IE", "IS", "ES", "IT", "YE", "CV", "KZ", "KY", "KH", "CM", "CA",
  73.                                     "QA", "KE", "CY", "KG", "KI", "CN", "KP", "CC", "CO", "KM", "KR", "CR", "CI",
  74.                                     "CU", "KW", "CW", "LA", "LV", "LS", "LR", "LB", "LY", "LT", "LI", "LU", "MU",
  75.                                     "MR", "MG", "YT", "MO", "MK", "MW", "MY", "ML", "MV", "MT", "MA", "MQ", "MH",
  76.                                     "MX", "MZ", "MD", "MC", "MN", "MS", "MM", "NA", "NR", "NP", "NE", "NG", "AN",
  77.                                     "NL", "NI", "NU", "NZ", "NC", "NO", "AE", "OM", "NF", "CX", "SH", "HM", "CK",
  78.                                     "PN", "TC", "WF", "PK", "PW", "PS", "PA", "PG", "PY", "PE", "PL", "PT", "PR",
  79.                                     "CG", "RE", "RU", "RW", "RO", "SV", "WS", "SM", "ST", "SA", "SZ", "MP", "SC",
  80.                                     "PM", "SN", "VC", "KN", "LC", "RS", "SG", "SY", "SK", "SI", "SB", "SO", "SD",
  81.                                     "SR", "US", "SL", "TJ", "TH", "TW", "TZ", "TG", "TK", "TO", "TT", "TV", "TN",
  82.                                     "TM", "TR", "UG", "UZ", "UA", "UY", "FO", "FM", "FJ", "PH", "FI", "FK", "FR",
  83.                                     "GF", "PF", "TF", "HR", "CF", "TD", "ME", "CZ", "CL", "FM", "CH", "SE", "SJ",
  84.                                     "LK", "EC", "GQ", "ER", "EE", "ET", "ZA", "GS", "JM", "FM", "JP"};
  85.         combo->addItems(country_array);
  86.         combo->setParent(ui->table);
  87.         ui->table->setCellWidget(index, 2, combo);
  88.     }
  89.  
  90. }
Advertisement
Add Comment
Please, Sign In to add comment