OSDN Git Service

[Qt][MOVIE_SAVER] (MAYBE) Fix not running with Ubuntu 16.04 LTS.
authorK.Ohta <whatisthis.sowhat@gmail.com>
Wed, 8 Jun 2016 14:18:55 +0000 (23:18 +0900)
committerK.Ohta <whatisthis.sowhat@gmail.com>
Wed, 8 Jun 2016 14:18:55 +0000 (23:18 +0900)
44 files changed:
source/000_gitlog.txt
source/RELEASENOTE.txt
source/build-cmake/buildvars.dat
source/build-cmake/cmake/config_commonsource.cmake
source/build-cmake/config_build_cross_win32.sh
source/src/common.cpp
source/src/common.h
source/src/config.h
source/src/qt/avio/CMakeLists.txt
source/src/qt/avio/movie_saver.h
source/src/qt/avio/movie_saver_fileio.cpp
source/src/qt/common/CMakeLists.txt
source/src/qt/common/mainwidget.h
source/src/qt/common/qt_utils.cpp
source/src/qt/emuutils/CMakeLists.txt
source/src/qt/gui/CMakeLists.txt
source/src/qt/gui/agar_logger.h
source/src/qt/gui/commonclasses.h
source/src/qt/gui/dialog_movie.h
source/src/qt/gui/dialog_set_key_combo.h
source/src/qt/gui/display_about.h
source/src/qt/gui/display_text_document.h
source/src/qt/gui/dropdown_joystick.h
source/src/qt/gui/dropdown_jsbutton.h
source/src/qt/gui/dropdown_jspage.h
source/src/qt/gui/dropdown_keyset.h
source/src/qt/gui/joy_thread.h
source/src/qt/gui/mainwidget_base.h
source/src/qt/gui/menu_binary.h
source/src/qt/gui/menu_bubble.h
source/src/qt/gui/menu_cart.h
source/src/qt/gui/menu_cmt.h
source/src/qt/gui/menu_compactdisc.h
source/src/qt/gui/menu_disk.h
source/src/qt/gui/menu_metaclass.cpp [moved from source/src/qt/common/menu_metaclass.cpp with 91% similarity]
source/src/qt/gui/menu_metaclass.h [moved from source/src/qt/common/menu_metaclass.h with 89% similarity]
source/src/qt/gui/menu_quickdisk.h
source/src/qt/gui/qt_dialogs.h
source/src/qt/gui/qt_gldraw.h
source/src/qt/gui/qt_glutil_gl2_0.h
source/src/qt/gui/qt_glutil_gl3_0.h
source/src/qt/gui/qt_main.h
source/src/qt/gui/sound_dialog.h
source/src/qt/osd_base.h

index 33a1db7..77f7bc4 100644 (file)
@@ -1,3 +1,21 @@
+commit cd5cb8e89fb3a5bdf82fe7bacd6f7967dc56282f
+Author: K.Ohta <whatisthis.sowhat@gmail.com>
+Date:   Wed Jun 8 08:06:31 2016 +0900
+
+    [UI][Qt][MOVIE_SAVER] Fix typo.
+
+commit 1ae7723ffc46228182eba985cb3c63dc029208f4
+Author: K.Ohta <whatisthis.sowhat@gmail.com>
+Date:   Wed Jun 8 07:46:20 2016 +0900
+
+    [*nix] Update installer script.
+
+commit 86d5ec29dee494bcf71a936dd3655cadeb457e5a
+Author: K.Ohta <whatisthis.sowhat@gmail.com>
+Date:   Wed Jun 8 07:44:43 2016 +0900
+
+    [DOC] Update documents.
+
 commit 2142d5c7426e21cfeedbaea0450f238f8b4d7d38
 Author: K.Ohta <whatisthis.sowhat@gmail.com>
 Date:   Wed Jun 8 07:27:40 2016 +0900
index 3dd3c00..6635abf 100644 (file)
@@ -14,13 +14,13 @@ Source Code:
 Additional INFO:
 GNU/Linux with AMD64 binaries and Win32 with MINGW binaries are avaiable, packed with 7zip'ed format:
 
-   
+   https://www.sendspace.com/file/pja2z2
     or
-   
+   http://www1.axfc.net/u/3676696
 
-  SIZE: 
-  MD5SUM: 
-  SHA256SUM: 
+  SIZE: 85332844 
+  MD5SUM: 5d577985a134bf6661d6cf15407a89aa
+  SHA256SUM: 573dd2eb3b99cfc6098b27a6a6ab835030752c2fb95e96e1b84a9eb120a62588
 
 2.Background
 Common Source Code Project (CSP) is good emulator writing.
index 454e085..2ae9c21 100644 (file)
@@ -27,16 +27,18 @@ MAKEFLAGS_CC="-g -O2  ${MAKEFLAGS_BASE} -flto -DNDEBUG"
 MAKEFLAGS_LIB_CXX="-flto -g -O2 ${MAKEFLAGS_BASE} -DNDEBUG" 
 MAKEFLAGS_LIB_CC="-flto -g -O2 ${MAKEFLAGS_BASE}  -DNDEBUG"
 
-MAKEFLAGS_GENERAL="-j3"
+MAKEFLAGS_GENERAL="-j6"
 
 BUILD_TYPE="Relwithdebinfo"
-CMAKE_LINKFLAG="-g -flto=4 -fwhole-program -O2 ${MAKEFLAGS_BASE}"
-CMAKE_DLL_LINKFLAG="-g -flto=4 -O2 ${MAKEFLAGS_BASE}"
+CMAKE_LINKFLAG="-g -flto=6 -fwhole-program -O2 ${MAKEFLAGS_BASE}"
+CMAKE_DLL_LINKFLAG="-g -flto=6 -O2 ${MAKEFLAGS_BASE}"
+
+
 
 LIB_INSTALL="/usr/local/lib/x86_64-linux-gnu/"
 #LIB_INSTALL="/usr/local/lib/"
 #LIB_INSTALL="/usr/lib/x86_64-linux-gnu/"
-
-CMAKE_APPENDFLAG="-DUSE_MOVIE_SAVER=ON -DUSE_MOVIE_LOADER=ON -DCMAKE_AR:STRING=gcc-ar-6 -DCMAKE_NM:STRING=gcc-nm-6 -DCMAKE_RANLIB:STRING=gcc-ranlib-6"
+CMAKE_APPENDFLAG="-DLIBAV_ROOT_DIR=/usr/local/ffmpeg-2.8.7"
+CMAKE_APPENDFLAG="${CMAKE_APPENDFLAG} -DUSE_MOVIE_SAVER=ON -DUSE_MOVIE_LOADER=ON -DCMAKE_AR:STRING=gcc-ar-6 -DCMAKE_NM:STRING=gcc-nm-6 -DCMAKE_RANLIB:STRING=gcc-ranlib-6"
 
 
index a3ae177..b943bb8 100644 (file)
@@ -192,21 +192,32 @@ endif()
 
 include(simd-x86)
 
-set(BUNDLE_LIBS 
-
-                           ${OPENGL_LIBRARY}
-                          ${OPENCL_LIBRARY}
-                          ${GETTEXT_LIBRARY}
-                          ${OPENMP_LIBRARY}
-                          ${LIBAV_LIBRARIES}
-                           ${SDL_LIBS}
-                          ${LIBAV_LIBRARIES}
-                          ${ADDITIONAL_LIBRARIES}
-)
 if(WIN32)
-   set(BUNDLE_LIBS ${BUNDLE_LIBS})
+   set(BUNDLE_LIBS 
+       ${OPENGL_LIBRARY}
+       ${OPENCL_LIBRARY}
+       ${GETTEXT_LIBRARY}
+       ${OPENMP_LIBRARY}
+       ${LIBAV_LIBRARIES}
+       ${SDL_LIBS}
+       ${LIBAV_LIBRARIES}
+       ${ADDITIONAL_LIBRARIES}
+       )
+
 else()
+   set(BUNDLE_LIBS 
+       ${OPENGL_LIBRARY}
+       ${OPENCL_LIBRARY}
+       ${GETTEXT_LIBRARY}
+       ${OPENMP_LIBRARY}
+       ${SDL_LIBS}
+       ${LIBAV_LIBRARIES}
+       ${ADDITIONAL_LIBRARIES}
+       )
+
    set(BUNDLE_LIBS ${BUNDLE_LIBS} -lCSPosd -lCSPgui -lCSPemu_utils -lCSPavio)
+#   set(BUNDLE_LIBS ${BUNDLE_LIBS} -lCSPavcodec -lCSPavfilter -lCSPavformat -lCSPavutil -lCSPswresample -lCSPswscale -lCSPpostproc )
+
 endif()
 
 if(USE_QT_5)
index c4acd7b..42c80e1 100755 (executable)
@@ -131,11 +131,11 @@ done
 
 exit 0
 
-for ii in libCSPavio libCSPgui libCSPosd libCSPemu_utils; do
-    cd $ii/build-win32
-    make clean
-    cd ../..
-done
+#for ii in libCSPavio libCSPgui libCSPosd libCSPemu_utils; do
+#    cd $ii/build-win32
+#    make clean
+#    cd ../..
+#done
 
 exit 0
 
index 0139831..d386cda 100644 (file)
        extern DWORD GetLongPathName(LPCTSTR lpszShortPath, LPTSTR lpszLongPath, DWORD cchBuffer);
 #endif
 #if defined(_USE_QT)
-       extern std::string cpp_homedir;
-       extern std::string my_procname;
+       extern std::string DLL_PREFIX cpp_homedir;
+       extern std::string DLL_PREFIX my_procname;
 #endif
 
-uint32_t EndianToLittle_DWORD(uint32_t x)
+uint32_t DLL_PREFIX EndianToLittle_DWORD(uint32_t x)
 {
 #if defined(__LITTLE_ENDIAN__)
        return x;
@@ -53,7 +53,7 @@ uint32_t EndianToLittle_DWORD(uint32_t x)
 #endif
 }
 
-uint16_t EndianToLittle_WORD(uint16_t x)
+uint16_t DLL_PREFIX EndianToLittle_WORD(uint16_t x)
 {
 #if defined(__LITTLE_ENDIAN__)
        return x;
@@ -65,7 +65,7 @@ uint16_t EndianToLittle_WORD(uint16_t x)
 }
 
 #ifndef _MSC_VER
-int max(int a, int b)
+int DLL_PREFIX max(int a, int b)
 {
        if(a > b) {
                return a;
@@ -74,7 +74,7 @@ int max(int a, int b)
        }
 }
 
-unsigned int max(unsigned int a, unsigned int b)
+unsigned DLL_PREFIX int max(unsigned int a, unsigned int b)
 {
        if(a > b) {
                return a;
@@ -83,7 +83,7 @@ unsigned int max(unsigned int a, unsigned int b)
        }
 }
 
-int min(int a, int b)
+int DLL_PREFIX min(int a, int b)
 {
        if(a < b) {
                return a;
@@ -92,7 +92,7 @@ int min(int a, int b)
        }
 }
 
-unsigned int min(unsigned int a, unsigned int b)
+unsigned int DLL_PREFIX min(unsigned int a, unsigned int b)
 {
        if(a < b) {
                return a;
@@ -112,41 +112,41 @@ unsigned int min(unsigned int a, unsigned int b)
 //     }
 //}
 
-errno_t my_strcpy_s(char *strDestination, size_t numberOfElements, const char *strSource)
+errno_t DLL_PREFIX my_strcpy_s(char *strDestination, size_t numberOfElements, const char *strSource)
 {
        strcpy(strDestination, strSource);
        return 0;
 }
 
-errno_t my_tcscpy_s(_TCHAR *strDestination, size_t numberOfElements, const _TCHAR *strSource)
+errno_t DLL_PREFIX my_tcscpy_s(_TCHAR *strDestination, size_t numberOfElements, const _TCHAR *strSource)
 {
        _tcscpy(strDestination, strSource);
        return 0;
 }
 
-errno_t my_strncpy_s(char *strDestination, size_t numberOfElements, const char *strSource, size_t count)
+errno_t DLL_PREFIX my_strncpy_s(char *strDestination, size_t numberOfElements, const char *strSource, size_t count)
 {
        strncpy(strDestination, strSource, count);
        return 0;
 }
 
-errno_t my_tcsncpy_s(_TCHAR *strDestination, size_t numberOfElements, const _TCHAR *strSource, size_t count)
+errno_t DLL_PREFIX my_tcsncpy_s(_TCHAR *strDestination, size_t numberOfElements, const _TCHAR *strSource, size_t count)
 {
        _tcsncpy(strDestination, strSource, count);
        return 0;
 }
 
-char *my_strtok_s(char *strToken, const char *strDelimit, char **context)
+char *DLL_PREFIX my_strtok_s(char *strToken, const char *strDelimit, char **context)
 {
        return strtok(strToken, strDelimit);
 }
 
-_TCHAR *my_tcstok_s(_TCHAR *strToken, const char *strDelimit, _TCHAR **context)
+_TCHAR *DLL_PREFIX my_tcstok_s(_TCHAR *strToken, const char *strDelimit, _TCHAR **context)
 {
        return _tcstok(strToken, strDelimit);
 }
 
-int my_sprintf_s(char *buffer, size_t sizeOfBuffer, const char *format, ...)
+int DLL_PREFIX my_sprintf_s(char *buffer, size_t sizeOfBuffer, const char *format, ...)
 {
        va_list ap;
        va_start(ap, format);
@@ -155,7 +155,7 @@ int my_sprintf_s(char *buffer, size_t sizeOfBuffer, const char *format, ...)
        return result;
 }
 
-int my_stprintf_s(_TCHAR *buffer, size_t sizeOfBuffer, const _TCHAR *format, ...)
+int DLL_PREFIX my_stprintf_s(_TCHAR *buffer, size_t sizeOfBuffer, const _TCHAR *format, ...)
 {
        va_list ap;
        va_start(ap, format);
@@ -164,19 +164,19 @@ int my_stprintf_s(_TCHAR *buffer, size_t sizeOfBuffer, const _TCHAR *format, ...
        return result;
 }
 
-int my_vsprintf_s(char *buffer, size_t numberOfElements, const char *format, va_list argptr)
+int DLL_PREFIX my_vsprintf_s(char *buffer, size_t numberOfElements, const char *format, va_list argptr)
 {
        return vsprintf(buffer, format, argptr);
 }
 
-int my_vstprintf_s(_TCHAR *buffer, size_t numberOfElements, const _TCHAR *format, va_list argptr)
+int DLL_PREFIX my_vstprintf_s(_TCHAR *buffer, size_t numberOfElements, const _TCHAR *format, va_list argptr)
 {
        return _vstprintf(buffer, format, argptr);
 }
 #endif
 
 #ifndef _WIN32
-BOOL MyWritePrivateProfileString(LPCTSTR lpAppName, LPCTSTR lpKeyName, LPCTSTR lpString, LPCTSTR lpFileName)
+BOOL DLL_PREFIX MyWritePrivateProfileString(LPCTSTR lpAppName, LPCTSTR lpKeyName, LPCTSTR lpString, LPCTSTR lpFileName)
 {
        BOOL result = FALSE;
        FILEIO* fio_i = new FILEIO();
@@ -296,7 +296,7 @@ static std::string MyGetPrivateProfileStr(const _TCHAR *lpAppName, const _TCHAR
        return got_str;
 }
 
-DWORD MyGetPrivateProfileString(LPCTSTR lpAppName, LPCTSTR lpKeyName, LPCTSTR lpDefault, LPTSTR lpReturnedString, DWORD nSize, LPCTSTR lpFileName)
+DWORD DLL_PREFIX MyGetPrivateProfileString(LPCTSTR lpAppName, LPCTSTR lpKeyName, LPCTSTR lpDefault, LPTSTR lpReturnedString, DWORD nSize, LPCTSTR lpFileName)
 {
        _TCHAR *lpp = (_TCHAR *)lpReturnedString;
        if(lpDefault != NULL) {
@@ -333,7 +333,7 @@ DWORD MyGetPrivateProfileString(LPCTSTR lpAppName, LPCTSTR lpKeyName, LPCTSTR lp
        return strlen(lpp);
 }
 
-UINT MyGetPrivateProfileInt(LPCTSTR lpAppName, LPCTSTR lpKeyName, INT nDefault, LPCTSTR lpFileName)
+UINT DLL_PREFIX MyGetPrivateProfileInt(LPCTSTR lpAppName, LPCTSTR lpKeyName, INT nDefault, LPCTSTR lpFileName)
 {
        int i;
        char sstr[128];
@@ -441,7 +441,7 @@ struct to_upper {  // Refer from documentation of libstdc++, GCC5.
 };
 #endif
 
-const _TCHAR *get_application_path()
+const _TCHAR *DLL_PREFIX get_application_path()
 {
        static _TCHAR app_path[_MAX_PATH];
        static bool initialized = false;
@@ -485,7 +485,7 @@ const _TCHAR *get_application_path()
        return (const _TCHAR *)app_path;
 }
 
-const _TCHAR *create_local_path(const _TCHAR *format, ...)
+const _TCHAR *DLL_PREFIX create_local_path(const _TCHAR *format, ...)
 {
        static _TCHAR file_path[8][_MAX_PATH];
        static unsigned int table_index = 0;
@@ -500,7 +500,7 @@ const _TCHAR *create_local_path(const _TCHAR *format, ...)
        return (const _TCHAR *)file_path[output_index];
 }
 
-void create_local_path(_TCHAR *file_path, int length, const _TCHAR *format, ...)
+void DLL_PREFIX create_local_path(_TCHAR *file_path, int length, const _TCHAR *format, ...)
 {
        _TCHAR file_name[_MAX_PATH];
        va_list ap;
@@ -519,12 +519,12 @@ const _TCHAR *create_date_file_path(const _TCHAR *extension)
        return create_local_path(_T("%d-%0.2d-%0.2d_%0.2d-%0.2d-%0.2d.%s"), cur_time.year, cur_time.month, cur_time.day, cur_time.hour, cur_time.minute, cur_time.second, extension);
 }
 
-void create_date_file_path(_TCHAR *file_path, int length, const _TCHAR *extension)
+void DLL_PREFIX create_date_file_path(_TCHAR *file_path, int length, const _TCHAR *extension)
 {
        my_tcscpy_s(file_path, length, create_date_file_path(extension));
 }
 
-bool check_file_extension(const _TCHAR *file_path, const _TCHAR *ext)
+bool DLL_PREFIX check_file_extension(const _TCHAR *file_path, const _TCHAR *ext)
 {
 #if defined(_USE_QT)
        std::string s_fpath = file_path;
@@ -545,7 +545,7 @@ bool check_file_extension(const _TCHAR *file_path, const _TCHAR *ext)
 #endif
 }
 
-const _TCHAR *get_file_path_without_extensiton(const _TCHAR *file_path)
+const _TCHAR *DLL_PREFIX get_file_path_without_extensiton(const _TCHAR *file_path)
 {
        static _TCHAR path[8][_MAX_PATH];
        static unsigned int table_index = 0;
@@ -563,7 +563,7 @@ const _TCHAR *get_file_path_without_extensiton(const _TCHAR *file_path)
        return (const _TCHAR *)path[output_index];
 }
 
-void get_long_full_path_name(const _TCHAR* src, _TCHAR* dst, size_t dst_len)
+void DLL_PREFIX get_long_full_path_name(const _TCHAR* src, _TCHAR* dst, size_t dst_len)
 {
        _TCHAR tmp[_MAX_PATH];
        
@@ -578,7 +578,7 @@ void get_long_full_path_name(const _TCHAR* src, _TCHAR* dst, size_t dst_len)
 #endif
 }
 
-const _TCHAR* get_parent_dir(const _TCHAR* file)
+const _TCHAR* DLL_PREFIX get_parent_dir(const _TCHAR* file)
 {
        static _TCHAR path[8][_MAX_PATH];
        static unsigned int table_index = 0;
@@ -596,7 +596,7 @@ const _TCHAR* get_parent_dir(const _TCHAR* file)
        return path[output_index];
 }
 
-const _TCHAR *create_string(const _TCHAR* format, ...)
+const _TCHAR *DLL_PREFIX create_string(const _TCHAR* format, ...)
 {
        static _TCHAR buffer[8][1024];
        static unsigned int table_index = 0;
@@ -609,7 +609,7 @@ const _TCHAR *create_string(const _TCHAR* format, ...)
        return (const _TCHAR *)buffer[output_index];
 }
 
-uint32_t get_crc32(uint8_t data[], int size)
+uint32_t DLL_PREFIX get_crc32(uint8_t data[], int size)
 {
        static bool initialized = false;
        static uint32_t table[256];
@@ -636,7 +636,7 @@ uint32_t get_crc32(uint8_t data[], int size)
        return ~c;
 }
 
-uint16_t jis_to_sjis(uint16_t jis)
+uint16_t DLL_PREFIX jis_to_sjis(uint16_t jis)
 {
        pair_t tmp;
        
@@ -656,13 +656,13 @@ uint16_t jis_to_sjis(uint16_t jis)
        return tmp.w.l;
 }
 
-int decibel_to_volume(int decibel)
+int DLL_PREFIX decibel_to_volume(int decibel)
 {
        // +1 equals +0.5dB (same as fmgen)
        return (int)(1024.0 * pow(10.0, decibel / 40.0) + 0.5);
 }
 
-int32_t apply_volume(int32_t sample, int volume)
+int32_t DLL_PREFIX apply_volume(int32_t sample, int volume)
 {
 //     int64_t output;
        int32_t output;
@@ -686,7 +686,7 @@ int32_t apply_volume(int32_t sample, int volume)
        return output;
 }
 
-void get_host_time(cur_time_t* cur_time)
+void DLL_PREFIX get_host_time(cur_time_t* cur_time)
 {
 #ifdef _WIN32
        SYSTEMTIME sTime;
index 3a3081a..36b5393 100644 (file)
        #elif defined(Q_OS_WIN) || defined(__WIN32) || defined(__WIN64)
                #define CSP_OS_GCC_WINDOWS
                #define CSP_OS_WINDOWS
+               #define DLL_PREFIX   __declspec(dllexport)
+               #define DLL_PREFIX_I __declspec(dllimport)
        #else
                #define CSP_OS_GCC_GENERIC
                #define CSP_OS_GENERIC
+               #define DLL_PREFIX
+               #define DLL_PREFIX_I
        #endif
        #if defined(__clang__)
                #define __CSP_COMPILER_CLANG
                #define __CSP_COMPILER_GCC
        #endif
        #define SUPPORT_CPLUSPLUS_11
+#else
+               #define DLL_PREFIX
+               #define DLL_PREFIX_I
 #endif
+
 #ifndef SUPPORT_CPLUSPLUS_11
        #if defined(__cplusplus) && (__cplusplus > 199711L)
                #define SUPPORT_CPLUSPLUS_11
@@ -383,17 +391,17 @@ uint16_t EndianToLittle_WORD(uint16_t x);
                typedef int errno_t;
        #endif
 //     errno_t my_tfopen_s(FILE** pFile, const _TCHAR *filename, const _TCHAR *mode);
-       errno_t my_strcpy_s(char *strDestination, size_t numberOfElements, const char *strSource);
-       errno_t my_tcscpy_s(_TCHAR *strDestination, size_t numberOfElements, const _TCHAR *strSource);
-       errno_t my_strncpy_s(char *strDestination, size_t numberOfElements, const char *strSource, size_t count);
-       errno_t my_tcsncpy_s(_TCHAR *strDestination, size_t numberOfElements, const _TCHAR *strSource, size_t count);
-       char *my_strtok_s(char *strToken, const char *strDelimit, char **context);
-       _TCHAR *my_tcstok_s(_TCHAR *strToken, const char *strDelimit, _TCHAR **context);
+       errno_t DLL_PREFIX my_strcpy_s(char *strDestination, size_t numberOfElements, const char *strSource);
+       errno_t DLL_PREFIX my_tcscpy_s(_TCHAR *strDestination, size_t numberOfElements, const _TCHAR *strSource);
+       errno_t DLL_PREFIX my_strncpy_s(char *strDestination, size_t numberOfElements, const char *strSource, size_t count);
+       errno_t DLL_PREFIX my_tcsncpy_s(_TCHAR *strDestination, size_t numberOfElements, const _TCHAR *strSource, size_t count);
+       char * DLL_PREFIX my_strtok_s(char *strToken, const char *strDelimit, char **context);
+       _TCHAR * DLL_PREFIX my_tcstok_s(_TCHAR *strToken, const char *strDelimit, _TCHAR **context);
        #define my_fprintf_s fprintf
-       int my_sprintf_s(char *buffer, size_t sizeOfBuffer, const char *format, ...);
-       int my_stprintf_s(_TCHAR *buffer, size_t sizeOfBuffer, const _TCHAR *format, ...);
-       int my_vsprintf_s(char *buffer, size_t numberOfElements, const char *format, va_list argptr);
-       int my_vstprintf_s(_TCHAR *buffer, size_t numberOfElements, const _TCHAR *format, va_list argptr);
+       int DLL_PREFIX my_sprintf_s(char *buffer, size_t sizeOfBuffer, const char *format, ...);
+       int DLL_PREFIX my_stprintf_s(_TCHAR *buffer, size_t sizeOfBuffer, const _TCHAR *format, ...);
+       int DLL_PREFIX my_vsprintf_s(char *buffer, size_t numberOfElements, const char *format, va_list argptr);
+       int DLL_PREFIX my_vstprintf_s(_TCHAR *buffer, size_t numberOfElements, const _TCHAR *format, va_list argptr);
 #else
 //     #define my_tfopen_s _tfopen_s
        #define my_strcpy_s strcpy_s
@@ -469,23 +477,23 @@ typedef struct {
 #pragma pack()
 
 // file path
-const _TCHAR *get_application_path();
-const _TCHAR *create_local_path(const _TCHAR *format, ...);
-void create_local_path(_TCHAR *file_path, int length, const _TCHAR *format, ...);
-const _TCHAR *create_date_file_path(const _TCHAR *extension);
-void create_date_file_path(_TCHAR *file_path, int length, const _TCHAR *extension);
-bool check_file_extension(const _TCHAR *file_path, const _TCHAR *ext);
-const _TCHAR *get_file_path_without_extensiton(const _TCHAR *file_path);
-void get_long_full_path_name(const _TCHAR* src, _TCHAR* dst, size_t dst_len);
-const _TCHAR* get_parent_dir(const _TCHAR* file);
+const _TCHAR * DLL_PREFIX get_application_path();
+const _TCHAR * DLL_PREFIX create_local_path(const _TCHAR *format, ...);
+void DLL_PREFIX create_local_path(_TCHAR *file_path, int length, const _TCHAR *format, ...);
+const _TCHAR * DLL_PREFIX create_date_file_path(const _TCHAR *extension);
+void DLL_PREFIX create_date_file_path(_TCHAR *file_path, int length, const _TCHAR *extension);
+bool DLL_PREFIX check_file_extension(const _TCHAR *file_path, const _TCHAR *ext);
+const _TCHAR * DLL_PREFIX get_file_path_without_extensiton(const _TCHAR *file_path);
+void DLL_PREFIX get_long_full_path_name(const _TCHAR* src, _TCHAR* dst, size_t dst_len);
+const _TCHAR* DLL_PREFIX get_parent_dir(const _TCHAR* file);
 
 // misc
-const _TCHAR *create_string(const _TCHAR* format, ...);
-uint32_t get_crc32(uint8_t data[], int size);
-uint16_t jis_to_sjis(uint16_t jis);
+const _TCHAR * DLL_PREFIX create_string(const _TCHAR* format, ...);
+uint32_t DLL_PREFIX get_crc32(uint8_t data[], int size);
+uint16_t DLL_PREFIX jis_to_sjis(uint16_t jis);
 
-int decibel_to_volume(int decibel);
-int32_t apply_volume(int32_t sample, int volume);
+int DLL_PREFIX decibel_to_volume(int decibel);
+int32_t DLL_PREFIX apply_volume(int32_t sample, int volume);
 
 #define array_length(array) (sizeof(array) / sizeof(array[0]))
 
@@ -510,6 +518,6 @@ typedef struct cur_time_s {
        bool load_state(void *f);
 } cur_time_t;
 
-void get_host_time(cur_time_t* cur_time);
+void DLL_PREFIX get_host_time(cur_time_t* cur_time);
 
 #endif
index d35d561..6c6a7e7 100644 (file)
 #define MAX_BINARY     1
 #endif
 
-void initialize_config();
-void load_config(const _TCHAR* config_path);
-void save_config(const _TCHAR* config_path);
-void save_config_state(void *f);
-bool load_config_state(void *f);
+void DLL_PREFIX initialize_config();
+void DLL_PREFIX load_config(const _TCHAR* config_path);
+void DLL_PREFIX save_config(const _TCHAR* config_path);
+void DLL_PREFIX save_config_state(void *f);
+bool DLL_PREFIX load_config_state(void *f);
 
 
 /*
index 9621794..98581c1 100644 (file)
@@ -25,36 +25,74 @@ add_library(qt_avio
          ${s_qt_avio_headers_MOC}
 )
 
-#add_library(CSPgui SHARED
+#add_library(CSPavio SHARED
 #        ${s_qt_avio_srcs}
 #        ${s_qt_avio_headers_MOC}
-#        )
+#)
+
 #target_link_libraries(CSPavio PUBLIC
-#${CMAKE_SOURCE_DIR}/../../build-cmake/libCSPavio/build-win32/qt/avio/CSPavio.dll
-#        Qt5::Core
-#        Qt5::Gui
-#        Qt5::OpenGL
-#        Qt5::Svg
-#        Qt5::Widgets
+#                 ${LIBAV_LIBRARIES}
+#          ${CMAKE_SOURCE_DIR}/../../build-cmake/libCSPavio/build-win32/qt/avio/CSPavio.dll
+#                 Qt5::Core
+#                 Qt5::Gui
+#                 Qt5::Widgets
 #        )
 #QT5_USE_MODULES(CSPavio Widgets Core Gui OpenGL)
 #
 #generate_export_header(CSPavio
-#        BASE_NAME CSPavio
+#       BASE_NAME CSPavio
 #        EXPORT_MACRO_NAME CSPavio_EXPORT
 #        EXPORT_FILE_NAME CSPavio_Export.h
 #        STATIC_DEFINE CSPavio_BUILT_AS_STATIC
 #)
 
 else()
+#add_library(CSPavio SHARED
+#        ${s_qt_avio_srcs}
+#        ${s_qt_avio_headers_MOC}
+#)
+#SET(CMAKE_FIND_LIBRARY_SUFFIXES .a)
+#find_library(LIBAV_STATIC_LIBAVCODEC  avcodec)
+#find_library(LIBAV_STATIC_LIBAVDEVICE avdevice)
+#find_library(LIBAV_STATIC_LIBAVFILTER avfilter)
+#find_library(LIBAV_STATIC_LIBAVFORMAT avformat)
+#find_library(LIBAV_STATIC_LIBAVUTIL avutil)
+#find_library(LIBAV_STATIC_LIBAVRESAMPLE avresample)
+#find_library(LIBAV_STATIC_LIBSWRESAMPLE swresample)
+#find_library(LIBAV_STATIC_LIBSWSCALE swscale)
+#find_library(LIBAV_STATIC_LIBPOSTPROC postproc)
+
+
+#if(NOT (LIBAV_STATIC_LIBAVCODEC-NOTFOUND OR LIBAV_STATIC_LIBAVDEVICE-NOTFOUND
+#  OR LIBAV_STATIC_LIBAVFILTER-NOTFOUND OR LIBAV_STATIC_LIBAVFORMAT-NOTFOUND 
+#   OR LIBAV_STATIC_LIBAVUTIL-NOTFOUND  OR LIBAV_STATIC_LIBAVRESAMPLE-NOTFOUND 
+#   OR LIBAV_STATIC_LIBSWRESAMPLE-NOTFOUND OR LIBAV_STATIC_LIBSWSCAPE-NOTFOUND
+#   OR LIBAV_STATIC_LIBPOSTPROC-NOTFOUND ))
 add_library(CSPavio SHARED
          ${s_qt_avio_srcs}
          ${s_qt_avio_headers_MOC}
-)
+         )
+#set(LIBAV_STATIC_PREFIX /usr/local/ffmpeg-2.8.7/lib)
+#target_link_libraries(CSPavio LINK_PRIVATE
+#        ${LIBAV_STATIC_PREFIX}/libavcodec.a
+#        ${LIBAV_STATIC_PREFIX}/libavfilter.a
+#        ${LIBAV_STATIC_PREFIX}/libavformat.a
+#        ${LIBAV_STATIC_PREFIX}/libavutil.a
+#        avresample
+#        ${LIBAV_STATIC_PREFIX}/libswresample.a
+#        ${LIBAV_STATIC_PREFIX}/libswscale.a
+#        ${LIBAV_STATIC_PREFIX}/libpostproc.a
+#        )
+#else()
+#   add_library(CSPavio SHARED
+#        ${s_qt_avio_srcs}
+#        ${s_qt_avio_headers_MOC}
+#        )
+#endif()
 
 set_target_properties(CSPavio PROPERTIES 
-                            SOVERSION 1.1.0
-                            VERSION 1.1.0
+                            SOVERSION 1.1.2
+                            VERSION 1.1.2
                             )
 INSTALL(TARGETS CSPavio DESTINATION ${LIBCSP_INSTALL_DIR})
 endif()
index 18d138f..dcd113a 100644 (file)
@@ -25,7 +25,6 @@ extern "C" {
        #include "libswresample/swresample.h"
 }
 #endif
-
 // Copy from FFMPEG-3.0.2; doc/example/muxing.c .
 
 #define STREAM_PIX_FMT    AV_PIX_FMT_YUV420P /* default pix_fmt */
index 305d52e..62be655 100644 (file)
@@ -10,6 +10,7 @@
 #include "../osd.h"
 #include "agar_logger.h"
 
+
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
index 936a7b1..b2884ee 100644 (file)
@@ -2,7 +2,6 @@ message("* qt/common")
 
 set(s_qt_common_headers
          emu_thread.h
-         menu_metaclass.h
          mainwidget.h
          ../osd.h
 )
@@ -16,7 +15,6 @@ endif()
 set(QT_COMMON_BASE  
          qt_utils.cpp
          menu_flags.cpp
-         menu_metaclass.cpp
          emu_thread.cpp
          util_fd2.cpp
          util_bubble2.cpp
index 5d359c7..a9fa5dc 100644 (file)
@@ -69,6 +69,11 @@ public slots:
        void do_set_mouse_enable(bool flag);
        void do_toggle_mouse(void);
        void rise_movie_dialog(void);
+       void do_update_inner_fd(int drv, QStringList base, class Action_Control **action_select_media_list,
+                                                       QStringList lst, int num, bool use_d88_menus);
+       void do_update_inner_bubble(int drv, QStringList base, class Action_Control **action_select_media_list,
+                                                       QStringList lst, int num, bool use_d88_menus);
+
 signals:
        int sig_movie_set_width(int);
        int sig_movie_set_height(int);
index a193505..db29e25 100644 (file)
@@ -196,6 +196,8 @@ void Ui_MainWindow::LaunchEmuThread(void)
 # endif
        for(int ii = 0; ii < drvs; ii++) {
                menu_fds[ii]->setEmu(emu);
+               connect(menu_fds[ii], SIGNAL(sig_update_inner_fd(int ,QStringList , class Action_Control **, QStringList , int, bool)),
+                               this, SLOT(do_update_inner_fd(int ,QStringList , class Action_Control **, QStringList , int, bool)));
        }
 #endif
 #if defined(USE_TAPE)
@@ -250,6 +252,10 @@ void Ui_MainWindow::LaunchEmuThread(void)
 # endif
        for(int ii = 0; ii < drvs; ii++) {
                menu_bubbles[ii]->setEmu(emu);
+               connect(menu_bubbles[ii],
+                               SIGNAL(sig_update_inner_bubble(int ,QStringList , class Action_Control **, QStringList , int, bool)),
+                               this,
+                               SLOT(do_update_inner_bubble(int ,QStringList , class Action_Control **, QStringList , int, bool)));
        }
 #endif
        
@@ -636,6 +642,50 @@ int MainLoop(int argc, char *argv[])
        return 0;
 }
 
+void Ui_MainWindow::do_update_inner_fd(int drv, QStringList base, class Action_Control **action_select_media_list,
+                                      QStringList lst, int num, bool use_d88_menus)
+{
+#if defined(USE_FD1)
+       if(use_d88_menus) {
+               for(int ii = 0; ii < using_flags->get_max_d88_banks(); ii++) {
+                       if(ii < emu->d88_file[drv].bank_num) {
+                               base << lst.value(ii);
+                               action_select_media_list[ii]->setText(lst.value(ii));
+                               action_select_media_list[ii]->setVisible(true);
+                               if(ii == num) action_select_media_list[ii]->setChecked(true);
+                       } else {
+                               if(action_select_media_list[ii] != NULL) {
+                                       action_select_media_list[ii]->setText(QString::fromUtf8(""));
+                                       action_select_media_list[ii]->setVisible(false);
+                               }
+                       }
+               }
+       }
+#endif 
+}
+
+void Ui_MainWindow::do_update_inner_bubble(int drv, QStringList base, class Action_Control **action_select_media_list,
+                                      QStringList lst, int num, bool use_d88_menus)
+{
+#if defined(USE_BUBBLE1)       
+       if(use_d88_menus) {
+               for(int ii = 0; ii < using_flags->get_max_b77_banks(); ii++) {
+                       if(ii < emu->b77_file[media_drive].bank_num) {
+                               base << lst.value(ii);
+                               action_select_media_list[ii]->setText(lst.value(ii));
+                               action_select_media_list[ii]->setVisible(true);
+                               if(ii == num) action_select_media_list[ii]->setChecked(true);
+                       } else {
+                               if(action_select_media_list[ii] != NULL) {
+                                       action_select_media_list[ii]->setText(QString::fromUtf8(""));
+                                       action_select_media_list[ii]->setVisible(false);
+                               }
+                       }
+               }
+       }
+#endif 
+}
+
 #ifdef USE_DEBUGGER
 #include <../debugger/qt_debugger.h>
 
index 54dd741..42e4652 100644 (file)
@@ -15,11 +15,7 @@ add_library(emu_utils
 )
 
 
-#add_library(CSPgui SHARED
-#        ${s_qt_gui_srcs}
-#        ${s_qt_gui_headers_MOC}
-#        )
-#target_link_libraries(CSPgui PUBLIC
+#target_link_libraries(CSPemu_utils PUBLIC
 #         ${CMAKE_SOURCE_DIR}/../../build-cmake/libCSPosd/build-win32/qt/osd/CSPosd.dll
 #        Qt5::Core
 #        Qt5::Gui
index 468854f..0109c09 100644 (file)
@@ -9,6 +9,7 @@ set(s_qt_gui_headers
          commonclasses.h
          sound_dialog.h
          mainwidget_base.h
+         menu_metaclass.h
          menu_disk.h
          menu_cmt.h
          menu_cart.h
@@ -41,6 +42,7 @@ set(s_qt_gui_srcs
 
           qt_input.cpp
          menu_control.cpp
+         menu_metaclass.cpp
          menu_disk.cpp
          menu_quickdisk.cpp
          menu_compactdisc.cpp
@@ -85,30 +87,30 @@ else()
 endif()
 
 if(WIN32)
-include (GenerateExportHeader)
-
 add_library(qt_gui
          ${s_qt_gui_srcs}
          ${s_qt_gui_headers_MOC}
 )
 
-
+#include (GenerateExportHeader)
 #add_library(CSPgui SHARED
 #        ${s_qt_gui_srcs}
 #        ${s_qt_gui_headers_MOC}
 #        )
 #target_link_libraries(CSPgui PUBLIC
-#         ${CMAKE_SOURCE_DIR}/../../build-cmake/libCSPosd/build-win32/qt/osd/CSPosd.dll
-#        Qt5::Core
+#         ${CMAKE_SOURCE_DIR}/../../build-cmake/libCSPemu_utils/build-win32/qt/emuutils/libemu_utils.a
+#         ${CMAKE_SOURCE_DIR}/../../build-cmake/libCSPavio/build-win32/qt/avio/libqt_avio.a
+#         ${CMAKE_SOURCE_DIR}/../../build-cmake/libCSPosd/build-win32/qt/osd/libqt_osd.a
+##       Qt5::Core
 #        Qt5::Gui
 #        Qt5::OpenGL
-#        Qt5::Svg
 #        Qt5::Widgets
+#        ${SDL2_LIBRARIES}
 #        )
 #QT5_USE_MODULES(CSPgui Widgets Core Gui OpenGL)
 #
 #generate_export_header(CSPgui
-#        BASE_NAME CSPgui
+#       BASE_NAME CSPgui
 #        EXPORT_MACRO_NAME CSPgui_EXPORT
 #        EXPORT_FILE_NAME CSPgui_Export.h
 #        STATIC_DEFINE CSPgui_BUILT_AS_STATIC
@@ -121,8 +123,8 @@ add_library(CSPgui SHARED
 )
 
 set_target_properties(CSPgui PROPERTIES 
-                            SOVERSION 1.3.0
-                            VERSION 1.3.0
+                            SOVERSION 1.3.1
+                            VERSION 1.3.1
                             )
 INSTALL(TARGETS CSPgui DESTINATION ${LIBCSP_INSTALL_DIR})
 endif()
index 7aebece..89413c4 100644 (file)
 #include <sys/time.h>
 
 #include "simd_types.h"
-
+#ifdef __GNUC__
+       #if defined(Q_OS_WIN) || defined(__WIN32) || defined(__WIN64)
+               #define DLL_PREFIX __declspec(dllexport)
+       #else
+               #define DLL_PREFIX
+       #endif
+#else
+               #define DLL_PREFIX
+#endif
 #ifdef __cplusplus
 extern "C" {
 #endif
-   extern void AGAR_OpenLog(int syslog, int cons, const char *devname);
-   extern void AGAR_DebugLog(int level, const char *fmt, ...);
-   extern void AGAR_CloseLog(void);
-   extern void AGAR_SetLogStatus(int sw);
-   extern void AGAR_SetLogSysLog(int sw);
-   extern void AGAR_SetLogStdOut(int sw);
-   extern bool AGAR_LogGetStatus(void);
+   void DLL_PREFIX AGAR_OpenLog(int syslog, int cons, const char *devname);
+   void DLL_PREFIX AGAR_DebugLog(int level, const char *fmt, ...);
+   void DLL_PREFIX AGAR_CloseLog(void);
+   void DLL_PREFIX AGAR_SetLogStatus(int sw);
+   void DLL_PREFIX AGAR_SetLogSysLog(int sw);
+   void DLL_PREFIX AGAR_SetLogStdOut(int sw);
+   bool DLL_PREFIX AGAR_LogGetStatus(void);
 
 #define AGAR_LOG_ON 1
 #define AGAR_LOG_OFF 0
index eac99a1..fcfba83 100644 (file)
@@ -50,7 +50,7 @@ class EMU;
 extern class EMU* emu;
 
 QT_BEGIN_NAMESPACE
-typedef class Object_Menu_Control: public QObject {
+typedef class DLL_PREFIX Object_Menu_Control: public QObject {
        Q_OBJECT
 public:
 //   explicit Object_Menu_Control(QObject *parent = 0);
@@ -206,7 +206,7 @@ signals:
        int sig_stop_saving_movie();
 } Object_Menu_Control ;
 
-typedef class Action_Control: public QAction {
+typedef class DLL_PREFIX Action_Control: public QAction {
        Q_OBJECT
   protected:
        //    virtual void addedTo ( QWidget * actionWidget, QWidget * container ){}
index 85b0052..59ac61e 100644 (file)
 #include <QSize>
 #include <QWidget>
 
-       QT_BEGIN_NAMESPACE
+#ifdef __GNUC__
+       #if defined(Q_OS_WIN) || defined(__WIN32) || defined(__WIN64)
+               #define DLL_PREFIX __declspec(dllexport)
+       #else
+               #define DLL_PREFIX
+       #endif
+#else
+               #define DLL_PREFIX
+#endif
+
+QT_BEGIN_NAMESPACE
 class QHBoxLayout;
 class QVBoxLayout;
 class QGridLayout;
@@ -24,7 +34,7 @@ class QSlider;
 
 class MOVIE_SAVER;
 
-class CSP_DialogMovie: public QWidget {
+class DLL_PREFIX CSP_DialogMovie: public QWidget {
        Q_OBJECT;
 private:
        QSize geometry;
index f6e2a8e..d5d48c2 100644 (file)
 #include <QComboBox>
 #include <QList>
 #include <QStringList>
+#ifdef __GNUC__
+       #if defined(Q_OS_WIN) || defined(__WIN32) || defined(__WIN64)
+               #define DLL_PREFIX __declspec(dllexport)
+       #else
+               #define DLL_PREFIX
+       #endif
+#else
+               #define DLL_PREFIX
+#endif
 
 QT_BEGIN_NAMESPACE
-class CSP_KeySetupCombo: public QComboBox
+class DLL_PREFIX CSP_KeySetupCombo: public QComboBox
 {
        Q_OBJECT
 protected:
index e41fd29..97c96fe 100644 (file)
 #include <QHBoxLayout>
 #include <QGroupBox>
 
-//#include "emu.h"
+#include "common.h"
 
 QT_BEGIN_NAMESPACE
 
 class EMU;
-class Dlg_AboutCSP : public QWidget
+class DLL_PREFIX Dlg_AboutCSP : public QWidget
 {
        Q_OBJECT
 protected:
index 56a61e0..e9df047 100644 (file)
 #include <QVBoxLayout>
 #include <QFont>
 
-//#include "emu.h"
+#include "common.h"
 
 QT_BEGIN_NAMESPACE
 
-class Dlg_BrowseText : public QWidget
+class DLL_PREFIX Dlg_BrowseText : public QWidget
 {
        Q_OBJECT
 protected:
index 9edb674..b691476 100644 (file)
 #include <QStringList>
 #include <QString>
 #include <QHBoxLayout>
+#include "common.h"
 
 class CSP_DropDownJSPage;
 
 QT_BEGIN_NAMESPACE
 
-class CSP_DropDownJoysticks: public QWidget {
+class DLL_PREFIX CSP_DropDownJoysticks: public QWidget {
        Q_OBJECT
 protected:
        QWidget *p_wid;
index fdb05e6..8a1b456 100644 (file)
@@ -16,7 +16,7 @@
 
 #include "dropdown_keytables.h"
 
-class CSP_DropDownJSButton: public QWidget {
+class DLL_PREFIX CSP_DropDownJSButton: public QWidget {
        Q_OBJECT;
 protected:
        QWidget *p_wid;
index 804b6d9..44b020e 100644 (file)
 #include <QLabel>
 #include <QStringList>
 #include <QString>
+#include "common.h"
 
 #include "dropdown_jsbutton.h"
 
 
 QT_BEGIN_NAMESPACE
 
-class CSP_DropDownJSPage: public QWidget {
+class DLL_PREFIX CSP_DropDownJSPage: public QWidget {
        Q_OBJECT
 protected:
        QWidget *p_wid;
index 772d3d3..5b414aa 100644 (file)
@@ -36,7 +36,7 @@ const keydef_table_t joystick_define_tbl[] = {
 };
 
 #define KEYDEF_MAXIMUM 512
-class CSP_KeyTables: public QObject {
+class DLL_PREFIX CSP_KeyTables: public QObject {
        Q_OBJECT
 protected:
        QObject *p_obj;
index 475ee69..bcfebe3 100644 (file)
@@ -12,6 +12,7 @@
 
 #include <QThread>
 #include <SDL.h>
+#include "common.h"
 
 class EMU;
 class OSD;
@@ -19,7 +20,7 @@ class QString;
 
 QT_BEGIN_NAMESPACE
 
-class JoyThreadClass : public QThread {
+class DLL_PREFIX JoyThreadClass : public QThread {
        Q_OBJECT
  private:
        int joy_num[16];
index 719ef75..09bdef8 100644 (file)
@@ -78,7 +78,7 @@ class MOVIE_SAVER;
 
 extern         USING_FLAGS *using_flags;
 
-class Ui_MainWindowBase : public QMainWindow
+class DLL_PREFIX Ui_MainWindowBase : public QMainWindow
 {
        Q_OBJECT
  protected:
index f1b9a68..73291f0 100644 (file)
@@ -12,7 +12,7 @@
 
 QT_BEGIN_NAMESPACE
 
-class Menu_BinaryClass: public Menu_MetaClass {
+class DLL_PREFIX Menu_BinaryClass: public Menu_MetaClass {
        Q_OBJECT
 protected:
        QActionGroup *action_group_save_recent;
index 8ffc12b..f264dac 100644 (file)
@@ -12,7 +12,7 @@
 
 QT_BEGIN_NAMESPACE
 
-class Menu_BubbleClass: public Menu_MetaClass {
+class DLL_PREFIX Menu_BubbleClass: public Menu_MetaClass {
        Q_OBJECT
 protected:
        //QIcon icon_bubble_casette;
index fdea42c..5afad4c 100644 (file)
@@ -12,7 +12,7 @@
 
 QT_BEGIN_NAMESPACE
 
-class Menu_CartClass: public Menu_MetaClass {
+class DLL_PREFIX Menu_CartClass: public Menu_MetaClass {
        Q_OBJECT
 protected:
 public:
index 12a5dc9..f71c21a 100644 (file)
@@ -12,7 +12,7 @@
 
 QT_BEGIN_NAMESPACE
 
-class Menu_CMTClass: public Menu_MetaClass {
+class DLL_PREFIX Menu_CMTClass: public Menu_MetaClass {
        Q_OBJECT
 protected:
        QString desc_rec;
index 0309e72..4a11d6e 100644 (file)
@@ -12,7 +12,7 @@
 
 QT_BEGIN_NAMESPACE
 
-class Menu_CompactDiscClass: public Menu_MetaClass {
+class DLL_PREFIX Menu_CompactDiscClass: public Menu_MetaClass {
        Q_OBJECT
 protected:
 public:
index 992997a..c4d36a5 100644 (file)
@@ -13,7 +13,7 @@
 
 QT_BEGIN_NAMESPACE
 
-class Menu_FDClass: public Menu_MetaClass {
+class DLL_PREFIX Menu_FDClass: public Menu_MetaClass {
        Q_OBJECT
 protected:
        class Action_Control *action_ignore_crc_error;
similarity index 91%
rename from source/src/qt/common/menu_metaclass.cpp
rename to source/src/qt/gui/menu_metaclass.cpp
index 8ad6ac7..a8b1f1a 100644 (file)
@@ -7,12 +7,12 @@
 
 #include <QDir>
 
-#include "emu.h"
-#include "vm.h"
+//#include "emu.h"
+//#include "vm.h"
 #include "qt_dialogs.h"
 #include "menu_metaclass.h"
 #include "commonclasses.h"
-#include "mainwidget.h"
+#include "mainwidget_base.h"
 #include "commonclasses.h"
 
 
@@ -229,23 +229,7 @@ void Menu_MetaClass::do_update_inner_media(QStringList lst, int num)
        QString tmps;
        int ii;
        inner_media_list.clear();
-#if defined(USE_FD1)   
-       if(use_d88_menus) {
-               for(ii = 0; ii < using_flags->get_max_d88_banks(); ii++) {
-                       if(ii < p_emu->d88_file[media_drive].bank_num) {
-                               inner_media_list << lst.value(ii);
-                               action_select_media_list[ii]->setText(lst.value(ii));
-                               action_select_media_list[ii]->setVisible(true);
-                               if(ii == num) action_select_media_list[ii]->setChecked(true);
-                       } else {
-                               if(action_select_media_list[ii] != NULL) {
-                                       action_select_media_list[ii]->setText(QString::fromUtf8(""));
-                                       action_select_media_list[ii]->setVisible(false);
-                               }
-                       }
-               }
-       }
-#endif 
+       emit sig_update_inner_fd(media_drive, inner_media_list, action_select_media_list, lst , num, use_d88_menus);
 }
 
 void Menu_MetaClass::do_update_inner_media_bubble(QStringList lst, int num)
@@ -253,23 +237,8 @@ void Menu_MetaClass::do_update_inner_media_bubble(QStringList lst, int num)
        QString tmps;
        int ii;
        inner_media_list.clear();
-#if defined(USE_BUBBLE1)       
-       if(use_d88_menus) {
-               for(ii = 0; ii < using_flags->get_max_b77_banks(); ii++) {
-                       if(ii < p_emu->b77_file[media_drive].bank_num) {
-                               inner_media_list << lst.value(ii);
-                               action_select_media_list[ii]->setText(lst.value(ii));
-                               action_select_media_list[ii]->setVisible(true);
-                               if(ii == num) action_select_media_list[ii]->setChecked(true);
-                       } else {
-                               if(action_select_media_list[ii] != NULL) {
-                                       action_select_media_list[ii]->setText(QString::fromUtf8(""));
-                                       action_select_media_list[ii]->setVisible(false);
-                               }
-                       }
-               }
-       }
-#endif 
+       emit sig_update_inner_bubble(media_drive, inner_media_list, action_select_media_list,
+                                                                lst, num, use_d88_menus);
 }
 
 void Menu_MetaClass::create_pulldown_menu_sub(void)
similarity index 89%
rename from source/src/qt/common/menu_metaclass.h
rename to source/src/qt/gui/menu_metaclass.h
index 80572ff..b413f5b 100644 (file)
@@ -25,7 +25,8 @@ class EMU;
 QT_BEGIN_NAMESPACE
 extern         USING_FLAGS *using_flags;
 
-class Menu_MetaClass : public QMenu {
+
+class DLL_PREFIX Menu_MetaClass : public QMenu {
        Q_OBJECT
 private:
 
@@ -114,6 +115,11 @@ signals:
        int sig_set_recent_media(int, int);
        int sig_set_inner_slot(int, int);
        int sig_insert_media(int);
+       int sig_update_inner_fd(int drv, QStringList base, class Action_Control **action_select_media_list,
+                                                       QStringList lst, int num, bool use_d88_menus);
+       int sig_update_inner_bubble(int drv, QStringList base, class Action_Control **action_select_media_list,
+                                                               QStringList lst, int num, bool use_d88_menus);
+
 };
 QT_END_NAMESPACE
 
index fd10555..591e2da 100644 (file)
@@ -12,7 +12,7 @@
 
 QT_BEGIN_NAMESPACE
 
-class Menu_QDClass: public Menu_MetaClass {
+class DLL_PREFIX Menu_QDClass: public Menu_MetaClass {
        Q_OBJECT
 protected:
 public:
index dd3835e..0127df7 100644 (file)
@@ -17,7 +17,7 @@
 //#include "emu.h"
 #include "qt_main.h"
 
-typedef class CSP_DiskParams : public QObject
+typedef class DLL_PREFIX CSP_DiskParams : public QObject
 {   
 Q_OBJECT
 Q_DISABLE_COPY(CSP_DiskParams)
index 2fe109d..7f071ef 100644 (file)
@@ -28,7 +28,7 @@ struct NativeVirtualKeyCode {
        uint32_t key;
 };
 
-class GLDrawClass: public QGLWidget 
+class DLL_PREFIX GLDrawClass: public QGLWidget 
 {
        Q_OBJECT
  private:
index 57f1a33..b707a02 100644 (file)
@@ -50,7 +50,7 @@ class GLDrawClass;
 class QOpenGLFramebufferObject;
 class QOpenGLFramebufferObjectFormat;
 
-class GLDraw_2_0 : public QObject
+class DLL_PREFIX GLDraw_2_0 : public QObject
 {
        Q_OBJECT
 protected:
index ba839e5..451d797 100644 (file)
@@ -13,7 +13,7 @@
 #include "qt_glutil_gl2_0.h"
 #include <QOpenGLFunctions_3_0>
 
-class GLDraw_3_0 : public GLDraw_2_0
+class DLL_PREFIX GLDraw_3_0 : public GLDraw_2_0
 {
        Q_OBJECT
 protected:
index 86ae102..cbf3c50 100644 (file)
@@ -28,14 +28,14 @@ class EMU;
 extern class META_MainWindow *rMainWindow;
 extern EMU* emu;
 // menu
-extern std::string cpp_homedir;
-extern std::string cpp_confdir;
-extern std::string my_procname;
-extern std::string sRssDir;
-extern bool now_menuloop;
+extern std::string DLL_PREFIX cpp_homedir;
+extern std::string DLL_PREFIX cpp_confdir;
+extern std::string DLL_PREFIX my_procname;
+extern std::string DLL_PREFIX sRssDir;
+extern bool DLL_PREFIX now_menuloop;
 
-extern const int screen_mode_width[];
-extern const int screen_mode_height[];
+extern const int DLL_PREFIX screen_mode_width[];
+extern const int DLL_PREFIX screen_mode_height[];
 
 #ifndef MAX_HISTORY
 #define MAX_HISTORY 8
@@ -77,10 +77,10 @@ extern const int screen_mode_height[];
 }
 #endif
 
-extern _TCHAR* get_parent_dir(_TCHAR* file);
-extern void Convert_CP932_to_UTF8(char *dst, char *src, int n_limit, int i_limit);
-extern void  get_long_full_path_name(_TCHAR* src, _TCHAR* dst);
-extern void get_short_filename(_TCHAR *dst, _TCHAR *file, int maxlen);
+extern _TCHAR* DLL_PREFIX get_parent_dir(_TCHAR* file);
+extern void DLL_PREFIX Convert_CP932_to_UTF8(char *dst, char *src, int n_limit, int i_limit);
+extern void DLL_PREFIX get_long_full_path_name(_TCHAR* src, _TCHAR* dst);
+extern void DLL_PREFIX get_short_filename(_TCHAR *dst, _TCHAR *file, int maxlen);
 
 // Important Flags
 //extern AGAR_CPUID *pCpuID;
index 5acff64..f8b0d38 100644 (file)
@@ -34,7 +34,7 @@ QT_BEGIN_NAMESPACE
 
 //
 
-class Ui_SndSliderObject : public QSlider
+class DLL_PREFIX Ui_SndSliderObject : public QSlider
 {
        Q_OBJECT
 private:
index 5444012..77cbfbe 100644 (file)
@@ -65,7 +65,7 @@ class CSP_KeyTables;
 class USING_FLAGS;
 
 QT_BEGIN_NAMESPACE
-class OSD_BASE : public QThread
+class DLL_PREFIX OSD_BASE : public QThread
 {
        Q_OBJECT
 protected: