[Gnucash-changes] 2005-02-23 Joshua Sled <jsled@asynchronous.org> *

Joshua Sled jsled at cvs.gnucash.org
Wed Feb 23 00:24:45 EST 2005


Log Message:
-----------
2005-02-23  Joshua Sled  <jsled at asynchronous.org>
	* src/gnome/gw-gnc-spec.scm: Expose
	gnc:window-set-progressbar-window.
	* src/scm/main.scm (gnc:main): Set progress bar window
	appropriately on startup so file-load feedback is in place.

Tags:
----
gnucash-gnome2-dev

Modified Files:
--------------
    gnucash:
        ChangeLog
        GNOME2_STATUS
    gnucash/src/gnome:
        gw-gnc-spec.scm
        top-level.c
    gnucash/src/scm:
        main.scm

Revision Data
-------------
Index: ChangeLog
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/ChangeLog,v
retrieving revision 1.1487.2.178
retrieving revision 1.1487.2.179
diff -LChangeLog -LChangeLog -u -r1.1487.2.178 -r1.1487.2.179
--- ChangeLog
+++ ChangeLog
@@ -1,3 +1,11 @@
+2005-02-23  Joshua Sled  <jsled at asynchronous.org>
+
+	* src/gnome/gw-gnc-spec.scm: Expose
+	gnc:window-set-progressbar-window.
+
+	* src/scm/main.scm (gnc:main): Set progress bar window
+	appropriately on startup so file-load feedback is in place.
+
 2005-02-22  Joshua Sled  <jsled at asynchronous.org>
 
 	* GNOME2_STATUS: Reverted from tabular to straight-text formatting
Index: GNOME2_STATUS
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/Attic/GNOME2_STATUS,v
retrieving revision 1.1.2.38
retrieving revision 1.1.2.39
diff -LGNOME2_STATUS -LGNOME2_STATUS -u -r1.1.2.38 -r1.1.2.39
--- GNOME2_STATUS
+++ GNOME2_STATUS
@@ -69,15 +69,13 @@
 
 - Main Window
 
-  - Startup progress bar not working; default "window" needs to be set.
-
-  - [low-priority] New registers should open in new top-level windows.
-
   - View Summary Bar
 
     - Summarybar restored into GncMainWindow UI; summary-select list does not
       respond to button-pressing.
 
+  - [low-priority] New registers should open in new top-level windows.
+
 - Register Core - mostly functional
 
   - Insertion point not shown. (fix gnucash-item-edit.c)
Index: top-level.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/gnome/top-level.c,v
retrieving revision 1.140.4.13
retrieving revision 1.140.4.14
diff -Lsrc/gnome/top-level.c -Lsrc/gnome/top-level.c -u -r1.140.4.13 -r1.140.4.14
--- src/gnome/top-level.c
+++ src/gnome/top-level.c
@@ -399,7 +399,14 @@
       SCM run_danglers = scm_c_eval_string("gnc:hook-run-danglers");
       SCM hook = scm_c_eval_string("gnc:*ui-startup-hook*");
       scm_call_1(run_danglers, hook); 
-    }    
+    }
+
+    // return ( main_window . command_line )
+    {
+      SCM gncWindowType;
+      gncWindowType = scm_c_eval_string("<gnc:Window*>");
+      ret = scm_cons( gw_wcp_assimilate_ptr(main_window, gncWindowType), ret );
+    }
   }
 
   LEAVE (" ");
Index: gw-gnc-spec.scm
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/gnome/gw-gnc-spec.scm,v
retrieving revision 1.14.4.5
retrieving revision 1.14.4.6
diff -Lsrc/gnome/gw-gnc-spec.scm -Lsrc/gnome/gw-gnc-spec.scm -u -r1.14.4.5 -r1.14.4.6
--- src/gnome/gw-gnc-spec.scm
+++ src/gnome/gw-gnc-spec.scm
@@ -45,6 +45,7 @@
       "#include <top-level.h>\n"
       "#include <gnc-html.h>\n"
       "#include <gnc-main-window.h>\n"
+      "#include <gnc-window.h>\n"
       "#include <gnc-plugin-account-tree.h>\n"
       "#include <gnc-splash.h>\n"
       "#include <dialog-find-transactions.h>\n"
@@ -97,7 +98,7 @@
    '<gw:scm>
    "gnc_gui_init"
    '((<gw:scm> command-line))
-   "Initialize the remaining parts of the lower level ui. Returns remaining command line.")
+   "Initialize the remaining parts of the lower level ui. Returns main-window and remaining command line.")
 
   (gw:wrap-function
    ws
@@ -140,6 +141,18 @@
    "Destroy the UI.")
 
   (gw:wrap-as-wct ws
+                  '<gnc:Window*>
+                  "GncWindow *" "const GncWindow *")
+
+  (gw:wrap-function
+   ws
+   'gnc:window-set-progressbar-window
+   '<gw:void>
+   "gnc_window_set_progressbar_window"
+   '((<gnc:Window*> window))
+   "Set the progressbar window from the given GncWindow.")
+
+  (gw:wrap-as-wct ws
                   '<gnc:MainWindow*>
                   "GncMainWindow *" "const GncMainWindow *")
 
Index: main.scm
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/scm/main.scm,v
retrieving revision 1.109.2.9
retrieving revision 1.109.2.10
diff -Lsrc/scm/main.scm -Lsrc/scm/main.scm -u -r1.109.2.9 -r1.109.2.10
--- src/scm/main.scm
+++ src/scm/main.scm
@@ -622,23 +622,25 @@
       ;; We're not in batch mode; we can go ahead and do the normal thing.
       (begin
         (gnc:hook-add-dangler gnc:*ui-shutdown-hook* gnc:gui-finish)
-        (set! gnc:*command-line-remaining*
-              (gnc:gui-init gnc:*command-line-remaining*))
-        (if (and
-             (not (gnc:account-file-to-load))
-             (not (string? (gnc:history-get-last)))
-             (gnc:option-value
-              (gnc:lookup-global-option "__new_user" "first_startup")))
-            (begin
-	      (gnc:destroy-splash-screen)
-	      (gnc:new-user-dialog))
-            (begin
-	      (gnc:load-account-file)
-	      (gnc:destroy-splash-screen)))
-	(gnc:hook-run-danglers gnc:*ui-post-startup-hook*)
-        (gnc:start-ui-event-loop)
-        (gnc:hook-remove-dangler gnc:*ui-shutdown-hook* gnc:gui-finish))
-
+        (let* ((init-pair (gnc:gui-init gnc:*command-line-remaining*))
+               (main-window (car init-pair)))
+          (set! gnc:*command-line-remaining* (cdr init-pair))
+          (if (and
+               (not (gnc:account-file-to-load))
+               (not (string? (gnc:history-get-last)))
+               (gnc:option-value
+                (gnc:lookup-global-option "__new_user" "first_startup")))
+              (begin
+                (gnc:destroy-splash-screen)
+                (gnc:new-user-dialog))
+              (begin
+                (gnc:destroy-splash-screen)
+                (gnc:window-set-progressbar-window main-window)
+                (gnc:load-account-file)))
+          (gnc:hook-run-danglers gnc:*ui-post-startup-hook*)
+          (gnc:start-ui-event-loop)
+          (gnc:hook-remove-dangler gnc:*ui-shutdown-hook* gnc:gui-finish)))
+        
       ;; else: we're in batch mode.  Just do what the user said on the
       ;; command line
       (map handle-batch-mode-item (reverse gnc:*batch-mode-things-to-do*)))


More information about the gnucash-changes mailing list