ayttm-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Ayttm-commits] CVS: ayttm/src main.c,1.24,1.25 prefs_window.c,1.9,1.10


From: Edward L. Haletky <address@hidden>
Subject: [Ayttm-commits] CVS: ayttm/src main.c,1.24,1.25 prefs_window.c,1.9,1.10
Date: Tue, 25 Mar 2003 16:10:11 -0500

Update of /cvsroot/ayttm/ayttm/src
In directory subversions:/tmp/cvs-serv27657/src

Modified Files:
        main.c prefs_window.c 
Log Message:


MINGW32 support for various config files based on OS


Index: main.c
===================================================================
RCS file: /cvsroot/ayttm/ayttm/src/main.c,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- main.c      22 Mar 2003 11:48:25 -0000      1.24
+++ main.c      25 Mar 2003 21:10:09 -0000      1.25
@@ -37,6 +37,7 @@
 
 #ifdef __MINGW32__
 #include <winsock2.h>
+int WinVer;
 #else
 #include <sys/un.h>
 #include <sys/socket.h>
@@ -199,7 +200,69 @@
 
 /* Setup default value for config_dir */
 #if defined( _WIN32 )
-       strcpy(config_dir, "C:\\.ayttm\\");
+       {
+               OSVERSIONINFO vi;
+               vi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
+               GetVersionEx(&vi);
+               switch(vi.dwMajorVersion)
+               {
+                       case 3:
+                               // switch(vi.dwMinorVersion)
+                               // {
+                                       // case 51: // v3.51
+                                               // exit 51;//unknown
+                                       // default:
+                                               // exit -1;
+                               // }
+                               exit(-3); // We do not support v3.51
+                               break;
+                       case 4:
+                               switch(vi.dwMinorVersion)
+                               {
+                                       case 0:
+                                               if(vw.dwPlatformId == 
VER_PLATFORM_WIN32_NT)
+                                                       WinVer = 1;
+                                               else
+                                                       exit(-95); // Win95
+                                               break;
+                                       case 10:
+                                               WinVer = 0; // Win98
+                                               break;
+                                       case 90:
+                                               WinVer = 0; // WinMe
+                                               break;
+                                       default:
+                                               exit(-4); // unknown
+                                               break;
+                               }
+                               break;
+                       case 5:
+                               switch(vi.dwMinorVersion)
+                               {
+                                       case 0:
+                                               WinVer = 1; // Win2000
+                                               break;
+                                       case 1:
+                                               WinVer = 1; // WinXP
+                                               break;
+                                       case 2:
+                                               WinVer = 1; // WinNetServer
+                                               break;
+                                       default:
+                                               exit(-5); // Unknown
+                                               break;
+                               }
+                               break;
+                       default:
+                               exit(-1); //unknown
+                               break;
+               }
+               if (WinVer == 0) { // lesser windows
+                       strcpy(config_dir, "/.ayttm/");
+               } else {
+                       g_snprintf(config_dir, 1024, 
"%s/ayttm/",getenv("USERPROFILE"));
+               }
+       }
 #else
        gtk_set_locale ();
        g_snprintf(config_dir, 1024, "%s/.ayttm/",getenv("HOME"));

Index: prefs_window.c
===================================================================
RCS file: /cvsroot/ayttm/ayttm/src/prefs_window.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- prefs_window.c      25 Mar 2003 14:53:25 -0000      1.9
+++ prefs_window.c      25 Mar 2003 21:10:09 -0000      1.10
@@ -49,6 +49,7 @@
 #include "pixmaps/cancel.xpm"
 
 #ifdef __MINGW32__
+extern int WinVer;
 #define rindex(a,b) strrchr(a,b)
 #endif
 
@@ -2173,6 +2174,56 @@
        iSetLocalPref("length_contact_window", length_contact_window_default);
        iSetLocalPref("width_contact_window", width_contact_window_default);
        iSetLocalPref("status_show_level", status_show_level_default);
+#ifdef __MINGW32__
+       {
+               char buff[1024];
+               // Base this in WinVer
+               if (WinVer == 0) { //Win95,98,Me
+                       g_snprintf(buff, 1024, "%s%s",config_dir,MODULES_DIR);
+                       cSetLocalPref("modules_path", buff);
+                       g_snprintf(buff, 1024, "%s%s",config_dir,
+                               BuddyArriveDefault);
+                       cSetLocalPref("BuddyArriveFilename", buff);
+                       g_snprintf(buff, 1024, "%s%s",config_dir,
+                               BuddyLeaveDefault);
+                       cSetLocalPref("BuddyAwayFilename", buff);
+                       g_snprintf(buff, 1024, "%s%s",config_dir,
+                               BuddyLeaveDefault);
+                       cSetLocalPref("BuddyLeaveFilename", buff);
+                       g_snprintf(buff, 1024, "%s%s",config_dir,
+                               ReceiveDefault);
+                       cSetLocalPref("FirstMsgFilename", buff);
+                       g_snprintf(buff, 1024, "%s%s",config_dir,
+                               ReceiveDefault);
+                       cSetLocalPref("ReceiveFilename", buff);
+                       g_snprintf(buff, 1024, "%s%s",config_dir,
+                               SendDefault);
+                       cSetLocalPref("SendFilename", buff);
+               } else { // WinNT,2000,XP
+                       char *base_dir = "C:\\Program Files\\ayttm\\";
+                       g_snprintf(buff, 1024, "%s%s",base_dir,MODULES_DIR);
+                       cSetLocalPref("modules_path", buff);
+                       g_snprintf(buff, 1024, "%s%s",base_dir,
+                               BuddyArriveDefault);
+                       cSetLocalPref("BuddyArriveFilename", buff);
+                       g_snprintf(buff, 1024, "%s%s",base_dir,
+                               BuddyLeaveDefault);
+                       cSetLocalPref("BuddyAwayFilename", buff);
+                       g_snprintf(buff, 1024, "%s%s",base_dir,
+                               BuddyLeaveDefault);
+                       cSetLocalPref("BuddyLeaveFilename", buff);
+                       g_snprintf(buff, 1024, "%s%s",base_dir,
+                               ReceiveDefault);
+                       cSetLocalPref("FirstMsgFilename", buff);
+                       g_snprintf(buff, 1024, "%s%s",base_dir,
+                               ReceiveDefault);
+                       cSetLocalPref("ReceiveFilename", buff);
+                       g_snprintf(buff, 1024, "%s%s",base_dir,
+                               SendDefault);
+                       cSetLocalPref("SendFilename", buff);
+               }
+       }
+#else
        cSetLocalPref("modules_path", MODULE_DIR);
        cSetLocalPref("BuddyArriveFilename", BuddyArriveDefault);
        cSetLocalPref("BuddyAwayFilename", BuddyLeaveDefault);
@@ -2180,6 +2231,7 @@
        cSetLocalPref("FirstMsgFilename", ReceiveDefault);
        cSetLocalPref("ReceiveFilename", ReceiveDefault);
        cSetLocalPref("SendFilename", SendDefault);
+#endif
        iSetLocalPref("FontSize", font_size_def);
 
        g_snprintf(buff, 1024, "%sprefs",config_dir);





reply via email to

[Prev in Thread] Current Thread [Next in Thread]