Changeset cea69ea


Ignore:
Timestamp:
12/13/13 19:39:56 (13 months ago)
Author:
Ken Moore <ken@…>
Branches:
master, releng/10.0, releng/10.0.1, releng/10.0.2, releng/10.0.3, releng/10.1
Children:
4071b4d
Parents:
c8de217
Message:

Update the new module dialog to work with the new package selection dialog and remove the ports dependency

Location:
src-qt4/EasyPBI-devel
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • src-qt4/EasyPBI-devel/mainGUI.cpp

    rc8de217 rcea69ea  
    441441  qDebug() << "New Module triggered"; 
    442442  //Create and run the new dialog 
    443   NewModuleDialog* dlg = new NewModuleDialog(this, settings->value("portsdir")); 
     443  NewModuleDialog* dlg = new NewModuleDialog(this); 
    444444  dlg->setDefaultIconFile(settings->value("defaulticon")); 
    445445  dlg->exec(); 
     
    447447  if( dlg->isAccepted ){ 
    448448    //Now create the new module 
    449     QString modPath, modType, modBase, oldIconPath; 
    450     modType = dlg->moduleType; // "local" or "port" 
     449    QString modPath, modBase, oldIconPath; 
    451450    modBase = dlg->moduleData; //port cat/name 
    452451    oldIconPath = dlg->moduleIcon; //PNG icon to use for the program 
  • src-qt4/EasyPBI-devel/newModuleDialog.cpp

    r3038c71 rcea69ea  
    44#include <QDebug> 
    55 
    6 NewModuleDialog::NewModuleDialog(QWidget *parent, QString portsDir) : 
     6NewModuleDialog::NewModuleDialog(QWidget *parent) : 
    77    QDialog(parent), 
    88    ui(new Ui::NewModuleDialog) 
     
    1212       ui->setupUi(this);  //load the main UI from designer 
    1313       isAccepted = FALSE; 
    14        PORTS_DIR = portsDir; 
    1514        //Setup the dialog icons 
    1615        ui->push_port->setIcon(Backend::icon("load")); 
    17         ui->push_sources->setIcon(Backend::icon("load")); 
    1816        ui->push_icon->setIcon(Backend::icon("file")); 
    19         //Connect up the type changed slot 
    20        connect(ui->radio_port, SIGNAL(clicked()), this, SLOT(slotTypeChanged()) ); 
    21        connect(ui->radio_local, SIGNAL(clicked()), this, SLOT(slotTypeChanged()) ); 
    22         //now run the slot to properly setup the UI elements 
    23         slotTypeChanged(); 
    2417} 
    2518 
     
    2922 
    3023void NewModuleDialog::on_buttonBox_accepted(){ 
     24  if(ui->line_port->text().isEmpty()){ return; } 
    3125  isAccepted=TRUE; 
    3226  //Now set the public variables 
    33   if(ui->radio_port->isChecked()){ 
    34     moduleType = "port"; 
    35     moduleData = ui->line_port->text(); 
    36   }else if(ui->radio_local->isChecked() ){ 
    37     moduleType="local"; 
    38     moduleData = ui->line_sources->text().replace("~",QDir::homePath()); 
    39   }else{ 
    40     moduleType.clear(); moduleData.clear(); 
    41   } 
     27  moduleData = ui->line_port->text(); 
    4228  moduleIcon = ui->line_icon->text().replace("~",QDir::homePath()); 
    4329  if(moduleIcon.isEmpty()){ moduleIcon = ui->line_icon->placeholderText().replace("~",QDir::homePath()); } 
     
    4834void NewModuleDialog::on_buttonBox_rejected(){ 
    4935  isAccepted=FALSE; 
    50   moduleType.clear(); 
    5136  moduleData.clear(); 
    5237  moduleIcon.clear(); 
     
    5439} 
    5540 
    56 void NewModuleDialog::slotTypeChanged(){ 
    57   if(ui->radio_port->isChecked()){ 
    58     ui->label_port->setVisible(TRUE); ui->line_port->setVisible(TRUE); ui->push_port->setVisible(TRUE); 
    59     ui->label_sources->setVisible(FALSE); ui->line_sources->setVisible(FALSE); ui->push_sources->setVisible(FALSE); 
    60   }else if(ui->radio_local->isChecked()){ 
    61     ui->label_port->setVisible(FALSE); ui->line_port->setVisible(FALSE); ui->push_port->setVisible(FALSE); 
    62     ui->label_sources->setVisible(TRUE); ui->line_sources->setVisible(TRUE); ui->push_sources->setVisible(TRUE); 
    63   }else{ 
    64     ui->label_port->setVisible(FALSE); ui->line_port->setVisible(FALSE); ui->push_port->setVisible(FALSE); 
    65     ui->label_sources->setVisible(FALSE); ui->line_sources->setVisible(FALSE); ui->push_sources->setVisible(FALSE); 
    66   } 
    67   if(PORTS_DIR.isEmpty()){ ui->push_port->setEnabled(FALSE); } 
    68 } 
    69  
    7041void NewModuleDialog::on_push_port_clicked(){ 
    71   if( PORTS_DIR.isEmpty() ){ 
    72     //No ports tree available 
    73     QMessageBox::warning(this,tr("EasyPBI: No FreeBSD Ports"), tr("The FreeBSD Ports tree could not be found on your system. You may fetch the ports tree through the EasyPBI menu or manually set the path to the port tree in the EasyPBI preferences if it is installed in a non-standard location.")); 
    74     return; 
    75   } 
    76   //Prompt for a new port 
    77   QString portSel = QFileDialog::getExistingDirectory(this, tr("Select Port"), PORTS_DIR); 
    78   if(portSel.isEmpty()){return;} //action cancelled or closed    
    79   else{ 
    80     ui->line_port->setText(portSel.remove(PORTS_DIR+"/")); 
    81   } 
    82 } 
    83  
    84 void NewModuleDialog::on_push_sources_clicked(){ 
    85   //Prompt for a new selection 
    86   QString Sel = QFileDialog::getExistingDirectory(this, tr("Select Package Directory"), QDir::homePath()); 
    87   if(Sel.isEmpty()){return;} //action cancelled or closed        
    88   else{ 
    89     ui->line_sources->setText(Sel.replace(QDir::homePath(),"~")); 
     42  pkgSelect dlg(this); 
     43  dlg.exec(); 
     44  if(dlg.selected){ 
     45    ui->line_port->setText(dlg.portSelected); 
    9046  } 
    9147} 
  • src-qt4/EasyPBI-devel/newModuleDialog.h

    r3038c71 rcea69ea  
    99#include "ui_newModuleDialog.h" 
    1010#include "backend.h" 
     11#include "pkgSelect.h" 
    1112 
    1213 
     
    2021 
    2122public: 
    22     explicit NewModuleDialog(QWidget *parent = 0, QString portsDir = ""); 
     23    explicit NewModuleDialog(QWidget *parent = 0); 
    2324    virtual ~NewModuleDialog(); 
    2425 
    2526    bool isAccepted; 
    2627    void setDefaultIconFile(QString); 
    27     QString moduleType, moduleIcon, moduleData, PORTS_DIR; 
     28    QString moduleIcon, moduleData; 
    2829 
    2930 
     
    3132    void on_buttonBox_accepted(); 
    3233    void on_buttonBox_rejected(); 
    33     void slotTypeChanged(); 
    3434    void on_push_port_clicked(); 
    35     void on_push_sources_clicked(); 
    3635    void on_push_icon_clicked(); 
    3736 
  • src-qt4/EasyPBI-devel/newModuleDialog.ui

    r3038c71 rcea69ea  
    77    <x>0</x> 
    88    <y>0</y> 
    9     <width>398</width> 
    10     <height>160</height> 
     9    <width>394</width> 
     10    <height>111</height> 
    1111   </rect> 
    1212  </property> 
     
    1515  </property> 
    1616  <layout class="QFormLayout" name="formLayout"> 
    17    <item row="5" column="0"> 
    18     <spacer name="verticalSpacer"> 
    19      <property name="orientation"> 
    20       <enum>Qt::Vertical</enum> 
    21      </property> 
    22      <property name="sizeHint" stdset="0"> 
    23       <size> 
    24        <width>20</width> 
    25        <height>40</height> 
    26       </size> 
    27      </property> 
    28     </spacer> 
    29    </item> 
    30    <item row="2" column="0"> 
     17   <property name="fieldGrowthPolicy"> 
     18    <enum>QFormLayout::ExpandingFieldsGrow</enum> 
     19   </property> 
     20   <item row="1" column="0"> 
    3121    <widget class="QLabel" name="label_port"> 
    3222     <property name="text"> 
     
    3525    </widget> 
    3626   </item> 
    37    <item row="2" column="1"> 
     27   <item row="1" column="1"> 
    3828    <layout class="QHBoxLayout" name="horizontalLayout_2"> 
    3929     <item> 
     
    5646    </layout> 
    5747   </item> 
    58    <item row="3" column="1"> 
    59     <layout class="QHBoxLayout" name="horizontalLayout_3"> 
    60      <item> 
    61       <widget class="QLineEdit" name="line_sources"> 
    62        <property name="toolTip"> 
    63         <string>Local directory to be packaged as a PBI</string> 
    64        </property> 
    65       </widget> 
    66      </item> 
    67      <item> 
    68       <widget class="QPushButton" name="push_sources"> 
    69        <property name="toolTip"> 
    70         <string>Select a local directory to be packaged as a PBI</string> 
    71        </property> 
    72        <property name="text"> 
    73         <string>Select</string> 
    74        </property> 
    75       </widget> 
    76      </item> 
    77     </layout> 
    78    </item> 
    79    <item row="3" column="0"> 
    80     <widget class="QLabel" name="label_sources"> 
     48   <item row="2" column="0"> 
     49    <widget class="QLabel" name="label_icon"> 
    8150     <property name="text"> 
    82       <string>Local Directory</string> 
     51      <string>Icon File</string> 
    8352     </property> 
    8453    </widget> 
    8554   </item> 
    86    <item row="4" column="1"> 
     55   <item row="2" column="1"> 
    8756    <layout class="QHBoxLayout" name="horizontalLayout_4"> 
    8857     <item> 
     
    10574    </layout> 
    10675   </item> 
    107    <item row="4" column="0"> 
    108     <widget class="QLabel" name="label_icon"> 
    109      <property name="text"> 
    110       <string>Icon File</string> 
     76   <item row="3" column="0"> 
     77    <spacer name="verticalSpacer"> 
     78     <property name="orientation"> 
     79      <enum>Qt::Vertical</enum> 
    11180     </property> 
    112     </widget> 
     81     <property name="sizeHint" stdset="0"> 
     82      <size> 
     83       <width>20</width> 
     84       <height>40</height> 
     85      </size> 
     86     </property> 
     87    </spacer> 
    11388   </item> 
    114    <item row="0" column="1"> 
    115     <layout class="QHBoxLayout" name="horizontalLayout"> 
    116      <item> 
    117       <widget class="QRadioButton" name="radio_port"> 
    118        <property name="toolTip"> 
    119         <string>Create a PBI from an existing FreeBSD port</string> 
    120        </property> 
    121        <property name="text"> 
    122         <string>FreeBSD Port</string> 
    123        </property> 
    124        <property name="icon"> 
    125         <iconset resource="EasyPBI.qrc"> 
    126          <normaloff>:/png/icons/freebsd.png</normaloff>:/png/icons/freebsd.png</iconset> 
    127        </property> 
    128        <property name="checked"> 
    129         <bool>true</bool> 
    130        </property> 
    131       </widget> 
    132      </item> 
    133      <item> 
    134       <widget class="QRadioButton" name="radio_local"> 
    135        <property name="toolTip"> 
    136         <string>Package a local directory as a PBI</string> 
    137        </property> 
    138        <property name="text"> 
    139         <string>Local Sources</string> 
    140        </property> 
    141        <property name="icon"> 
    142         <iconset resource="EasyPBI.qrc"> 
    143          <normaloff>:/png/icons/config.png</normaloff>:/png/icons/config.png</iconset> 
    144        </property> 
    145       </widget> 
    146      </item> 
    147      <item> 
    148       <spacer name="horizontalSpacer"> 
    149        <property name="orientation"> 
    150         <enum>Qt::Horizontal</enum> 
    151        </property> 
    152        <property name="sizeHint" stdset="0"> 
    153         <size> 
    154          <width>40</width> 
    155          <height>20</height> 
    156         </size> 
    157        </property> 
    158       </spacer> 
    159      </item> 
    160     </layout> 
    161    </item> 
    162    <item row="5" column="1"> 
     89   <item row="3" column="1"> 
    16390    <widget class="QDialogButtonBox" name="buttonBox"> 
    16491     <property name="orientation"> 
Note: See TracChangeset for help on using the changeset viewer.