Commit 3cf573e7f0b5ede5157af7aac2c1d4d45cbfa3ae
1 parent
75f87222
Exists in
master
and in
5 other branches
Adding version and release information on windows registry.
Showing
1 changed file
with
11 additions
and
75 deletions
Show diff stats
src/pw3270/main.c
| @@ -69,10 +69,6 @@ | @@ -69,10 +69,6 @@ | ||
| 69 | GtkOSXApplication * osxapp = NULL; | 69 | GtkOSXApplication * osxapp = NULL; |
| 70 | #endif // HAVE_GTKMAC | 70 | #endif // HAVE_GTKMAC |
| 71 | 71 | ||
| 72 | -#if defined( WIN32 ) | ||
| 73 | - static const gchar * appname = PACKAGE_NAME; | ||
| 74 | -#endif // WIN32 | ||
| 75 | - | ||
| 76 | #if defined( HAVE_SYSLOG ) | 72 | #if defined( HAVE_SYSLOG ) |
| 77 | static gboolean log_to_syslog = FALSE; | 73 | static gboolean log_to_syslog = FALSE; |
| 78 | #endif // HAVE_SYSLOG | 74 | #endif // HAVE_SYSLOG |
| @@ -141,49 +137,6 @@ static void toplevel_setup(GtkWindow *window) | @@ -141,49 +137,6 @@ static void toplevel_setup(GtkWindow *window) | ||
| 141 | g_free(name); | 137 | g_free(name); |
| 142 | } | 138 | } |
| 143 | 139 | ||
| 144 | -#if ! defined( WIN32 ) | ||
| 145 | - | ||
| 146 | -static gboolean appname(const gchar *option_name, const gchar *value, gpointer data, GError **error) | ||
| 147 | -{ | ||
| 148 | - g_set_application_name(value); | ||
| 149 | - return TRUE; | ||
| 150 | -} | ||
| 151 | - | ||
| 152 | -#else | ||
| 153 | - | ||
| 154 | -static gboolean datadir(const gchar *option_name, const gchar *value, gpointer data, GError **error) | ||
| 155 | -{ | ||
| 156 | - gchar * path = g_strconcat("SOFTWARE\\",appname,NULL); | ||
| 157 | - HKEY hKey; | ||
| 158 | - DWORD disp; | ||
| 159 | - int rc; | ||
| 160 | - | ||
| 161 | - rc = RegCreateKeyEx(HKEY_LOCAL_MACHINE,path,0,NULL,REG_OPTION_NON_VOLATILE,KEY_SET_VALUE,NULL,&hKey,&disp); | ||
| 162 | - SetLastError(rc); | ||
| 163 | - | ||
| 164 | - trace("%s=\"%s\" create=%d",path,value,rc); | ||
| 165 | - | ||
| 166 | - if(rc == ERROR_SUCCESS) | ||
| 167 | - { | ||
| 168 | - trace("%s: Value set",__FUNCTION__); | ||
| 169 | - RegSetValueEx(hKey,"datadir",0,REG_SZ,(const BYTE *) value,strlen(value)+1); | ||
| 170 | - RegCloseKey(hKey); | ||
| 171 | - } | ||
| 172 | - else | ||
| 173 | - { | ||
| 174 | - gchar *msg = g_win32_error_message(rc); | ||
| 175 | - trace("%s failed: %s",__FUNCTION__,msg); | ||
| 176 | - *error = g_error_new(ERROR_DOMAIN,EINVAL, "%s", msg); | ||
| 177 | - g_free(msg); | ||
| 178 | - } | ||
| 179 | - | ||
| 180 | - g_free(path); | ||
| 181 | - | ||
| 182 | - return rc == ERROR_SUCCESS; | ||
| 183 | -} | ||
| 184 | - | ||
| 185 | -#endif // !win32 | ||
| 186 | - | ||
| 187 | static gboolean optcolors(const gchar *option_name, const gchar *value, gpointer data, GError **error) | 140 | static gboolean optcolors(const gchar *option_name, const gchar *value, gpointer data, GError **error) |
| 188 | { | 141 | { |
| 189 | static const unsigned short valid[] = { 2,8,16 }; | 142 | static const unsigned short valid[] = { 2,8,16 }; |
| @@ -301,12 +254,6 @@ int main(int argc, char *argv[]) | @@ -301,12 +254,6 @@ int main(int argc, char *argv[]) | ||
| 301 | { | 254 | { |
| 302 | const GOptionEntry app_options[] = | 255 | const GOptionEntry app_options[] = |
| 303 | { | 256 | { |
| 304 | -#if ! defined( WIN32 ) | ||
| 305 | - { "appname", 'a', 0, G_OPTION_ARG_CALLBACK, appname, N_( "Application name" ), PACKAGE_NAME }, | ||
| 306 | -#else | ||
| 307 | - { "appname", 'a', 0, G_OPTION_ARG_STRING, &appname, N_( "Application name" ), PACKAGE_NAME }, | ||
| 308 | - { "datadir", 'd', 0, G_OPTION_ARG_CALLBACK, datadir, N_( "Path to application data files" ), NULL }, | ||
| 309 | -#endif // WIN32 | ||
| 310 | { "session", 's', 0, G_OPTION_ARG_STRING, &session_name, N_( "Session name" ), PACKAGE_NAME }, | 257 | { "session", 's', 0, G_OPTION_ARG_STRING, &session_name, N_( "Session name" ), PACKAGE_NAME }, |
| 311 | { "host", 'h', 0, G_OPTION_ARG_STRING, &host, N_( "Host to connect"), host }, | 258 | { "host", 'h', 0, G_OPTION_ARG_STRING, &host, N_( "Host to connect"), host }, |
| 312 | { "colors", 'c', 0, G_OPTION_ARG_CALLBACK, optcolors, N_( "Set reported colors (8/16)" ), "16" }, | 259 | { "colors", 'c', 0, G_OPTION_ARG_CALLBACK, optcolors, N_( "Set reported colors (8/16)" ), "16" }, |
| @@ -451,10 +398,6 @@ int main(int argc, char *argv[]) | @@ -451,10 +398,6 @@ int main(int argc, char *argv[]) | ||
| 451 | 398 | ||
| 452 | } | 399 | } |
| 453 | 400 | ||
| 454 | -#if defined(WIN32) | ||
| 455 | - g_set_application_name(appname); | ||
| 456 | -#endif // WIN32 | ||
| 457 | - | ||
| 458 | // Just in case! | 401 | // Just in case! |
| 459 | g_mkdir_with_parents(g_get_tmp_dir(),0777); | 402 | g_mkdir_with_parents(g_get_tmp_dir(),0777); |
| 460 | 403 | ||
| @@ -472,14 +415,17 @@ int main(int argc, char *argv[]) | @@ -472,14 +415,17 @@ int main(int argc, char *argv[]) | ||
| 472 | pw3270_load_plugins(pluginpath); | 415 | pw3270_load_plugins(pluginpath); |
| 473 | toplevel = pw3270_new(host,systype,syscolors); | 416 | toplevel = pw3270_new(host,systype,syscolors); |
| 474 | 417 | ||
| 475 | - if(session_name) | ||
| 476 | - { | ||
| 477 | - pw3270_set_session_name(toplevel,session_name); | ||
| 478 | - } | ||
| 479 | - else | ||
| 480 | - { | ||
| 481 | - pw3270_set_session_name(toplevel,g_get_application_name()); | ||
| 482 | - } | 418 | + |
| 419 | + if(!session_name) | ||
| 420 | + session_name = g_get_application_name(); | ||
| 421 | + | ||
| 422 | + pw3270_set_session_name(toplevel,session_name); | ||
| 423 | + | ||
| 424 | +#if defined(_WIN32) && defined(ENABLE_WINDOWS_REGISTRY) | ||
| 425 | + pw3270_set_string(toplevel,"app","version",PACKAGE_VERSION); | ||
| 426 | + pw3270_set_string(toplevel,"app","release",G_STRINGIFY(PACKAGE_RELEASE)); | ||
| 427 | + pw3270_set_string(toplevel,"app","sessionName",session_name); | ||
| 428 | +#endif // _WIN32 && ENABLE_WINDOWS_REGISTRY | ||
| 483 | 429 | ||
| 484 | if(toggleset) | 430 | if(toggleset) |
| 485 | { | 431 | { |
| @@ -489,7 +435,6 @@ int main(int argc, char *argv[]) | @@ -489,7 +435,6 @@ int main(int argc, char *argv[]) | ||
| 489 | for(f=0;str[f];f++) | 435 | for(f=0;str[f];f++) |
| 490 | pw3270_set_toggle_by_name(toplevel,str[f],TRUE); | 436 | pw3270_set_toggle_by_name(toplevel,str[f],TRUE); |
| 491 | 437 | ||
| 492 | - | ||
| 493 | g_strfreev(str); | 438 | g_strfreev(str); |
| 494 | } | 439 | } |
| 495 | 440 | ||
| @@ -519,15 +464,6 @@ int main(int argc, char *argv[]) | @@ -519,15 +464,6 @@ int main(int argc, char *argv[]) | ||
| 519 | 464 | ||
| 520 | v3270_set_auto_disconnect(pw3270_get_terminal_widget(toplevel),timer); | 465 | v3270_set_auto_disconnect(pw3270_get_terminal_widget(toplevel),timer); |
| 521 | 466 | ||
| 522 | - /* | ||
| 523 | - pw3270_start_plugins(toplevel); | ||
| 524 | - gtk_window_present(GTK_WINDOW(toplevel)); | ||
| 525 | - | ||
| 526 | -#ifdef HAVE_GTKMAC | ||
| 527 | - gtk_osxapplication_ready(osxapp); | ||
| 528 | -#endif // HAVE_GTKMAC | ||
| 529 | - */ | ||
| 530 | - | ||
| 531 | g_idle_add((GSourceFunc) startup, toplevel); | 467 | g_idle_add((GSourceFunc) startup, toplevel); |
| 532 | 468 | ||
| 533 | gtk_main(); | 469 | gtk_main(); |