Fixes and startup-notification - Alex
authorterminatorX <>
Fri, 26 Mar 2004 19:13:24 +0000 (19:13 +0000)
committerterminatorX <>
Fri, 26 Mar 2004 19:13:24 +0000 (19:13 +0000)
ChangeLog
Makefile.am
README.GNOME [deleted file]
THANKS
configure.in
doc/terminatorX-manual/C/terminatorX-manual.xml
gnome-support/terminatorX.desktop
src/main.cc
src/tX_engine.cc
src/tX_mastergui.cc
src/tX_vttgui.cc

index 53ffdcc2ae9ca7ec166046c393534304ea07147b..97d426b485f3e29005d6b9cb9a15831d84330bbd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -37,10 +37,13 @@ changed.
 - Wrote support for gtk+'s new FileChooser widget - will be enabled 
   automatically when configure finds a gtk+ >= 2.4.0
 - Fixed the buffer overflows detected by c0wboy <c0wboy@tiscali.it> in his 
-  outsiders-terminatorX-001.txt advisory. 
-- merged parts of a patch from Adam King <aking@lgh.com.au>
-  - Simple min/maximization for the control panels
+  outsiders-terminatorX-001.txt advisory.
+- Support for gtk+ startup notification.
+- "README.GNOME" was outdated so it had to go.
+- merged parts of a patch graciously contributed by Adam King <aking@lgh.com.au>
+  - Simpler min/maximization for the control panels
   - Bugfix for sequencer menu crash
+  - The panel formally known as "Trigger" is now known as "Playback"
   - TODO: complete this entry?
 - created some new icons for the GUI with the cool inkscape. 
 - added cpu-overload detection - currently disabled
index aa0b7ef843eed24bbbe75f1abebec349a06a87f9..04ffeacbf71be639715245a313090df090fc0e1a 100644 (file)
@@ -1,5 +1,5 @@
 AUTOMAKE_OPTIONS = foreign 
 SUBDIRS = src gnome-support doc
-EXTRA_DIST = COPYING-DOCS README.GNOME README.PERFORMANCE terminatorX.spec terminatorX.spec.in terminatorX.glade terminatorX.gladep
+EXTRA_DIST = COPYING-DOCS README.PERFORMANCE terminatorX.spec terminatorX.spec.in terminatorX.glade terminatorX.gladep
 
 man_MANS = terminatorX.1
diff --git a/README.GNOME b/README.GNOME
deleted file mode 100644 (file)
index 19e4341..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-terminatorX - README.GNOME
---------------------------
-
-Ok, just some words about the gnome-support directory. For GNOME-Drag And Drop 
-support see the main README.
-
-If you want to install the ".tX"-set mimetype and the icons take a look at the
-tx-gnome-install script. The paths should work for RedHat systems, for other
-distributions you might have to adjust the paths (and maybe the mime-files).
-Then run the script as root and open a directory with gmc that contains .tX
-files.
-
-If the installation was successful the tX-set files should have a well known
-turntable as their icon and a double click on that should result in terminatorX
-opening that set. Installation can be undone with tx-gnome-uninstall.
-
-Doubleclicking on tX-set files will work only when terminatorX is installed
-somewhere in your PATH.
diff --git a/THANKS b/THANKS
index e8e678213e2568c3885ecac43dd0a9e0e6a55d03..b20ed899cd5b83c94af458770a85f427e945fdec 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -11,6 +11,7 @@ I'd like to thank:
 - All users who send feedback
 
 In politically correct alphabetical order:
+- Adam King <aking@lgh.com.au> a lot of smaller code contributions.
 
 - Adrian Reber <adrian@fht-esslingen.de> for being the *BEST* Linux 
   sysadmin ;), for numerous code contributions and the fabrication of
index 03b6da601f48f6bfcc0de58b5e255b3381fb47b0..ac9c3415769237199ee54f04018dc61d7d4755cf 100644 (file)
@@ -19,6 +19,8 @@ AC_ARG_ENABLE(libxml2,                [  --disable-libxml2       use libxml even if verion
 AC_ARG_ENABLE(mad,             [  --disable-mad           disable mad for mp3 support (default=auto) ])
 AC_ARG_ENABLE(vorbis,          [  --disable-vorbis        disable libvorbis support (default=auto) ])
 AC_ARG_ENABLE(audiofile,       [  --disable-audiofile     disable audiofile support (default=auto) ])
+AC_ARG_ENABLE(filechooser,     [  --disable-filechooser   disable gtk+ 2.4 filechooser (default=auto) ])
+AC_ARG_ENABLE(startup,         [  --disable-startup       disable startup-notification (default=auto) ])
 AC_ARG_ENABLE(legacy,          [  --enable-legacy         enable support for old terminatorX files (default=no) ])
 AC_ARG_ENABLE(alsamidi,                [  --disable-alsamidi      disable support  ALSA MIDI in (default=auto) ])
 AC_ARG_ENABLE(lrdf,            [  --disable-lrdf          disable support for liblrdf (default=auto) ])
@@ -116,21 +118,41 @@ if test "$tX_threads" = "no"; then
        AC_MSG_ERROR([** failed to detect pthreads implementation **])
 fi
 
+dnl GTK+ search. Enable FileChooser for gtk+>=2.4
+
 AM_PATH_GTK_2_0(, [
-  GTK2_CFLAGS="$GTK_CFLAGS"
-  GTK2_LIBS="$GTK_LIBS"
-  gtk2="yes"
-  GTK2_VERSION="`$PKG_CONFIG --modversion gtk+-2.0`"], [ gtk2="yes" ]) 
-  OPTION_GTK_VERSION="Version 2 - ($GTK2_VERSION)"
-  vers=`echo $GTK2_VERSION | awk 'BEGIN {FS=".";} { printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'`
-  if test "$vers" -ge 2004000; then
-     AC_DEFINE_UNQUOTED([USE_FILECHOOSER], 1, [Use the new FileChooser.])
-  fi
+       GTK2_CFLAGS="$GTK_CFLAGS"
+       GTK2_LIBS="$GTK_LIBS"
+       gtk2="yes"
+       GTK2_VERSION="`$PKG_CONFIG --modversion gtk+-2.0`"], [ gtk2="yes" ]) 
+
+OPTION_GTK_VERSION="Version 2 - ($GTK2_VERSION)"
+vers=`echo $GTK2_VERSION | awk 'BEGIN {FS=".";} { printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'`
+
+if test "$enable_filechooser" != "no"; then
+       AC_MSG_CHECKING([whether to use the FileChooser])
+       if test "$vers" -ge 2004000; then
+               AC_MSG_RESULT([yes])
+               AC_DEFINE_UNQUOTED([USE_FILECHOOSER], 1, [Use the new FileChooser.])
+       else
+               AC_MSG_RESULT([no])
+       fi
+fi
 
 if test "$gtk2" = "no"; then
        AC_MSG_ERROR([** couldn't find gtk+ > Version 2. Please upgrade (http://www.gtk.org). **])
 fi
 
+if test "$enable_startup" != "no"; then
+       AC_MSG_CHECKING([whether gtk+ does startup notification])
+       if test "$vers" -ge 2002000; then
+               AC_MSG_RESULT([yes])
+               AC_DEFINE_UNQUOTED([USE_STARTUP_NOTIFICATION], 1, [Use gtk+ statup notification.])
+       else
+               AC_MSG_RESULT([no])
+       fi
+fi
+
 dnl Checks for header files.
 AC_HEADER_STDC
 AC_CHECK_HEADERS(fcntl.h limits.h malloc.h unistd.h)
index a1063844d358cc34ab920e0e2b2bfd906b7a55b6..9378e5a79b0272201a61d9e75c62a1698e9a8248 100644 (file)
@@ -18,6 +18,7 @@
       <year>2001</year>
       <year>2002</year>
       <year>2003</year>
+      <year>2004</year>
 
       <holder role="mailto:alex@lisas.de">Alexander K├Ânig</holder>
     </copyright>
         </sect4>
 
         <sect4>
-          <title>Trigger Panel</title>
+          <title>Playback Panel</title>
 
-          <para>The trigger panel holds all controls related to triggering the
+          <para>The playback panel holds all controls related to triggering the
           turntable. For more details on synchronization see <xref
           linkend="SYNCHRONIZATION" />.</para>
 
index 291fbae65f66cfce3e06b7171d87a3598e621bb9..e511bb95488749ab0f6f3fea314f405d47b416bb 100644 (file)
@@ -1,7 +1,10 @@
 [Desktop Entry]
+Exec=terminatorX
 Name=terminatorX
+GenericName=Virtual turntable
+Comment=Versatile DJ scratching and mixing application.
+Terminal=false
 Type=Application
-Comment=sophisticated scratching and audio tool
-Exec=terminatorX
 Icon=terminatorX-app.png
-
+Categories=Application;AudioVideo;
+StartupNotify=true
index 1cd0b640045ff122c52e988d5d1fbe950dd499c5..f76367572f73a6c71273d003e11734646317c38a 100644 (file)
@@ -223,6 +223,11 @@ int main(int argc, char **argv)
        gtk_init (&argc, &argv);
        gtk_set_locale();
        
+#ifdef USE_STARTUP_NOTIFICATION
+       // startup isn't really finished with the nagbox alone...
+       gtk_window_set_auto_startup_notification(FALSE);
+#endif 
+       
        parse_args(&argc, argv); // loads settings
 
        if (globals.show_nag) { 
@@ -269,6 +274,10 @@ int main(int argc, char **argv)
 #endif         
        }
 
+#ifdef USE_STARTUP_NOTIFICATION
+       gdk_notify_startup_complete();
+#endif 
+       
 #ifndef CREATE_BENCHMARK
        gtk_main();
 
index 6f4124ad855b0c2d7032ad9a874e1a2ee651062e..7593166ae65e89f0d58aaf83c955fd31196565af 100644 (file)
@@ -90,7 +90,7 @@ int16_t* tX_engine::render_cycle() {
                        /* Deactivating grab... */
                        mouse->ungrab();
                        grab_active=false;
-                       grab_off(); // for the mastergui this is...
+                       grab_off();
                }
        }
 
@@ -128,6 +128,8 @@ void tX_engine::loop() {
        while (!thread_terminate) {
                /* Waiting for the trigger */
                pthread_mutex_lock(&start);
+               reset_cycles_ctr();
+               
 #ifdef USE_SCHEDULER
                pid_t pid=getpid();
                struct sched_param parm;
@@ -162,7 +164,7 @@ void tX_engine::loop() {
                if (grab_active) {
                        mouse->ungrab();
                        grab_active=false;
-                       grab_off(); // for the mastergui this is...
+                       grab_off();
                }
                
                if (!stop_flag) {
@@ -242,7 +244,6 @@ tX_engine_error tX_engine :: run() {
        
        runtime_error=false;
        overload_error=false;
-       reset_cycles_ctr();
        
        if (loop_is_active) return ERROR_BUSY;
        
index 9516c9c1d289e560adbf78501f2b7ce830157d87..38a34e08f0d84b47ce1eb9af7724be6ccd565b2d 100644 (file)
@@ -557,7 +557,7 @@ GtkSignalFunc save_tables_as()
                GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT,NULL);
        
        if (tx_mg_have_setname) {
-               gtk_file_chooser_set_current_name(GTK_FILE_CHOOSER (dialog), tx_mg_current_setname);
+               gtk_file_chooser_set_filename(GTK_FILE_CHOOSER (dialog), tx_mg_current_setname);
        }
                                      
        if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) {
index 335115f3cc0fb26c4d1dd3b3dace0e3a1ba595f9..32edfc0290fee304df9c6afa013cf10fceb151f4 100644 (file)
@@ -968,7 +968,7 @@ void build_vtt_gui(vtt_class *vtt)
 
        gtk_box_pack_start(GTK_BOX(g->control_subbox), p->get_widget(), WID_FIX);
                                
-       p=new tX_panel("Trigger", g->control_subbox);
+       p=new tX_panel("Playback", g->control_subbox);
        g->trigger_panel=p;
        
        g->trigger=gtk_button_new_with_label("Trigger!");
@@ -1207,8 +1207,7 @@ GtkWidget *vg_create_fx_bar(vtt_class *vtt, vtt_fx *effect, int showdel)
        
        box=gtk_hbox_new(FALSE,0);
 
-       if (showdel)
-       {
+       if (showdel) {
                button=gtk_button_new();
                pixmap=tx_pixmap_widget(FX_CLOSE);
                gtk_container_add (GTK_CONTAINER (button), pixmap);     
@@ -1507,7 +1506,6 @@ void vg_enable_critical_buttons(int enable)
        }
 }
 
-
 void vg_init_all_non_seqpars()
 {
        list <vtt_class *> :: iterator vtt;