VnListModel, DbIterator
- VnGridModel renombrado a VnListModel, que ahora implementa directamente la linea de valores nulos virtual usada para los ComboBox, en lugar de implementarse en el DbModel. - Al refrescar, DbSimpleIterator va al primer registro cuando no recuerda selección, VnGrid pierde la selección completamente. - Se han añadido algunos comentarios para documentación y para GObjectIntrospection.
This commit is contained in:
parent
851b6a890e
commit
ea4aea818b
|
@ -346,29 +346,27 @@ gboolean db_iterator_move_last (DbIterator * self)
|
|||
gboolean db_iterator_move_previous (DbIterator * self)
|
||||
{
|
||||
DbIter * self_iter;
|
||||
gboolean move = FALSE;
|
||||
|
||||
DB_ITERATOR_GET_INTERFACE (self)->get_iter (self, &self_iter);
|
||||
|
||||
if (self_iter)
|
||||
{
|
||||
gboolean ret = FALSE;
|
||||
DbIter * iter = db_iter_copy (self_iter);
|
||||
DbModel * model = GET_MODEL (self);
|
||||
|
||||
if (db_model_iter_prev (model, iter))
|
||||
ret = db_iterator_move_iter (self, iter);
|
||||
move = db_iterator_move_iter (self, iter);
|
||||
else
|
||||
g_warning (
|
||||
"Can't move the cursor to the previous "
|
||||
"row, because there are no more rows."
|
||||
);
|
||||
g_warning ("Can't move the cursor to the previous "
|
||||
"row, because there are no more rows.");
|
||||
|
||||
db_iter_free (iter);
|
||||
|
||||
return ret;
|
||||
}
|
||||
else
|
||||
return db_iterator_move_first (self);
|
||||
move = db_iterator_move_first (self);
|
||||
|
||||
return move;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -383,29 +381,27 @@ gboolean db_iterator_move_previous (DbIterator * self)
|
|||
gboolean db_iterator_move_next (DbIterator * self)
|
||||
{
|
||||
DbIter * self_iter;
|
||||
gboolean move = FALSE;
|
||||
|
||||
DB_ITERATOR_GET_INTERFACE (self)->get_iter (self, &self_iter);
|
||||
|
||||
if (self_iter)
|
||||
{
|
||||
gboolean ret;
|
||||
DbIter * iter = db_iter_copy (self_iter);
|
||||
DbModel * model = GET_MODEL (self);
|
||||
|
||||
if (db_model_iter_next (model, iter))
|
||||
ret = db_iterator_move_iter (self, iter);
|
||||
move = db_iterator_move_iter (self, iter);
|
||||
else
|
||||
g_warning (
|
||||
"Can't move the cursor to the next "
|
||||
"row, because there are no more rows."
|
||||
);
|
||||
g_warning ("Can't move the cursor to the next "
|
||||
"row, because there are no more rows.");
|
||||
|
||||
db_iter_free (iter);
|
||||
|
||||
return ret;
|
||||
}
|
||||
else
|
||||
return db_iterator_move_last (self);
|
||||
move = db_iterator_move_last (self);
|
||||
|
||||
return move;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -552,7 +548,7 @@ const GValue * db_iterator_get_value (DbIterator * self, const gchar * column_na
|
|||
/**
|
||||
* db_iterator_set_value:
|
||||
* @self: a #DbIterator
|
||||
* @column: the column name.
|
||||
* @column_name: the column name.
|
||||
* @value: a #GValue with the new value.
|
||||
* @err: (out) (allow-none): the return location for a #GError or %NULL.
|
||||
*
|
||||
|
|
|
@ -61,7 +61,6 @@ struct _DbModelPrivate
|
|||
DbModelStatus status;
|
||||
gboolean autoload;
|
||||
gint stamp;
|
||||
DbRow * null_row;
|
||||
|
||||
GHashTable * defaults;
|
||||
|
||||
|
@ -127,7 +126,6 @@ typedef struct
|
|||
{
|
||||
gint col;
|
||||
gint order;
|
||||
DbRow * null_row;
|
||||
}
|
||||
SortInfo;
|
||||
|
||||
|
@ -848,22 +846,11 @@ static gint db_model_value_compare0 (const GValue * a, const GValue * b)
|
|||
|
||||
static inline gint db_model_valcmp (gpointer * a, gpointer * b, SortInfo * info)
|
||||
{
|
||||
gint order;
|
||||
gint dir = info->order == DB_SORT_ASCENDING ? 1 : -1;
|
||||
DbRow * first = *a;
|
||||
DbRow * second = *b;
|
||||
|
||||
if (first == info->null_row)
|
||||
order = -1;
|
||||
else if (second == info->null_row)
|
||||
order = 1;
|
||||
else
|
||||
{
|
||||
gint dir = info->order == DB_SORT_ASCENDING ? 1 : -1;
|
||||
order = dir * db_model_value_compare0 (&first->value[info->col]
|
||||
,&second->value[info->col]);
|
||||
}
|
||||
|
||||
return order;
|
||||
return dir * db_model_value_compare0 (&first->value[info->col], &second->value[info->col]);
|
||||
}
|
||||
|
||||
static void db_model_set_status (DbModel * self, DbModelStatus status)
|
||||
|
@ -1828,9 +1815,6 @@ void db_model_set (DbModel * self, DbIter * iter, ...)
|
|||
g_return_if_fail (DB_IS_MODEL (self));
|
||||
g_return_if_fail (self->priv->result);
|
||||
g_return_if_fail (iter != NULL);
|
||||
|
||||
if (iter->data == self->priv->null_row)
|
||||
return;
|
||||
|
||||
va_start (va, iter);
|
||||
|
||||
|
@ -1923,11 +1907,6 @@ gboolean db_model_set_value (DbModel * self, DbIter * iter, gint col, const GVal
|
|||
GvnParamSpec * spec = priv->column[col].spec;
|
||||
|
||||
g_return_val_if_fail (0 <= col && col < priv->result->ncols, FALSE);
|
||||
|
||||
if (iter->data == self->priv->null_row)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (!gvn_param_spec_validate (spec, value, err))
|
||||
return FALSE;
|
||||
|
@ -2078,9 +2057,6 @@ void db_model_delete (DbModel * self, DbIter * iter)
|
|||
return;
|
||||
}
|
||||
|
||||
if (iter->data == self->priv->null_row)
|
||||
return;
|
||||
|
||||
if (!db_model_set_row_operation
|
||||
(self, g_ptr_array_index (self->priv->data, DB_ROW_POSITION (iter->data)),
|
||||
DB_MODEL_ROW_OP_DELETE, 0))
|
||||
|
@ -2092,68 +2068,6 @@ void db_model_delete (DbModel * self, DbIter * iter)
|
|||
db_model_perform_operations (self, FALSE);
|
||||
}
|
||||
|
||||
/**
|
||||
* db_model_use_null_row:
|
||||
* @self: a #DbModel
|
||||
* @use: wether to use a null row
|
||||
*
|
||||
* Sets wether to use a null row at the end of the model. This row can't be
|
||||
* modified by the methods @db_model_delete or @db_model_set_value, the only way
|
||||
* to remove it is to call @db_model_use_null_row again passing #FALSE.
|
||||
**/
|
||||
void db_model_use_null_row (DbModel * self, gboolean use)
|
||||
{
|
||||
DbModelPrivate * priv;
|
||||
|
||||
g_return_if_fail (DB_IS_MODEL (self));
|
||||
|
||||
priv = self->priv;
|
||||
|
||||
if (MODEL_NOT_READY(self) || !priv->result
|
||||
|| ((priv->null_row != NULL) == use))
|
||||
return;
|
||||
|
||||
if (use)
|
||||
{
|
||||
if (!priv->null_row)
|
||||
{
|
||||
gint i;
|
||||
DbIter iter;
|
||||
DbModelPrivate * priv = self->priv;
|
||||
DbRow * curr, * row = db_row_new (priv->result->ncols, 0);
|
||||
gpointer * data = priv->data->pdata;
|
||||
|
||||
for (i = 0; i < row->len; i++)
|
||||
g_value_init (&row->value[i], GVN_TYPE_NULL);
|
||||
|
||||
priv->null_row = row;
|
||||
iter.data = row;
|
||||
iter.stamp = priv->stamp;
|
||||
|
||||
priv->result->nrows++;
|
||||
g_ptr_array_set_size (priv->data, priv->result->nrows);
|
||||
curr = data[0];
|
||||
data[0] = row;
|
||||
|
||||
for (i = 1; i < priv->result->nrows; i++)
|
||||
{
|
||||
DbRow * next = data[i];
|
||||
DB_ROW_POSITION (curr)++;
|
||||
data[i] = curr;
|
||||
curr = next;
|
||||
}
|
||||
|
||||
g_signal_emit (self, db_model_signal[LINE_INSERTED], 0, &iter);
|
||||
}
|
||||
}
|
||||
else if (priv->null_row)
|
||||
{
|
||||
g_signal_emit (self, db_model_signal[LINE_DELETED], 0,
|
||||
DB_ROW_POSITION (priv->null_row));
|
||||
priv->null_row = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* db_model_order_by:
|
||||
* @self: a #DbModel
|
||||
|
@ -2193,8 +2107,7 @@ void db_model_order_by (DbModel * self, gint col, DbSortType order)
|
|||
priv->sort_column_id = col;
|
||||
g_signal_emit (self, db_model_signal[SORT_CHANGED], 0, NULL);
|
||||
|
||||
info.col = col;
|
||||
info.null_row = priv->null_row;
|
||||
info.col = col;
|
||||
info.order = order;
|
||||
|
||||
g_ptr_array_sort_with_data (priv->data
|
||||
|
@ -3154,7 +3067,6 @@ static void db_model_init (DbModel * self)
|
|||
);
|
||||
|
||||
priv->fresh = TRUE;
|
||||
priv->null_row = NULL;
|
||||
priv->sort_column_id = DB_MODEL_UNSORTED_SORT_COLUMN_ID;
|
||||
priv->default_sort_data = NULL;
|
||||
priv->default_sort_func = NULL;
|
||||
|
|
|
@ -206,7 +206,6 @@ void db_model_unset_update_flags (DbModel * self
|
|||
void db_model_set_mode (DbModel * self, DbModelMode mode);
|
||||
DbModelMode db_model_get_mode (DbModel * self);
|
||||
void db_model_toggle_mode (DbModel * self);
|
||||
void db_model_use_null_row (DbModel * self, gboolean use);
|
||||
gboolean db_model_get_last (DbModel * self, DbIter * iter);
|
||||
void db_model_get (DbModel * self
|
||||
,DbIter * iter
|
||||
|
|
|
@ -112,7 +112,7 @@
|
|||
<xi:include href="xml/vn-gui.xml"/>
|
||||
<xi:include href="xml/vn-mod.xml"/>
|
||||
<xi:include href="xml/vn-form.xml"/>
|
||||
<xi:include href="xml/vn-grid-model.xml"/>
|
||||
<xi:include href="xml/vn-list-model.xml"/>
|
||||
<xi:include href="xml/vn-grid.xml"/>
|
||||
<xi:include href="xml/vn-handler.xml"/>
|
||||
<xi:include href="xml/vn-set.xml"/>
|
||||
|
|
|
@ -249,6 +249,10 @@ void gvn_param_set_string (GvnParam * self, const gchar * value)
|
|||
gvn_param_take_value (self, gvn_value_new_string (value));
|
||||
}
|
||||
|
||||
/**
|
||||
* gvn_param_get_boxed:
|
||||
* Return value: (transfer none):
|
||||
**/
|
||||
gpointer gvn_param_get_boxed (GvnParam * self)
|
||||
{
|
||||
g_return_val_if_fail (GVN_IS_PARAM (self), NULL);
|
||||
|
|
|
@ -703,6 +703,10 @@ GValue * gvn_value_new_string (const gchar * value)
|
|||
return gvalue;
|
||||
}
|
||||
|
||||
/**
|
||||
* gvn_value_get_boxed:
|
||||
* Return value: (transfer none):
|
||||
**/
|
||||
gpointer gvn_value_get_boxed (const GValue * value)
|
||||
{
|
||||
g_return_val_if_fail (G_IS_VALUE (value), NULL);
|
||||
|
|
|
@ -1,737 +0,0 @@
|
|||
# Makefile.in generated by automake 1.14.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
# Definition of the install directories
|
||||
|
||||
# Libraries
|
||||
VPATH = @srcdir@
|
||||
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
DIST_COMMON = $(top_srcdir)/Makefile.decl $(srcdir)/Makefile.in \
|
||||
$(srcdir)/Makefile.am
|
||||
subdir = module
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/build/m4/dev-tools.m4 \
|
||||
$(top_srcdir)/build/m4/gtk-doc.m4 \
|
||||
$(top_srcdir)/build/m4/intltool.m4 \
|
||||
$(top_srcdir)/build/m4/libtool.m4 \
|
||||
$(top_srcdir)/build/m4/ltoptions.m4 \
|
||||
$(top_srcdir)/build/m4/ltsugar.m4 \
|
||||
$(top_srcdir)/build/m4/ltversion.m4 \
|
||||
$(top_srcdir)/build/m4/lt~obsolete.m4 \
|
||||
$(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/build/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_@AM_V@)
|
||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_@AM_V@)
|
||||
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
|
||||
ctags-recursive dvi-recursive html-recursive info-recursive \
|
||||
install-data-recursive install-dvi-recursive \
|
||||
install-exec-recursive install-html-recursive \
|
||||
install-info-recursive install-pdf-recursive \
|
||||
install-ps-recursive install-recursive installcheck-recursive \
|
||||
installdirs-recursive pdf-recursive ps-recursive \
|
||||
tags-recursive uninstall-recursive
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
|
||||
distclean-recursive maintainer-clean-recursive
|
||||
am__recursive_targets = \
|
||||
$(RECURSIVE_TARGETS) \
|
||||
$(RECURSIVE_CLEAN_TARGETS) \
|
||||
$(am__extra_recursive_targets)
|
||||
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
|
||||
distdir
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
# Read a list of newline-separated strings from the standard input,
|
||||
# and print each of them once, without duplicates. Input order is
|
||||
# *not* preserved.
|
||||
am__uniquify_input = $(AWK) '\
|
||||
BEGIN { nonempty = 0; } \
|
||||
{ items[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in items) print i; }; } \
|
||||
'
|
||||
# Make sure the list of sources is unique. This is necessary because,
|
||||
# e.g., the same source file might be shared among _SOURCES variables
|
||||
# for different programs/libraries.
|
||||
am__define_uniq_tagged_files = \
|
||||
list='$(am__tagged_files)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | $(am__uniquify_input)`
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
am__relativize = \
|
||||
dir0=`pwd`; \
|
||||
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
|
||||
sed_rest='s,^[^/]*/*,,'; \
|
||||
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
|
||||
sed_butlast='s,/*[^/]*$$,,'; \
|
||||
while test -n "$$dir1"; do \
|
||||
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
|
||||
if test "$$first" != "."; then \
|
||||
if test "$$first" = ".."; then \
|
||||
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
|
||||
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
|
||||
else \
|
||||
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
|
||||
if test "$$first2" = "$$first"; then \
|
||||
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
|
||||
else \
|
||||
dir2="../$$dir2"; \
|
||||
fi; \
|
||||
dir0="$$dir0"/"$$first"; \
|
||||
fi; \
|
||||
fi; \
|
||||
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
|
||||
done; \
|
||||
reldir="$$dir2"
|
||||
ACLOCAL = @ACLOCAL@
|
||||
ALL_LINGUAS = @ALL_LINGUAS@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
AR = @AR@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CATALOGS = @CATALOGS@
|
||||
CATOBJEXT = @CATOBJEXT@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DATADIRNAME = @DATADIRNAME@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
ENABLE_DEBUG = @ENABLE_DEBUG@
|
||||
ENABLE_INSTALL = @ENABLE_INSTALL@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
|
||||
GIR_SCANNER_ARGS = @GIR_SCANNER_ARGS@
|
||||
GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
|
||||
GMOFILES = @GMOFILES@
|
||||
GMSGFMT = @GMSGFMT@
|
||||
GREP = @GREP@
|
||||
GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@
|
||||
GTKDOC_CHECK = @GTKDOC_CHECK@
|
||||
GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
|
||||
GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
|
||||
GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
|
||||
GTKDOC_MKPDF = @GTKDOC_MKPDF@
|
||||
GTKDOC_REBASE = @GTKDOC_REBASE@
|
||||
HTML_DIR = @HTML_DIR@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
INSTOBJEXT = @INSTOBJEXT@
|
||||
INTLLIBS = @INTLLIBS@
|
||||
INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
|
||||
INTLTOOL_MERGE = @INTLTOOL_MERGE@
|
||||
INTLTOOL_PERL = @INTLTOOL_PERL@
|
||||
INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
|
||||
INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@
|
||||
INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@
|
||||
INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@
|
||||
INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@
|
||||
INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
|
||||
INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
|
||||
INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
|
||||
INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
|
||||
INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
|
||||
INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
|
||||
INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
|
||||
INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
MKINSTALLDIRS = @MKINSTALLDIRS@
|
||||
MSGFMT = @MSGFMT@
|
||||
MSGFMT_OPTS = @MSGFMT_OPTS@
|
||||
MSGMERGE = @MSGMERGE@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_URL = @PACKAGE_URL@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
|
||||
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
|
||||
POFILES = @POFILES@
|
||||
POSUB = @POSUB@
|
||||
PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
|
||||
PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
|
||||
RAGEL = @RAGEL@
|
||||
RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
USE_NLS = @USE_NLS@
|
||||
VALAC = @VALAC@
|
||||
VALA_VERSION = @VALA_VERSION@
|
||||
VAPIGEN = @VAPIGEN@
|
||||
VERSION = @VERSION@
|
||||
VERSION_INFO = @VERSION_INFO@
|
||||
XGETTEXT = @XGETTEXT@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
gdome_CFLAGS = @gdome_CFLAGS@
|
||||
gdome_LIBS = @gdome_LIBS@
|
||||
gladeui_CFLAGS = @gladeui_CFLAGS@
|
||||
gladeui_LIBS = @gladeui_LIBS@
|
||||
glib_CFLAGS = @glib_CFLAGS@
|
||||
glib_LIBS = @glib_LIBS@
|
||||
gsettingsschemadir = @gsettingsschemadir@
|
||||
gtk_CFLAGS = @gtk_CFLAGS@
|
||||
gtk_LIBS = @gtk_LIBS@
|
||||
gtksourceview_CFLAGS = @gtksourceview_CFLAGS@
|
||||
gtksourceview_LIBS = @gtksourceview_LIBS@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
intltool__v_merge_options_ = @intltool__v_merge_options_@
|
||||
intltool__v_merge_options_0 = @intltool__v_merge_options_0@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
sqlite_CFLAGS = @sqlite_CFLAGS@
|
||||
sqlite_LIBS = @sqlite_LIBS@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
uVERSION = @uVERSION@
|
||||
@ENABLE_INSTALL_FALSE@hedera_libdir = $(abs_top_builddir)
|
||||
@ENABLE_INSTALL_TRUE@hedera_libdir = $(pkglibdir)
|
||||
@ENABLE_INSTALL_FALSE@hedera_datadir = $(abs_top_srcdir)
|
||||
@ENABLE_INSTALL_TRUE@hedera_datadir = $(pkgdatadir)
|
||||
gvn_libdir = $(hedera_libdir)
|
||||
sql_libdir = $(hedera_libdir)
|
||||
vn_libdir = $(hedera_libdir)
|
||||
field_libdir = $(vn_libdir)
|
||||
column_libdir = $(vn_libdir)
|
||||
plugin_libdir = $(hedera_libdir)/plugin
|
||||
@ENABLE_INSTALL_FALSE@db_libdir = $(hedera_libdir)/db
|
||||
@ENABLE_INSTALL_TRUE@db_libdir = $(hedera_libdir)
|
||||
@ENABLE_INSTALL_FALSE@module_libdir = $(hedera_libdir)/module/src/.libs
|
||||
@ENABLE_INSTALL_TRUE@module_libdir = $(hedera_libdir)/module
|
||||
|
||||
# Binaries (programs)
|
||||
hedera_bindir = $(bindir)
|
||||
|
||||
# Headers and development files
|
||||
hedera_includedir = $(pkgincludedir)
|
||||
gvn_includedir = $(hedera_includedir)/gvn
|
||||
sql_includedir = $(hedera_includedir)/sql
|
||||
db_includedir = $(hedera_includedir)/db
|
||||
vn_includedir = $(hedera_includedir)/vn
|
||||
field_includedir = $(vn_includedir)/field
|
||||
column_includedir = $(vn_includedir)/column
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
@ENABLE_VALA_TRUE@girdir = $(datadir)/gir-1.0
|
||||
@ENABLE_VALA_TRUE@typelibdir = $(prefix)/lib/girepository-1.0
|
||||
@ENABLE_VALA_TRUE@vapidata = $(top_srcdir)/vapi
|
||||
@ENABLE_VALA_TRUE@vapis = $(top_builddir)/vapi
|
||||
@ENABLE_VALA_TRUE@vapidir = $(datadir)/vala-$(VALA_VERSION)/vapi
|
||||
gladevn_libdir = $(prefix)/lib/glade/modules
|
||||
gladevn_datadir = $(datadir)/glade/catalogs
|
||||
|
||||
# Data
|
||||
vn_datadir = $(hedera_datadir)/vn
|
||||
vn_imagedir = $(vn_datadir)/image
|
||||
vn_guidir = $(vn_datadir)/gui
|
||||
module_querydir = $(hedera_datadir)/module/sql
|
||||
@ENABLE_INSTALL_FALSE@vn_configdir = $(vn_datadir)/schema
|
||||
@ENABLE_INSTALL_TRUE@vn_configdir = $(vn_datadir)
|
||||
@ENABLE_INSTALL_FALSE@vn_xmldir = $(vn_datadir)/schema
|
||||
@ENABLE_INSTALL_TRUE@vn_xmldir = $(datadir)/xml/$(PACKAGE)
|
||||
@ENABLE_INSTALL_FALSE@module_datadir = $(hedera_datadir)/module/data
|
||||
@ENABLE_INSTALL_TRUE@module_datadir = $(hedera_datadir)/module
|
||||
desktopdir = $(datadir)/applications
|
||||
vapigen_v = $(vapigen_v_@AM_V@)
|
||||
vapigen_v_ = $(vapigen_v_@AM_DEFAULT_V@)
|
||||
vapigen_v_0 = @echo " VAPIGEN $(subst $(vapis)/,,$@)";
|
||||
SUBDIRS = \
|
||||
src \
|
||||
data
|
||||
|
||||
all: all-recursive
|
||||
|
||||
.SUFFIXES:
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/Makefile.decl $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu module/Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnu module/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
$(top_srcdir)/Makefile.decl:
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
# This directory's subdirectories are mostly independent; you can cd
|
||||
# into them and run 'make' without going through this Makefile.
|
||||
# To change the values of 'make' variables: instead of editing Makefiles,
|
||||
# (1) if the variable is set in 'config.status', edit 'config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run 'make');
|
||||
# (2) otherwise, pass the desired values on the 'make' command line.
|
||||
$(am__recursive_targets):
|
||||
@fail=; \
|
||||
if $(am__make_keepgoing); then \
|
||||
failcom='fail=yes'; \
|
||||
else \
|
||||
failcom='exit 1'; \
|
||||
fi; \
|
||||
dot_seen=no; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
case "$@" in \
|
||||
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||||
*) list='$(SUBDIRS)' ;; \
|
||||
esac; \
|
||||
for subdir in $$list; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
dot_seen=yes; \
|
||||
local_target="$$target-am"; \
|
||||
else \
|
||||
local_target="$$target"; \
|
||||
fi; \
|
||||
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||
|| eval $$failcom; \
|
||||
done; \
|
||||
if test "$$dot_seen" = "no"; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
||||
fi; test -z "$$fail"
|
||||
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-recursive
|
||||
TAGS: tags
|
||||
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||||
include_option=--etags-include; \
|
||||
empty_fix=.; \
|
||||
else \
|
||||
include_option=--include; \
|
||||
empty_fix=; \
|
||||
fi; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test ! -f $$subdir/TAGS || \
|
||||
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
|
||||
fi; \
|
||||
done; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
if test $$# -gt 0; then \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
"$$@" $$unique; \
|
||||
else \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: ctags-recursive
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||
cscopelist: cscopelist-recursive
|
||||
|
||||
cscopelist-am: $(am__tagged_files)
|
||||
list='$(am__tagged_files)'; \
|
||||
case "$(srcdir)" in \
|
||||
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||
esac; \
|
||||
for i in $$list; do \
|
||||
if test -f "$$i"; then \
|
||||
echo "$(subdir)/$$i"; \
|
||||
else \
|
||||
echo "$$sdir/$$i"; \
|
||||
fi; \
|
||||
done >> $(top_builddir)/cscope.files
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||
else \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
$(am__make_dryrun) \
|
||||
|| test -d "$(distdir)/$$subdir" \
|
||||
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|
||||
|| exit 1; \
|
||||
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
|
||||
$(am__relativize); \
|
||||
new_distdir=$$reldir; \
|
||||
dir1=$$subdir; dir2="$(top_distdir)"; \
|
||||
$(am__relativize); \
|
||||
new_top_distdir=$$reldir; \
|
||||
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
|
||||
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
|
||||
($(am__cd) $$subdir && \
|
||||
$(MAKE) $(AM_MAKEFLAGS) \
|
||||
top_distdir="$$new_top_distdir" \
|
||||
distdir="$$new_distdir" \
|
||||
am__remove_distdir=: \
|
||||
am__skip_length_check=: \
|
||||
am__skip_mode_fix=: \
|
||||
distdir) \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-recursive
|
||||
all-am: Makefile
|
||||
installdirs: installdirs-recursive
|
||||
installdirs-am:
|
||||
install: install-recursive
|
||||
install-exec: install-exec-recursive
|
||||
install-data: install-data-recursive
|
||||
uninstall: uninstall-recursive
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-recursive
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-recursive
|
||||
|
||||
clean-am: clean-generic clean-libtool mostlyclean-am
|
||||
|
||||
distclean: distclean-recursive
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic distclean-tags
|
||||
|
||||
dvi: dvi-recursive
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-recursive
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-recursive
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
|
||||
install-dvi: install-dvi-recursive
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-recursive
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-recursive
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-recursive
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-recursive
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-recursive
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-recursive
|
||||
|
||||
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||||
|
||||
pdf: pdf-recursive
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-recursive
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am:
|
||||
|
||||
.MAKE: $(am__recursive_targets) install-am install-strip
|
||||
|
||||
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
|
||||
check-am clean clean-generic clean-libtool cscopelist-am ctags \
|
||||
ctags-am distclean distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am install-man \
|
||||
install-pdf install-pdf-am install-ps install-ps-am \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
installdirs-am maintainer-clean maintainer-clean-generic \
|
||||
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
|
||||
ps ps-am tags tags-am uninstall uninstall-am
|
||||
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
|
@ -1,618 +0,0 @@
|
|||
# Makefile.in generated by automake 1.14.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
# Definition of the install directories
|
||||
|
||||
# Libraries
|
||||
|
||||
VPATH = @srcdir@
|
||||
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
DIST_COMMON = $(top_srcdir)/Makefile.decl $(srcdir)/Makefile.in \
|
||||
$(srcdir)/Makefile.am
|
||||
subdir = module/data
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/build/m4/dev-tools.m4 \
|
||||
$(top_srcdir)/build/m4/gtk-doc.m4 \
|
||||
$(top_srcdir)/build/m4/intltool.m4 \
|
||||
$(top_srcdir)/build/m4/libtool.m4 \
|
||||
$(top_srcdir)/build/m4/ltoptions.m4 \
|
||||
$(top_srcdir)/build/m4/ltsugar.m4 \
|
||||
$(top_srcdir)/build/m4/ltversion.m4 \
|
||||
$(top_srcdir)/build/m4/lt~obsolete.m4 \
|
||||
$(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/build/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_@AM_V@)
|
||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_@AM_V@)
|
||||
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
|
||||
am__install_max = 40
|
||||
am__nobase_strip_setup = \
|
||||
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
|
||||
am__nobase_strip = \
|
||||
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
|
||||
am__nobase_list = $(am__nobase_strip_setup); \
|
||||
for p in $$list; do echo "$$p $$p"; done | \
|
||||
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
|
||||
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
|
||||
if (++n[$$2] == $(am__install_max)) \
|
||||
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
|
||||
END { for (dir in files) print dir, files[dir] }'
|
||||
am__base_list = \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||
am__uninstall_files_from_dir = { \
|
||||
test -z "$$files" \
|
||||
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||
}
|
||||
am__installdirs = "$(DESTDIR)$(exampledir)"
|
||||
DATA = $(example_DATA)
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
ALL_LINGUAS = @ALL_LINGUAS@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
AR = @AR@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CATALOGS = @CATALOGS@
|
||||
CATOBJEXT = @CATOBJEXT@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DATADIRNAME = @DATADIRNAME@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
ENABLE_DEBUG = @ENABLE_DEBUG@
|
||||
ENABLE_INSTALL = @ENABLE_INSTALL@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
|
||||
GIR_SCANNER_ARGS = @GIR_SCANNER_ARGS@
|
||||
GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
|
||||
GMOFILES = @GMOFILES@
|
||||
GMSGFMT = @GMSGFMT@
|
||||
GREP = @GREP@
|
||||
GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@
|
||||
GTKDOC_CHECK = @GTKDOC_CHECK@
|
||||
GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
|
||||
GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
|
||||
GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
|
||||
GTKDOC_MKPDF = @GTKDOC_MKPDF@
|
||||
GTKDOC_REBASE = @GTKDOC_REBASE@
|
||||
HTML_DIR = @HTML_DIR@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
INSTOBJEXT = @INSTOBJEXT@
|
||||
INTLLIBS = @INTLLIBS@
|
||||
INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
|
||||
INTLTOOL_MERGE = @INTLTOOL_MERGE@
|
||||
INTLTOOL_PERL = @INTLTOOL_PERL@
|
||||
INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
|
||||
INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@
|
||||
INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@
|
||||
INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@
|
||||
INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@
|
||||
INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
|
||||
INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
|
||||
INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
|
||||
INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
|
||||
INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
|
||||
INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
|
||||
INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
|
||||
INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
MKINSTALLDIRS = @MKINSTALLDIRS@
|
||||
MSGFMT = @MSGFMT@
|
||||
MSGFMT_OPTS = @MSGFMT_OPTS@
|
||||
MSGMERGE = @MSGMERGE@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_URL = @PACKAGE_URL@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
|
||||
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
|
||||
POFILES = @POFILES@
|
||||
POSUB = @POSUB@
|
||||
PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
|
||||
PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
|
||||
RAGEL = @RAGEL@
|
||||
RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
USE_NLS = @USE_NLS@
|
||||
VALAC = @VALAC@
|
||||
VALA_VERSION = @VALA_VERSION@
|
||||
VAPIGEN = @VAPIGEN@
|
||||
VERSION = @VERSION@
|
||||
VERSION_INFO = @VERSION_INFO@
|
||||
XGETTEXT = @XGETTEXT@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
gdome_CFLAGS = @gdome_CFLAGS@
|
||||
gdome_LIBS = @gdome_LIBS@
|
||||
gladeui_CFLAGS = @gladeui_CFLAGS@
|
||||
gladeui_LIBS = @gladeui_LIBS@
|
||||
glib_CFLAGS = @glib_CFLAGS@
|
||||
glib_LIBS = @glib_LIBS@
|
||||
gsettingsschemadir = @gsettingsschemadir@
|
||||
gtk_CFLAGS = @gtk_CFLAGS@
|
||||
gtk_LIBS = @gtk_LIBS@
|
||||
gtksourceview_CFLAGS = @gtksourceview_CFLAGS@
|
||||
gtksourceview_LIBS = @gtksourceview_LIBS@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
intltool__v_merge_options_ = @intltool__v_merge_options_@
|
||||
intltool__v_merge_options_0 = @intltool__v_merge_options_0@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
sqlite_CFLAGS = @sqlite_CFLAGS@
|
||||
sqlite_LIBS = @sqlite_LIBS@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
uVERSION = @uVERSION@
|
||||
@ENABLE_INSTALL_FALSE@hedera_libdir = $(abs_top_builddir)
|
||||
@ENABLE_INSTALL_TRUE@hedera_libdir = $(pkglibdir)
|
||||
@ENABLE_INSTALL_FALSE@hedera_datadir = $(abs_top_srcdir)
|
||||
@ENABLE_INSTALL_TRUE@hedera_datadir = $(pkgdatadir)
|
||||
gvn_libdir = $(hedera_libdir)
|
||||
sql_libdir = $(hedera_libdir)
|
||||
vn_libdir = $(hedera_libdir)
|
||||
field_libdir = $(vn_libdir)
|
||||
column_libdir = $(vn_libdir)
|
||||
plugin_libdir = $(hedera_libdir)/plugin
|
||||
@ENABLE_INSTALL_FALSE@db_libdir = $(hedera_libdir)/db
|
||||
@ENABLE_INSTALL_TRUE@db_libdir = $(hedera_libdir)
|
||||
@ENABLE_INSTALL_FALSE@module_libdir = $(hedera_libdir)/module/src/.libs
|
||||
@ENABLE_INSTALL_TRUE@module_libdir = $(hedera_libdir)/module
|
||||
|
||||
# Binaries (programs)
|
||||
hedera_bindir = $(bindir)
|
||||
|
||||
# Headers and development files
|
||||
hedera_includedir = $(pkgincludedir)
|
||||
gvn_includedir = $(hedera_includedir)/gvn
|
||||
sql_includedir = $(hedera_includedir)/sql
|
||||
db_includedir = $(hedera_includedir)/db
|
||||
vn_includedir = $(hedera_includedir)/vn
|
||||
field_includedir = $(vn_includedir)/field
|
||||
column_includedir = $(vn_includedir)/column
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
@ENABLE_VALA_TRUE@girdir = $(datadir)/gir-1.0
|
||||
@ENABLE_VALA_TRUE@typelibdir = $(prefix)/lib/girepository-1.0
|
||||
@ENABLE_VALA_TRUE@vapidata = $(top_srcdir)/vapi
|
||||
@ENABLE_VALA_TRUE@vapis = $(top_builddir)/vapi
|
||||
@ENABLE_VALA_TRUE@vapidir = $(datadir)/vala-$(VALA_VERSION)/vapi
|
||||
gladevn_libdir = $(prefix)/lib/glade/modules
|
||||
gladevn_datadir = $(datadir)/glade/catalogs
|
||||
|
||||
# Data
|
||||
vn_datadir = $(hedera_datadir)/vn
|
||||
vn_imagedir = $(vn_datadir)/image
|
||||
vn_guidir = $(vn_datadir)/gui
|
||||
module_querydir = $(hedera_datadir)/module/sql
|
||||
@ENABLE_INSTALL_FALSE@vn_configdir = $(vn_datadir)/schema
|
||||
@ENABLE_INSTALL_TRUE@vn_configdir = $(vn_datadir)
|
||||
@ENABLE_INSTALL_FALSE@vn_xmldir = $(vn_datadir)/schema
|
||||
@ENABLE_INSTALL_TRUE@vn_xmldir = $(datadir)/xml/$(PACKAGE)
|
||||
@ENABLE_INSTALL_FALSE@module_datadir = $(hedera_datadir)/module/data
|
||||
@ENABLE_INSTALL_TRUE@module_datadir = $(hedera_datadir)/module
|
||||
desktopdir = $(datadir)/applications
|
||||
vapigen_v = $(vapigen_v_@AM_V@)
|
||||
vapigen_v_ = $(vapigen_v_@AM_DEFAULT_V@)
|
||||
vapigen_v_0 = @echo " VAPIGEN $(subst $(vapis)/,,$@)";
|
||||
exampledir = $(module_datadir)
|
||||
example_DATA = \
|
||||
example.xml \
|
||||
example-menu.xml \
|
||||
consulter.glade \
|
||||
shelfs.glade \
|
||||
consulter-menu.xml \
|
||||
customer.glade
|
||||
|
||||
EXTRA_DIST = $(example_DATA)
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/Makefile.decl $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu module/data/Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnu module/data/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
$(top_srcdir)/Makefile.decl:
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
install-exampleDATA: $(example_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(example_DATA)'; test -n "$(exampledir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(exampledir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(exampledir)" || exit 1; \
|
||||
fi; \
|
||||
for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
echo "$$d$$p"; \
|
||||
done | $(am__base_list) | \
|
||||
while read files; do \
|
||||
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(exampledir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(exampledir)" || exit $$?; \
|
||||
done
|
||||
|
||||
uninstall-exampleDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(example_DATA)'; test -n "$(exampledir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
dir='$(DESTDIR)$(exampledir)'; $(am__uninstall_files_from_dir)
|
||||
tags TAGS:
|
||||
|
||||
ctags CTAGS:
|
||||
|
||||
cscope cscopelist:
|
||||
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||
else \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(DATA)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(exampledir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-exampleDATA
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-exampleDATA
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
|
||||
cscopelist-am ctags-am distclean distclean-generic \
|
||||
distclean-libtool distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exampleDATA install-exec \
|
||||
install-exec-am install-html install-html-am install-info \
|
||||
install-info-am install-man install-pdf install-pdf-am \
|
||||
install-ps install-ps-am install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-generic \
|
||||
mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
|
||||
uninstall-am uninstall-exampleDATA
|
||||
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
|
@ -1,814 +0,0 @@
|
|||
# Makefile.in generated by automake 1.14.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
# Definition of the install directories
|
||||
|
||||
# Libraries
|
||||
|
||||
|
||||
VPATH = @srcdir@
|
||||
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
DIST_COMMON = $(top_srcdir)/Makefile.decl $(srcdir)/Makefile.in \
|
||||
$(srcdir)/Makefile.am $(top_srcdir)/build/depcomp
|
||||
subdir = module/src
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/build/m4/dev-tools.m4 \
|
||||
$(top_srcdir)/build/m4/gtk-doc.m4 \
|
||||
$(top_srcdir)/build/m4/intltool.m4 \
|
||||
$(top_srcdir)/build/m4/libtool.m4 \
|
||||
$(top_srcdir)/build/m4/ltoptions.m4 \
|
||||
$(top_srcdir)/build/m4/ltsugar.m4 \
|
||||
$(top_srcdir)/build/m4/ltversion.m4 \
|
||||
$(top_srcdir)/build/m4/lt~obsolete.m4 \
|
||||
$(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/build/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
|
||||
am__install_max = 40
|
||||
am__nobase_strip_setup = \
|
||||
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
|
||||
am__nobase_strip = \
|
||||
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
|
||||
am__nobase_list = $(am__nobase_strip_setup); \
|
||||
for p in $$list; do echo "$$p $$p"; done | \
|
||||
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
|
||||
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
|
||||
if (++n[$$2] == $(am__install_max)) \
|
||||
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
|
||||
END { for (dir in files) print dir, files[dir] }'
|
||||
am__base_list = \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||
am__uninstall_files_from_dir = { \
|
||||
test -z "$$files" \
|
||||
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||
}
|
||||
am__installdirs = "$(DESTDIR)$(example_libdir)" \
|
||||
"$(DESTDIR)$(example_querydir)"
|
||||
LTLIBRARIES = $(example_lib_LTLIBRARIES)
|
||||
libexample_la_DEPENDENCIES = $(top_builddir)/vn/libvn.la
|
||||
am_libexample_la_OBJECTS = vn-consulter.lo vn-shelves.lo \
|
||||
vn-customer.lo
|
||||
libexample_la_OBJECTS = $(am_libexample_la_OBJECTS)
|
||||
AM_V_lt = $(am__v_lt_@AM_V@)
|
||||
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
||||
am__v_lt_0 = --silent
|
||||
am__v_lt_1 =
|
||||
libexample_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(libexample_la_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_P = $(am__v_P_@AM_V@)
|
||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_@AM_V@)
|
||||
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/build
|
||||
depcomp = $(SHELL) $(top_srcdir)/build/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
am__mv = mv -f
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
|
||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||
$(AM_CFLAGS) $(CFLAGS)
|
||||
AM_V_CC = $(am__v_CC_@AM_V@)
|
||||
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
|
||||
am__v_CC_0 = @echo " CC " $@;
|
||||
am__v_CC_1 =
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_CCLD = $(am__v_CCLD_@AM_V@)
|
||||
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
|
||||
am__v_CCLD_0 = @echo " CCLD " $@;
|
||||
am__v_CCLD_1 =
|
||||
SOURCES = $(libexample_la_SOURCES)
|
||||
DIST_SOURCES = $(libexample_la_SOURCES)
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
DATA = $(example_query_DATA)
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
# Read a list of newline-separated strings from the standard input,
|
||||
# and print each of them once, without duplicates. Input order is
|
||||
# *not* preserved.
|
||||
am__uniquify_input = $(AWK) '\
|
||||
BEGIN { nonempty = 0; } \
|
||||
{ items[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in items) print i; }; } \
|
||||
'
|
||||
# Make sure the list of sources is unique. This is necessary because,
|
||||
# e.g., the same source file might be shared among _SOURCES variables
|
||||
# for different programs/libraries.
|
||||
am__define_uniq_tagged_files = \
|
||||
list='$(am__tagged_files)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | $(am__uniquify_input)`
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
ALL_LINGUAS = @ALL_LINGUAS@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
AR = @AR@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CATALOGS = @CATALOGS@
|
||||
CATOBJEXT = @CATOBJEXT@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DATADIRNAME = @DATADIRNAME@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
ENABLE_DEBUG = @ENABLE_DEBUG@
|
||||
ENABLE_INSTALL = @ENABLE_INSTALL@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
|
||||
GIR_SCANNER_ARGS = @GIR_SCANNER_ARGS@
|
||||
GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@
|
||||
GMOFILES = @GMOFILES@
|
||||
GMSGFMT = @GMSGFMT@
|
||||
GREP = @GREP@
|
||||
GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@
|
||||
GTKDOC_CHECK = @GTKDOC_CHECK@
|
||||
GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@
|
||||
GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
|
||||
GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
|
||||
GTKDOC_MKPDF = @GTKDOC_MKPDF@
|
||||
GTKDOC_REBASE = @GTKDOC_REBASE@
|
||||
HTML_DIR = @HTML_DIR@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
INSTOBJEXT = @INSTOBJEXT@
|
||||
INTLLIBS = @INTLLIBS@
|
||||
INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
|
||||
INTLTOOL_MERGE = @INTLTOOL_MERGE@
|
||||
INTLTOOL_PERL = @INTLTOOL_PERL@
|
||||
INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
|
||||
INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@
|
||||
INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@
|
||||
INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@
|
||||
INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@
|
||||
INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
|
||||
INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
|
||||
INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
|
||||
INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
|
||||
INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
|
||||
INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
|
||||
INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
|
||||
INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
MKINSTALLDIRS = @MKINSTALLDIRS@
|
||||
MSGFMT = @MSGFMT@
|
||||
MSGFMT_OPTS = @MSGFMT_OPTS@
|
||||
MSGMERGE = @MSGMERGE@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_URL = @PACKAGE_URL@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
|
||||
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
|
||||
POFILES = @POFILES@
|
||||
POSUB = @POSUB@
|
||||
PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
|
||||
PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
|
||||
RAGEL = @RAGEL@
|
||||
RANLIB = @RANLIB@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
USE_NLS = @USE_NLS@
|
||||
VALAC = @VALAC@
|
||||
VALA_VERSION = @VALA_VERSION@
|
||||
VAPIGEN = @VAPIGEN@
|
||||
VERSION = @VERSION@
|
||||
VERSION_INFO = @VERSION_INFO@
|
||||
XGETTEXT = @XGETTEXT@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
gdome_CFLAGS = @gdome_CFLAGS@
|
||||
gdome_LIBS = @gdome_LIBS@
|
||||
gladeui_CFLAGS = @gladeui_CFLAGS@
|
||||
gladeui_LIBS = @gladeui_LIBS@
|
||||
glib_CFLAGS = @glib_CFLAGS@
|
||||
glib_LIBS = @glib_LIBS@
|
||||
gsettingsschemadir = @gsettingsschemadir@
|
||||
gtk_CFLAGS = @gtk_CFLAGS@
|
||||
gtk_LIBS = @gtk_LIBS@
|
||||
gtksourceview_CFLAGS = @gtksourceview_CFLAGS@
|
||||
gtksourceview_LIBS = @gtksourceview_LIBS@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
intltool__v_merge_options_ = @intltool__v_merge_options_@
|
||||
intltool__v_merge_options_0 = @intltool__v_merge_options_0@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
sqlite_CFLAGS = @sqlite_CFLAGS@
|
||||
sqlite_LIBS = @sqlite_LIBS@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
uVERSION = @uVERSION@
|
||||
@ENABLE_INSTALL_FALSE@hedera_libdir = $(abs_top_builddir)
|
||||
@ENABLE_INSTALL_TRUE@hedera_libdir = $(pkglibdir)
|
||||
@ENABLE_INSTALL_FALSE@hedera_datadir = $(abs_top_srcdir)
|
||||
@ENABLE_INSTALL_TRUE@hedera_datadir = $(pkgdatadir)
|
||||
gvn_libdir = $(hedera_libdir)
|
||||
sql_libdir = $(hedera_libdir)
|
||||
vn_libdir = $(hedera_libdir)
|
||||
field_libdir = $(vn_libdir)
|
||||
column_libdir = $(vn_libdir)
|
||||
plugin_libdir = $(hedera_libdir)/plugin
|
||||
@ENABLE_INSTALL_FALSE@db_libdir = $(hedera_libdir)/db
|
||||
@ENABLE_INSTALL_TRUE@db_libdir = $(hedera_libdir)
|
||||
@ENABLE_INSTALL_FALSE@module_libdir = $(hedera_libdir)/module/src/.libs
|
||||
@ENABLE_INSTALL_TRUE@module_libdir = $(hedera_libdir)/module
|
||||
|
||||
# Binaries (programs)
|
||||
hedera_bindir = $(bindir)
|
||||
|
||||
# Headers and development files
|
||||
hedera_includedir = $(pkgincludedir)
|
||||
gvn_includedir = $(hedera_includedir)/gvn
|
||||
sql_includedir = $(hedera_includedir)/sql
|
||||
db_includedir = $(hedera_includedir)/db
|
||||
vn_includedir = $(hedera_includedir)/vn
|
||||
field_includedir = $(vn_includedir)/field
|
||||
column_includedir = $(vn_includedir)/column
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
@ENABLE_VALA_TRUE@girdir = $(datadir)/gir-1.0
|
||||
@ENABLE_VALA_TRUE@typelibdir = $(prefix)/lib/girepository-1.0
|
||||
@ENABLE_VALA_TRUE@vapidata = $(top_srcdir)/vapi
|
||||
@ENABLE_VALA_TRUE@vapis = $(top_builddir)/vapi
|
||||
@ENABLE_VALA_TRUE@vapidir = $(datadir)/vala-$(VALA_VERSION)/vapi
|
||||
gladevn_libdir = $(prefix)/lib/glade/modules
|
||||
gladevn_datadir = $(datadir)/glade/catalogs
|
||||
|
||||
# Data
|
||||
vn_datadir = $(hedera_datadir)/vn
|
||||
vn_imagedir = $(vn_datadir)/image
|
||||
vn_guidir = $(vn_datadir)/gui
|
||||
module_querydir = $(hedera_datadir)/module/sql
|
||||
@ENABLE_INSTALL_FALSE@vn_configdir = $(vn_datadir)/schema
|
||||
@ENABLE_INSTALL_TRUE@vn_configdir = $(vn_datadir)
|
||||
@ENABLE_INSTALL_FALSE@vn_xmldir = $(vn_datadir)/schema
|
||||
@ENABLE_INSTALL_TRUE@vn_xmldir = $(datadir)/xml/$(PACKAGE)
|
||||
@ENABLE_INSTALL_FALSE@module_datadir = $(hedera_datadir)/module/data
|
||||
@ENABLE_INSTALL_TRUE@module_datadir = $(hedera_datadir)/module
|
||||
desktopdir = $(datadir)/applications
|
||||
vapigen_v = $(vapigen_v_@AM_V@)
|
||||
vapigen_v_ = $(vapigen_v_@AM_DEFAULT_V@)
|
||||
vapigen_v_0 = @echo " VAPIGEN $(subst $(vapis)/,,$@)";
|
||||
example_libdir = $(module_libdir)
|
||||
example_lib_LTLIBRARIES = libexample.la
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir) \
|
||||
$(gtk_CFLAGS) \
|
||||
$(DEFINES)
|
||||
|
||||
libexample_la_LDFLAGS = -avoid-version
|
||||
libexample_la_LIBADD = $(top_builddir)/vn/libvn.la
|
||||
libexample_la_SOURCES = \
|
||||
vn-consulter.h \
|
||||
vn-consulter.c \
|
||||
vn-shelves.h \
|
||||
vn-shelves.c \
|
||||
vn-customer.h \
|
||||
vn-customer.c
|
||||
|
||||
example_querydir = $(module_querydir)/example
|
||||
example_query_DATA = ../sql/example/consulter.sql
|
||||
DEFINES = -D_QUERY_PATH=\"$(module_querydir)\"
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c .lo .o .obj
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/Makefile.decl $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu module/src/Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnu module/src/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
$(top_srcdir)/Makefile.decl:
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
install-example_libLTLIBRARIES: $(example_lib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(example_lib_LTLIBRARIES)'; test -n "$(example_libdir)" || list=; \
|
||||
list2=; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
list2="$$list2 $$p"; \
|
||||
else :; fi; \
|
||||
done; \
|
||||
test -z "$$list2" || { \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(example_libdir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(example_libdir)" || exit 1; \
|
||||
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(example_libdir)'"; \
|
||||
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(example_libdir)"; \
|
||||
}
|
||||
|
||||
uninstall-example_libLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(example_lib_LTLIBRARIES)'; test -n "$(example_libdir)" || list=; \
|
||||
for p in $$list; do \
|
||||
$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(example_libdir)/$$f'"; \
|
||||
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(example_libdir)/$$f"; \
|
||||
done
|
||||
|
||||
clean-example_libLTLIBRARIES:
|
||||
-test -z "$(example_lib_LTLIBRARIES)" || rm -f $(example_lib_LTLIBRARIES)
|
||||
@list='$(example_lib_LTLIBRARIES)'; \
|
||||
locs=`for p in $$list; do echo $$p; done | \
|
||||
sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
|
||||
sort -u`; \
|
||||
test -z "$$locs" || { \
|
||||
echo rm -f $${locs}; \
|
||||
rm -f $${locs}; \
|
||||
}
|
||||
|
||||
libexample.la: $(libexample_la_OBJECTS) $(libexample_la_DEPENDENCIES) $(EXTRA_libexample_la_DEPENDENCIES)
|
||||
$(AM_V_CCLD)$(libexample_la_LINK) -rpath $(example_libdir) $(libexample_la_OBJECTS) $(libexample_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vn-consulter.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vn-customer.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vn-shelves.Plo@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
|
||||
|
||||
.c.obj:
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
install-example_queryDATA: $(example_query_DATA)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(example_query_DATA)'; test -n "$(example_querydir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(example_querydir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(example_querydir)" || exit 1; \
|
||||
fi; \
|
||||
for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
echo "$$d$$p"; \
|
||||
done | $(am__base_list) | \
|
||||
while read files; do \
|
||||
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(example_querydir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(example_querydir)" || exit $$?; \
|
||||
done
|
||||
|
||||
uninstall-example_queryDATA:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(example_query_DATA)'; test -n "$(example_querydir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
dir='$(DESTDIR)$(example_querydir)'; $(am__uninstall_files_from_dir)
|
||||
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-am
|
||||
TAGS: tags
|
||||
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
if test $$# -gt 0; then \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
"$$@" $$unique; \
|
||||
else \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: ctags-am
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||
cscopelist: cscopelist-am
|
||||
|
||||
cscopelist-am: $(am__tagged_files)
|
||||
list='$(am__tagged_files)'; \
|
||||
case "$(srcdir)" in \
|
||||
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||
esac; \
|
||||
for i in $$list; do \
|
||||
if test -f "$$i"; then \
|
||||
echo "$(subdir)/$$i"; \
|
||||
else \
|
||||
echo "$$sdir/$$i"; \
|
||||
fi; \
|
||||
done >> $(top_builddir)/cscope.files
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||
else \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(LTLIBRARIES) $(DATA)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(example_libdir)" "$(DESTDIR)$(example_querydir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-example_libLTLIBRARIES clean-generic clean-libtool \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-example_libLTLIBRARIES \
|
||||
install-example_queryDATA
|
||||
@$(NORMAL_INSTALL)
|
||||
$(MAKE) $(AM_MAKEFLAGS) install-data-hook
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-example_libLTLIBRARIES \
|
||||
uninstall-example_queryDATA
|
||||
|
||||
.MAKE: install-am install-data-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
|
||||
clean-example_libLTLIBRARIES clean-generic clean-libtool \
|
||||
cscopelist-am ctags ctags-am distclean distclean-compile \
|
||||
distclean-generic distclean-libtool distclean-tags distdir dvi \
|
||||
dvi-am html html-am info info-am install install-am \
|
||||
install-data install-data-am install-data-hook install-dvi \
|
||||
install-dvi-am install-example_libLTLIBRARIES \
|
||||
install-example_queryDATA install-exec install-exec-am \
|
||||
install-html install-html-am install-info install-info-am \
|
||||
install-man install-pdf install-pdf-am install-ps \
|
||||
install-ps-am install-strip installcheck installcheck-am \
|
||||
installdirs maintainer-clean maintainer-clean-generic \
|
||||
mostlyclean mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
|
||||
uninstall-am uninstall-example_libLTLIBRARIES \
|
||||
uninstall-example_queryDATA
|
||||
|
||||
|
||||
install-data-hook:
|
||||
rm -f $(DESTDIR)$(module_libdir)/libexample.la
|
||||
rm -f $(DESTDIR)$(module_libdir)/libexample.a
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
|
@ -52,7 +52,7 @@ static gboolean db_sqlite_open (DbSqlite * self, const gchar * host,
|
|||
g_set_error (err
|
||||
,DB_CONN_LOG_DOMAIN
|
||||
,DB_CONN_ERROR_OPENING
|
||||
,sqlite3_errmsg (self->sqlite)
|
||||
,"%s", sqlite3_errmsg (self->sqlite)
|
||||
);
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -209,7 +209,7 @@ static DbResultSet * db_sqlite_query (DbSqlite * self, const gchar * sql, GError
|
|||
g_set_error (err
|
||||
,DB_CONN_LOG_DOMAIN
|
||||
,DB_CONN_ERROR_UNKNOW
|
||||
,sqlite3_errmsg (self->sqlite)
|
||||
,"%s", sqlite3_errmsg (self->sqlite)
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@ db/db-request.c
|
|||
db/db-file-loader.c
|
||||
|
||||
vn/vn-gui.c
|
||||
vn/vn-grid-model.c
|
||||
vn/vn-list-model.c
|
||||
vn/vn-grid.c
|
||||
vn/vn-handler.c
|
||||
vn/vn-form.c
|
||||
|
@ -66,3 +66,5 @@ glade/glade-sql-batch.c
|
|||
module/data/consulter.glade
|
||||
[type: gettext/glade]module/data/consulter-menu.xml
|
||||
module/src/vn-consulter.c
|
||||
module/data/shelves.glade
|
||||
module/src/vn-shelves.c
|
||||
|
|
100
po/ca.po
100
po/ca.po
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: hedera 1.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2014-09-22 15:30+0200\n"
|
||||
"POT-Creation-Date: 2014-10-09 10:39+0200\n"
|
||||
"PO-Revision-Date: 2013-06-04 13:38+0200\n"
|
||||
"Last-Translator: Alejandro T. Colombini Gómez <atcolombini@verdnatura.es>\n"
|
||||
"Language-Team: Catalan\n"
|
||||
|
@ -31,19 +31,19 @@ msgstr "El parametre no pot ser nul"
|
|||
msgid "Incompatible type for this param"
|
||||
msgstr "Tipus incompatible per a aquest parametre"
|
||||
|
||||
#: ../gvn/gvn-param.c:285
|
||||
#: ../gvn/gvn-param.c:289
|
||||
msgid "Value"
|
||||
msgstr ""
|
||||
|
||||
#: ../gvn/gvn-param.c:286
|
||||
#: ../gvn/gvn-param.c:290
|
||||
msgid "The value of the param"
|
||||
msgstr ""
|
||||
|
||||
#: ../gvn/gvn-param.c:292
|
||||
#: ../gvn/gvn-param.c:296
|
||||
msgid "Master"
|
||||
msgstr ""
|
||||
|
||||
#: ../gvn/gvn-param.c:293
|
||||
#: ../gvn/gvn-param.c:297
|
||||
#, fuzzy
|
||||
msgid "The master parameter"
|
||||
msgstr "Nom d'usuari"
|
||||
|
@ -69,7 +69,7 @@ msgstr ""
|
|||
msgid "The character used for delimite the name of fields, tables..."
|
||||
msgstr ""
|
||||
|
||||
#: ../sql/sql-string.c:188 ../db/db-model.c:3337 ../db/db-request.c:449
|
||||
#: ../sql/sql-string.c:188 ../db/db-model.c:3249 ../db/db-request.c:449
|
||||
msgid "SQL"
|
||||
msgstr ""
|
||||
|
||||
|
@ -262,80 +262,80 @@ msgstr ""
|
|||
msgid "Can't allocate the needed memory"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3311 ../db/db-request.c:442 ../vn/vn-gui.c:1408
|
||||
#: ../db/db-model.c:3223 ../db/db-request.c:442 ../vn/vn-gui.c:1408
|
||||
#: ../vn/vn-form.c:245
|
||||
msgid "Connection"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3312
|
||||
#: ../db/db-model.c:3224
|
||||
msgid "The DbConn that manages the connection to the database"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3319
|
||||
#: ../db/db-model.c:3231
|
||||
msgid "Statement"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3320
|
||||
#: ../db/db-model.c:3232
|
||||
msgid "The statement which retrieves the data"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3327
|
||||
#: ../db/db-model.c:3239
|
||||
msgid "Use file"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3328
|
||||
#: ../db/db-model.c:3240
|
||||
msgid ""
|
||||
"If this is set to TRUE, the \"sql\" property will hold the name of a file "
|
||||
"containing a query, if set to FALSE, \"sql\" is used as an SQL string"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3338
|
||||
#: ../db/db-model.c:3250
|
||||
msgid ""
|
||||
"Depending on the \"use-file\" property this will be the path to a file with "
|
||||
"queries for the model or a SQL string"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3347
|
||||
#: ../db/db-model.c:3259
|
||||
msgid "Main Table"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3348
|
||||
#: ../db/db-model.c:3260
|
||||
msgid "The main table of the model"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3355
|
||||
#: ../db/db-model.c:3267
|
||||
msgid "Update flags"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3356
|
||||
#: ../db/db-model.c:3268
|
||||
msgid "The flags that indicate how a model can be modified"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3364
|
||||
#: ../db/db-model.c:3276
|
||||
msgid "Result position"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3365
|
||||
#: ../db/db-model.c:3277
|
||||
msgid ""
|
||||
"The position where the query that will fill the model will be placed in a "
|
||||
"multi-query"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3375
|
||||
#: ../db/db-model.c:3287
|
||||
msgid "Partial delete"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3376
|
||||
#: ../db/db-model.c:3288
|
||||
msgid ""
|
||||
"When a row is deleted set all the fields from the table to null rather than "
|
||||
"delete it."
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3384
|
||||
#: ../db/db-model.c:3296
|
||||
msgid "Batch"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3385
|
||||
#: ../db/db-model.c:3297
|
||||
msgid "The batch assigned to the model"
|
||||
msgstr ""
|
||||
|
||||
|
@ -578,7 +578,7 @@ msgstr ""
|
|||
msgid "Connection closed"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-gui.c:919 ../vn/field/vn-http-image.c:119
|
||||
#: ../vn/vn-gui.c:919 ../vn/field/vn-http-image.c:127
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
|
@ -590,7 +590,7 @@ msgstr ""
|
|||
msgid "The connection used by Gui"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-gui.c:1415 ../vn/vn-login.c:611
|
||||
#: ../vn/vn-gui.c:1415 ../vn/vn-login.c:613
|
||||
msgid "Application"
|
||||
msgstr ""
|
||||
|
||||
|
@ -598,6 +598,14 @@ msgstr ""
|
|||
msgid "The application handler for the entire program"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-list-model.c:573
|
||||
msgid "Null row"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-list-model.c:574
|
||||
msgid "Whether the list model will add a null row or not"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-handler.c:74
|
||||
msgid "Are you sure you want to delete the current selection?"
|
||||
msgstr ""
|
||||
|
@ -682,20 +690,20 @@ msgstr ""
|
|||
msgid "The module"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-login.c:396 ../vn/vn-login.c:398 ../vn/vn-login.c:490
|
||||
#: ../vn/vn-login.c:398 ../vn/vn-login.c:400 ../vn/vn-login.c:492
|
||||
msgid "Login error"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-login.c:456
|
||||
#: ../vn/vn-login.c:458
|
||||
#, c-format
|
||||
msgid "Bad connection settings, please check it."
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-login.c:488
|
||||
#: ../vn/vn-login.c:490
|
||||
msgid "Please select a connection"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-login.c:612
|
||||
#: ../vn/vn-login.c:614
|
||||
msgid "The application"
|
||||
msgstr ""
|
||||
|
||||
|
@ -766,19 +774,19 @@ msgstr ""
|
|||
msgid "The number of decimal places to display."
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-combo.c:298 ../vn/column/vn-column-combo.c:340
|
||||
#: ../vn/field/vn-combo.c:297 ../vn/column/vn-column-combo.c:338
|
||||
msgid "Index column"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-combo.c:299 ../vn/column/vn-column-combo.c:341
|
||||
#: ../vn/field/vn-combo.c:298 ../vn/column/vn-column-combo.c:339
|
||||
msgid "The column index of the model"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-combo.c:305 ../vn/column/vn-column-combo.c:347
|
||||
#: ../vn/field/vn-combo.c:304 ../vn/column/vn-column-combo.c:345
|
||||
msgid "Show column"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-combo.c:306 ../vn/column/vn-column-combo.c:348
|
||||
#: ../vn/field/vn-combo.c:305 ../vn/column/vn-column-combo.c:346
|
||||
msgid "The column of the model shown by combo"
|
||||
msgstr ""
|
||||
|
||||
|
@ -829,37 +837,37 @@ msgstr ""
|
|||
msgid "Undefined error"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:145
|
||||
msgid "File loader already set"
|
||||
msgstr ""
|
||||
|
||||
#. Se usará para subir imagenes y cambiar nombres, o abrir un menu contextual
|
||||
#. g_signal_connect (self, "event", G_CALLBACK (vn_http_image_on_event), self);
|
||||
#: ../vn/field/vn-http-image.c:184
|
||||
#: ../vn/field/vn-http-image.c:120 ../vn/field/vn-http-image.c:192
|
||||
msgid "No image set"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:212 ../vn/column/vn-column-image.c:536
|
||||
#: ../vn/field/vn-http-image.c:153
|
||||
msgid "File loader already set"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:220 ../vn/column/vn-column-image.c:536
|
||||
msgid "File loader"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:213
|
||||
#: ../vn/field/vn-http-image.c:221
|
||||
msgid "A DbFileLoader, used to download the files"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:220
|
||||
#: ../vn/field/vn-http-image.c:228
|
||||
msgid "File path"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:221
|
||||
#: ../vn/field/vn-http-image.c:229
|
||||
msgid "The relative path to the image from file loader path"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:228
|
||||
#: ../vn/field/vn-http-image.c:236
|
||||
msgid "Image bytes"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:229
|
||||
#: ../vn/field/vn-http-image.c:237
|
||||
msgid "A GBytes structure with the image data"
|
||||
msgstr ""
|
||||
|
||||
|
@ -884,11 +892,11 @@ msgid ""
|
|||
"A VnColumnStyleFunc to set the properties of each cell depending on its value"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/column/vn-column-combo.c:354
|
||||
#: ../vn/column/vn-column-combo.c:352
|
||||
msgid "Sort column"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/column/vn-column-combo.c:355
|
||||
#: ../vn/column/vn-column-combo.c:353
|
||||
msgid "The field number of the Grid model used to sort the column"
|
||||
msgstr ""
|
||||
|
||||
|
|
100
po/es.po
100
po/es.po
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: hedera 1.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2014-09-22 15:30+0200\n"
|
||||
"POT-Creation-Date: 2014-10-09 10:39+0200\n"
|
||||
"PO-Revision-Date: 2013-06-04 13:36+0200\n"
|
||||
"Last-Translator: Alejandro T. Colombini Gómez <atcolombini@verdnatura.es>\n"
|
||||
"Language-Team: Spanish\n"
|
||||
|
@ -33,19 +33,19 @@ msgstr "El parámetro no puede ser nulo"
|
|||
msgid "Incompatible type for this param"
|
||||
msgstr "Tipo incompatible para este parámetro"
|
||||
|
||||
#: ../gvn/gvn-param.c:285
|
||||
#: ../gvn/gvn-param.c:289
|
||||
msgid "Value"
|
||||
msgstr "Valor"
|
||||
|
||||
#: ../gvn/gvn-param.c:286
|
||||
#: ../gvn/gvn-param.c:290
|
||||
msgid "The value of the param"
|
||||
msgstr "El valor del parámetro"
|
||||
|
||||
#: ../gvn/gvn-param.c:292
|
||||
#: ../gvn/gvn-param.c:296
|
||||
msgid "Master"
|
||||
msgstr "Maestro"
|
||||
|
||||
#: ../gvn/gvn-param.c:293
|
||||
#: ../gvn/gvn-param.c:297
|
||||
msgid "The master parameter"
|
||||
msgstr "El parámetro maestro"
|
||||
|
||||
|
@ -70,7 +70,7 @@ msgstr "Delimitador"
|
|||
msgid "The character used for delimite the name of fields, tables..."
|
||||
msgstr "El carácter usado para delimitar los nombres de campos, tablas..."
|
||||
|
||||
#: ../sql/sql-string.c:188 ../db/db-model.c:3337 ../db/db-request.c:449
|
||||
#: ../sql/sql-string.c:188 ../db/db-model.c:3249 ../db/db-request.c:449
|
||||
msgid "SQL"
|
||||
msgstr "SQL"
|
||||
|
||||
|
@ -259,28 +259,28 @@ msgstr "Una de las posibles opciones de #SqlSelectType"
|
|||
msgid "Can't allocate the needed memory"
|
||||
msgstr "No es posible asignar la memoria necesaria"
|
||||
|
||||
#: ../db/db-model.c:3311 ../db/db-request.c:442 ../vn/vn-gui.c:1408
|
||||
#: ../db/db-model.c:3223 ../db/db-request.c:442 ../vn/vn-gui.c:1408
|
||||
#: ../vn/vn-form.c:245
|
||||
msgid "Connection"
|
||||
msgstr "Conexión"
|
||||
|
||||
#: ../db/db-model.c:3312
|
||||
#: ../db/db-model.c:3224
|
||||
msgid "The DbConn that manages the connection to the database"
|
||||
msgstr "La DbConn que controla la conexión a la base de datos"
|
||||
|
||||
#: ../db/db-model.c:3319
|
||||
#: ../db/db-model.c:3231
|
||||
msgid "Statement"
|
||||
msgstr "Consulta"
|
||||
|
||||
#: ../db/db-model.c:3320
|
||||
#: ../db/db-model.c:3232
|
||||
msgid "The statement which retrieves the data"
|
||||
msgstr "La consulta que recupera los datos"
|
||||
|
||||
#: ../db/db-model.c:3327
|
||||
#: ../db/db-model.c:3239
|
||||
msgid "Use file"
|
||||
msgstr "Usa fichero"
|
||||
|
||||
#: ../db/db-model.c:3328
|
||||
#: ../db/db-model.c:3240
|
||||
msgid ""
|
||||
"If this is set to TRUE, the \"sql\" property will hold the name of a file "
|
||||
"containing a query, if set to FALSE, \"sql\" is used as an SQL string"
|
||||
|
@ -288,7 +288,7 @@ msgstr ""
|
|||
"Si es TRUE, la propiedad \"sql\" contiene el nombre de un archivo, si es "
|
||||
"falso, \"sql\" se usa como una cadena SQL"
|
||||
|
||||
#: ../db/db-model.c:3338
|
||||
#: ../db/db-model.c:3250
|
||||
msgid ""
|
||||
"Depending on the \"use-file\" property this will be the path to a file with "
|
||||
"queries for the model or a SQL string"
|
||||
|
@ -296,27 +296,27 @@ msgstr ""
|
|||
"Dependiendo de la propiedad \"use-file\", esta propiedad será la ruta a un "
|
||||
"fichero con consultas para el modelo o una cadena SQL"
|
||||
|
||||
#: ../db/db-model.c:3347
|
||||
#: ../db/db-model.c:3259
|
||||
msgid "Main Table"
|
||||
msgstr "Tabla principal"
|
||||
|
||||
#: ../db/db-model.c:3348
|
||||
#: ../db/db-model.c:3260
|
||||
msgid "The main table of the model"
|
||||
msgstr "La tabla principal del modelo"
|
||||
|
||||
#: ../db/db-model.c:3355
|
||||
#: ../db/db-model.c:3267
|
||||
msgid "Update flags"
|
||||
msgstr "Flags de actualización"
|
||||
|
||||
#: ../db/db-model.c:3356
|
||||
#: ../db/db-model.c:3268
|
||||
msgid "The flags that indicate how a model can be modified"
|
||||
msgstr "Indican como se puede modificar el modelo"
|
||||
|
||||
#: ../db/db-model.c:3364
|
||||
#: ../db/db-model.c:3276
|
||||
msgid "Result position"
|
||||
msgstr "Posición del resultado"
|
||||
|
||||
#: ../db/db-model.c:3365
|
||||
#: ../db/db-model.c:3277
|
||||
msgid ""
|
||||
"The position where the query that will fill the model will be placed in a "
|
||||
"multi-query"
|
||||
|
@ -324,11 +324,11 @@ msgstr ""
|
|||
"La posición en la que se situa la consulta que pone datos en el modelo en "
|
||||
"una consulta múltiple"
|
||||
|
||||
#: ../db/db-model.c:3375
|
||||
#: ../db/db-model.c:3287
|
||||
msgid "Partial delete"
|
||||
msgstr "Delete parcial"
|
||||
|
||||
#: ../db/db-model.c:3376
|
||||
#: ../db/db-model.c:3288
|
||||
msgid ""
|
||||
"When a row is deleted set all the fields from the table to null rather than "
|
||||
"delete it."
|
||||
|
@ -336,11 +336,11 @@ msgstr ""
|
|||
"Cuando una fila es eliminada, poner todos los campos de la tabla a nulo en "
|
||||
"lugar de borrarla."
|
||||
|
||||
#: ../db/db-model.c:3384
|
||||
#: ../db/db-model.c:3296
|
||||
msgid "Batch"
|
||||
msgstr "Batch"
|
||||
|
||||
#: ../db/db-model.c:3385
|
||||
#: ../db/db-model.c:3297
|
||||
msgid "The batch assigned to the model"
|
||||
msgstr "El batch asignado al modelo"
|
||||
|
||||
|
@ -587,7 +587,7 @@ msgstr "Conexión perdida"
|
|||
msgid "Connection closed"
|
||||
msgstr "Conexión cerrada"
|
||||
|
||||
#: ../vn/vn-gui.c:919 ../vn/field/vn-http-image.c:119
|
||||
#: ../vn/vn-gui.c:919 ../vn/field/vn-http-image.c:127
|
||||
msgid "Loading"
|
||||
msgstr "Cargando"
|
||||
|
||||
|
@ -599,7 +599,7 @@ msgstr "Preparado"
|
|||
msgid "The connection used by Gui"
|
||||
msgstr "La conexión empleada por Gui"
|
||||
|
||||
#: ../vn/vn-gui.c:1415 ../vn/vn-login.c:611
|
||||
#: ../vn/vn-gui.c:1415 ../vn/vn-login.c:613
|
||||
msgid "Application"
|
||||
msgstr "Aplicación"
|
||||
|
||||
|
@ -607,6 +607,14 @@ msgstr "Aplicación"
|
|||
msgid "The application handler for the entire program"
|
||||
msgstr "El manejador de la aplicación para todo el programa"
|
||||
|
||||
#: ../vn/vn-list-model.c:573
|
||||
msgid "Null row"
|
||||
msgstr "Fila nula"
|
||||
|
||||
#: ../vn/vn-list-model.c:574
|
||||
msgid "Whether the list model will add a null row or not"
|
||||
msgstr "Indica si el modelo añadirá una fila nula o no"
|
||||
|
||||
#: ../vn/vn-handler.c:74
|
||||
msgid "Are you sure you want to delete the current selection?"
|
||||
msgstr "¿Estás seguro de que quieres eliminar los registros seleccionados?"
|
||||
|
@ -691,20 +699,20 @@ msgstr "Módulo"
|
|||
msgid "The module"
|
||||
msgstr "El módulo"
|
||||
|
||||
#: ../vn/vn-login.c:396 ../vn/vn-login.c:398 ../vn/vn-login.c:490
|
||||
#: ../vn/vn-login.c:398 ../vn/vn-login.c:400 ../vn/vn-login.c:492
|
||||
msgid "Login error"
|
||||
msgstr "Error de acceso"
|
||||
|
||||
#: ../vn/vn-login.c:456
|
||||
#: ../vn/vn-login.c:458
|
||||
#, c-format
|
||||
msgid "Bad connection settings, please check it."
|
||||
msgstr "Los parámetros de la conexión son incorrectos, compruébalos por favor."
|
||||
|
||||
#: ../vn/vn-login.c:488
|
||||
#: ../vn/vn-login.c:490
|
||||
msgid "Please select a connection"
|
||||
msgstr "Por favor, selecciona una conexión"
|
||||
|
||||
#: ../vn/vn-login.c:612
|
||||
#: ../vn/vn-login.c:614
|
||||
msgid "The application"
|
||||
msgstr "La aplicación"
|
||||
|
||||
|
@ -777,19 +785,19 @@ msgstr "Dígitos"
|
|||
msgid "The number of decimal places to display."
|
||||
msgstr "El número de posiciones decimales que se muestran"
|
||||
|
||||
#: ../vn/field/vn-combo.c:298 ../vn/column/vn-column-combo.c:340
|
||||
#: ../vn/field/vn-combo.c:297 ../vn/column/vn-column-combo.c:338
|
||||
msgid "Index column"
|
||||
msgstr "Columna índice"
|
||||
|
||||
#: ../vn/field/vn-combo.c:299 ../vn/column/vn-column-combo.c:341
|
||||
#: ../vn/field/vn-combo.c:298 ../vn/column/vn-column-combo.c:339
|
||||
msgid "The column index of the model"
|
||||
msgstr "La columna índice del modelo"
|
||||
|
||||
#: ../vn/field/vn-combo.c:305 ../vn/column/vn-column-combo.c:347
|
||||
#: ../vn/field/vn-combo.c:304 ../vn/column/vn-column-combo.c:345
|
||||
msgid "Show column"
|
||||
msgstr "Columna visible"
|
||||
|
||||
#: ../vn/field/vn-combo.c:306 ../vn/column/vn-column-combo.c:348
|
||||
#: ../vn/field/vn-combo.c:305 ../vn/column/vn-column-combo.c:346
|
||||
msgid "The column of the model shown by combo"
|
||||
msgstr "La columna del modelo que se mostrará en el combo"
|
||||
|
||||
|
@ -843,37 +851,37 @@ msgstr "Selecciona la imagen"
|
|||
msgid "Undefined error"
|
||||
msgstr "Error indefinido"
|
||||
|
||||
#: ../vn/field/vn-http-image.c:145
|
||||
msgid "File loader already set"
|
||||
msgstr "Ya se ha especificado un cargador de archivos"
|
||||
|
||||
#. Se usará para subir imagenes y cambiar nombres, o abrir un menu contextual
|
||||
#. g_signal_connect (self, "event", G_CALLBACK (vn_http_image_on_event), self);
|
||||
#: ../vn/field/vn-http-image.c:184
|
||||
#: ../vn/field/vn-http-image.c:120 ../vn/field/vn-http-image.c:192
|
||||
msgid "No image set"
|
||||
msgstr "Sin imagen"
|
||||
|
||||
#: ../vn/field/vn-http-image.c:212 ../vn/column/vn-column-image.c:536
|
||||
#: ../vn/field/vn-http-image.c:153
|
||||
msgid "File loader already set"
|
||||
msgstr "Ya se ha especificado un cargador de archivos"
|
||||
|
||||
#: ../vn/field/vn-http-image.c:220 ../vn/column/vn-column-image.c:536
|
||||
msgid "File loader"
|
||||
msgstr "Cargador de archivos"
|
||||
|
||||
#: ../vn/field/vn-http-image.c:213
|
||||
#: ../vn/field/vn-http-image.c:221
|
||||
msgid "A DbFileLoader, used to download the files"
|
||||
msgstr "Un DbFileLoader que se usará para descargar los archivos"
|
||||
|
||||
#: ../vn/field/vn-http-image.c:220
|
||||
#: ../vn/field/vn-http-image.c:228
|
||||
msgid "File path"
|
||||
msgstr "Ruta del archivo"
|
||||
|
||||
#: ../vn/field/vn-http-image.c:221
|
||||
#: ../vn/field/vn-http-image.c:229
|
||||
msgid "The relative path to the image from file loader path"
|
||||
msgstr "La ruta relativa a la imágen desde la del cargador de archivos"
|
||||
|
||||
#: ../vn/field/vn-http-image.c:228
|
||||
#: ../vn/field/vn-http-image.c:236
|
||||
msgid "Image bytes"
|
||||
msgstr "Bytes"
|
||||
|
||||
#: ../vn/field/vn-http-image.c:229
|
||||
#: ../vn/field/vn-http-image.c:237
|
||||
msgid "A GBytes structure with the image data"
|
||||
msgstr "Una estructura GBytes con los datos de la imágen"
|
||||
|
||||
|
@ -900,11 +908,11 @@ msgstr ""
|
|||
"Una VnColumnStyleFunc para configurar las propiedadesde cada celda "
|
||||
"dependiendo de su valor"
|
||||
|
||||
#: ../vn/column/vn-column-combo.c:354
|
||||
#: ../vn/column/vn-column-combo.c:352
|
||||
msgid "Sort column"
|
||||
msgstr "Columna de ordenación"
|
||||
|
||||
#: ../vn/column/vn-column-combo.c:355
|
||||
#: ../vn/column/vn-column-combo.c:353
|
||||
msgid "The field number of the Grid model used to sort the column"
|
||||
msgstr ""
|
||||
"El número de campo del modelo del Grid que se usa para ordenar la columna"
|
||||
|
|
100
po/nl.po
100
po/nl.po
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: hedera 1.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2014-09-22 15:30+0200\n"
|
||||
"POT-Creation-Date: 2014-10-09 10:39+0200\n"
|
||||
"PO-Revision-Date: 2012-10-09 11:38+0200\n"
|
||||
"Last-Translator: Alejandro T. Colombini Gómez <atcolombini@verdnatura.es>\n"
|
||||
"Language-Team: Dutch\n"
|
||||
|
@ -33,19 +33,19 @@ msgstr ""
|
|||
msgid "Incompatible type for this param"
|
||||
msgstr ""
|
||||
|
||||
#: ../gvn/gvn-param.c:285
|
||||
#: ../gvn/gvn-param.c:289
|
||||
msgid "Value"
|
||||
msgstr ""
|
||||
|
||||
#: ../gvn/gvn-param.c:286
|
||||
#: ../gvn/gvn-param.c:290
|
||||
msgid "The value of the param"
|
||||
msgstr ""
|
||||
|
||||
#: ../gvn/gvn-param.c:292
|
||||
#: ../gvn/gvn-param.c:296
|
||||
msgid "Master"
|
||||
msgstr ""
|
||||
|
||||
#: ../gvn/gvn-param.c:293
|
||||
#: ../gvn/gvn-param.c:297
|
||||
msgid "The master parameter"
|
||||
msgstr ""
|
||||
|
||||
|
@ -70,7 +70,7 @@ msgstr ""
|
|||
msgid "The character used for delimite the name of fields, tables..."
|
||||
msgstr ""
|
||||
|
||||
#: ../sql/sql-string.c:188 ../db/db-model.c:3337 ../db/db-request.c:449
|
||||
#: ../sql/sql-string.c:188 ../db/db-model.c:3249 ../db/db-request.c:449
|
||||
msgid "SQL"
|
||||
msgstr ""
|
||||
|
||||
|
@ -259,80 +259,80 @@ msgstr ""
|
|||
msgid "Can't allocate the needed memory"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3311 ../db/db-request.c:442 ../vn/vn-gui.c:1408
|
||||
#: ../db/db-model.c:3223 ../db/db-request.c:442 ../vn/vn-gui.c:1408
|
||||
#: ../vn/vn-form.c:245
|
||||
msgid "Connection"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3312
|
||||
#: ../db/db-model.c:3224
|
||||
msgid "The DbConn that manages the connection to the database"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3319
|
||||
#: ../db/db-model.c:3231
|
||||
msgid "Statement"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3320
|
||||
#: ../db/db-model.c:3232
|
||||
msgid "The statement which retrieves the data"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3327
|
||||
#: ../db/db-model.c:3239
|
||||
msgid "Use file"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3328
|
||||
#: ../db/db-model.c:3240
|
||||
msgid ""
|
||||
"If this is set to TRUE, the \"sql\" property will hold the name of a file "
|
||||
"containing a query, if set to FALSE, \"sql\" is used as an SQL string"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3338
|
||||
#: ../db/db-model.c:3250
|
||||
msgid ""
|
||||
"Depending on the \"use-file\" property this will be the path to a file with "
|
||||
"queries for the model or a SQL string"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3347
|
||||
#: ../db/db-model.c:3259
|
||||
msgid "Main Table"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3348
|
||||
#: ../db/db-model.c:3260
|
||||
msgid "The main table of the model"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3355
|
||||
#: ../db/db-model.c:3267
|
||||
msgid "Update flags"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3356
|
||||
#: ../db/db-model.c:3268
|
||||
msgid "The flags that indicate how a model can be modified"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3364
|
||||
#: ../db/db-model.c:3276
|
||||
msgid "Result position"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3365
|
||||
#: ../db/db-model.c:3277
|
||||
msgid ""
|
||||
"The position where the query that will fill the model will be placed in a "
|
||||
"multi-query"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3375
|
||||
#: ../db/db-model.c:3287
|
||||
msgid "Partial delete"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3376
|
||||
#: ../db/db-model.c:3288
|
||||
msgid ""
|
||||
"When a row is deleted set all the fields from the table to null rather than "
|
||||
"delete it."
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3384
|
||||
#: ../db/db-model.c:3296
|
||||
msgid "Batch"
|
||||
msgstr ""
|
||||
|
||||
#: ../db/db-model.c:3385
|
||||
#: ../db/db-model.c:3297
|
||||
msgid "The batch assigned to the model"
|
||||
msgstr ""
|
||||
|
||||
|
@ -575,7 +575,7 @@ msgstr ""
|
|||
msgid "Connection closed"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-gui.c:919 ../vn/field/vn-http-image.c:119
|
||||
#: ../vn/vn-gui.c:919 ../vn/field/vn-http-image.c:127
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
|
@ -587,7 +587,7 @@ msgstr ""
|
|||
msgid "The connection used by Gui"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-gui.c:1415 ../vn/vn-login.c:611
|
||||
#: ../vn/vn-gui.c:1415 ../vn/vn-login.c:613
|
||||
msgid "Application"
|
||||
msgstr ""
|
||||
|
||||
|
@ -595,6 +595,14 @@ msgstr ""
|
|||
msgid "The application handler for the entire program"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-list-model.c:573
|
||||
msgid "Null row"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-list-model.c:574
|
||||
msgid "Whether the list model will add a null row or not"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-handler.c:74
|
||||
msgid "Are you sure you want to delete the current selection?"
|
||||
msgstr ""
|
||||
|
@ -679,20 +687,20 @@ msgstr ""
|
|||
msgid "The module"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-login.c:396 ../vn/vn-login.c:398 ../vn/vn-login.c:490
|
||||
#: ../vn/vn-login.c:398 ../vn/vn-login.c:400 ../vn/vn-login.c:492
|
||||
msgid "Login error"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-login.c:456
|
||||
#: ../vn/vn-login.c:458
|
||||
#, c-format
|
||||
msgid "Bad connection settings, please check it."
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-login.c:488
|
||||
#: ../vn/vn-login.c:490
|
||||
msgid "Please select a connection"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/vn-login.c:612
|
||||
#: ../vn/vn-login.c:614
|
||||
msgid "The application"
|
||||
msgstr ""
|
||||
|
||||
|
@ -763,19 +771,19 @@ msgstr ""
|
|||
msgid "The number of decimal places to display."
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-combo.c:298 ../vn/column/vn-column-combo.c:340
|
||||
#: ../vn/field/vn-combo.c:297 ../vn/column/vn-column-combo.c:338
|
||||
msgid "Index column"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-combo.c:299 ../vn/column/vn-column-combo.c:341
|
||||
#: ../vn/field/vn-combo.c:298 ../vn/column/vn-column-combo.c:339
|
||||
msgid "The column index of the model"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-combo.c:305 ../vn/column/vn-column-combo.c:347
|
||||
#: ../vn/field/vn-combo.c:304 ../vn/column/vn-column-combo.c:345
|
||||
msgid "Show column"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-combo.c:306 ../vn/column/vn-column-combo.c:348
|
||||
#: ../vn/field/vn-combo.c:305 ../vn/column/vn-column-combo.c:346
|
||||
msgid "The column of the model shown by combo"
|
||||
msgstr ""
|
||||
|
||||
|
@ -826,37 +834,37 @@ msgstr ""
|
|||
msgid "Undefined error"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:145
|
||||
msgid "File loader already set"
|
||||
msgstr ""
|
||||
|
||||
#. Se usará para subir imagenes y cambiar nombres, o abrir un menu contextual
|
||||
#. g_signal_connect (self, "event", G_CALLBACK (vn_http_image_on_event), self);
|
||||
#: ../vn/field/vn-http-image.c:184
|
||||
#: ../vn/field/vn-http-image.c:120 ../vn/field/vn-http-image.c:192
|
||||
msgid "No image set"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:212 ../vn/column/vn-column-image.c:536
|
||||
#: ../vn/field/vn-http-image.c:153
|
||||
msgid "File loader already set"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:220 ../vn/column/vn-column-image.c:536
|
||||
msgid "File loader"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:213
|
||||
#: ../vn/field/vn-http-image.c:221
|
||||
msgid "A DbFileLoader, used to download the files"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:220
|
||||
#: ../vn/field/vn-http-image.c:228
|
||||
msgid "File path"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:221
|
||||
#: ../vn/field/vn-http-image.c:229
|
||||
msgid "The relative path to the image from file loader path"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:228
|
||||
#: ../vn/field/vn-http-image.c:236
|
||||
msgid "Image bytes"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/field/vn-http-image.c:229
|
||||
#: ../vn/field/vn-http-image.c:237
|
||||
msgid "A GBytes structure with the image data"
|
||||
msgstr ""
|
||||
|
||||
|
@ -881,11 +889,11 @@ msgid ""
|
|||
"A VnColumnStyleFunc to set the properties of each cell depending on its value"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/column/vn-column-combo.c:354
|
||||
#: ../vn/column/vn-column-combo.c:352
|
||||
msgid "Sort column"
|
||||
msgstr ""
|
||||
|
||||
#: ../vn/column/vn-column-combo.c:355
|
||||
#: ../vn/column/vn-column-combo.c:353
|
||||
msgid "The field number of the Grid model used to sort the column"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -21,9 +21,11 @@
|
|||
#include "sql-parser.h"
|
||||
#include "parser/gram.c"
|
||||
|
||||
#define PARSE(token, value) \
|
||||
state->current = ts; \
|
||||
Parse(parser, SQL_PARSER_##token, value, state)
|
||||
#define PARSE(token, value)\
|
||||
G_STMT_START { \
|
||||
state->current = ts; \
|
||||
Parse (parser, SQL_PARSER_##token, value, state); \
|
||||
} G_STMT_END
|
||||
|
||||
/**
|
||||
* SECTION: sql-parser
|
||||
|
|
|
@ -14,7 +14,7 @@ vn_include_HEADERS = \
|
|||
vn-window.h \
|
||||
vn-mod.h \
|
||||
vn-form.h \
|
||||
vn-grid-model.h \
|
||||
vn-list-model.h \
|
||||
vn-grid.h \
|
||||
vn-handler.h \
|
||||
vn-set.h \
|
||||
|
@ -44,7 +44,7 @@ libvn_files = \
|
|||
vn-window.c \
|
||||
vn-mod.c \
|
||||
vn-form.c \
|
||||
vn-grid-model.c \
|
||||
vn-list-model.c \
|
||||
vn-grid.c \
|
||||
vn-handler.c \
|
||||
vn-set.c
|
||||
|
|
|
@ -27,7 +27,7 @@ VnColumn * vn_column_check_new ()
|
|||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Private
|
||||
|
||||
static void vn_column_check_cb_toggled (GtkCellRendererToggle * cell,
|
||||
const gchar * path, VnColumn * obj)
|
||||
const gchar * path, VnColumn * self)
|
||||
{
|
||||
gint col;
|
||||
DbIter iter;
|
||||
|
@ -35,10 +35,10 @@ static void vn_column_check_cb_toggled (GtkCellRendererToggle * cell,
|
|||
GValue new_value = G_VALUE_INIT;
|
||||
const GValue * old_value;
|
||||
|
||||
col = vn_column_get_column_index (obj);
|
||||
model = vn_column_get_model (obj);
|
||||
col = vn_column_get_column_index (self);
|
||||
model = vn_column_get_model (self);
|
||||
|
||||
vn_column_get_iter (obj, path, &iter);
|
||||
vn_column_get_iter (self, path, &iter);
|
||||
old_value = db_model_get_value (model, &iter, col, NULL);
|
||||
|
||||
g_value_init (&new_value, G_TYPE_BOOLEAN);
|
||||
|
@ -47,17 +47,17 @@ static void vn_column_check_cb_toggled (GtkCellRendererToggle * cell,
|
|||
db_model_set_value (model, &iter, col, &new_value, NULL);
|
||||
}
|
||||
|
||||
static void vn_column_check_set_editable (VnColumn * obj, gboolean editable)
|
||||
static void vn_column_check_set_editable (VnColumn * self, gboolean editable)
|
||||
{
|
||||
if (editable)
|
||||
g_signal_connect (obj->cell, "toggled",
|
||||
G_CALLBACK (vn_column_check_cb_toggled), obj);
|
||||
g_signal_connect (self->cell, "toggled",
|
||||
G_CALLBACK (vn_column_check_cb_toggled), self);
|
||||
else
|
||||
g_signal_handlers_disconnect_by_func (obj->cell,
|
||||
vn_column_check_cb_toggled, obj);
|
||||
g_signal_handlers_disconnect_by_func (self->cell,
|
||||
vn_column_check_cb_toggled, self);
|
||||
}
|
||||
|
||||
static void vn_column_check_set_value (VnColumnCheck * obj, GtkTreeModel * model,
|
||||
static void vn_column_check_set_value (VnColumnCheck * self, GtkTreeModel * model,
|
||||
GtkTreeIter * iter, GtkCellRendererToggle * cell, const GValue * value)
|
||||
{
|
||||
GValue new_value = G_VALUE_INIT;
|
||||
|
@ -76,15 +76,15 @@ static void vn_column_check_set_value (VnColumnCheck * obj, GtkTreeModel * model
|
|||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Class
|
||||
|
||||
static void vn_column_check_init (VnColumnCheck * obj)
|
||||
static void vn_column_check_init (VnColumnCheck * self)
|
||||
{
|
||||
GtkCellRenderer * cell = gtk_cell_renderer_toggle_new ();
|
||||
VN_COLUMN_GET_CLASS (obj)->set_renderer (VN_COLUMN (obj), cell);
|
||||
VN_COLUMN_GET_CLASS (self)->set_renderer (VN_COLUMN (self), cell);
|
||||
}
|
||||
|
||||
static void vn_column_check_finalize (VnColumnCheck * obj)
|
||||
static void vn_column_check_finalize (VnColumnCheck * self)
|
||||
{
|
||||
G_OBJECT_CLASS (vn_column_check_parent_class)->finalize (G_OBJECT (obj));
|
||||
G_OBJECT_CLASS (vn_column_check_parent_class)->finalize (G_OBJECT (self));
|
||||
}
|
||||
|
||||
static void vn_column_check_class_init (VnColumnCheckClass * klass)
|
||||
|
|
|
@ -21,11 +21,11 @@
|
|||
#include <vn/vn-column.h>
|
||||
|
||||
#define VN_TYPE_COLUMN_CHECK (vn_column_check_get_type ())
|
||||
#define VN_COLUMN_CHECK(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, VN_TYPE_COLUMN_CHECK, VnColumnCheck))
|
||||
#define VN_IS_COLUMN_CHECK(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, VN_TYPE_COLUMN_CHECK))
|
||||
#define VN_COLUMN_CHECK(self) (G_TYPE_CHECK_INSTANCE_CAST (self, VN_TYPE_COLUMN_CHECK, VnColumnCheck))
|
||||
#define VN_IS_COLUMN_CHECK(self) (G_TYPE_CHECK_INSTANCE_TYPE (self, VN_TYPE_COLUMN_CHECK))
|
||||
#define VN_COLUMN_CHECK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, VN_TYPE_COLUMN_CHECK, VnColumnCheckClass))
|
||||
#define VN_IS_COLUMN_CHECK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE (klass, VN_TYPE_COLUMN_CHECK))
|
||||
#define VN_COLUMN_CHECK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS (obj, VN_TYPE_COLUMN_CHECK, VnColumnCheckClass))
|
||||
#define VN_COLUMN_CHECK_GET_CLASS(self) (G_TYPE_INSTANCE_GET_CLASS (self, VN_TYPE_COLUMN_CHECK, VnColumnCheckClass))
|
||||
|
||||
typedef struct _VnColumnCheck VnColumnCheck;
|
||||
typedef struct _VnColumnCheckClass VnColumnCheckClass;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
*/
|
||||
|
||||
#include "vn-column-combo.h"
|
||||
#include "../vn-grid-model.h"
|
||||
#include "../vn-list-model.h"
|
||||
|
||||
static void vn_column_combo_model_holder_init (DbModelHolderInterface * iface);
|
||||
|
||||
|
@ -32,41 +32,41 @@ VnColumn * vn_column_combo_new ()
|
|||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Private
|
||||
|
||||
static void vn_column_combo_set_value (VnColumnCombo * obj, GtkTreeModel * model,
|
||||
static void vn_column_combo_set_value (VnColumnCombo * self, GtkTreeModel * model,
|
||||
GtkTreeIter * tree_iter, GObject * cell, const GValue * value)
|
||||
{
|
||||
if (obj->model && db_model_get_status (obj->model) == DB_MODEL_STATUS_READY)
|
||||
if (self->model && db_model_get_status (self->model) == DB_MODEL_STATUS_READY)
|
||||
{
|
||||
DbIter iter;
|
||||
|
||||
if (gvn_value_is_null (value))
|
||||
g_object_set_property (cell, "text", value);
|
||||
else if (db_model_search_value (obj->model, obj->index_column, &iter, value))
|
||||
else if (db_model_search_value (self->model, self->index_column, &iter, value))
|
||||
g_object_set_property (cell, "text",
|
||||
db_model_get_value (obj->model, &iter, obj->show_column, NULL));
|
||||
db_model_get_value (self->model, &iter, self->show_column, NULL));
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Restores the focus to the tree view after its edition.
|
||||
*/
|
||||
static void vn_column_combo_restore_focus (VnColumnCombo * obj)
|
||||
static void vn_column_combo_restore_focus (VnColumnCombo * self)
|
||||
{
|
||||
gtk_widget_grab_focus
|
||||
(gtk_tree_view_column_get_tree_view (GTK_TREE_VIEW_COLUMN (obj)));
|
||||
(gtk_tree_view_column_get_tree_view (GTK_TREE_VIEW_COLUMN (self)));
|
||||
}
|
||||
|
||||
/*
|
||||
* Sets the value of the entry to an empty string if a null value is selected.
|
||||
*/
|
||||
static gchar * vn_column_combo_on_format_entry_text (GtkComboBox * combo,
|
||||
gchar * path, VnColumnCombo * obj)
|
||||
gchar * path, VnColumnCombo * self)
|
||||
{
|
||||
gchar * str;
|
||||
GtkTreeIter iter;
|
||||
|
||||
gtk_tree_model_get_iter_from_string (obj->tree_model, &iter, path);
|
||||
gtk_tree_model_get (obj->tree_model, &iter, obj->show_column, &str, -1);
|
||||
gtk_tree_model_get_iter_from_string (self->tree, &iter, path);
|
||||
gtk_tree_model_get (self->tree, &iter, self->show_column, &str, -1);
|
||||
|
||||
return str ? str : g_strdup ("");
|
||||
}
|
||||
|
@ -75,47 +75,47 @@ static gchar * vn_column_combo_on_format_entry_text (GtkComboBox * combo,
|
|||
* Sets the autocompletion functionality to the cell being edited.
|
||||
*/
|
||||
static void vn_column_combo_on_editing_started (GtkCellRenderer * cell,
|
||||
GtkCellEditable * cell_editable, const gchar * path, VnColumnCombo * obj)
|
||||
GtkCellEditable * cell_editable, const gchar * path, VnColumnCombo * self)
|
||||
{
|
||||
GtkEntry * entry;
|
||||
|
||||
if (!GTK_IS_COMBO_BOX (cell_editable) || !obj->tree_model)
|
||||
if (!GTK_IS_COMBO_BOX (cell_editable) || !self->tree)
|
||||
return;
|
||||
|
||||
entry = GTK_ENTRY (gtk_bin_get_child (GTK_BIN (cell_editable)));
|
||||
|
||||
// Each edition uses a new cell_editable.
|
||||
if (obj->cell_editable)
|
||||
if (self->cell_editable)
|
||||
{
|
||||
g_signal_handlers_disconnect_by_func (obj->cell_editable,
|
||||
vn_column_combo_on_format_entry_text, obj);
|
||||
g_object_unref (obj->cell_editable);
|
||||
g_signal_handlers_disconnect_by_func (self->cell_editable,
|
||||
vn_column_combo_on_format_entry_text, self);
|
||||
g_object_unref (self->cell_editable);
|
||||
}
|
||||
|
||||
if (!obj->completion_ready)
|
||||
if (!self->completion_ready)
|
||||
{
|
||||
gtk_entry_completion_set_model (obj->completion, obj->tree_model);
|
||||
gtk_entry_completion_set_text_column (obj->completion, obj->show_column);
|
||||
gtk_entry_completion_set_minimum_key_length (obj->completion, 1);
|
||||
obj->completion_ready = TRUE;
|
||||
gtk_entry_completion_set_model (self->completion, self->tree);
|
||||
gtk_entry_completion_set_text_column (self->completion, self->show_column);
|
||||
gtk_entry_completion_set_minimum_key_length (self->completion, 1);
|
||||
self->completion_ready = TRUE;
|
||||
|
||||
g_signal_connect_swapped (cell_editable, "editing-done",
|
||||
G_CALLBACK (vn_column_combo_restore_focus), obj);
|
||||
obj->cell_editable = g_object_ref (cell_editable);
|
||||
G_CALLBACK (vn_column_combo_restore_focus), self);
|
||||
self->cell_editable = g_object_ref (cell_editable);
|
||||
}
|
||||
|
||||
gtk_entry_set_completion (entry, obj->completion);
|
||||
gtk_entry_set_completion (entry, self->completion);
|
||||
|
||||
g_signal_connect (cell_editable, "format-entry-text",
|
||||
G_CALLBACK (vn_column_combo_on_format_entry_text), obj);
|
||||
obj->cell_editable = g_object_ref (cell_editable);
|
||||
G_CALLBACK (vn_column_combo_on_format_entry_text), self);
|
||||
self->cell_editable = g_object_ref (cell_editable);
|
||||
}
|
||||
|
||||
/*
|
||||
* When the text is edited using an entry, tries to set its underlying value.
|
||||
*/
|
||||
static void vn_column_combo_on_edited (GtkCellRendererText * renderer,
|
||||
gchar * path, gchar * new_text, VnColumnCombo * obj)
|
||||
gchar * path, gchar * new_text, VnColumnCombo * self)
|
||||
{
|
||||
DbIter iter;
|
||||
GValue value = G_VALUE_INIT;
|
||||
|
@ -123,122 +123,121 @@ static void vn_column_combo_on_edited (GtkCellRendererText * renderer,
|
|||
if (!g_strcmp0 (new_text, ""))
|
||||
{
|
||||
g_value_init (&value, GVN_TYPE_NULL);
|
||||
VN_COLUMN_GET_CLASS (obj)->value_changed (VN_COLUMN (obj), path, &value);
|
||||
VN_COLUMN_GET_CLASS (self)->value_changed (VN_COLUMN (self), path, &value);
|
||||
}
|
||||
else
|
||||
{
|
||||
gvn_value_new_with_content (&value, G_TYPE_STRING, new_text);
|
||||
|
||||
if (db_model_search_value (obj->model, obj->show_column, &iter, &value))
|
||||
if (db_model_search_value (self->model, self->show_column, &iter, &value))
|
||||
{
|
||||
const GValue * val;
|
||||
|
||||
if ((val = db_model_get_value (obj->model, &iter, obj->index_column, NULL)))
|
||||
VN_COLUMN_GET_CLASS (obj)->value_changed (VN_COLUMN (obj), path, val);
|
||||
if ((val = db_model_get_value (self->model, &iter, self->index_column, NULL)))
|
||||
VN_COLUMN_GET_CLASS (self)->value_changed (VN_COLUMN (self), path, val);
|
||||
}
|
||||
}
|
||||
|
||||
g_value_unset (&value);
|
||||
|
||||
vn_column_combo_restore_focus (obj);
|
||||
vn_column_combo_restore_focus (self);
|
||||
}
|
||||
|
||||
static void vn_column_combo_set_editable (VnColumnCombo * obj, gboolean editable)
|
||||
static void vn_column_combo_set_editable (VnColumnCombo * self, gboolean editable)
|
||||
{
|
||||
VnColumn * parent = VN_COLUMN (obj);
|
||||
VnColumn * parent = VN_COLUMN (self);
|
||||
|
||||
if (editable)
|
||||
{
|
||||
g_signal_connect (parent->cell, "editing-started",
|
||||
G_CALLBACK (vn_column_combo_on_editing_started), obj);
|
||||
G_CALLBACK (vn_column_combo_on_editing_started), self);
|
||||
g_signal_connect (parent->cell, "edited",
|
||||
G_CALLBACK (vn_column_combo_on_edited), obj);
|
||||
G_CALLBACK (vn_column_combo_on_edited), self);
|
||||
g_signal_connect_swapped (parent->cell, "editing-canceled",
|
||||
G_CALLBACK (vn_column_combo_restore_focus), obj);
|
||||
G_CALLBACK (vn_column_combo_restore_focus), self);
|
||||
|
||||
if (!obj->completion)
|
||||
obj->completion = gtk_entry_completion_new ();
|
||||
if (!self->completion)
|
||||
self->completion = gtk_entry_completion_new ();
|
||||
}
|
||||
else
|
||||
{
|
||||
g_signal_handlers_disconnect_by_data (parent->cell, obj);
|
||||
g_signal_handlers_disconnect_by_data (parent->cell, self);
|
||||
|
||||
if (obj->cell_editable)
|
||||
g_signal_handlers_disconnect_by_data (obj->cell_editable, obj);
|
||||
if (self->cell_editable)
|
||||
g_signal_handlers_disconnect_by_data (self->cell_editable, self);
|
||||
|
||||
if (obj->completion)
|
||||
g_clear_object (&obj->completion);
|
||||
if (self->completion)
|
||||
g_clear_object (&self->completion);
|
||||
|
||||
obj->completion_ready = FALSE;
|
||||
obj->cell_editable = NULL;
|
||||
self->completion_ready = FALSE;
|
||||
self->cell_editable = NULL;
|
||||
}
|
||||
|
||||
g_object_set (parent->cell, "editable", editable, NULL);
|
||||
}
|
||||
|
||||
static void vn_column_combo_set_null (VnColumnCombo * obj, gboolean null)
|
||||
static void vn_column_combo_set_null (VnColumnCombo * self, gboolean null)
|
||||
{
|
||||
if (vn_column_get_model (VN_COLUMN (obj)) && obj->model)
|
||||
db_model_use_null_row (obj->model, null);
|
||||
if (vn_column_get_model (VN_COLUMN (self)) && self->model)
|
||||
vn_list_model_use_null_row (VN_LIST_MODEL (self->tree), null);
|
||||
}
|
||||
|
||||
static void vn_column_combo_model_changed (VnColumnCombo * obj)
|
||||
static void vn_column_combo_model_changed (VnColumnCombo * self)
|
||||
{
|
||||
if (obj->model)
|
||||
if (self->model)
|
||||
{
|
||||
db_model_use_null_row (obj->model, VN_COLUMN (obj)->null);
|
||||
vn_list_model_use_null_row (VN_LIST_MODEL (self->tree), VN_COLUMN (self)->null);
|
||||
|
||||
if (obj->sort_column >= 0)
|
||||
if (self->sort_column >= 0)
|
||||
gtk_tree_view_column_set_sort_column_id (
|
||||
GTK_TREE_VIEW_COLUMN (obj), obj->sort_column);
|
||||
GTK_TREE_VIEW_COLUMN (self), self->sort_column);
|
||||
}
|
||||
}
|
||||
|
||||
static void vn_column_combo_on_status_changed (DbModel * model,
|
||||
DbModelStatus status, VnColumnCombo * obj)
|
||||
DbModelStatus status, VnColumnCombo * self)
|
||||
{
|
||||
if (status == DB_MODEL_STATUS_READY)
|
||||
{
|
||||
g_object_set (VN_COLUMN (obj)->cell, "model", obj->tree_model, NULL);
|
||||
db_model_use_null_row (obj->model, VN_COLUMN (obj)->null);
|
||||
g_object_set (VN_COLUMN (self)->cell, "model", self->tree, NULL);
|
||||
vn_list_model_use_null_row (VN_LIST_MODEL (self->tree), VN_COLUMN (self)->null);
|
||||
}
|
||||
else
|
||||
g_object_set (VN_COLUMN (obj)->cell, "model", NULL, NULL);
|
||||
g_object_set (VN_COLUMN (self)->cell, "model", NULL, NULL);
|
||||
}
|
||||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++ DbModelHolder implementation
|
||||
|
||||
static void vn_column_combo_set_model (VnColumnCombo * obj,
|
||||
DbModel * model)
|
||||
static void vn_column_combo_set_model (VnColumnCombo * self, DbModel * model)
|
||||
{
|
||||
g_return_if_fail (!model || DB_IS_MODEL (model));
|
||||
|
||||
if (obj->model)
|
||||
if (self->model)
|
||||
{
|
||||
g_signal_handlers_disconnect_by_func (obj->model,
|
||||
vn_column_combo_on_status_changed, obj);
|
||||
g_clear_object (&obj->model);
|
||||
g_clear_object (&obj->tree_model);
|
||||
g_signal_handlers_disconnect_by_func (self->model,
|
||||
vn_column_combo_on_status_changed, self);
|
||||
g_clear_object (&self->model);
|
||||
g_clear_object (&self->tree);
|
||||
|
||||
if (obj->completion_ready)
|
||||
gtk_entry_completion_set_model (obj->completion, NULL);
|
||||
if (self->completion_ready)
|
||||
gtk_entry_completion_set_model (self->completion, NULL);
|
||||
}
|
||||
|
||||
if (model)
|
||||
{
|
||||
obj->model = model;
|
||||
obj->tree_model = GTK_TREE_MODEL (vn_grid_model_new (model));
|
||||
self->model = g_object_ref (model);
|
||||
self->tree = GTK_TREE_MODEL (vn_list_model_new (model));
|
||||
g_signal_connect (model, "status-changed",
|
||||
G_CALLBACK (vn_column_combo_on_status_changed), obj);
|
||||
G_CALLBACK (vn_column_combo_on_status_changed), self);
|
||||
|
||||
if (obj->completion_ready)
|
||||
gtk_entry_completion_set_model (obj->completion, obj->tree_model);
|
||||
if (self->completion_ready)
|
||||
gtk_entry_completion_set_model (self->completion, self->tree);
|
||||
}
|
||||
}
|
||||
|
||||
static DbModel * vn_column_combo_get_model (VnColumnCombo * obj)
|
||||
static DbModel * vn_column_combo_get_model (VnColumnCombo * self)
|
||||
{
|
||||
return obj->model;
|
||||
return self->model;
|
||||
}
|
||||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Properties
|
||||
|
@ -251,75 +250,74 @@ enum
|
|||
,PROP_MODEL
|
||||
};
|
||||
|
||||
static void vn_column_combo_set_property (VnColumnCombo * obj, guint id,
|
||||
static void vn_column_combo_set_property (VnColumnCombo * self, guint id,
|
||||
const GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (id)
|
||||
{
|
||||
case PROP_INDEX_COLUMN:
|
||||
obj->index_column = g_value_get_uint (value);
|
||||
self->index_column = g_value_get_uint (value);
|
||||
break;
|
||||
case PROP_SHOW_COLUMN:
|
||||
obj->show_column = g_value_get_uint (value);
|
||||
g_object_set (VN_COLUMN (obj)->cell, "text-column", obj->show_column,
|
||||
self->show_column = g_value_get_uint (value);
|
||||
g_object_set (VN_COLUMN (self)->cell, "text-column", self->show_column,
|
||||
NULL);
|
||||
break;
|
||||
case PROP_SORT_COLUMN:
|
||||
obj->sort_column = g_value_get_int (value);
|
||||
self->sort_column = g_value_get_int (value);
|
||||
break;
|
||||
case PROP_MODEL:
|
||||
vn_column_combo_set_model (obj, g_value_dup_object (value));
|
||||
vn_column_combo_set_model (self, g_value_get_object (value));
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, id, pspec);
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (self, id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
static void vn_column_combo_get_property (VnColumnCombo * obj, guint id,
|
||||
static void vn_column_combo_get_property (VnColumnCombo * self, guint id,
|
||||
GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (id)
|
||||
{
|
||||
case PROP_INDEX_COLUMN:
|
||||
g_value_set_uint (value, obj->index_column);
|
||||
g_value_set_uint (value, self->index_column);
|
||||
break;
|
||||
case PROP_SHOW_COLUMN:
|
||||
g_value_set_uint (value, obj->show_column);
|
||||
g_value_set_uint (value, self->show_column);
|
||||
break;
|
||||
case PROP_SORT_COLUMN:
|
||||
g_value_set_int (value, obj->sort_column);
|
||||
g_value_set_int (value, self->sort_column);
|
||||
break;
|
||||
case PROP_MODEL:
|
||||
g_value_set_object (value, obj->model);
|
||||
g_value_set_object (value, self->model);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, id, pspec);
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (self, id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Class
|
||||
|
||||
static void vn_column_combo_init (VnColumnCombo * obj)
|
||||
static void vn_column_combo_init (VnColumnCombo * self)
|
||||
{
|
||||
GtkCellRenderer * cell = gtk_cell_renderer_combo_new ();
|
||||
obj->model = NULL;
|
||||
obj->tree_model = NULL;
|
||||
obj->completion = NULL;
|
||||
obj->completion_ready = FALSE;
|
||||
obj->cell_editable = NULL;
|
||||
self->model = NULL;
|
||||
self->tree = NULL;
|
||||
self->completion = NULL;
|
||||
self->completion_ready = FALSE;
|
||||
self->cell_editable = NULL;
|
||||
|
||||
VN_COLUMN_GET_CLASS (obj)->set_renderer (VN_COLUMN (obj), cell);
|
||||
VN_COLUMN_GET_CLASS (self)->set_renderer (VN_COLUMN (self), cell);
|
||||
}
|
||||
|
||||
static void vn_column_combo_finalize (VnColumnCombo * obj)
|
||||
static void vn_column_combo_finalize (VnColumnCombo * self)
|
||||
{
|
||||
vn_column_combo_set_model (obj, NULL);
|
||||
vn_column_combo_set_model (self, NULL);
|
||||
|
||||
if (obj->completion)
|
||||
g_object_unref (obj->completion);
|
||||
if (self->completion)
|
||||
g_object_unref (self->completion);
|
||||
|
||||
|
||||
G_OBJECT_CLASS (vn_column_combo_parent_class)->finalize (G_OBJECT (obj));
|
||||
G_OBJECT_CLASS (vn_column_combo_parent_class)->finalize (G_OBJECT (self));
|
||||
}
|
||||
|
||||
static void vn_column_combo_class_init (VnColumnComboClass * klass)
|
||||
|
|
|
@ -21,11 +21,11 @@
|
|||
#include <vn/vn-column.h>
|
||||
|
||||
#define VN_TYPE_COLUMN_COMBO (vn_column_combo_get_type ())
|
||||
#define VN_COLUMN_COMBO(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, VN_TYPE_COLUMN_COMBO, VnColumnCombo))
|
||||
#define VN_IS_COLUMN_COMBO(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, VN_TYPE_COLUMN_COMBO))
|
||||
#define VN_COLUMN_COMBO(self) (G_TYPE_CHECK_INSTANCE_CAST (self, VN_TYPE_COLUMN_COMBO, VnColumnCombo))
|
||||
#define VN_IS_COLUMN_COMBO(self) (G_TYPE_CHECK_INSTANCE_TYPE (self, VN_TYPE_COLUMN_COMBO))
|
||||
#define VN_COLUMN_COMBO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, VN_TYPE_COLUMN_COMBO, VnColumnComboClass))
|
||||
#define VN_IS_COLUMN_COMBO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE (klass, VN_TYPE_COLUMN_COMBO))
|
||||
#define VN_COLUMN_COMBO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS (obj, VN_TYPE_COLUMN_COMBO, VnColumnComboClass))
|
||||
#define VN_COLUMN_COMBO_GET_CLASS(self) (G_TYPE_INSTANCE_GET_CLASS (self, VN_TYPE_COLUMN_COMBO, VnColumnComboClass))
|
||||
|
||||
typedef struct _VnColumnCombo VnColumnCombo;
|
||||
typedef struct _VnColumnComboClass VnColumnComboClass;
|
||||
|
@ -35,7 +35,7 @@ struct _VnColumnCombo
|
|||
VnColumn parent;
|
||||
/* <private> */
|
||||
DbModel * model;
|
||||
GtkTreeModel * tree_model;
|
||||
GtkTreeModel * tree;
|
||||
guint index_column;
|
||||
guint show_column;
|
||||
gint sort_column;
|
||||
|
|
|
@ -27,7 +27,7 @@ VnColumn * vn_column_entry_new ()
|
|||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Private
|
||||
|
||||
static void vn_column_entry_cb_edited (GtkCellRendererText * cell,
|
||||
const gchar * path, gchar * text, VnColumnEntry * obj)
|
||||
const gchar * path, gchar * text, VnColumnEntry * self)
|
||||
{
|
||||
GValue value = G_VALUE_INIT;
|
||||
|
||||
|
@ -39,27 +39,27 @@ static void vn_column_entry_cb_edited (GtkCellRendererText * cell,
|
|||
else
|
||||
g_value_init (&value, GVN_TYPE_NULL);
|
||||
|
||||
VN_COLUMN_GET_CLASS (obj)->value_changed (VN_COLUMN (obj), path, &value);
|
||||
VN_COLUMN_GET_CLASS (self)->value_changed (VN_COLUMN (self), path, &value);
|
||||
g_value_unset (&value);
|
||||
}
|
||||
|
||||
static void vn_column_entry_set_editable (VnColumn * obj, gboolean editable)
|
||||
static void vn_column_entry_set_editable (VnColumn * self, gboolean editable)
|
||||
{
|
||||
g_object_set (obj->cell, "editable", editable, NULL);
|
||||
g_object_set (self->cell, "editable", editable, NULL);
|
||||
|
||||
if (editable)
|
||||
g_signal_connect (obj->cell, "edited",
|
||||
G_CALLBACK (vn_column_entry_cb_edited), obj);
|
||||
g_signal_connect (self->cell, "edited",
|
||||
G_CALLBACK (vn_column_entry_cb_edited), self);
|
||||
else
|
||||
g_signal_handlers_disconnect_by_func (obj->cell,
|
||||
vn_column_entry_cb_edited, obj);
|
||||
g_signal_handlers_disconnect_by_func (self->cell,
|
||||
vn_column_entry_cb_edited, self);
|
||||
}
|
||||
|
||||
static void vn_column_entry_set_value (VnColumnEntry * obj, GtkTreeModel * model,
|
||||
static void vn_column_entry_set_value (VnColumnEntry * self, GtkTreeModel * model,
|
||||
GtkTreeIter * iter, GObject * cell, const GValue * value)
|
||||
{
|
||||
GValue new_value = G_VALUE_INIT;
|
||||
gvn_value_to_format_string (value, obj->format, &new_value);
|
||||
gvn_value_to_format_string (value, self->format, &new_value);
|
||||
g_object_set_property (cell, "text", &new_value);
|
||||
g_value_unset (&new_value);
|
||||
}
|
||||
|
@ -71,46 +71,46 @@ enum
|
|||
PROP_FORMAT = 1
|
||||
};
|
||||
|
||||
static void vn_column_entry_set_property (VnColumnEntry * obj, guint id,
|
||||
static void vn_column_entry_set_property (VnColumnEntry * self, guint id,
|
||||
const GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (id)
|
||||
{
|
||||
case PROP_FORMAT:
|
||||
g_free (obj->format);
|
||||
obj->format = g_value_dup_string (value);
|
||||
g_free (self->format);
|
||||
self->format = g_value_dup_string (value);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, id, pspec);
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (self, id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
static void vn_column_entry_get_property (VnColumnEntry * obj, guint id,
|
||||
static void vn_column_entry_get_property (VnColumnEntry * self, guint id,
|
||||
GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (id)
|
||||
{
|
||||
case PROP_FORMAT:
|
||||
g_value_set_string (value, obj->format);
|
||||
g_value_set_string (value, self->format);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, id, pspec);
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (self, id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Class
|
||||
|
||||
static void vn_column_entry_init (VnColumnEntry * obj)
|
||||
static void vn_column_entry_init (VnColumnEntry * self)
|
||||
{
|
||||
GtkCellRenderer * cell = gtk_cell_renderer_text_new ();
|
||||
VN_COLUMN_GET_CLASS (obj)->set_renderer (VN_COLUMN (obj), cell);
|
||||
obj->format = NULL;
|
||||
VN_COLUMN_GET_CLASS (self)->set_renderer (VN_COLUMN (self), cell);
|
||||
self->format = NULL;
|
||||
}
|
||||
|
||||
static void vn_column_entry_finalize (VnColumnEntry * obj)
|
||||
static void vn_column_entry_finalize (VnColumnEntry * self)
|
||||
{
|
||||
g_free (obj->format);
|
||||
G_OBJECT_CLASS (vn_column_entry_parent_class)->finalize (G_OBJECT (obj));
|
||||
g_free (self->format);
|
||||
G_OBJECT_CLASS (vn_column_entry_parent_class)->finalize (G_OBJECT (self));
|
||||
}
|
||||
|
||||
static void vn_column_entry_class_init (VnColumnEntryClass * klass)
|
||||
|
|
|
@ -21,11 +21,11 @@
|
|||
#include <vn/vn-column.h>
|
||||
|
||||
#define VN_TYPE_COLUMN_ENTRY (vn_column_entry_get_type ())
|
||||
#define VN_COLUMN_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, VN_TYPE_COLUMN_ENTRY, VnColumnEntry))
|
||||
#define VN_IS_COLUMN_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, VN_TYPE_COLUMN_ENTRY))
|
||||
#define VN_COLUMN_ENTRY(self) (G_TYPE_CHECK_INSTANCE_CAST (self, VN_TYPE_COLUMN_ENTRY, VnColumnEntry))
|
||||
#define VN_IS_COLUMN_ENTRY(self) (G_TYPE_CHECK_INSTANCE_TYPE (self, VN_TYPE_COLUMN_ENTRY))
|
||||
#define VN_COLUMN_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, VN_TYPE_COLUMN_ENTRY, VnColumnEntryClass))
|
||||
#define VN_IS_COLUMN_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE (klass, VN_TYPE_COLUMN_ENTRY))
|
||||
#define VN_COLUMN_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS (obj, VN_TYPE_COLUMN_ENTRY, VnColumnEntryClass))
|
||||
#define VN_COLUMN_ENTRY_GET_CLASS(self) (G_TYPE_INSTANCE_GET_CLASS (self, VN_TYPE_COLUMN_ENTRY, VnColumnEntryClass))
|
||||
|
||||
typedef struct _VnColumnEntry VnColumnEntry;
|
||||
typedef struct _VnColumnEntryClass VnColumnEntryClass;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
*/
|
||||
|
||||
#include "vn-column-image.h"
|
||||
#include "../vn-grid-model.h"
|
||||
#include "../vn-list-model.h"
|
||||
|
||||
#define LOAD_IMAGE _IMAGE_DIR"/load.gif"
|
||||
|
||||
|
@ -24,7 +24,7 @@ G_DEFINE_TYPE (VnColumnImage, vn_column_image, VN_TYPE_COLUMN);
|
|||
|
||||
typedef struct
|
||||
{
|
||||
VnColumnImage * obj;
|
||||
VnColumnImage * self;
|
||||
GtkTreeModel * model;
|
||||
GtkTreeIter * iter;
|
||||
GtkCellRenderer * cell;
|
||||
|
@ -48,9 +48,9 @@ VnColumn * vn_column_image_new ()
|
|||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Private
|
||||
|
||||
static void vn_column_image_download_error (VnColumnImage * obj, const GError * error)
|
||||
static void vn_column_image_download_error (VnColumnImage * self, const GError * error)
|
||||
{
|
||||
g_object_set (VN_COLUMN (obj)->cell, "icon-name", "image-missing", NULL);
|
||||
g_object_set (VN_COLUMN (self)->cell, "icon-name", "image-missing", NULL);
|
||||
}
|
||||
|
||||
static void free_object (gpointer object)
|
||||
|
@ -140,7 +140,7 @@ static void vn_column_image_on_download_tooltip (DbFileLoader * fl,
|
|||
}
|
||||
|
||||
static gboolean vn_column_image_on_query_tooltip (GtkTreeView * view,
|
||||
gint x, gint y, gboolean k, GtkTooltip * tip, VnColumnImage * obj)
|
||||
gint x, gint y, gboolean k, GtkTooltip * tip, VnColumnImage * self)
|
||||
{
|
||||
gboolean ret = FALSE;
|
||||
TooltipData * data;
|
||||
|
@ -154,7 +154,7 @@ static gboolean vn_column_image_on_query_tooltip (GtkTreeView * view,
|
|||
|
||||
gtk_tree_view_convert_bin_window_to_widget_coords (view, x, y, &wx, &wy);
|
||||
gtk_tree_view_get_background_area
|
||||
(view, path, GTK_TREE_VIEW_COLUMN (obj), &rect);
|
||||
(view, path, GTK_TREE_VIEW_COLUMN (self), &rect);
|
||||
|
||||
if (!(rect.x < wx && wx < rect.x + rect.width))
|
||||
{
|
||||
|
@ -165,19 +165,19 @@ static gboolean vn_column_image_on_query_tooltip (GtkTreeView * view,
|
|||
else
|
||||
return FALSE;
|
||||
|
||||
if (obj->tooltips
|
||||
&& (data = g_hash_table_lookup (obj->tooltips, iter.user_data))
|
||||
if (self->tooltips
|
||||
&& (data = g_hash_table_lookup (self->tooltips, iter.user_data))
|
||||
&& !data->error && data->path)
|
||||
{
|
||||
gtk_tree_view_set_tooltip_cell (view, tip, path,
|
||||
GTK_TREE_VIEW_COLUMN (obj), VN_COLUMN (obj)->cell);
|
||||
GTK_TREE_VIEW_COLUMN (self), VN_COLUMN (self)->cell);
|
||||
|
||||
if (!data->image)
|
||||
{
|
||||
data->image = g_object_ref_sink (gtk_image_new_from_file (LOAD_IMAGE));
|
||||
gtk_tooltip_set_custom (tip, data->image);
|
||||
|
||||
db_file_loader_download (obj->loader, data->path,
|
||||
db_file_loader_download (self->loader, data->path,
|
||||
(DbFileLoaderCallbackFunc) vn_column_image_on_download_tooltip, data);
|
||||
}
|
||||
else
|
||||
|
@ -190,7 +190,7 @@ static gboolean vn_column_image_on_query_tooltip (GtkTreeView * view,
|
|||
return ret;
|
||||
}
|
||||
|
||||
static GdkPixbuf * vn_column_image_set_image (VnColumnImage * obj,
|
||||
static GdkPixbuf * vn_column_image_set_image (VnColumnImage * self,
|
||||
GtkCellRenderer * cell, GBytes * bytes, gboolean pix)
|
||||
{
|
||||
gsize size;
|
||||
|
@ -211,7 +211,7 @@ static GdkPixbuf * vn_column_image_set_image (VnColumnImage * obj,
|
|||
else
|
||||
{
|
||||
gdk_pixbuf_loader_close (loader, NULL);
|
||||
vn_column_image_download_error (obj, error);
|
||||
vn_column_image_download_error (self, error);
|
||||
g_error_free (error);
|
||||
}
|
||||
|
||||
|
@ -221,32 +221,32 @@ static GdkPixbuf * vn_column_image_set_image (VnColumnImage * obj,
|
|||
return pix && pixbuf ? g_object_ref (pixbuf) : NULL;
|
||||
}
|
||||
|
||||
static void vn_column_image_on_download (DbFileLoader * obj, GBytes * bytes,
|
||||
static void vn_column_image_on_download (DbFileLoader * self, GBytes * bytes,
|
||||
const GError * error, DownloadData * data)
|
||||
{
|
||||
GtkTreePath * path;
|
||||
|
||||
if (error)
|
||||
vn_column_image_download_error (data->obj, error);
|
||||
else if (bytes && vn_grid_model_iter_is_valid (data->iter, data->model))
|
||||
vn_column_image_download_error (data->self, error);
|
||||
else if (bytes && vn_list_model_iter_is_valid (data->iter, data->model))
|
||||
{
|
||||
if (data->obj->loaded)
|
||||
g_hash_table_replace (data->obj->loaded, g_strdup (data->name),
|
||||
vn_column_image_set_image (data->obj, data->cell, bytes, TRUE));
|
||||
if (data->self->loaded)
|
||||
g_hash_table_replace (data->self->loaded, g_strdup (data->name),
|
||||
vn_column_image_set_image (data->self, data->cell, bytes, TRUE));
|
||||
|
||||
path = gtk_tree_model_get_path (data->model, data->iter);
|
||||
gtk_tree_model_row_changed (data->model, path, data->iter);
|
||||
gtk_tree_path_free (path);
|
||||
}
|
||||
|
||||
g_object_unref (data->obj);
|
||||
g_object_unref (data->self);
|
||||
g_object_unref (data->model);
|
||||
gtk_tree_iter_free (data->iter);
|
||||
g_free (data->name);
|
||||
g_free (data);
|
||||
}
|
||||
|
||||
static void vn_column_image_set_value (VnColumnImage * obj, GtkTreeModel * model,
|
||||
static void vn_column_image_set_value (VnColumnImage * self, GtkTreeModel * model,
|
||||
GtkTreeIter * iter, GtkCellRenderer * cell, const GValue * value)
|
||||
{
|
||||
GType type = G_VALUE_TYPE (value);
|
||||
|
@ -258,9 +258,9 @@ static void vn_column_image_set_value (VnColumnImage * obj, GtkTreeModel * model
|
|||
GBytes * bytes = g_value_get_boxed (value);
|
||||
|
||||
if (bytes)
|
||||
vn_column_image_set_image (obj, cell, bytes, FALSE);
|
||||
vn_column_image_set_image (self, cell, bytes, FALSE);
|
||||
else
|
||||
vn_column_image_download_error (obj, NULL);
|
||||
vn_column_image_download_error (self, NULL);
|
||||
}
|
||||
else if (type == G_TYPE_STRING)
|
||||
{
|
||||
|
@ -268,41 +268,41 @@ static void vn_column_image_set_value (VnColumnImage * obj, GtkTreeModel * model
|
|||
gchar * cell_name;
|
||||
const gchar * name = g_value_get_string (value);
|
||||
GtkTreeView * view = GTK_TREE_VIEW
|
||||
(gtk_tree_view_column_get_tree_view (GTK_TREE_VIEW_COLUMN (obj)));
|
||||
(gtk_tree_view_column_get_tree_view (GTK_TREE_VIEW_COLUMN (self)));
|
||||
|
||||
if (view != obj->tree_view)
|
||||
if (view != self->tree_view)
|
||||
{
|
||||
if (GTK_IS_TREE_VIEW (obj->tree_view))
|
||||
g_signal_handlers_disconnect_by_func (obj->tree_view,
|
||||
vn_column_image_on_query_tooltip, obj);
|
||||
if (GTK_IS_TREE_VIEW (self->tree_view))
|
||||
g_signal_handlers_disconnect_by_func (self->tree_view,
|
||||
vn_column_image_on_query_tooltip, self);
|
||||
|
||||
g_signal_connect (view, "query-tooltip",
|
||||
G_CALLBACK (vn_column_image_on_query_tooltip), obj);
|
||||
G_CALLBACK (vn_column_image_on_query_tooltip), self);
|
||||
g_object_set (view, "has-tooltip", TRUE, NULL);
|
||||
obj->tree_view = view;
|
||||
self->tree_view = view;
|
||||
}
|
||||
|
||||
if (obj->loaded)
|
||||
if (self->loaded)
|
||||
{
|
||||
if (g_hash_table_contains (obj->loaded, name))
|
||||
if (g_hash_table_contains (self->loaded, name))
|
||||
{
|
||||
GdkPixbuf * pixbuf = g_hash_table_lookup (obj->loaded, name);
|
||||
GdkPixbuf * pixbuf = g_hash_table_lookup (self->loaded, name);
|
||||
|
||||
if (pixbuf)
|
||||
g_object_set (cell, "pixbuf", pixbuf, NULL);
|
||||
else
|
||||
vn_column_image_download_error (obj, NULL);
|
||||
vn_column_image_download_error (self, NULL);
|
||||
|
||||
if (obj->tooltips
|
||||
&& !g_hash_table_contains (obj->tooltips, iter->user_data))
|
||||
if (self->tooltips
|
||||
&& !g_hash_table_contains (self->tooltips, iter->user_data))
|
||||
{
|
||||
TooltipData * data = g_new (TooltipData, 1);
|
||||
data->path = g_strconcat ("/", obj->tooltip_path, "/", name, NULL);
|
||||
data->path = g_strconcat ("/", self->tooltip_path, "/", name, NULL);
|
||||
data->error = FALSE;
|
||||
data->tooltip_size = obj->tooltip_size;
|
||||
data->tooltip_size = self->tooltip_size;
|
||||
data->image = NULL;
|
||||
|
||||
g_hash_table_insert (obj->tooltips, iter->user_data, data);
|
||||
g_hash_table_insert (self->tooltips, iter->user_data, data);
|
||||
}
|
||||
|
||||
return;
|
||||
|
@ -314,7 +314,7 @@ static void vn_column_image_set_value (VnColumnImage * obj, GtkTreeModel * model
|
|||
GtkTreePath * path = gtk_tree_model_get_path (model, iter);
|
||||
|
||||
gtk_tree_view_get_cell_area
|
||||
(view, path, GTK_TREE_VIEW_COLUMN (obj), &cell_rect);
|
||||
(view, path, GTK_TREE_VIEW_COLUMN (self), &cell_rect);
|
||||
gtk_tree_path_free (path);
|
||||
gtk_tree_view_get_visible_rect (view, &view_rect);
|
||||
gtk_tree_view_convert_tree_to_bin_window_coords
|
||||
|
@ -326,53 +326,53 @@ static void vn_column_image_set_value (VnColumnImage * obj, GtkTreeModel * model
|
|||
}
|
||||
}
|
||||
else
|
||||
obj->loaded = g_hash_table_new_full
|
||||
self->loaded = g_hash_table_new_full
|
||||
((GHashFunc) g_str_hash, (GEqualFunc) g_str_equal,
|
||||
(GDestroyNotify) g_free, (GDestroyNotify) free_object);
|
||||
|
||||
cell_name =
|
||||
/*obj->external_loader ?
|
||||
g_strconcat ("/", obj->path, "/", name, NULL):*/
|
||||
/*self->external_loader ?
|
||||
g_strconcat ("/", self->path, "/", name, NULL):*/
|
||||
g_strdup (name);
|
||||
|
||||
g_hash_table_insert (obj->loaded, g_strdup (cell_name), NULL);
|
||||
g_hash_table_insert (self->loaded, g_strdup (cell_name), NULL);
|
||||
|
||||
if (!obj->loader)
|
||||
obj->loader = db_file_loader_new (obj->host, obj->path);
|
||||
if (!self->loader)
|
||||
self->loader = db_file_loader_new (self->host, self->path);
|
||||
|
||||
if (obj->tooltip_path && !obj->tooltips)
|
||||
obj->tooltips = g_hash_table_new_full
|
||||
if (self->tooltip_path && !self->tooltips)
|
||||
self->tooltips = g_hash_table_new_full
|
||||
((GHashFunc) g_direct_hash, (GEqualFunc) g_direct_equal,
|
||||
(GDestroyNotify) NULL, (GDestroyNotify) free_tooltip_data);
|
||||
|
||||
data = g_new (DownloadData, 1);
|
||||
data->obj = g_object_ref (obj);
|
||||
data->self = g_object_ref (self);
|
||||
data->model = g_object_ref (model);
|
||||
data->iter = gtk_tree_iter_copy (iter);
|
||||
data->cell = cell;
|
||||
data->name = cell_name;
|
||||
|
||||
db_file_loader_download (obj->loader, cell_name,
|
||||
db_file_loader_download (self->loader, cell_name,
|
||||
(DbFileLoaderCallbackFunc) vn_column_image_on_download, data);
|
||||
}
|
||||
}
|
||||
|
||||
static void vn_column_image_on_model_changed (VnColumnImage * obj)
|
||||
static void vn_column_image_on_model_changed (VnColumnImage * self)
|
||||
{
|
||||
if (obj->loader)
|
||||
db_file_loader_cancel_all (obj->loader);
|
||||
if (self->loader)
|
||||
db_file_loader_cancel_all (self->loader);
|
||||
|
||||
if (obj->loaded)
|
||||
g_hash_table_destroy (obj->loaded);
|
||||
if (self->loaded)
|
||||
g_hash_table_destroy (self->loaded);
|
||||
|
||||
if (obj->tooltips)
|
||||
g_hash_table_destroy (obj->tooltips);
|
||||
if (self->tooltips)
|
||||
g_hash_table_destroy (self->tooltips);
|
||||
|
||||
obj->loaded = NULL;
|
||||
obj->tooltips = NULL;
|
||||
self->loaded = NULL;
|
||||
self->tooltips = NULL;
|
||||
}
|
||||
|
||||
static void vn_column_image_set_editable (VnColumn * obj, gboolean editable){}
|
||||
static void vn_column_image_set_editable (VnColumn * self, gboolean editable){}
|
||||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Property
|
||||
|
||||
|
@ -385,101 +385,101 @@ enum
|
|||
,PROP_FILE_LOADER
|
||||
};
|
||||
|
||||
static void vn_column_image_set_property (VnColumnImage * obj, guint id,
|
||||
static void vn_column_image_set_property (VnColumnImage * self, guint id,
|
||||
const GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (id)
|
||||
{
|
||||
case PROP_HOST:
|
||||
g_free (obj->host);
|
||||
obj->host = g_value_dup_string (value);
|
||||
g_free (self->host);
|
||||
self->host = g_value_dup_string (value);
|
||||
break;
|
||||
case PROP_PATH:
|
||||
g_free (obj->path);
|
||||
obj->path = g_value_dup_string (value);
|
||||
g_free (self->path);
|
||||
self->path = g_value_dup_string (value);
|
||||
break;
|
||||
case PROP_TOOLTIP_PATH:
|
||||
g_free (obj->tooltip_path);
|
||||
obj->tooltip_path = g_value_dup_string (value);
|
||||
g_free (self->tooltip_path);
|
||||
self->tooltip_path = g_value_dup_string (value);
|
||||
break;
|
||||
case PROP_TOOLTIP_SIZE:
|
||||
obj->tooltip_size = g_value_get_int (value);
|
||||
self->tooltip_size = g_value_get_int (value);
|
||||
break;
|
||||
case PROP_FILE_LOADER:
|
||||
obj->loader = g_value_dup_object (value);
|
||||
if (obj->loader)
|
||||
obj->external_loader = TRUE;
|
||||
self->loader = g_value_dup_object (value);
|
||||
if (self->loader)
|
||||
self->external_loader = TRUE;
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, id, pspec);
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (self, id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
static void vn_column_image_get_property (VnColumnImage * obj, guint id,
|
||||
static void vn_column_image_get_property (VnColumnImage * self, guint id,
|
||||
GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (id)
|
||||
{
|
||||
case PROP_HOST:
|
||||
g_value_set_string (value, obj->host);
|
||||
g_value_set_string (value, self->host);
|
||||
break;
|
||||
case PROP_PATH:
|
||||
g_value_set_string (value, obj->path);
|
||||
g_value_set_string (value, self->path);
|
||||
break;
|
||||
case PROP_TOOLTIP_PATH:
|
||||
g_value_set_string (value, obj->tooltip_path);
|
||||
g_value_set_string (value, self->tooltip_path);
|
||||
break;
|
||||
case PROP_TOOLTIP_SIZE:
|
||||
g_value_set_int (value, obj->tooltip_size);
|
||||
g_value_set_int (value, self->tooltip_size);
|
||||
break;
|
||||
case PROP_FILE_LOADER:
|
||||
g_value_set_object (value, obj->loader);
|
||||
g_value_set_object (value, self->loader);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, id, pspec);
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (self, id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Class
|
||||
|
||||
static void vn_column_image_init (VnColumnImage * obj)
|
||||
static void vn_column_image_init (VnColumnImage * self)
|
||||
{
|
||||
GtkCellRenderer * cell = gtk_cell_renderer_pixbuf_new ();
|
||||
VN_COLUMN_GET_CLASS (obj)->set_renderer (VN_COLUMN (obj), cell);
|
||||
VN_COLUMN_GET_CLASS (self)->set_renderer (VN_COLUMN (self), cell);
|
||||
|
||||
obj->host = NULL;
|
||||
obj->path = NULL;
|
||||
obj->tooltip_path = NULL;
|
||||
obj->loader = NULL;
|
||||
obj->external_loader = FALSE;
|
||||
obj->loaded = NULL;
|
||||
obj->tooltips = NULL;
|
||||
obj->tree_view = NULL;
|
||||
self->host = NULL;
|
||||
self->path = NULL;
|
||||
self->tooltip_path = NULL;
|
||||
self->loader = NULL;
|
||||
self->external_loader = FALSE;
|
||||
self->loaded = NULL;
|
||||
self->tooltips = NULL;
|
||||
self->tree_view = NULL;
|
||||
}
|
||||
|
||||
static void vn_column_image_finalize (VnColumnImage * obj)
|
||||
static void vn_column_image_finalize (VnColumnImage * self)
|
||||
{
|
||||
g_free (obj->host);
|
||||
g_free (obj->path);
|
||||
g_free (obj->tooltip_path);
|
||||
g_free (self->host);
|
||||
g_free (self->path);
|
||||
g_free (self->tooltip_path);
|
||||
|
||||
if (obj->loader)
|
||||
if (self->loader)
|
||||
{
|
||||
db_file_loader_cancel_all (obj->loader);
|
||||
g_object_unref (obj->loader);
|
||||
db_file_loader_cancel_all (self->loader);
|
||||
g_object_unref (self->loader);
|
||||
}
|
||||
|
||||
if (obj->loaded)
|
||||
g_hash_table_destroy (obj->loaded);
|
||||
if (self->loaded)
|
||||
g_hash_table_destroy (self->loaded);
|
||||
|
||||
if (obj->tooltips)
|
||||
g_hash_table_destroy (obj->tooltips);
|
||||
if (self->tooltips)
|
||||
g_hash_table_destroy (self->tooltips);
|
||||
|
||||
if (GTK_IS_TREE_VIEW (obj->tree_view))
|
||||
g_signal_handlers_disconnect_by_func (obj->tree_view,
|
||||
vn_column_image_on_query_tooltip, obj);
|
||||
if (GTK_IS_TREE_VIEW (self->tree_view))
|
||||
g_signal_handlers_disconnect_by_func (self->tree_view,
|
||||
vn_column_image_on_query_tooltip, self);
|
||||
|
||||
G_OBJECT_CLASS (vn_column_image_parent_class)->finalize (G_OBJECT (obj));
|
||||
G_OBJECT_CLASS (vn_column_image_parent_class)->finalize (G_OBJECT (self));
|
||||
}
|
||||
|
||||
static void vn_column_image_class_init (VnColumnImageClass * klass)
|
||||
|
|
|
@ -21,11 +21,11 @@
|
|||
#include <vn/vn-column.h>
|
||||
|
||||
#define VN_TYPE_COLUMN_IMAGE (vn_column_image_get_type ())
|
||||
#define VN_COLUMN_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, VN_TYPE_COLUMN_IMAGE, VnColumnImage))
|
||||
#define VN_IS_COLUMN_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, VN_TYPE_COLUMN_IMAGE))
|
||||
#define VN_COLUMN_IMAGE(self) (G_TYPE_CHECK_INSTANCE_CAST (self, VN_TYPE_COLUMN_IMAGE, VnColumnImage))
|
||||
#define VN_IS_COLUMN_IMAGE(self) (G_TYPE_CHECK_INSTANCE_TYPE (self, VN_TYPE_COLUMN_IMAGE))
|
||||
#define VN_COLUMN_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, VN_TYPE_COLUMN_IMAGE, VnColumnImageClass))
|
||||
#define VN_IS_COLUMN_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE (klass, VN_TYPE_COLUMN_IMAGE))
|
||||
#define VN_COLUMN_IMAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS (obj, VN_TYPE_COLUMN_IMAGE, VnColumnImageClass))
|
||||
#define VN_COLUMN_IMAGE_GET_CLASS(self) (G_TYPE_INSTANCE_GET_CLASS (self, VN_TYPE_COLUMN_IMAGE, VnColumnImageClass))
|
||||
|
||||
typedef struct _VnColumnImage VnColumnImage;
|
||||
typedef struct _VnColumnImageClass VnColumnImageClass;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
*/
|
||||
|
||||
#include "vn-column-spin.h"
|
||||
#include "../vn-grid-model.h"
|
||||
#include "../vn-list-model.h"
|
||||
|
||||
G_DEFINE_TYPE (VnColumnSpin, vn_column_spin, VN_TYPE_COLUMN);
|
||||
|
||||
|
@ -28,7 +28,7 @@ VnColumn * vn_column_spin_new ()
|
|||
//+++++++++++++++++++++++++++++++++++++++++++++++++++ Private
|
||||
|
||||
static void vn_column_spin_on_edited (GtkCellRendererSpin * cell,
|
||||
const gchar * path, gchar * text, VnColumnSpin * obj)
|
||||
const gchar * path, gchar * text, VnColumnSpin * self)
|
||||
{
|
||||
GValue value = G_VALUE_INIT;
|
||||
|
||||
|
@ -40,12 +40,12 @@ static void vn_column_spin_on_edited (GtkCellRendererSpin * cell,
|
|||
else
|
||||
g_value_init (&value, GVN_TYPE_NULL);
|
||||
|
||||
VN_COLUMN_GET_CLASS (obj)->value_changed (VN_COLUMN (obj), path, &value);
|
||||
VN_COLUMN_GET_CLASS (self)->value_changed (VN_COLUMN (self), path, &value);
|
||||
g_value_unset (&value);
|
||||
}
|
||||
|
||||
void vn_column_spin_on_editing_started (GtkCellRenderer * renderer,
|
||||
GtkEntry * entry, gchar * path, GtkTreeViewColumn * obj)
|
||||
GtkEntry * entry, gchar * path, GtkTreeViewColumn * self)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
GtkTreeModel * model;
|
||||
|
@ -54,13 +54,13 @@ void vn_column_spin_on_editing_started (GtkCellRenderer * renderer,
|
|||
if (!GTK_IS_SPIN_BUTTON (entry))
|
||||
return;
|
||||
|
||||
tree = GTK_TREE_VIEW (gtk_tree_view_column_get_tree_view (obj));
|
||||
tree = GTK_TREE_VIEW (gtk_tree_view_column_get_tree_view (self));
|
||||
model = gtk_tree_view_get_model (tree);
|
||||
|
||||
if (gtk_tree_model_get_iter_from_string (model, &iter, path))
|
||||
{
|
||||
GValue value = G_VALUE_INIT;
|
||||
gint col = vn_column_get_column_index (VN_COLUMN (obj));
|
||||
gint col = vn_column_get_column_index (VN_COLUMN (self));
|
||||
|
||||
gtk_tree_model_get_value (model, &iter, col, &value);
|
||||
|
||||
|
@ -69,27 +69,27 @@ void vn_column_spin_on_editing_started (GtkCellRenderer * renderer,
|
|||
}
|
||||
}
|
||||
|
||||
static void vn_column_spin_set_editable (VnColumn * obj, gboolean editable)
|
||||
static void vn_column_spin_set_editable (VnColumn * self, gboolean editable)
|
||||
{
|
||||
if (editable)
|
||||
{
|
||||
g_signal_connect (obj->cell, "editing-started",
|
||||
G_CALLBACK (vn_column_spin_on_editing_started), obj);
|
||||
g_signal_connect (obj->cell, "edited",
|
||||
G_CALLBACK (vn_column_spin_on_edited), obj);
|
||||
g_signal_connect (self->cell, "editing-started",
|
||||
G_CALLBACK (vn_column_spin_on_editing_started), self);
|
||||
g_signal_connect (self->cell, "edited",
|
||||
G_CALLBACK (vn_column_spin_on_edited), self);
|
||||
}
|
||||
else
|
||||
{
|
||||
g_signal_handlers_disconnect_by_func (obj->cell,
|
||||
vn_column_spin_on_editing_started, obj);
|
||||
g_signal_handlers_disconnect_by_func (obj->cell,
|
||||
vn_column_spin_on_edited, obj);
|
||||
g_signal_handlers_disconnect_by_func (self->cell,
|
||||
vn_column_spin_on_editing_started, self);
|
||||
g_signal_handlers_disconnect_by_func (self->cell,
|
||||
vn_column_spin_on_edited, self);
|
||||
}
|
||||
|
||||
g_object_set (obj->cell, "editable", editable, NULL);
|
||||
g_object_set (self->cell, "editable", editable, NULL);
|
||||
}
|
||||
|
||||
static void vn_column_spin_set_value (VnColumnSpin * obj, GtkTreeModel * model,
|
||||
static void vn_column_spin_set_value (VnColumnSpin * self, GtkTreeModel * model,
|
||||
GtkTreeIter * iter, GObject * cell, const GValue * value)
|
||||
{
|
||||
guint digits;
|
||||
|
@ -112,7 +112,7 @@ static void vn_column_spin_set_value (VnColumnSpin * obj, GtkTreeModel * model,
|
|||
else
|
||||
dec = g_value_get_double (value);
|
||||
|
||||
g_ascii_formatd (buffer, G_ASCII_DTOSTR_BUF_SIZE, obj->format, dec);
|
||||
g_ascii_formatd (buffer, G_ASCII_DTOSTR_BUF_SIZE, self->format, dec);
|
||||
g_value_set_string (&new_value, buffer);
|
||||
|
||||
break;
|
||||
|
@ -135,7 +135,7 @@ enum
|
|||
PROP_DIGITS = 1
|
||||
};
|
||||
|
||||
static void vn_column_spin_set_property (VnColumnSpin * obj, guint id,
|
||||
static void vn_column_spin_set_property (VnColumnSpin * self, guint id,
|
||||
const GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (id)
|
||||
|
@ -143,34 +143,34 @@ static void vn_column_spin_set_property (VnColumnSpin * obj, guint id,
|
|||
case PROP_DIGITS:
|
||||
{
|
||||
guint digits = g_value_get_uint (value);
|
||||
g_object_set (VN_COLUMN (obj)->cell, "digits", digits, NULL);
|
||||
g_free (obj->format);
|
||||
obj->format = g_strdup_printf ("%%.%df", digits);
|
||||
g_object_set (VN_COLUMN (self)->cell, "digits", digits, NULL);
|
||||
g_free (self->format);
|
||||
self->format = g_strdup_printf ("%%.%df", digits);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, id, pspec);
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (self, id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
static void vn_column_spin_get_property (VnColumnSpin * obj, guint id,
|
||||
static void vn_column_spin_get_property (VnColumnSpin * self, guint id,
|
||||
GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (id)
|
||||
{
|
||||
case PROP_DIGITS:
|
||||
g_object_get_property (G_OBJECT (VN_COLUMN (obj)->cell), "digits", value);
|
||||
g_object_get_property (G_OBJECT (VN_COLUMN (self)->cell), "digits", value);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, id, pspec);
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (self, id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
static void vn_column_spin_init (VnColumnSpin * obj)
|
||||
static void vn_column_spin_init (VnColumnSpin * self)
|
||||
{
|
||||
GtkCellRenderer * cell;
|
||||
|
||||
obj->format = NULL;
|
||||
self->format = NULL;
|
||||
|
||||
cell = gtk_cell_renderer_spin_new ();
|
||||
g_object_set (cell
|
||||
|
@ -178,13 +178,13 @@ static void vn_column_spin_init (VnColumnSpin * obj)
|
|||
,"alignment", PANGO_ALIGN_RIGHT
|
||||
,NULL
|
||||
);
|
||||
VN_COLUMN_GET_CLASS (obj)->set_renderer (VN_COLUMN (obj), cell);
|
||||
VN_COLUMN_GET_CLASS (self)->set_renderer (VN_COLUMN (self), cell);
|
||||
}
|
||||
|
||||
static void vn_column_spin_finalize (VnColumnSpin * obj)
|
||||
static void vn_column_spin_finalize (VnColumnSpin * self)
|
||||
{
|
||||
g_free (obj->format);
|
||||
G_OBJECT_CLASS (vn_column_spin_parent_class)->finalize (G_OBJECT (obj));
|
||||
g_free (self->format);
|
||||
G_OBJECT_CLASS (vn_column_spin_parent_class)->finalize (G_OBJECT (self));
|
||||
}
|
||||
|
||||
static void vn_column_spin_class_init (VnColumnSpinClass * klass)
|
||||
|
|
|
@ -21,11 +21,11 @@
|
|||
#include <vn/vn-column.h>
|
||||
|
||||
#define VN_TYPE_COLUMN_SPIN (vn_column_spin_get_type ())
|
||||
#define VN_COLUMN_SPIN(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, VN_TYPE_COLUMN_SPIN, VnColumnSpin))
|
||||
#define VN_IS_COLUMN_SPIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, VN_TYPE_COLUMN_SPIN))
|
||||
#define VN_COLUMN_SPIN(self) (G_TYPE_CHECK_INSTANCE_CAST (self, VN_TYPE_COLUMN_SPIN, VnColumnSpin))
|
||||
#define VN_IS_COLUMN_SPIN(self) (G_TYPE_CHECK_INSTANCE_TYPE (self, VN_TYPE_COLUMN_SPIN))
|
||||
#define VN_COLUMN_SPIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass, VN_TYPE_COLUMN_SPIN, VnColumnSpinClass))
|
||||
#define VN_IS_COLUMN_SPIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE (klass, VN_TYPE_COLUMN_SPIN))
|
||||
#define VN_COLUMN_SPIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS (obj, VN_TYPE_COLUMN_SPIN, VnColumnSpinClass))
|
||||
#define VN_COLUMN_SPIN_GET_CLASS(self) (G_TYPE_INSTANCE_GET_CLASS (self, VN_TYPE_COLUMN_SPIN, VnColumnSpinClass))
|
||||
|
||||
typedef struct _VnColumnSpin VnColumnSpin;
|
||||
typedef struct _VnColumnSpinClass VnColumnSpinClass;
|
||||
|
|
|
@ -16,11 +16,11 @@
|
|||
*/
|
||||
|
||||
#include "vn-combo.h"
|
||||
#include "../vn-grid-model.h"
|
||||
#include "../vn-list-model.h"
|
||||
#include <db/db.h>
|
||||
|
||||
/**
|
||||
* SECTION:vn-combo
|
||||
* SECTION: vn-combo
|
||||
* @Short_description: a combo box widget
|
||||
* @Title: VnCombo
|
||||
* @See_also: #VnField
|
||||
|
@ -77,7 +77,6 @@ static void vn_combo_on_model_ready (VnCombo * self, const GValue * value)
|
|||
&& db_model_search_value (self->model, self->index_column, &iter, value))
|
||||
{
|
||||
GtkTreeIter tree_iter;
|
||||
|
||||
vn_gtk_tree_iter_from_db_iter (&tree_iter, &iter);
|
||||
gtk_combo_box_set_active_iter (self->combo, &tree_iter);
|
||||
}
|
||||
|
@ -96,7 +95,8 @@ static void vn_combo_on_status_changed (DbModel * model, DbModelStatus status, V
|
|||
self->tree_set = TRUE;
|
||||
vn_combo_on_model_ready (self, gvn_param_get_value (GVN_PARAM (self)));
|
||||
|
||||
db_model_use_null_row (model, vn_field_get_null (VN_FIELD (self)));
|
||||
vn_list_model_use_null_row (VN_LIST_MODEL (self->tree),
|
||||
vn_field_get_null (VN_FIELD (self)));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -126,7 +126,6 @@ static DbModel * vn_combo_get_model (VnCombo * self)
|
|||
static void vn_combo_set_model (VnCombo * self, DbModel * model)
|
||||
{
|
||||
g_return_if_fail (VN_IS_COMBO (self));
|
||||
g_return_if_fail (DB_IS_MODEL (model) || !model);
|
||||
|
||||
if (self->model)
|
||||
{
|
||||
|
@ -137,7 +136,7 @@ static void vn_combo_set_model (VnCombo * self, DbModel * model)
|
|||
}
|
||||
if (model)
|
||||
{
|
||||
self->tree = GTK_TREE_MODEL (vn_grid_model_new (model));
|
||||
self->tree = GTK_TREE_MODEL (vn_list_model_new (model));
|
||||
self->model = g_object_ref (model);
|
||||
g_signal_connect (model, "status-changed",
|
||||
G_CALLBACK (vn_combo_on_status_changed), self);
|
||||
|
@ -269,7 +268,7 @@ static void vn_combo_init (VnCombo * self)
|
|||
g_signal_connect (self->combo, "changed",
|
||||
G_CALLBACK (vn_combo_on_changed), self);
|
||||
gtk_container_add (GTK_CONTAINER (self), GTK_WIDGET (self->combo));
|
||||
|
||||
|
||||
self->cell = gtk_cell_renderer_text_new ();
|
||||
gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (self->combo), self->cell, TRUE);
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
#include "vn-completion.h"
|
||||
#include <db/db.h>
|
||||
#include <vn/vn-grid-model.h>
|
||||
#include <vn/vn-list-model.h>
|
||||
#include <string.h>
|
||||
|
||||
#define set_icon(self,icon_name) (gtk_entry_set_icon_from_icon_name (self->entry, GTK_ENTRY_ICON_SECONDARY, icon_name))
|
||||
|
@ -64,7 +64,7 @@ static void vn_completion_on_status_changed (DbModel * model,
|
|||
|
||||
if (status == DB_MODEL_STATUS_READY)
|
||||
{
|
||||
GtkTreeModel * tree = GTK_TREE_MODEL (vn_grid_model_new (model));
|
||||
GtkTreeModel * tree = GTK_TREE_MODEL (vn_list_model_new (model));
|
||||
gtk_entry_completion_set_model (self->completion, tree);
|
||||
g_signal_emit_by_name (self->entry, "changed");
|
||||
g_object_unref (tree);
|
||||
|
|
|
@ -65,7 +65,7 @@ static void vn_column_data_func (GtkTreeViewColumn * col, GtkCellRenderer * cell
|
|||
/*
|
||||
vn_gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
ops = db_model_get_row_operations (
|
||||
vn_grid_model_get_model (VN_GRID_MODEL (model))
|
||||
vn_list_model_get_model (VN_LIST_MODEL (model))
|
||||
,&dbiter
|
||||
);
|
||||
|
||||
|
|
|
@ -1,507 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2012 - Juan Ferrer Toribio
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "vn-grid-model.h"
|
||||
|
||||
typedef struct
|
||||
{
|
||||
gchar * detail;
|
||||
gpointer callback;
|
||||
}
|
||||
GvnSignalInfo;
|
||||
|
||||
/*
|
||||
* gvn_object_link:
|
||||
* @obj: instance
|
||||
* @prop: property of @obj to be set to @prop_value
|
||||
* @prop_value: the value to set on @prop
|
||||
* @info: an array of GvnSignalInfo
|
||||
*
|
||||
* Connects the signals of an object passed on @prop_value to the callbacks
|
||||
* listed in a GvnSignalInfo array.
|
||||
*/
|
||||
void _gvn_object_link (gpointer obj, gpointer * prop, gpointer prop_value, GvnSignalInfo * info)
|
||||
{
|
||||
gint i;
|
||||
|
||||
if (*prop)
|
||||
{
|
||||
for (i = 0; info[i].detail; i++)
|
||||
g_signal_handlers_disconnect_by_func (*prop, info[i].callback, obj);
|
||||
|
||||
g_object_unref (*prop);
|
||||
}
|
||||
|
||||
if (prop_value)
|
||||
{
|
||||
for (i = 0; info[i].detail; i++)
|
||||
if (g_str_has_suffix (info[i].detail, ".after"))
|
||||
{
|
||||
gchar ** split = g_strsplit (info[i].detail, ".", 0);
|
||||
g_signal_connect_after (prop_value, split[0], info[i].callback, obj);
|
||||
g_strfreev (split);
|
||||
}
|
||||
else
|
||||
g_signal_connect (prop_value, info[i].detail, info[i].callback, obj);
|
||||
|
||||
*prop = g_object_ref_sink (prop_value);
|
||||
}
|
||||
else
|
||||
*prop = NULL;
|
||||
}
|
||||
|
||||
#define gvn_object_link(obj, prop, prop_value, info) (_gvn_object_link (obj, (void**) prop, prop_value, info))
|
||||
|
||||
static void vn_grid_model_tree_model_init (GtkTreeModelIface * iface);
|
||||
static void vn_grid_model_tree_sortable_init (GtkTreeSortableIface * iface);
|
||||
|
||||
G_DEFINE_TYPE_WITH_CODE (VnGridModel, vn_grid_model, G_TYPE_OBJECT,
|
||||
G_IMPLEMENT_INTERFACE (GTK_TYPE_TREE_MODEL,
|
||||
vn_grid_model_tree_model_init)
|
||||
G_IMPLEMENT_INTERFACE (GTK_TYPE_TREE_SORTABLE,
|
||||
vn_grid_model_tree_sortable_init)
|
||||
);
|
||||
|
||||
/**
|
||||
* vn_grid_model_new:
|
||||
* @model: a #DbModel
|
||||
*
|
||||
* Creates a new #VnGridModel with @model as the data model.
|
||||
*
|
||||
* Return value: (transfer full): a #VnGridModel.
|
||||
**/
|
||||
VnGridModel * vn_grid_model_new (DbModel * model)
|
||||
{
|
||||
return g_object_new (VN_TYPE_GRID_MODEL, "model", model, NULL);
|
||||
}
|
||||
|
||||
/**
|
||||
* vn_grid_model_get_model:
|
||||
* @obj: a #VnGridModel
|
||||
*
|
||||
* Passes the #DbModel used internally by @model.
|
||||
*
|
||||
* Return value: (transfer none): a #DbModel.
|
||||
**/
|
||||
DbModel * vn_grid_model_get_model (VnGridModel * obj)
|
||||
{
|
||||
g_return_val_if_fail (VN_IS_GRID_MODEL (obj), NULL);
|
||||
|
||||
return obj->model;
|
||||
}
|
||||
/**
|
||||
* vn_gtk_tree_iter_from_db_iter:
|
||||
* @dest_iter: the #GtkTreeIter to set using the data on @src_iter
|
||||
* @src_iter: a valid #DbIter
|
||||
*
|
||||
* Sets a #GtkTreeIter with the data of a #DbIter. This function is mostly used
|
||||
* internally.
|
||||
**/
|
||||
void gtk_tree_iter_from_db_iter (GtkTreeIter * dest_iter, const DbIter * src_iter)
|
||||
{
|
||||
dest_iter->stamp = src_iter->stamp;
|
||||
dest_iter->user_data = src_iter->data;
|
||||
}
|
||||
|
||||
/**
|
||||
* vn_gtk_tree_iter_to_db_iter:
|
||||
* @src_iter: a valid #GtkTreeIter
|
||||
* @dest_iter: the #DbIter to set using the data on @src_iter
|
||||
*
|
||||
* Sets a with #DbIter the data of a #GtkTreeIter. This function is mostly used
|
||||
* internally.
|
||||
**/
|
||||
void gtk_tree_iter_to_db_iter (const GtkTreeIter * src_iter, DbIter * dest_iter)
|
||||
{
|
||||
dest_iter->stamp = src_iter->stamp;
|
||||
dest_iter->data = src_iter->user_data;
|
||||
}
|
||||
|
||||
/**
|
||||
* vn_grid_model_iter_is_valid:
|
||||
* @iter: a #GtkTreeIter
|
||||
* @model: a #GtkTreeModel
|
||||
*
|
||||
* Checks if @iter is a valid #GtkTreeIter pointing inside #GtkTreeModel.
|
||||
**/
|
||||
gboolean vn_grid_model_iter_is_valid (GtkTreeIter * iter, GtkTreeModel * model)
|
||||
{
|
||||
DbIter dbiter;
|
||||
|
||||
g_return_val_if_fail (GTK_IS_TREE_MODEL (model), FALSE);
|
||||
|
||||
gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
return db_model_iter_is_valid (&dbiter, VN_GRID_MODEL (model)->model);
|
||||
}
|
||||
|
||||
static gint vn_grid_model_get_nrows (GtkTreeModel * obj)
|
||||
{
|
||||
return db_model_get_nrows (VN_GRID_MODEL (obj)->model);
|
||||
}
|
||||
|
||||
//++++ Broadcast of GtkTreeModel and GtkTreeSortable signals:
|
||||
|
||||
static void vn_grid_model_on_line_updated (DbModel * model, DbIter * dbiter, GtkTreeModel * obj)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
gtk_tree_iter_from_db_iter (&iter, dbiter);
|
||||
|
||||
GtkTreePath * path = gtk_tree_path_new ();
|
||||
gtk_tree_path_append_index (path, db_model_get_path (model, dbiter));
|
||||
|
||||
gtk_tree_model_row_changed (obj, path, &iter);
|
||||
|
||||
gtk_tree_path_free (path);
|
||||
}
|
||||
|
||||
static void vn_grid_model_on_line_inserted (DbModel * model, DbIter * dbiter, GtkTreeModel * obj)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
gtk_tree_iter_from_db_iter (&iter, dbiter);
|
||||
|
||||
GtkTreePath * path = gtk_tree_path_new ();
|
||||
gtk_tree_path_append_index (path,
|
||||
db_model_get_path (model, dbiter));
|
||||
|
||||
gtk_tree_model_row_inserted (obj, path, &iter);
|
||||
|
||||
gtk_tree_path_free (path);
|
||||
}
|
||||
|
||||
static void vn_grid_model_on_line_deleted (DbModel * model, gint position, GtkTreeModel * obj)
|
||||
{
|
||||
GtkTreePath * path = gtk_tree_path_new ();
|
||||
gtk_tree_path_append_index (path, position);
|
||||
|
||||
if (gtk_tree_path_get_indices (path))
|
||||
gtk_tree_model_row_deleted (obj, path);
|
||||
|
||||
gtk_tree_path_free (path);
|
||||
}
|
||||
|
||||
static void vn_grid_model_on_lines_reordered (DbModel * model, guint col, gint * new_order, GtkTreeModel * obj)
|
||||
{
|
||||
GtkTreePath * path = gtk_tree_path_new ();
|
||||
gtk_tree_model_rows_reordered (obj, path, NULL, new_order);
|
||||
gtk_tree_path_free (path);
|
||||
}
|
||||
|
||||
static void vn_grid_model_on_sort_changed (DbModel * model, GtkTreeSortable * obj)
|
||||
{
|
||||
g_signal_emit_by_name (obj, "sort-column-changed");
|
||||
}
|
||||
|
||||
//++++ Implementation of GtkTreeModel methods (using DbModel methods)
|
||||
|
||||
static GtkTreeModelFlags vn_grid_model_get_flags (GtkTreeModel * obj)
|
||||
{
|
||||
return GTK_TREE_MODEL_ITERS_PERSIST | GTK_TREE_MODEL_LIST_ONLY;
|
||||
}
|
||||
|
||||
static gint vn_grid_model_get_ncols (GtkTreeModel * obj)
|
||||
{
|
||||
return db_model_get_ncols (VN_GRID_MODEL (obj)->model);
|
||||
}
|
||||
|
||||
static GType vn_grid_model_get_column_type (GtkTreeModel * obj, gint index_)
|
||||
{
|
||||
return db_model_get_column_type (VN_GRID_MODEL (obj)->model, index_);
|
||||
}
|
||||
|
||||
static gboolean vn_grid_model_get_iter (GtkTreeModel * obj, GtkTreeIter * iter,
|
||||
GtkTreePath * path)
|
||||
{
|
||||
DbIter dbiter;
|
||||
gint p = gtk_tree_path_get_indices (path)[0];
|
||||
|
||||
gboolean ret = db_model_get_iter (VN_GRID_MODEL (obj)->model, &dbiter, p);
|
||||
|
||||
if (ret)
|
||||
gtk_tree_iter_from_db_iter (iter, &dbiter);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static GtkTreePath * vn_grid_model_get_path (GtkTreeModel * obj, GtkTreeIter * iter)
|
||||
{
|
||||
GtkTreePath * path;
|
||||
DbIter dbiter;
|
||||
|
||||
gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
|
||||
path = gtk_tree_path_new ();
|
||||
gtk_tree_path_append_index (path,
|
||||
db_model_get_path (VN_GRID_MODEL (obj)->model, &dbiter));
|
||||
|
||||
return path;
|
||||
}
|
||||
|
||||
static void vn_grid_model_get_value (GtkTreeModel * obj, GtkTreeIter * iter,
|
||||
gint column, GValue * value)
|
||||
{
|
||||
const GValue * v;
|
||||
DbIter dbiter;
|
||||
|
||||
gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
|
||||
v = db_model_get_value (VN_GRID_MODEL (obj)->model, &dbiter, column, NULL);
|
||||
|
||||
if (v)
|
||||
{
|
||||
g_value_init (value, G_VALUE_TYPE (v));
|
||||
g_value_copy (v, value);
|
||||
}
|
||||
else
|
||||
g_value_init (value, GVN_TYPE_NULL);
|
||||
}
|
||||
|
||||
static gboolean vn_grid_model_iter_next (GtkTreeModel * obj, GtkTreeIter * iter)
|
||||
{
|
||||
DbIter dbiter;
|
||||
gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
|
||||
gboolean ret_val = db_model_iter_next (VN_GRID_MODEL (obj)->model, &dbiter);
|
||||
|
||||
iter->user_data = dbiter.data;
|
||||
|
||||
return ret_val;
|
||||
}
|
||||
|
||||
static gboolean vn_grid_model_iter_previous (GtkTreeModel * obj, GtkTreeIter * iter)
|
||||
{
|
||||
DbIter dbiter;
|
||||
gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
|
||||
gboolean ret_val = db_model_iter_prev (VN_GRID_MODEL (obj)->model, &dbiter);
|
||||
|
||||
iter->user_data = dbiter.data;
|
||||
|
||||
return ret_val;
|
||||
}
|
||||
|
||||
static gboolean vn_grid_model_iter_children (GtkTreeModel * obj, GtkTreeIter * iter,
|
||||
GtkTreeIter * parent)
|
||||
{
|
||||
if (parent == NULL)
|
||||
{
|
||||
DbIter dbiter;
|
||||
|
||||
gboolean ret_val = db_model_get_iter_first (VN_GRID_MODEL (obj)->model
|
||||
,&dbiter);
|
||||
|
||||
if (ret_val)
|
||||
gtk_tree_iter_from_db_iter (iter, &dbiter);
|
||||
|
||||
return ret_val;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static gboolean vn_grid_model_iter_has_child (GtkTreeModel * obj, GtkTreeIter * iter)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static gint vn_grid_model_iter_n_children (GtkTreeModel * obj, GtkTreeIter * iter)
|
||||
{
|
||||
if (iter == NULL)
|
||||
return vn_grid_model_get_nrows (obj);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static gboolean vn_grid_model_iter_nth_child (GtkTreeModel * obj, GtkTreeIter * iter
|
||||
,GtkTreeIter * parent, gint n)
|
||||
{
|
||||
if (parent == NULL)
|
||||
{
|
||||
DbIter dbiter;
|
||||
gboolean ret = db_model_get_iter (VN_GRID_MODEL (obj)->model, &dbiter, n);
|
||||
|
||||
if (ret)
|
||||
gtk_tree_iter_from_db_iter (iter, &dbiter);
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static gboolean vn_grid_model_iter_parent (GtkTreeModel * obj, GtkTreeIter * iter,
|
||||
GtkTreeIter * child)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
//++++ Implementation of GtkTreeSortable methods (using DbModel methods)
|
||||
|
||||
static gboolean vn_grid_model_get_sort_column_id (GtkTreeSortable * obj,
|
||||
gint * sort_column_id,
|
||||
GtkSortType * order)
|
||||
{
|
||||
return db_model_get_sort_column_id (VN_GRID_MODEL (obj)->model
|
||||
,sort_column_id, (DbSortType *) order);
|
||||
}
|
||||
|
||||
static void vn_grid_model_set_sort_column_id (GtkTreeSortable * obj, gint sort_column_id,
|
||||
GtkSortType order)
|
||||
{
|
||||
DbSortType db_order;
|
||||
|
||||
if (order == GTK_SORT_ASCENDING)
|
||||
db_order = DB_SORT_ASCENDING;
|
||||
else
|
||||
db_order = DB_SORT_DESCENDING;
|
||||
|
||||
db_model_set_sort_column_id (VN_GRID_MODEL (obj)->model, sort_column_id, db_order);
|
||||
}
|
||||
|
||||
static void vn_grid_model_set_sort_func (GtkTreeSortable *sortable, gint sort_column_id,
|
||||
GtkTreeIterCompareFunc sort_func, gpointer user_data, GDestroyNotify destroy)
|
||||
{
|
||||
g_log (g_quark_to_string (VN_GRID_MODEL_LOG_DOMAIN)
|
||||
,G_LOG_LEVEL_WARNING, "Function vn_grid_model_set_sort_func not implemented");
|
||||
}
|
||||
|
||||
static void vn_grid_model_set_default_sort_func (GtkTreeSortable *sortable,
|
||||
GtkTreeIterCompareFunc sort_func, gpointer user_data, GDestroyNotify destroy)
|
||||
{
|
||||
g_log (g_quark_to_string (VN_GRID_MODEL_LOG_DOMAIN)
|
||||
,G_LOG_LEVEL_WARNING, "Function vn_grid_model_set_default_sort_func not implemented");
|
||||
}
|
||||
|
||||
static gboolean vn_grid_model_has_default_sort_func (GtkTreeSortable * obj)
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Properties
|
||||
|
||||
typedef enum
|
||||
{
|
||||
PROP_MODEL = 1
|
||||
}
|
||||
VnGridModelProp;
|
||||
|
||||
/*Experimental way to connect a property object signals using gvn_object_link*/
|
||||
GvnSignalInfo signal_info[] =
|
||||
{
|
||||
{"line-updated.after", vn_grid_model_on_line_updated
|
||||
},{"line-inserted", vn_grid_model_on_line_inserted
|
||||
},{"line-deleted.after", vn_grid_model_on_line_deleted
|
||||
},{"lines-reordered", vn_grid_model_on_lines_reordered
|
||||
},{"sort-changed", vn_grid_model_on_sort_changed
|
||||
},{NULL}
|
||||
};
|
||||
|
||||
static void vn_grid_model_set_property (VnGridModel * obj, guint property_id,
|
||||
const GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (property_id)
|
||||
{
|
||||
case PROP_MODEL:
|
||||
gvn_object_link (obj, &obj->model, g_value_get_object (value), signal_info);
|
||||
/*g_object_ref_sink (obj->model);
|
||||
g_object_connect (obj->model
|
||||
,"signal-after::line-updated", vn_grid_model_on_line_updated, obj
|
||||
,"signal::line-inserted", vn_grid_model_on_line_inserted, obj
|
||||
,"signal-after::line-deleted", vn_grid_model_on_line_deleted, obj
|
||||
,"signal::lines-reordered", vn_grid_model_on_lines_reordered, obj
|
||||
,"signal::sort-changed", vn_grid_model_on_sort_changed, obj, NULL);*/
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, property_id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
static void vn_grid_model_get_property (VnGridModel * obj, guint property_id,
|
||||
GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (property_id)
|
||||
{
|
||||
case PROP_MODEL:
|
||||
g_value_set_object (value, obj->model);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, property_id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Class
|
||||
|
||||
static void vn_grid_model_finalize (VnGridModel * obj)
|
||||
{
|
||||
gvn_object_link (obj, &obj->model, NULL, signal_info);
|
||||
/*
|
||||
g_object_disconnect (obj->model
|
||||
,"any_signal", vn_grid_model_on_line_updated, obj
|
||||
,"any_signal", vn_grid_model_on_line_inserted, obj
|
||||
,"any_signal", vn_grid_model_on_line_deleted, obj
|
||||
,"any_signal", vn_grid_model_on_lines_reordered, obj
|
||||
,"any_signal", vn_grid_model_on_sort_changed, obj, NULL);
|
||||
|
||||
g_object_unref (obj->model);
|
||||
*/
|
||||
G_OBJECT_CLASS (vn_grid_model_parent_class)->finalize (G_OBJECT (obj));
|
||||
}
|
||||
|
||||
static void vn_grid_model_class_init (VnGridModelClass * k)
|
||||
{
|
||||
GObjectClass * klass = G_OBJECT_CLASS (k);
|
||||
klass->set_property = (GObjectSetPropertyFunc) vn_grid_model_set_property;
|
||||
klass->get_property = (GObjectGetPropertyFunc) vn_grid_model_get_property;
|
||||
klass->finalize = (GObjectFinalizeFunc) vn_grid_model_finalize;
|
||||
|
||||
g_object_class_install_property (klass, PROP_MODEL,
|
||||
g_param_spec_object ("model"
|
||||
,"Model"
|
||||
,"The #DbModel with the data used by the #VnGridModel"
|
||||
,DB_TYPE_MODEL
|
||||
,G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE
|
||||
));
|
||||
}
|
||||
|
||||
static void vn_grid_model_tree_model_init (GtkTreeModelIface * iface)
|
||||
{
|
||||
iface->get_flags = vn_grid_model_get_flags;
|
||||
iface->get_n_columns = vn_grid_model_get_ncols;
|
||||
iface->get_column_type = vn_grid_model_get_column_type;
|
||||
iface->get_iter = vn_grid_model_get_iter;
|
||||
iface->get_path = vn_grid_model_get_path;
|
||||
iface->get_value = vn_grid_model_get_value;
|
||||
iface->iter_next = vn_grid_model_iter_next;
|
||||
iface->iter_previous = vn_grid_model_iter_previous;
|
||||
|
||||
iface->iter_children = vn_grid_model_iter_children;
|
||||
iface->iter_has_child = vn_grid_model_iter_has_child;
|
||||
iface->iter_n_children = vn_grid_model_iter_n_children;
|
||||
iface->iter_nth_child = vn_grid_model_iter_nth_child;
|
||||
iface->iter_parent = vn_grid_model_iter_parent;
|
||||
}
|
||||
|
||||
static void vn_grid_model_tree_sortable_init (GtkTreeSortableIface * iface)
|
||||
{
|
||||
iface->get_sort_column_id = vn_grid_model_get_sort_column_id;
|
||||
iface->set_sort_column_id = vn_grid_model_set_sort_column_id;
|
||||
iface->set_sort_func = vn_grid_model_set_sort_func;
|
||||
iface->set_default_sort_func = vn_grid_model_set_default_sort_func;
|
||||
iface->has_default_sort_func = vn_grid_model_has_default_sort_func;
|
||||
}
|
||||
|
||||
static void vn_grid_model_init (VnGridModel * obj)
|
||||
{
|
||||
obj->model = NULL;
|
||||
}
|
|
@ -334,7 +334,7 @@ static void vn_grid_on_model_status_changed (DbModel * model, DbModelStatus stat
|
|||
|
||||
db_iterator_status_changed (DB_ITERATOR (self), TRUE);
|
||||
|
||||
tree_model = GTK_TREE_MODEL (vn_grid_model_new (self->model));
|
||||
tree_model = GTK_TREE_MODEL (vn_list_model_new (self->model));
|
||||
gtk_tree_view_set_model (GTK_TREE_VIEW (self), tree_model);
|
||||
vn_grid_on_iter_changed (GTK_TREE_VIEW (self));
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
|
||||
#include <db/db.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include "vn-grid-model.h"
|
||||
#include "vn-list-model.h"
|
||||
#include "vn-column.h"
|
||||
|
||||
#define VN_TYPE_GRID (vn_grid_get_type ())
|
||||
|
@ -51,6 +51,6 @@ struct _VnGridClass
|
|||
};
|
||||
|
||||
GType vn_grid_get_type ();
|
||||
VnGrid * vn_grid_new ();
|
||||
VnGrid * vn_grid_new (DbModel * model);
|
||||
|
||||
#endif
|
|
@ -0,0 +1,600 @@
|
|||
/*
|
||||
* Copyright (C) 2012 - Juan Ferrer Toribio
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "vn-list-model.h"
|
||||
|
||||
typedef struct
|
||||
{
|
||||
gchar * detail;
|
||||
gpointer callback;
|
||||
}
|
||||
GvnSignalInfo;
|
||||
|
||||
/*
|
||||
* gvn_object_link:
|
||||
* @obj: instance
|
||||
* @prop: property of @obj to be set to @prop_value
|
||||
* @prop_value: the value to set on @prop
|
||||
* @info: an array of GvnSignalInfo
|
||||
*
|
||||
* Connects the signals of an object passed on @prop_value to the callbacks
|
||||
* listed in a GvnSignalInfo array.
|
||||
*/
|
||||
void _gvn_object_link (gpointer self, gpointer * prop, gpointer prop_value, GvnSignalInfo * info)
|
||||
{
|
||||
gint i;
|
||||
|
||||
if (*prop)
|
||||
{
|
||||
for (i = 0; info[i].detail; i++)
|
||||
g_signal_handlers_disconnect_by_func (*prop, info[i].callback, self);
|
||||
|
||||
g_object_unref (*prop);
|
||||
}
|
||||
|
||||
if (prop_value)
|
||||
{
|
||||
for (i = 0; info[i].detail; i++)
|
||||
if (g_str_has_suffix (info[i].detail, ".after"))
|
||||
{
|
||||
gchar ** split = g_strsplit (info[i].detail, ".", 0);
|
||||
g_signal_connect_after (prop_value, split[0], info[i].callback, self);
|
||||
g_strfreev (split);
|
||||
}
|
||||
else
|
||||
g_signal_connect (prop_value, info[i].detail, info[i].callback, self);
|
||||
|
||||
*prop = g_object_ref_sink (prop_value);
|
||||
}
|
||||
else
|
||||
*prop = NULL;
|
||||
}
|
||||
|
||||
#define gvn_object_link(self, prop, prop_value, info) (_gvn_object_link (self, (void**) prop, prop_value, info))
|
||||
|
||||
static void vn_list_model_tree_model_init (GtkTreeModelIface * iface);
|
||||
static void vn_list_model_tree_sortable_init (GtkTreeSortableIface * iface);
|
||||
|
||||
G_DEFINE_TYPE_WITH_CODE (VnListModel, vn_list_model, G_TYPE_OBJECT,
|
||||
G_IMPLEMENT_INTERFACE (GTK_TYPE_TREE_MODEL,
|
||||
vn_list_model_tree_model_init)
|
||||
G_IMPLEMENT_INTERFACE (GTK_TYPE_TREE_SORTABLE,
|
||||
vn_list_model_tree_sortable_init)
|
||||
);
|
||||
|
||||
/**
|
||||
* vn_list_model_new:
|
||||
* @model: a #DbModel
|
||||
*
|
||||
* Creates a new #VnListModel with @model as the data model.
|
||||
*
|
||||
* Return value: (transfer full): a #VnListModel.
|
||||
**/
|
||||
VnListModel * vn_list_model_new (DbModel * model)
|
||||
{
|
||||
return g_object_new (VN_TYPE_LIST_MODEL, "model", model, NULL);
|
||||
}
|
||||
|
||||
/**
|
||||
* vn_list_model_get_model:
|
||||
* @obj: a #VnListModel
|
||||
*
|
||||
* Passes the #DbModel used internally by @model.
|
||||
*
|
||||
* Return value: (transfer none): a #DbModel.
|
||||
**/
|
||||
DbModel * vn_list_model_get_model (VnListModel * self)
|
||||
{
|
||||
g_return_val_if_fail (VN_IS_LIST_MODEL (self), NULL);
|
||||
|
||||
return self->model;
|
||||
}
|
||||
|
||||
/**
|
||||
* vn_list_model_use_null_row:
|
||||
* @self: a #VnListModel
|
||||
* @use: wether to use a null row
|
||||
*
|
||||
* Sets wether to use a null row at the end of the model. This row can't be
|
||||
* modified, its purpose is to set a #NULL option in selection widgets, like
|
||||
* #VnCombo.
|
||||
**/
|
||||
void vn_list_model_use_null_row (VnListModel * self, gboolean use)
|
||||
{
|
||||
g_return_if_fail (VN_IS_LIST_MODEL (self));
|
||||
|
||||
self->null_row = use;
|
||||
}
|
||||
|
||||
/**
|
||||
* vn_gtk_tree_iter_from_db_iter:
|
||||
* @dest_iter: the #GtkTreeIter to set using the data on @src_iter
|
||||
* @src_iter: a valid #DbIter
|
||||
*
|
||||
* Sets a #GtkTreeIter with the data of a #DbIter. This function is mostly used
|
||||
* internally.
|
||||
**/
|
||||
void gtk_tree_iter_from_db_iter (GtkTreeIter * dest_iter, const DbIter * src_iter)
|
||||
{
|
||||
dest_iter->stamp = src_iter->stamp;
|
||||
dest_iter->user_data = src_iter->data;
|
||||
}
|
||||
|
||||
/**
|
||||
* vn_gtk_tree_iter_to_db_iter:
|
||||
* @src_iter: a valid #GtkTreeIter
|
||||
* @dest_iter: the #DbIter to set using the data on @src_iter
|
||||
*
|
||||
* Sets a with #DbIter the data of a #GtkTreeIter. This function is mostly used
|
||||
* internally.
|
||||
**/
|
||||
void gtk_tree_iter_to_db_iter (const GtkTreeIter * src_iter, DbIter * dest_iter)
|
||||
{
|
||||
dest_iter->stamp = src_iter->stamp;
|
||||
dest_iter->data = src_iter->user_data;
|
||||
}
|
||||
|
||||
/**
|
||||
* vn_list_model_iter_is_valid:
|
||||
* @iter: a #GtkTreeIter
|
||||
* @model: a #GtkTreeModel
|
||||
*
|
||||
* Checks if @iter is a valid #GtkTreeIter pointing inside #GtkTreeModel.
|
||||
**/
|
||||
gboolean vn_list_model_iter_is_valid (GtkTreeIter * iter, GtkTreeModel * model)
|
||||
{
|
||||
DbIter dbiter;
|
||||
|
||||
g_return_val_if_fail (GTK_IS_TREE_MODEL (model), FALSE);
|
||||
|
||||
gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
return db_model_iter_is_valid (&dbiter, VN_LIST_MODEL (model)->model);
|
||||
}
|
||||
|
||||
static gint vn_list_model_get_nrows (GtkTreeModel * self)
|
||||
{
|
||||
gint nrows = db_model_get_nrows (VN_LIST_MODEL (self)->model);
|
||||
|
||||
return VN_LIST_MODEL (self)->null_row ? nrows + 1 : nrows;
|
||||
}
|
||||
|
||||
//++++ Broadcast of GtkTreeModel and GtkTreeSortable signals:
|
||||
|
||||
static void vn_list_model_on_line_updated (DbModel * model, DbIter * dbiter, GtkTreeModel * self)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
GtkTreePath * path;
|
||||
gint p = db_model_get_path (model, dbiter);
|
||||
p = VN_LIST_MODEL (self)->null_row ? p + 1 : p;
|
||||
gtk_tree_iter_from_db_iter (&iter, dbiter);
|
||||
|
||||
path = gtk_tree_path_new ();
|
||||
gtk_tree_path_append_index (path, p);
|
||||
|
||||
gtk_tree_model_row_changed (self, path, &iter);
|
||||
|
||||
gtk_tree_path_free (path);
|
||||
}
|
||||
|
||||
static void vn_list_model_on_line_inserted (DbModel * model, DbIter * dbiter, GtkTreeModel * self)
|
||||
{
|
||||
GtkTreeIter iter;
|
||||
GtkTreePath * path;
|
||||
gint p = db_model_get_path (model, dbiter);
|
||||
p = VN_LIST_MODEL (self)->null_row ? p + 1 : p;
|
||||
gtk_tree_iter_from_db_iter (&iter, dbiter);
|
||||
|
||||
path = gtk_tree_path_new ();
|
||||
gtk_tree_path_append_index (path, p);
|
||||
|
||||
gtk_tree_model_row_inserted (self, path, &iter);
|
||||
|
||||
gtk_tree_path_free (path);
|
||||
}
|
||||
|
||||
static void vn_list_model_on_line_deleted (DbModel * model, gint pos, GtkTreeModel * self)
|
||||
{
|
||||
GtkTreePath * path = gtk_tree_path_new ();
|
||||
|
||||
gtk_tree_path_append_index (path,
|
||||
VN_LIST_MODEL (self)->null_row ? pos + 1 : pos);
|
||||
|
||||
if (gtk_tree_path_get_indices (path))
|
||||
gtk_tree_model_row_deleted (self, path);
|
||||
|
||||
gtk_tree_path_free (path);
|
||||
}
|
||||
|
||||
static void vn_list_model_on_lines_reordered (DbModel * model, guint col, gint * new_order, GtkTreeModel * self)
|
||||
{
|
||||
GtkTreePath * path = gtk_tree_path_new ();
|
||||
gtk_tree_model_rows_reordered (self, path, NULL, new_order);
|
||||
gtk_tree_path_free (path);
|
||||
}
|
||||
|
||||
static void vn_list_model_on_sort_changed (DbModel * model, GtkTreeSortable * self)
|
||||
{
|
||||
g_signal_emit_by_name (self, "sort-column-changed");
|
||||
}
|
||||
|
||||
//++++ Implementation of GtkTreeModel methods (using DbModel methods)
|
||||
|
||||
static GtkTreeModelFlags vn_list_model_get_flags (GtkTreeModel * self)
|
||||
{
|
||||
return GTK_TREE_MODEL_ITERS_PERSIST | GTK_TREE_MODEL_LIST_ONLY;
|
||||
}
|
||||
|
||||
static gint vn_list_model_get_ncols (GtkTreeModel * self)
|
||||
{
|
||||
return db_model_get_ncols (VN_LIST_MODEL (self)->model);
|
||||
}
|
||||
|
||||
static GType vn_list_model_get_column_type (GtkTreeModel * self, gint index_)
|
||||
{
|
||||
return db_model_get_column_type (VN_LIST_MODEL (self)->model, index_);
|
||||
}
|
||||
|
||||
static gboolean vn_list_model_get_iter (GtkTreeModel * self, GtkTreeIter * iter,
|
||||
GtkTreePath * path)
|
||||
{
|
||||
gboolean ok = FALSE;
|
||||
gint p = gtk_tree_path_get_indices (path)[0];
|
||||
p = VN_LIST_MODEL (self)->null_row ? p - 1 : p;
|
||||
|
||||
if (p >= 0)
|
||||
{
|
||||
DbIter dbiter;
|
||||
ok = db_model_get_iter (VN_LIST_MODEL (self)->model, &dbiter, p);
|
||||
|
||||
if (ok)
|
||||
gtk_tree_iter_from_db_iter (iter, &dbiter);
|
||||
}
|
||||
else
|
||||
{
|
||||
iter->user_data = self;
|
||||
ok = TRUE;
|
||||
}
|
||||
|
||||
return ok;
|
||||
}
|
||||
|
||||
static GtkTreePath * vn_list_model_get_path (GtkTreeModel * self, GtkTreeIter * iter)
|
||||
{
|
||||
gint p;
|
||||
GtkTreePath * path;
|
||||
|
||||
if (iter->user_data != self)
|
||||
{
|
||||
DbIter dbiter;
|
||||
|
||||
gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
|
||||
p = db_model_get_path (VN_LIST_MODEL (self)->model, &dbiter);
|
||||
p = VN_LIST_MODEL (self)->null_row ? p + 1 : p;
|
||||
}
|
||||
else
|
||||
p = 0;
|
||||
|
||||
path = gtk_tree_path_new ();
|
||||
gtk_tree_path_append_index (path, p);
|
||||
return path;
|
||||
}
|
||||
|
||||
static void vn_list_model_get_value (GtkTreeModel * self, GtkTreeIter * iter,
|
||||
gint column, GValue * value)
|
||||
{
|
||||
GValue * v = NULL;
|
||||
|
||||
if (iter->user_data != self)
|
||||
{
|
||||
DbIter dbiter;
|
||||
gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
v = (GValue *) db_model_get_value (VN_LIST_MODEL (self)->model, &dbiter, column, NULL);
|
||||
}
|
||||
|
||||
if (v)
|
||||
{
|
||||
g_value_init (value, G_VALUE_TYPE (v));
|
||||
g_value_copy (v, value);
|
||||
}
|
||||
else
|
||||
g_value_init (value, GVN_TYPE_NULL);
|
||||
}
|
||||
|
||||
static gboolean vn_list_model_iter_next (GtkTreeModel * self, GtkTreeIter * iter)
|
||||
{
|
||||
DbIter dbiter;
|
||||
gboolean ret_val;
|
||||
|
||||
if (iter->user_data != self)
|
||||
{
|
||||
gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
ret_val = db_model_iter_next (VN_LIST_MODEL (self)->model, &dbiter);
|
||||
}
|
||||
else
|
||||
ret_val = db_model_get_iter_first (VN_LIST_MODEL (self)->model, &dbiter);
|
||||
|
||||
gtk_tree_iter_from_db_iter (iter, &dbiter);
|
||||
return ret_val;
|
||||
}
|
||||
|
||||
static gboolean vn_list_model_iter_previous (GtkTreeModel * self, GtkTreeIter * iter)
|
||||
{
|
||||
if (iter->user_data != self)
|
||||
{
|
||||
DbIter dbiter;
|
||||
DbModel * model = VN_LIST_MODEL (self)->model;
|
||||
|
||||
gtk_tree_iter_to_db_iter (iter, &dbiter);
|
||||
|
||||
if (db_model_iter_prev (model, &dbiter))
|
||||
{
|
||||
iter->user_data = dbiter.data;
|
||||
return TRUE;
|
||||
}
|
||||
else if (db_model_get_iter_first (model, &dbiter)
|
||||
&& iter->user_data == dbiter.data)
|
||||
{
|
||||
iter->user_data = self;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static gboolean vn_list_model_iter_children (GtkTreeModel * self, GtkTreeIter * iter,
|
||||
GtkTreeIter * parent)
|
||||
{
|
||||
if (parent == NULL)
|
||||
{
|
||||
gboolean ret_val;
|
||||
|
||||
if (!VN_LIST_MODEL (self)->null_row)
|
||||
{
|
||||
DbIter dbiter;
|
||||
ret_val = db_model_get_iter_first (VN_LIST_MODEL (self)->model, &dbiter);
|
||||
|
||||
if (ret_val)
|
||||
gtk_tree_iter_from_db_iter (iter, &dbiter);
|
||||
}
|
||||
else
|
||||
{
|
||||
iter->user_data = self;
|
||||
ret_val = TRUE;
|
||||
}
|
||||
|
||||
return ret_val;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static gboolean vn_list_model_iter_has_child (GtkTreeModel * self, GtkTreeIter * iter)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static gint vn_list_model_iter_n_children (GtkTreeModel * self, GtkTreeIter * iter)
|
||||
{
|
||||
if (iter == NULL)
|
||||
{
|
||||
gint nrows = vn_list_model_get_nrows (self);
|
||||
return VN_LIST_MODEL (self)->null_row ? nrows + 1 : nrows;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static gboolean vn_list_model_iter_nth_child (GtkTreeModel * self, GtkTreeIter * iter
|
||||
,GtkTreeIter * parent, gint n)
|
||||
{
|
||||
if (parent == NULL)
|
||||
{
|
||||
DbIter dbiter;
|
||||
gboolean ok = db_model_get_iter (VN_LIST_MODEL (self)->model,
|
||||
&dbiter, VN_LIST_MODEL (self)->null_row ? n - 1 : n);
|
||||
|
||||
if (ok)
|
||||
{
|
||||
gtk_tree_iter_from_db_iter (iter, &dbiter);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static gboolean vn_list_model_iter_parent (GtkTreeModel * self, GtkTreeIter * iter,
|
||||
GtkTreeIter * child)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
//++++ Implementation of GtkTreeSortable methods (using DbModel methods)
|
||||
|
||||
static gboolean vn_list_model_get_sort_column_id (GtkTreeSortable * self,
|
||||
gint * sort_column_id,
|
||||
GtkSortType * order)
|
||||
{
|
||||
return db_model_get_sort_column_id (VN_LIST_MODEL (self)->model
|
||||
,sort_column_id, (DbSortType *) order);
|
||||
}
|
||||
|
||||
static void vn_list_model_set_sort_column_id (GtkTreeSortable * self, gint sort_column_id,
|
||||
GtkSortType order)
|
||||
{
|
||||
DbSortType db_order;
|
||||
|
||||
if (order == GTK_SORT_ASCENDING)
|
||||
db_order = DB_SORT_ASCENDING;
|
||||
else
|
||||
db_order = DB_SORT_DESCENDING;
|
||||
|
||||
db_model_set_sort_column_id (VN_LIST_MODEL (self)->model, sort_column_id, db_order);
|
||||
}
|
||||
|
||||
static void vn_list_model_set_sort_func (GtkTreeSortable *sortable, gint sort_column_id,
|
||||
GtkTreeIterCompareFunc sort_func, gpointer user_data, GDestroyNotify destroy)
|
||||
{
|
||||
g_warning ("Function vn_list_model_set_sort_func not implemented");
|
||||
}
|
||||
|
||||
static void vn_list_model_set_default_sort_func (GtkTreeSortable *sortable,
|
||||
GtkTreeIterCompareFunc sort_func, gpointer user_data, GDestroyNotify destroy)
|
||||
{
|
||||
g_warning ("Function vn_list_model_set_default_sort_func not implemented");
|
||||
}
|
||||
|
||||
static gboolean vn_list_model_has_default_sort_func (GtkTreeSortable * self)
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Properties
|
||||
|
||||
typedef enum
|
||||
{
|
||||
PROP_MODEL = 1
|
||||
,PROP_NULL_ROW
|
||||
}
|
||||
VnListModelProp;
|
||||
|
||||
/*Experimental way to connect a property object signals using gvn_object_link*/
|
||||
GvnSignalInfo signal_info[] =
|
||||
{
|
||||
{"line-updated.after", vn_list_model_on_line_updated
|
||||
},{"line-inserted", vn_list_model_on_line_inserted
|
||||
},{"line-deleted.after", vn_list_model_on_line_deleted
|
||||
},{"lines-reordered", vn_list_model_on_lines_reordered
|
||||
},{"sort-changed", vn_list_model_on_sort_changed
|
||||
},{NULL}
|
||||
};
|
||||
|
||||
static void vn_list_model_set_property (VnListModel * self, guint property_id,
|
||||
const GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (property_id)
|
||||
{
|
||||
case PROP_MODEL:
|
||||
gvn_object_link (self, &self->model, g_value_get_object (value), signal_info);
|
||||
/*g_object_ref_sink (self->model);
|
||||
g_object_connect (self->model
|
||||
,"signal-after::line-updated", vn_list_model_on_line_updated, obj
|
||||
,"signal::line-inserted", vn_list_model_on_line_inserted, obj
|
||||
,"signal-after::line-deleted", vn_list_model_on_line_deleted, obj
|
||||
,"signal::lines-reordered", vn_list_model_on_lines_reordered, obj
|
||||
,"signal::sort-changed", vn_list_model_on_sort_changed, self, NULL);*/
|
||||
break;
|
||||
case PROP_NULL_ROW:
|
||||
vn_list_model_use_null_row (self, g_value_get_boolean (value));
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (self, property_id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
static void vn_list_model_get_property (VnListModel * self, guint property_id,
|
||||
GValue * value, GParamSpec * pspec)
|
||||
{
|
||||
switch (property_id)
|
||||
{
|
||||
case PROP_MODEL:
|
||||
g_value_set_object (value, self->model);
|
||||
break;
|
||||
case PROP_NULL_ROW:
|
||||
g_value_set_boolean (value, self->null_row);
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (self, property_id, pspec);
|
||||
}
|
||||
}
|
||||
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Class
|
||||
|
||||
static void vn_list_model_init (VnListModel * self)
|
||||
{
|
||||
self->model = NULL;
|
||||
self->null_row = FALSE;
|
||||
}
|
||||
|
||||
static void vn_list_model_finalize (VnListModel * self)
|
||||
{
|
||||
gvn_object_link (self, &self->model, NULL, signal_info);
|
||||
/*
|
||||
g_object_disconnect (self->model
|
||||
,"any_signal", vn_list_model_on_line_updated, obj
|
||||
,"any_signal", vn_list_model_on_line_inserted, obj
|
||||
,"any_signal", vn_list_model_on_line_deleted, obj
|
||||
,"any_signal", vn_list_model_on_lines_reordered, obj
|
||||
,"any_signal", vn_list_model_on_sort_changed, self, NULL);
|
||||
|
||||
g_object_unref (self->model);
|
||||
*/
|
||||
G_OBJECT_CLASS (vn_list_model_parent_class)->finalize (G_OBJECT (self));
|
||||
}
|
||||
|
||||
static void vn_list_model_class_init (VnListModelClass * k)
|
||||
{
|
||||
GObjectClass * klass = G_OBJECT_CLASS (k);
|
||||
klass->set_property = (GObjectSetPropertyFunc) vn_list_model_set_property;
|
||||
klass->get_property = (GObjectGetPropertyFunc) vn_list_model_get_property;
|
||||
klass->finalize = (GObjectFinalizeFunc) vn_list_model_finalize;
|
||||
|
||||
g_object_class_install_property (klass, PROP_MODEL,
|
||||
g_param_spec_object ("model"
|
||||
,"Model"
|
||||
,"The #DbModel with the data used by the #VnListModel"
|
||||
,DB_TYPE_MODEL
|
||||
,G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE
|
||||
));
|
||||
|
||||
g_object_class_install_property (klass, PROP_NULL_ROW,
|
||||
g_param_spec_boolean ("null-row"
|
||||
,_("Null row")
|
||||
,_("Whether the list model will add a null row or not")
|
||||
,FALSE
|
||||
,G_PARAM_READWRITE
|
||||
));
|
||||
}
|
||||
|
||||
static void vn_list_model_tree_model_init (GtkTreeModelIface * iface)
|
||||
{
|
||||
iface->get_flags = vn_list_model_get_flags;
|
||||
iface->get_n_columns = vn_list_model_get_ncols;
|
||||
iface->get_column_type = vn_list_model_get_column_type;
|
||||
iface->get_iter = vn_list_model_get_iter;
|
||||
iface->get_path = vn_list_model_get_path;
|
||||
iface->get_value = vn_list_model_get_value;
|
||||
iface->iter_next = vn_list_model_iter_next;
|
||||
iface->iter_previous = vn_list_model_iter_previous;
|
||||
|
||||
iface->iter_children = vn_list_model_iter_children;
|
||||
iface->iter_has_child = vn_list_model_iter_has_child;
|
||||
iface->iter_n_children = vn_list_model_iter_n_children;
|
||||
iface->iter_nth_child = vn_list_model_iter_nth_child;
|
||||
iface->iter_parent = vn_list_model_iter_parent;
|
||||
}
|
||||
|
||||
static void vn_list_model_tree_sortable_init (GtkTreeSortableIface * iface)
|
||||
{
|
||||
iface->get_sort_column_id = vn_list_model_get_sort_column_id;
|
||||
iface->set_sort_column_id = vn_list_model_set_sort_column_id;
|
||||
iface->set_sort_func = vn_list_model_set_sort_func;
|
||||
iface->set_default_sort_func = vn_list_model_set_default_sort_func;
|
||||
iface->has_default_sort_func = vn_list_model_has_default_sort_func;
|
||||
}
|
|
@ -15,47 +15,47 @@
|
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef VN_GRID_MODEL_H
|
||||
#define VN_GRID_MODEL_H
|
||||
#ifndef VN_LIST_MODEL_H
|
||||
#define VN_LIST_MODEL_H
|
||||
|
||||
#include <glib-object.h>
|
||||
#include <db/db-model.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#define VN_TYPE_GRID_MODEL (vn_grid_model_get_type())
|
||||
#define VN_GRID_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VN_TYPE_GRID_MODEL, VnGridModel))
|
||||
#define VN_IS_GRID_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VN_TYPE_GRID_MODEL))
|
||||
#define VN_GRID_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VN_TYPE_GRID_MODEL, VnGridModelClass))
|
||||
#define VN_IS_GRID_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VN_TYPE_GRID_MODEL))
|
||||
#define VN_GRID_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VN_TYPE_GRID_MODEL, VnGridModelClass))
|
||||
|
||||
#define VN_GRID_MODEL_LOG_DOMAIN (g_quark_from_string ("VnGridModel"))
|
||||
#define VN_TYPE_LIST_MODEL (vn_list_model_get_type())
|
||||
#define VN_LIST_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VN_TYPE_LIST_MODEL, VnListModel))
|
||||
#define VN_IS_LIST_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VN_TYPE_LIST_MODEL))
|
||||
#define VN_LIST_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VN_TYPE_LIST_MODEL, VnListModelClass))
|
||||
#define VN_IS_LIST_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VN_TYPE_LIST_MODEL))
|
||||
#define VN_LIST_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VN_TYPE_LIST_MODEL, VnListModelClass))
|
||||
|
||||
#define gtk_tree_iter_from_db_iter(d,s) vn_gtk_tree_iter_from_db_iter(d,s)
|
||||
#define gtk_tree_iter_to_db_iter(s,d) vn_gtk_tree_iter_to_db_iter(s,d)
|
||||
|
||||
typedef struct _VnGridModel VnGridModel;
|
||||
typedef struct _VnGridModelClass VnGridModelClass;
|
||||
typedef struct _VnListModel VnListModel;
|
||||
typedef struct _VnListModelClass VnListModelClass;
|
||||
|
||||
struct _VnGridModel
|
||||
struct _VnListModel
|
||||
{
|
||||
GObject parent;
|
||||
DbModel * model;
|
||||
gboolean null_row;
|
||||
};
|
||||
|
||||
struct _VnGridModelClass
|
||||
struct _VnListModelClass
|
||||
{
|
||||
/* <private> */
|
||||
GObjectClass parent;
|
||||
};
|
||||
|
||||
GType vn_grid_model_get_type ();
|
||||
VnGridModel * vn_grid_model_new (DbModel * model);
|
||||
DbModel * vn_grid_model_get_model (VnGridModel * obj);
|
||||
gboolean vn_grid_model_iter_is_valid (GtkTreeIter * iter, GtkTreeModel * model);
|
||||
GType vn_list_model_get_type ();
|
||||
VnListModel * vn_list_model_new (DbModel * model);
|
||||
DbModel * vn_list_model_get_model (VnListModel * obj);
|
||||
gboolean vn_list_model_iter_is_valid (GtkTreeIter * iter, GtkTreeModel * model);
|
||||
void vn_gtk_tree_iter_from_db_iter (GtkTreeIter * dest_iter
|
||||
,const DbIter * src_iter);
|
||||
void vn_gtk_tree_iter_to_db_iter (const GtkTreeIter * src_iter
|
||||
,DbIter * dest_iter);
|
||||
void vn_list_model_use_null_row (VnListModel * self, gboolean use);
|
||||
|
||||
#endif
|
Reference in New Issue