OneSix instances now have a minecraft folder inside.

Also, the main instance view was expanded with helpful key events:
F2 for rename, F5 for refresh, Enter for start instance, Delete for...
This commit is contained in:
Petr Mrázek
2013-08-12 00:39:19 +02:00
parent 7e78a422e8
commit ff33d4a1a4
14 changed files with 173 additions and 43 deletions

View File

@ -68,7 +68,7 @@ QVariant InstanceModel::data ( const QModelIndex& index, int role ) const
}
case Qt::ToolTipRole:
{
return pdata->rootDir();
return pdata->instanceRoot();
}
case Qt::DecorationRole:
{

View File

@ -109,6 +109,7 @@ MainWindow::MainWindow ( QWidget *parent ) :
view->setItemDelegate(delegate);
view->setSpacing(10);
view->setUniformItemWidths(true);
view->installEventFilter(this);
model = new InstanceModel ( instList,this );
proxymodel = new InstanceProxyModel ( this );
@ -160,6 +161,37 @@ MainWindow::~MainWindow()
delete assets_downloader;
}
bool MainWindow::eventFilter ( QObject* obj, QEvent* ev )
{
if(obj == view)
{
if (ev->type() == QEvent::KeyPress)
{
QKeyEvent *keyEvent = static_cast<QKeyEvent*>(ev);
switch(keyEvent->key())
{
case Qt::Key_Enter:
case Qt::Key_Return:
on_actionLaunchInstance_triggered();
return true;
case Qt::Key_Delete:
on_actionDeleteInstance_triggered();
return true;
case Qt::Key_F5:
on_actionRefresh_triggered();
return true;
case Qt::Key_F2:
on_actionRenameInstance_triggered();
return true;
default:
break;
}
}
}
return QMainWindow::eventFilter ( obj, ev );
}
void MainWindow::instanceActivated ( QModelIndex index )
{
if(!index.isValid())
@ -306,7 +338,7 @@ void MainWindow::on_actionDeleteInstance_triggered()
QString("This is permanent! Are you sure?\nAbout to delete: ") + inst->name());
if (response == QMessageBox::Yes)
{
QDir(inst->rootDir()).removeRecursively();
QDir(inst->instanceRoot()).removeRecursively();
instList.loadList();
}
}
@ -335,7 +367,7 @@ void MainWindow::on_actionViewSelectedInstFolder_triggered()
BaseInstance* inst = selectedInstance();
if(inst)
{
QString str = inst->rootDir();
QString str = inst->instanceRoot();
openDirInDefaultProgram ( QDir(str).absolutePath() );
}
}

View File

@ -122,6 +122,9 @@ public slots:
void launchInstance(BaseInstance *inst, LoginResponse response);
protected:
bool eventFilter(QObject *obj, QEvent *ev);
private:
Ui::MainWindow *ui;
KCategoryDrawer * drawer;