r14978 - gnucash/branches/swig-redo/src - Another pass through converting the engine module from gwrap to swig.
Chris Shoemaker
chris at cvs.gnucash.org
Mon Oct 9 20:08:42 EDT 2006
Author: chris
Date: 2006-10-09 20:08:39 -0400 (Mon, 09 Oct 2006)
New Revision: 14978
Trac: http://svn.gnucash.org/trac/changeset/14978
Modified:
gnucash/branches/swig-redo/src/app-utils/app-utils.i
gnucash/branches/swig-redo/src/app-utils/gnc-helpers.c
gnucash/branches/swig-redo/src/app-utils/hooks.scm
gnucash/branches/swig-redo/src/app-utils/option-util.c
gnucash/branches/swig-redo/src/business/business-core/business-core.i
gnucash/branches/swig-redo/src/engine/engine-helpers.c
gnucash/branches/swig-redo/src/engine/gnc-hooks.c
gnucash/branches/swig-redo/src/engine/kvp-scm.c
gnucash/branches/swig-redo/src/import-export/qif-import/druid-qif-import.c
Log:
Another pass through converting the engine module from gwrap to swig.
Remove some temporary swig<->gwrap typemaps that are no longer needed
because some more types have been swigified. Convert some runtime
code for some engine types from gwrap to the swig api.
Remove a lot of gwrap-specific C code for handling gwrapped enums.
Use '() instead of #f for the empty object.
Modified: gnucash/branches/swig-redo/src/app-utils/app-utils.i
===================================================================
--- gnucash/branches/swig-redo/src/app-utils/app-utils.i 2006-10-10 00:08:08 UTC (rev 14977)
+++ gnucash/branches/swig-redo/src/app-utils/app-utils.i 2006-10-10 00:08:39 UTC (rev 14978)
@@ -30,19 +30,11 @@
}
// Temporary SWIG<->G-wrap converters for engine types
-%typemap(in) QofBook * "$1 = (QofBook *)gw_wcp_get_ptr($input);"
-%typemap(out) QofBook * {
- $result = gw_wcp_assimilate_ptr($1, scm_c_eval_string("<gnc:Book*>"));
-}
%typemap(in) gboolean "$1 = SCM_NFALSEP($input) ? TRUE : FALSE;"
%typemap(out) gboolean "$result = $1 ? SCM_BOOL_T : SCM_BOOL_F;"
%typemap(in) gnc_numeric "$1 = gnc_scm_to_numeric($input);"
%typemap(out) gnc_numeric "$result = gnc_numeric_to_scm($1);"
-%typemap(in) gnc_commodity * "$1 = (gnc_commodity *)gw_wcp_get_ptr($input);"
-%typemap(out) gnc_commodity * {
- $result = gw_wcp_assimilate_ptr($1, scm_c_eval_string("<gnc:commodity*>"));
-}
%typemap(in) Account * "$1 = (Account *)gw_wcp_get_ptr($input);"
%typemap(out) Account * {
$result = gw_wcp_assimilate_ptr($1, scm_c_eval_string("<gnc:Account*>"));
@@ -51,20 +43,6 @@
%typemap(out) AccountGroup * {
$result = gw_wcp_assimilate_ptr($1, scm_c_eval_string("<gnc:AccountGroup*>"));
}
-%typemap(in) gnc_commodity_table * {
- $1 = (gnc_commodity_table *)gw_wcp_get_ptr($input);
-}
-%typemap(out) gnc_commodity_table * {
- $result = gw_wcp_assimilate_ptr($1,
- scm_c_eval_string("<gnc:commodity-table*>"));
-}
-%typemap(in) gnc_commodity * {
- $1 = (gnc_commodity *)gw_wcp_get_ptr($input);
-}
-%typemap(out) gnc_commodity * {
- $result = gw_wcp_assimilate_ptr($1,
- scm_c_eval_string("<gnc:commodity*>"));
-}
// End of temporary typemaps.
@@ -121,9 +99,6 @@
time_t gnc_accounting_period_fiscal_start(void);
time_t gnc_accounting_period_fiscal_end(void);
-//temporary, until QofIdType is swigified
-
-%typemap(in) QofIdType { $1 = gw_wcp_get_ptr($input); }
SCM gnc_make_kvp_options(QofIdType id_type);
void gnc_register_kvp_option_generator(QofIdType id_type, SCM generator);
Modified: gnucash/branches/swig-redo/src/app-utils/gnc-helpers.c
===================================================================
--- gnucash/branches/swig-redo/src/app-utils/gnc-helpers.c 2006-10-10 00:08:08 UTC (rev 14977)
+++ gnucash/branches/swig-redo/src/app-utils/gnc-helpers.c 2006-10-10 00:08:39 UTC (rev 14978)
@@ -26,7 +26,7 @@
#include <libguile.h>
#include "guile-mappings.h"
#include <string.h>
-#include <g-wrap-wct.h>
+#include "swig-runtime.h"
#include "gnc-engine.h"
#include "engine-helpers.h"
@@ -67,10 +67,12 @@
info.commodity = gnc_scm_to_commodity (SCM_CAR (info_scm));
info_scm = SCM_CDR (info_scm);
- info.max_decimal_places = scm_num2int (SCM_CAR (info_scm), SCM_ARG1, __FUNCTION__);
+ info.max_decimal_places = scm_num2int (SCM_CAR (info_scm), SCM_ARG1,
+ __FUNCTION__);
info_scm = SCM_CDR (info_scm);
- info.min_decimal_places = scm_num2int (SCM_CAR (info_scm), SCM_ARG1, __FUNCTION__);
+ info.min_decimal_places = scm_num2int (SCM_CAR (info_scm), SCM_ARG1,
+ __FUNCTION__);
info_scm = SCM_CDR (info_scm);
info.use_separators = SCM_NFALSEP (SCM_CAR (info_scm));
@@ -139,9 +141,9 @@
source = gnc_commodity_get_quote_source (comm);
name = gnc_quote_source_get_internal_name (source);
tz = gnc_commodity_get_quote_tz (comm);
- comm_scm = gw_wcp_assimilate_ptr (comm, scm_c_eval_string("<gnc:commodity*>"));
- def_comm_scm = gw_wcp_assimilate_ptr (gnc_default_currency (),
- scm_c_eval_string("<gnc:commodity*>"));
+ comm_scm = SWIG_NewPointerObj(comm, SWIG_TypeQuery("_p_gnc_commodity"), 0);
+ def_comm_scm = SWIG_NewPointerObj(gnc_default_currency (),
+ SWIG_TypeQuery("_p_gnc_commodity"), 0);
if (tz)
info_scm = scm_cons (scm_makfrom0str (tz), info_scm);
Modified: gnucash/branches/swig-redo/src/app-utils/hooks.scm
===================================================================
--- gnucash/branches/swig-redo/src/app-utils/hooks.scm 2006-10-10 00:08:08 UTC (rev 14977)
+++ gnucash/branches/swig-redo/src/app-utils/hooks.scm 2006-10-10 00:08:39 UTC (rev 14978)
@@ -17,6 +17,6 @@
(define (gnc:hook-run-danglers hook . args)
(if (null? args)
- (set! args #f)
+ (set! args '())
(set! args (car args)))
(gnc:hook-run-danglers-real hook args))
Modified: gnucash/branches/swig-redo/src/app-utils/option-util.c
===================================================================
--- gnucash/branches/swig-redo/src/app-utils/option-util.c 2006-10-10 00:08:08 UTC (rev 14977)
+++ gnucash/branches/swig-redo/src/app-utils/option-util.c 2006-10-10 00:08:39 UTC (rev 14978)
@@ -34,7 +34,6 @@
#include "qof.h"
#include "guile-mappings.h"
-#include <g-wrap-wct.h>
#include "swig-runtime.h"
/* TODO:
@@ -302,9 +301,8 @@
return;
}
}
+ scm_slots = SWIG_NewPointerObj(slots, SWIG_TypeQuery("_p_KvpFrame"), 0);
- scm_slots = gw_wcp_assimilate_ptr (slots, scm_c_eval_string("<gnc:kvp-frame*>"));
-
scm_call_3 (kvp_to_scm, odb->guile_options, scm_slots, kvp_option_path);
}
@@ -334,7 +332,7 @@
}
}
- scm_slots = gw_wcp_assimilate_ptr (slots, scm_c_eval_string("<gnc:kvp-frame*>"));
+ scm_slots = SWIG_NewPointerObj(slots, SWIG_TypeQuery("p_KvpFrame"), 0);
scm_call_3 (scm_to_kvp, odb->guile_options, scm_slots, kvp_option_path);
}
@@ -433,8 +431,6 @@
const char *section,
const char *name)
{
- static SCM void_type = SCM_UNDEFINED;
-
SCM register_proc;
SCM arg;
SCM args;
@@ -450,12 +446,6 @@
return SCM_UNDEFINED;
}
- if(void_type == SCM_UNDEFINED) {
- void_type = scm_c_eval_string("<gw:void*>");
- /* don't really need this - types are bound globally anyway. */
- if(void_type != SCM_UNDEFINED) scm_gc_protect_object(void_type);
- }
-
/* Now build the args list for apply */
args = SCM_EOL;
@@ -463,7 +453,7 @@
args = scm_cons(odb->guile_options, args);
/* next the data */
- arg = gw_wcp_assimilate_ptr(data, void_type);
+ arg = SWIG_NewPointerObj(data, SWIG_TypeQuery("_p_void"), 0);
args = scm_cons(arg, args);
/* next the callback */
Modified: gnucash/branches/swig-redo/src/business/business-core/business-core.i
===================================================================
--- gnucash/branches/swig-redo/src/business/business-core/business-core.i 2006-10-10 00:08:08 UTC (rev 14977)
+++ gnucash/branches/swig-redo/src/business/business-core/business-core.i 2006-10-10 00:08:39 UTC (rev 14978)
@@ -16,15 +16,9 @@
#include <gncBusGuile.h>
#include "engine-helpers.h"
#include "gncBusGuile.h"
-
-#include <g-wrap-wct.h> //Temporary. Adds no link dep?!?
%}
// Temporary SWIG<->G-wrap converters for engine types
-%typemap(in) QofBook * "$1 = (QofBook *)gw_wcp_get_ptr($input);"
-%typemap(out) QofBook * {
- $result = gw_wcp_assimilate_ptr($1, scm_c_eval_string("<gnc:Book*>"));
-}
%typemap(in) gboolean "$1 = SCM_NFALSEP($input) ? TRUE : FALSE;"
%typemap(out) gboolean "$result = $1 ? SCM_BOOL_T : SCM_BOOL_F;"
Modified: gnucash/branches/swig-redo/src/engine/engine-helpers.c
===================================================================
--- gnucash/branches/swig-redo/src/engine/engine-helpers.c 2006-10-10 00:08:08 UTC (rev 14977)
+++ gnucash/branches/swig-redo/src/engine/engine-helpers.c 2006-10-10 00:08:39 UTC (rev 14978)
@@ -24,7 +24,7 @@
#include "config.h"
-#include <g-wrap-wct.h>
+#include "swig-runtime.h"
#include <libguile.h>
#include <string.h>
@@ -43,6 +43,8 @@
#include "qofquery-p.h"
#include "qofquerycore-p.h"
+#define FUNC_NAME __FUNCTION__
+
static QofLogModule log_module = GNC_MOD_ENGINE;
Timespec
@@ -197,123 +199,47 @@
gnc_QUERY_v2
} query_version_t;
-static SCM
-gnc_gw_enum_val2scm (const char *typestr, int value)
-{
- char *func_name;
- SCM func;
- SCM scm;
-
- func_name = g_strdup_printf ("gw:enum-%s-val->sym", typestr);
-
- func = scm_c_eval_string (func_name);
- if (SCM_PROCEDUREP (func))
- scm = scm_call_2 (func, scm_int2num (value), SCM_BOOL_F);
- else
- scm = SCM_BOOL_F;
-
- g_free (func_name);
-
- return scm;
-}
-
-static int
-gnc_gw_enum_scm2val (const char *typestr, SCM enum_scm)
-{
- char *func_name;
- SCM func;
- SCM scm;
-
- func_name = g_strdup_printf ("gw:enum-%s-val->int", typestr);
-
- func = scm_c_eval_string (func_name);
- if (SCM_PROCEDUREP (func))
- scm = scm_call_1 (func, enum_scm);
- else
- scm = scm_int2num (0);
-
- g_free (func_name);
-
- return scm_num2int (scm, SCM_ARG1, __FUNCTION__);
-}
-
/* QofCompareFunc */
-static SCM
-gnc_query_compare2scm (QofQueryCompare how)
-{
- return gnc_gw_enum_val2scm ("<gnc:query-compare-how>", how);
-}
-
static QofQueryCompare
gnc_query_scm2compare (SCM how_scm)
{
- return gnc_gw_enum_scm2val ("<gnc:query-compare-how>", how_scm);
+ return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
}
/* QofStringMatch */
-static SCM
-gnc_query_string2scm (QofStringMatch how)
-{
- return gnc_gw_enum_val2scm ("<gnc:string-match-how>", how);
-}
-
static QofStringMatch
gnc_query_scm2string (SCM how_scm)
{
- return gnc_gw_enum_scm2val ("<gnc:string-match-how>", how_scm);
+ return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
}
/* QofDateMatch */
-static SCM
-gnc_query_date2scm (QofDateMatch how)
-{
- return gnc_gw_enum_val2scm ("<gnc:date-match-how>", how);
-}
-
static QofDateMatch
gnc_query_scm2date (SCM how_scm)
{
- return gnc_gw_enum_scm2val ("<gnc:date-match-how>", how_scm);
+ return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
}
/* QofNumericMatch */
-static SCM
-gnc_query_numericop2scm (QofNumericMatch how)
-{
- return gnc_gw_enum_val2scm ("<gnc:numeric-match-how>", how);
-}
-
static QofNumericMatch
gnc_query_scm2numericop (SCM how_scm)
{
- return gnc_gw_enum_scm2val ("<gnc:numeric-match-how>", how_scm);
+ return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
}
/* QofGuidMatch */
-static SCM
-gnc_query_guid2scm (QofGuidMatch how)
-{
- return gnc_gw_enum_val2scm ("<gnc:guid-match-how>", how);
-}
-
static QofGuidMatch
gnc_query_scm2guid (SCM how_scm)
{
- return gnc_gw_enum_scm2val ("<gnc:guid-match-how>", how_scm);
+ return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
}
/* QofCharMatch */
-static SCM
-gnc_query_char2scm (QofCharMatch how)
-{
- return gnc_gw_enum_val2scm ("<gnc:char-match-how>", how);
-}
-
static QofCharMatch
gnc_query_scm2char (SCM how_scm)
{
- return gnc_gw_enum_scm2val ("<gnc:char-match-how>", how_scm);
+ return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
}
static QofGuidMatch
@@ -379,7 +305,7 @@
}
static int
-gnc_scm2bitfield (const char *typestr, SCM field_scm)
+gnc_scm2bitfield (SCM field_scm)
{
int field = 0;
@@ -394,7 +320,7 @@
scm = SCM_CAR (field_scm);
field_scm = SCM_CDR (field_scm);
- bit = gnc_gw_enum_scm2val (typestr, scm);
+ bit = scm_num2int(scm, SCM_ARG2, __FUNCTION__);
field |= bit;
}
@@ -404,7 +330,7 @@
static cleared_match_t
gnc_scm2cleared_match_how (SCM how_scm)
{
- return gnc_scm2bitfield ("<gnc:cleared-match-how>", how_scm);
+ return gnc_scm2bitfield (how_scm);
}
static gboolean
@@ -588,16 +514,10 @@
g_slist_free (path);
}
-static SCM
-gnc_KvpValueTypeype2scm (KvpValueType how)
-{
- return gnc_gw_enum_val2scm ("<gnc:kvp-value-t>", how);
-}
-
static KvpValueType
gnc_scm2KvpValueTypeype (SCM value_type_scm)
{
- return gnc_gw_enum_scm2val ("<gnc:kvp-value-t>", value_type_scm);
+ return scm_num2int(value_type_scm, SCM_ARG1, __FUNCTION__);
}
static SCM gnc_kvp_frame2scm (KvpFrame *frame);
@@ -613,7 +533,7 @@
value_t = kvp_value_get_type (value);
- value_scm = scm_cons (gnc_KvpValueTypeype2scm (value_t), value_scm);
+ value_scm = scm_cons (scm_long2num (value_t), value_scm);
switch (value_t)
{
@@ -862,31 +782,31 @@
pd = qof_query_term_get_pred_data (qt);
qt_scm = scm_cons (scm_str2symbol (pd->type_name), qt_scm);
- qt_scm = scm_cons (gnc_query_compare2scm (pd->how), qt_scm);
+ qt_scm = scm_cons (scm_long2num (pd->how), qt_scm);
if (!safe_strcmp (pd->type_name, QOF_TYPE_STRING)) {
query_string_t pdata = (query_string_t) pd;
- qt_scm = scm_cons (gnc_query_string2scm (pdata->options), qt_scm);
+ qt_scm = scm_cons (scm_long2num (pdata->options), qt_scm);
qt_scm = scm_cons (SCM_BOOL (pdata->is_regex), qt_scm);
qt_scm = scm_cons (scm_makfrom0str (pdata->matchstring), qt_scm);
} else if (!safe_strcmp (pd->type_name, QOF_TYPE_DATE)) {
query_date_t pdata = (query_date_t) pd;
- qt_scm = scm_cons (gnc_query_date2scm (pdata->options), qt_scm);
+ qt_scm = scm_cons (scm_long2num (pdata->options), qt_scm);
qt_scm = scm_cons (gnc_timespec2timepair (pdata->date), qt_scm);
} else if (!safe_strcmp (pd->type_name, QOF_TYPE_NUMERIC)) {
query_numeric_t pdata = (query_numeric_t) pd;
- qt_scm = scm_cons (gnc_query_numericop2scm (pdata->options), qt_scm);
+ qt_scm = scm_cons (scm_long2num (pdata->options), qt_scm);
qt_scm = scm_cons (gnc_query_numeric2scm (pdata->amount), qt_scm);
} else if (!safe_strcmp (pd->type_name, QOF_TYPE_GUID)) {
query_guid_t pdata = (query_guid_t) pd;
- qt_scm = scm_cons (gnc_query_guid2scm (pdata->options), qt_scm);
+ qt_scm = scm_cons (scm_long2num (pdata->options), qt_scm);
qt_scm = scm_cons (gnc_guid_glist2scm (pdata->guids), qt_scm);
} else if (!safe_strcmp (pd->type_name, QOF_TYPE_INT64)) {
@@ -907,7 +827,7 @@
} else if (!safe_strcmp (pd->type_name, QOF_TYPE_CHAR)) {
query_char_t pdata = (query_char_t) pd;
- qt_scm = scm_cons (gnc_query_char2scm (pdata->options), qt_scm);
+ qt_scm = scm_cons (scm_long2num (pdata->options), qt_scm);
qt_scm = scm_cons (scm_makfrom0str (pdata->char_list), qt_scm);
} else if (!safe_strcmp (pd->type_name, QOF_TYPE_KVP)) {
@@ -2066,46 +1986,6 @@
return q;
}
-static int
-gnc_scm_traversal_adapter(Transaction *t, void *data)
-{
- static SCM trans_type = SCM_BOOL_F;
- SCM result;
- SCM scm_trans;
- SCM thunk = *((SCM *) data);
-
- if(trans_type == SCM_BOOL_F) {
- trans_type = scm_c_eval_string("<gnc:Transaction*>");
- /* don't really need this - types are bound globally anyway. */
- if(trans_type != SCM_BOOL_F) scm_gc_protect_object(trans_type);
- }
-
- scm_trans = gw_wcp_assimilate_ptr(t, trans_type);
- result = scm_call_1(thunk, scm_trans);
-
- return (result != SCM_BOOL_F);
-}
-
-gboolean
-gnc_scmGroupStagedTransactionTraversal(AccountGroup *grp,
- unsigned int new_marker,
- SCM thunk)
-{
- return xaccGroupStagedTransactionTraversal(grp, new_marker,
- gnc_scm_traversal_adapter,
- &thunk);
-}
-
-gboolean
-gnc_scmAccountStagedTransactionTraversal(Account *a,
- unsigned int new_marker,
- SCM thunk)
-{
- return xaccAccountStagedTransactionTraversal(a, new_marker,
- gnc_scm_traversal_adapter,
- &thunk);
-}
-
SCM
gnc_gint64_to_scm(const gint64 x)
{
@@ -2265,89 +2145,60 @@
}
}
-/********************************************************************
- * gnc_scm_to_commodity
- ********************************************************************/
-gnc_commodity *
-gnc_scm_to_commodity(SCM scm)
+
+static SCM
+gnc_generic_to_scm(const void *x, const gchar *type_str)
{
- static SCM commodity_type = SCM_UNDEFINED;
+ swig_type_info * stype = NULL;
- if(commodity_type == SCM_UNDEFINED) {
- commodity_type = scm_c_eval_string("<gnc:commodity*>");
- /* don't really need this - types are bound globally anyway. */
- if(commodity_type != SCM_UNDEFINED) scm_gc_protect_object(commodity_type);
- }
+ if (!x) return SCM_BOOL_F;
+ stype = SWIG_TypeQuery(type_str);
- if(!gw_wcp_is_of_type_p(commodity_type, scm)) {
- return NULL;
- }
+ if (!stype) {
+ PERR("Unknown SWIG Type: %s ", type_str);
+ return SCM_BOOL_F;
+ }
- return gw_wcp_get_ptr(scm);
+ return SWIG_NewPointerObj(x, stype, 0);
}
+static void *
+gnc_scm_to_generic(SCM scm, const gchar *type_str)
+{
+ swig_type_info * stype = NULL;
-/********************************************************************
- * gnc_commodity_to_scm
- ********************************************************************/
+ stype = SWIG_TypeQuery(type_str);
+ if (!stype) {
+ PERR("Unknown SWIG Type: %s ", type_str);
+ return NULL;
+ }
+
+ if (!SWIG_IsPointerOfType(scm, stype))
+ return NULL;
+
+ return SWIG_MustGetPtr(scm, stype, 1, 0);
+}
+
+gnc_commodity *
+gnc_scm_to_commodity(SCM scm)
+{
+ return gnc_scm_to_generic(scm, "_p_gnc_commodity");
+}
+
SCM
gnc_commodity_to_scm (const gnc_commodity *commodity)
{
- static SCM commodity_type = SCM_UNDEFINED;
-
- if(commodity == NULL) return SCM_BOOL_F;
-
- if(commodity_type == SCM_UNDEFINED) {
- commodity_type = scm_c_eval_string("<gnc:commodity*>");
- /* don't really need this - types are bound globally anyway. */
- if(commodity_type != SCM_UNDEFINED) scm_gc_protect_object(commodity_type);
- }
-
- return gw_wcp_assimilate_ptr((void *) commodity, commodity_type);
+ return gnc_generic_to_scm(commodity, "_p_gnc_commodity");
}
-/********************************************************************
- * gnc_book_to_scm
- ********************************************************************/
SCM
gnc_book_to_scm (QofBook *book)
{
- static SCM book_type = SCM_UNDEFINED;
-
- if (!book)
- return SCM_BOOL_F;
-
- if (book_type == SCM_UNDEFINED)
- {
- book_type = scm_c_eval_string ("<gnc:Book*>");
-
- /* don't really need this - types are bound globally anyway. */
- if (book_type != SCM_UNDEFINED)
- scm_gc_protect_object (book_type);
- }
-
- return gw_wcp_assimilate_ptr ((void *) book, book_type);
+ return gnc_generic_to_scm(book, "_p_QofBook");
}
-/********************************************************************
- * qof_session_to_scm
- ********************************************************************/
SCM
qof_session_to_scm (QofSession *session)
{
- static SCM session_type = SCM_UNDEFINED;
-
- if (!session)
- return SCM_BOOL_F;
-
- if (session_type == SCM_UNDEFINED)
- {
- session_type = scm_c_eval_string ("<gnc:Session*>");
-
- /* don't really need this - types are bound globally anyway. */
- if (session_type != SCM_UNDEFINED)
- scm_gc_protect_object (session_type);
- }
-
- return gw_wcp_assimilate_ptr ((void *) session, session_type);
+ return gnc_generic_to_scm(session, "_p_QofSession");
}
Modified: gnucash/branches/swig-redo/src/engine/gnc-hooks.c
===================================================================
--- gnucash/branches/swig-redo/src/engine/gnc-hooks.c 2006-10-10 00:08:08 UTC (rev 14977)
+++ gnucash/branches/swig-redo/src/engine/gnc-hooks.c 2006-10-10 00:08:39 UTC (rev 14978)
@@ -26,7 +26,7 @@
#include <glib.h>
#include <stdio.h>
#include <libguile.h>
-#include <g-wrap-wct.h>
+#include "swig-runtime.h"
#include "gnc-hooks.h"
#include "gnc-hooks-scm.h"
#include "gnc-engine.h"
@@ -191,8 +191,7 @@
// XXX: FIXME: We really should make sure this is a session!!! */
scm_call_1 (scm->proc,
- gw_wcp_assimilate_ptr (data,
- scm_c_eval_string("<gnc:Session*>")));
+ SWIG_NewPointerObj(data, SWIG_TypeQuery("_p_QofSession"), 0));
LEAVE("");
}
Modified: gnucash/branches/swig-redo/src/engine/kvp-scm.c
===================================================================
--- gnucash/branches/swig-redo/src/engine/kvp-scm.c 2006-10-10 00:08:08 UTC (rev 14977)
+++ gnucash/branches/swig-redo/src/engine/kvp-scm.c 2006-10-10 00:08:39 UTC (rev 14978)
@@ -1,12 +1,12 @@
#include "config.h"
#include <qof.h>
-#include <g-wrap-wct.h>
#include <libguile.h>
#include <engine-helpers.h>
#include "kvp-scm.h"
#include "guile-mappings.h"
+#include "swig-runtime.h"
int
gnc_kvp_value_ptr_p(SCM arg)
@@ -53,10 +53,12 @@
ret = kvp_value_new_string(newstr);
return ret;
}
- else if(gw_wcp_p(val) &&
- gw_wcp_is_of_type_p(scm_c_eval_string("<gnc:kvp-frame*>"), val))
+ else if(SWIG_IsPointerOfType(val, SWIG_TypeQuery("_p_KvpFrame")))
{
- KvpFrame *frame = gw_wcp_get_ptr(val);
+ #define FUNC_NAME __FUNCTION__
+ KvpFrame *frame = SWIG_MustGetPtr(val, SWIG_TypeQuery("_p_KvpFrame"),
+ 1, 0);
+ #undef FUNC_NAME
return kvp_value_new_frame (frame);
}
/* FIXME: add binary handler here when it's figured out */
@@ -95,8 +97,7 @@
{
KvpFrame *frame = kvp_value_get_frame(val);
if (frame)
- return gw_wcp_assimilate_ptr (frame,
- scm_c_eval_string("<gnc:kvp-frame*>"));
+ return SWIG_NewPointerObj(frame, SWIG_TypeQuery("_p_KvpFrame"), 0);
}
break;
Modified: gnucash/branches/swig-redo/src/import-export/qif-import/druid-qif-import.c
===================================================================
--- gnucash/branches/swig-redo/src/import-export/qif-import/druid-qif-import.c 2006-10-10 00:08:08 UTC (rev 14977)
+++ gnucash/branches/swig-redo/src/import-export/qif-import/druid-qif-import.c 2006-10-10 00:08:39 UTC (rev 14978)
@@ -1597,8 +1597,10 @@
stocks = wind->new_stocks;
while(!SCM_NULLP(stocks) && (stocks != SCM_BOOL_F)) {
comm_ptr_token = scm_call_2(hash_ref, wind->stock_hash, SCM_CAR(stocks));
- commodity = gw_wcp_get_ptr(comm_ptr_token);
-
+ #define FUNC_NAME "make_qif_druid_page"
+ commodity = SWIG_MustGetPtr(comm_ptr_token,
+ SWIG_TypeQuery("_p_gnc_commodity"), 1, 0);
+ #undef FUNC_NAME
new_page = make_qif_druid_page(commodity);
g_signal_connect(new_page->page, "next",
More information about the gnucash-changes
mailing list