Created a console utilities file to hold misc functions used by the Qt/SDL port.
This commit is contained in:
parent
92724b50d3
commit
f59bf15d30
|
@ -391,6 +391,7 @@ set(SRC_DRIVERS_SDL
|
|||
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/PaletteConf.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/GuiConf.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/LuaControl.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/ConsoleUtilities.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/ConsoleVideoConf.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/ConsoleSoundConf.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/drivers/Qt/AboutWindow.cpp
|
||||
|
|
|
@ -0,0 +1,37 @@
|
|||
// ConsoleUtilities.cpp
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "Qt/ConsoleUtilities.h"
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
int getDirFromFile( const char *path, char *dir )
|
||||
{
|
||||
int i, lastSlash = -1, lastPeriod = -1;
|
||||
|
||||
i=0;
|
||||
while ( path[i] != 0 )
|
||||
{
|
||||
if ( path[i] == '/' )
|
||||
{
|
||||
lastSlash = i;
|
||||
}
|
||||
else if ( path[i] == '.' )
|
||||
{
|
||||
lastPeriod = i;
|
||||
}
|
||||
dir[i] = path[i]; i++;
|
||||
}
|
||||
dir[i] = 0;
|
||||
|
||||
if ( lastPeriod >= 0 )
|
||||
{
|
||||
if ( lastPeriod > lastSlash )
|
||||
{
|
||||
dir[lastSlash] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
//---------------------------------------------------------------------------
|
|
@ -0,0 +1,3 @@
|
|||
// ConsoleUtilities.h
|
||||
|
||||
int getDirFromFile( const char *path, char *dir );
|
|
@ -22,6 +22,7 @@
|
|||
#include "Qt/PaletteConf.h"
|
||||
#include "Qt/GuiConf.h"
|
||||
#include "Qt/LuaControl.h"
|
||||
#include "Qt/ConsoleUtilities.h"
|
||||
#include "Qt/ConsoleSoundConf.h"
|
||||
#include "Qt/ConsoleVideoConf.h"
|
||||
#include "Qt/AboutWindow.h"
|
||||
|
@ -487,36 +488,6 @@ void consoleWin_t::closeApp(void)
|
|||
qApp->quit();
|
||||
}
|
||||
//---------------------------------------------------------------------------
|
||||
int consoleWin_t::getDirFromFile( const char *path, char *dir )
|
||||
{
|
||||
int i, lastSlash = -1, lastPeriod = -1;
|
||||
|
||||
i=0;
|
||||
while ( path[i] != 0 )
|
||||
{
|
||||
if ( path[i] == '/' )
|
||||
{
|
||||
lastSlash = i;
|
||||
}
|
||||
else if ( path[i] == '.' )
|
||||
{
|
||||
lastPeriod = i;
|
||||
}
|
||||
dir[i] = path[i]; i++;
|
||||
}
|
||||
dir[i] = 0;
|
||||
|
||||
if ( lastPeriod >= 0 )
|
||||
{
|
||||
if ( lastPeriod > lastSlash )
|
||||
{
|
||||
dir[lastSlash] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
void consoleWin_t::openROMFile(void)
|
||||
{
|
||||
|
@ -531,6 +502,8 @@ void consoleWin_t::openROMFile(void)
|
|||
dialog.setNameFilter(tr("NES files (*.nes *.NES) ;; All files (*)"));
|
||||
|
||||
dialog.setViewMode(QFileDialog::List);
|
||||
dialog.setFilter( QDir::AllEntries | QDir::Hidden );
|
||||
dialog.setLabelText( QFileDialog::Accept, tr("Open") );
|
||||
|
||||
g_config->getOption ("SDL.LastOpenFile", &last );
|
||||
|
||||
|
@ -593,6 +566,8 @@ void consoleWin_t::loadNSF(void)
|
|||
dialog.setNameFilter(tr("NSF Sound Files (*.nsf *.NSF) ;; Zip Files (*.zip *.ZIP) ;; All files (*)"));
|
||||
|
||||
dialog.setViewMode(QFileDialog::List);
|
||||
dialog.setFilter( QDir::AllEntries | QDir::Hidden );
|
||||
dialog.setLabelText( QFileDialog::Accept, tr("Load") );
|
||||
|
||||
g_config->getOption ("SDL.LastOpenNSF", &last );
|
||||
|
||||
|
@ -642,9 +617,11 @@ void consoleWin_t::loadStateFrom(void)
|
|||
|
||||
dialog.setFileMode(QFileDialog::ExistingFile);
|
||||
|
||||
dialog.setNameFilter(tr("FCS Files (*.fc? *.FC?) ;; SAV Files (*.sav *.SAV) ;; All files (*)"));
|
||||
dialog.setNameFilter(tr("FCS & SAV Files (*.sav *.SAV *.fc? *.FC?) ;; All files (*)"));
|
||||
|
||||
dialog.setViewMode(QFileDialog::List);
|
||||
dialog.setFilter( QDir::AllEntries | QDir::Hidden );
|
||||
dialog.setLabelText( QFileDialog::Accept, tr("Load") );
|
||||
|
||||
g_config->getOption ("SDL.LastLoadStateFrom", &last );
|
||||
|
||||
|
@ -697,6 +674,9 @@ void consoleWin_t::saveStateAs(void)
|
|||
dialog.setNameFilter(tr("SAV Files (*.sav *.SAV) ;; All files (*)"));
|
||||
|
||||
dialog.setViewMode(QFileDialog::List);
|
||||
dialog.setFilter( QDir::AllEntries | QDir::Hidden );
|
||||
dialog.setLabelText( QFileDialog::Accept, tr("Save") );
|
||||
dialog.setDefaultSuffix( tr(".sav") );
|
||||
|
||||
g_config->getOption ("SDL.LastSaveStateAs", &last );
|
||||
|
||||
|
@ -1022,6 +1002,8 @@ void consoleWin_t::loadGameGenieROM(void)
|
|||
dialog.setNameFilter(tr("GG ROM File (gg.rom *Genie*.nes) ;; All files (*)"));
|
||||
|
||||
dialog.setViewMode(QFileDialog::List);
|
||||
dialog.setFilter( QDir::AllEntries | QDir::Hidden );
|
||||
dialog.setLabelText( QFileDialog::Accept, tr("Load") );
|
||||
|
||||
g_config->getOption ("SDL.LastOpenFile", &last );
|
||||
|
||||
|
@ -1103,6 +1085,8 @@ void consoleWin_t::fdsLoadBiosFile(void)
|
|||
dialog.setNameFilter(tr("ROM files (*.rom *.ROM) ;; All files (*)"));
|
||||
|
||||
dialog.setViewMode(QFileDialog::List);
|
||||
dialog.setFilter( QDir::AllEntries | QDir::Hidden );
|
||||
dialog.setLabelText( QFileDialog::Accept, tr("Load") );
|
||||
|
||||
g_config->getOption ("SDL.LastOpenFile", &last );
|
||||
|
||||
|
@ -1168,6 +1152,8 @@ void consoleWin_t::openMovie(void)
|
|||
dialog.setNameFilter(tr("FM2 Movies (*.fm2) ;; All files (*)"));
|
||||
|
||||
dialog.setViewMode(QFileDialog::List);
|
||||
dialog.setFilter( QDir::AllEntries | QDir::Hidden );
|
||||
dialog.setLabelText( QFileDialog::Accept, tr("Open") );
|
||||
|
||||
g_config->getOption ("SDL.LastOpenFile", &last );
|
||||
|
||||
|
@ -1251,6 +1237,8 @@ void consoleWin_t::recordMovieAs(void)
|
|||
dialog.setNameFilter(tr("FM2 Movies (*.fm2) ;; All files (*)"));
|
||||
|
||||
dialog.setViewMode(QFileDialog::List);
|
||||
dialog.setFilter( QDir::AllEntries | QDir::Hidden );
|
||||
dialog.setLabelText( QFileDialog::Accept, tr("Save") );
|
||||
|
||||
g_config->getOption ("SDL.LastOpenFile", &last );
|
||||
|
||||
|
|
|
@ -99,8 +99,6 @@ class consoleWin_t : public QMainWindow
|
|||
void keyReleaseEvent(QKeyEvent *event);
|
||||
void syncActionConfig( QAction *act, const char *property );
|
||||
|
||||
int getDirFromFile( const char *path, char *dir );
|
||||
|
||||
private:
|
||||
void createMainMenu(void);
|
||||
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
#include "Qt/config.h"
|
||||
#include "Qt/keyscan.h"
|
||||
#include "Qt/fceuWrapper.h"
|
||||
#include "Qt/ConsoleUtilities.h"
|
||||
|
||||
static bool luaScriptRunning = false;
|
||||
|
||||
|
@ -124,7 +125,7 @@ void LuaControlDialog_t::openLuaScriptFile(void)
|
|||
int ret, useNativeFileDialogVal;
|
||||
QString filename;
|
||||
std::string last;
|
||||
//char dir[512];
|
||||
char dir[512];
|
||||
QFileDialog dialog(this, tr("Open LUA Script") );
|
||||
|
||||
dialog.setFileMode(QFileDialog::ExistingFile);
|
||||
|
@ -132,6 +133,8 @@ void LuaControlDialog_t::openLuaScriptFile(void)
|
|||
dialog.setNameFilter(tr("LUA Scripts (*.lua *.LUA) ;; All files (*)"));
|
||||
|
||||
dialog.setViewMode(QFileDialog::List);
|
||||
dialog.setFilter( QDir::AllEntries | QDir::Hidden );
|
||||
dialog.setLabelText( QFileDialog::Accept, tr("Load") );
|
||||
|
||||
g_config->getOption ("SDL.LastLoadLua", &last );
|
||||
|
||||
|
@ -140,9 +143,9 @@ void LuaControlDialog_t::openLuaScriptFile(void)
|
|||
last.assign( "/usr/share/fceux/luaScripts" );
|
||||
}
|
||||
|
||||
//getDirFromFile( last.c_str(), dir );
|
||||
getDirFromFile( last.c_str(), dir );
|
||||
|
||||
dialog.setDirectory( tr("/usr/share/fceux/luaScripts") );
|
||||
dialog.setDirectory( tr(dir) );
|
||||
|
||||
// Check config option to use native file dialog or not
|
||||
g_config->getOption ("SDL.UseNativeFileDialog", &useNativeFileDialogVal);
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
#include "Qt/config.h"
|
||||
#include "Qt/keyscan.h"
|
||||
#include "Qt/fceuWrapper.h"
|
||||
#include "Qt/ConsoleUtilities.h"
|
||||
|
||||
#include "../../ppu.h"
|
||||
|
||||
|
@ -289,6 +290,8 @@ void PaletteConfDialog_t::openPaletteFile(void)
|
|||
{
|
||||
int ret, useNativeFileDialogVal;
|
||||
QString filename;
|
||||
std::string last;
|
||||
char dir[512];
|
||||
QFileDialog dialog(this, tr("Open NES Palette") );
|
||||
|
||||
dialog.setFileMode(QFileDialog::ExistingFile);
|
||||
|
@ -296,8 +299,19 @@ void PaletteConfDialog_t::openPaletteFile(void)
|
|||
dialog.setNameFilter(tr("NES Palettes (*.pal *.PAL) ;; All files (*)"));
|
||||
|
||||
dialog.setViewMode(QFileDialog::List);
|
||||
dialog.setFilter( QDir::AllEntries | QDir::Hidden );
|
||||
dialog.setLabelText( QFileDialog::Accept, tr("Load") );
|
||||
|
||||
dialog.setDirectory( tr("/usr/share/fceux/palettes") );
|
||||
g_config->getOption ("SDL.Palette", &last );
|
||||
|
||||
if ( last.size() == 0 )
|
||||
{
|
||||
last.assign( "/usr/share/fceux/palettes" );
|
||||
}
|
||||
|
||||
getDirFromFile( last.c_str(), dir );
|
||||
|
||||
dialog.setDirectory( tr(dir) );
|
||||
|
||||
// Check config option to use native file dialog or not
|
||||
g_config->getOption ("SDL.UseNativeFileDialog", &useNativeFileDialogVal);
|
||||
|
|
Loading…
Reference in New Issue