~ubuntu-branches/ubuntu/precise/glom/precise-updates

« back to all changes in this revision

Viewing changes to glom/layout_item_dialogs/combo_summarytype.cc

  • Committer: Bazaar Package Importer
  • Author(s): Chris Coulson
  • Date: 2009-10-09 16:50:36 UTC
  • mfrom: (1.1.42 upstream)
  • Revision ID: james.westby@ubuntu.com-20091009165036-orinvwmohk838xxl
Tags: 1.12.2-0ubuntu1
* New upstream version:
  - FFE LP: #391664
* debian/control:
  - Bump python-gnome2-extras-dev build-dep to >= 2.25.3.
  - Bump libgdamm3.0-dev build-dep to libgdamm4.0-dev >= 3.99.14.
  - Change libgda3-dev build-dep to libgda-4.0-dev.
  - Change libgda3-postgres dependency to libgda-4.0-postgres.
  - Bump libgtkmm-2.4-dev build-dep to >= 2.14.
  - Add build-dep on libgconfmm-2.6-dev.
  - Bump libgoocanvasmm-dev build-dep to >= 0.14.0.
  - Remove build-dep on libbakery-2.6-dev.
  - Bump postgresql-8.3 dependency to postgresql-8.4.
  - Change scrollkeeper build-dep to rarian-compat.
  - Rename libglom{0,-dev} -> libglom-1.12-{0,dev}. Upstream include
    APIVER in the library name now.
* debian/rules:
  - Update --with-postgres-utils configure flag to point to the new
    path.
  - Drop deprecated --disable-scrollkeeper configure flag.
  - Update DEB_SHLIBDEPS_INCLUDE with new libglom-1.12-0 package name.
  - Don't include /usr/share/cdbs/1/rules/simple-patchsys.mk - there
    are currently no patches.
* debian/libglom-1.12-0.install:
  - Updated for new version.
* debian/libglom-1.12-dev.install:
  - Install pc and header files.
* debian/glom-doc.install:
  - Updated for new version.
* debian/glom.install:
  - Updated for new version.
* Fix debian/watch.
* Dropped obsolete 10-distro-install-postgres-change.patch.
* Built against latest libgoocanvasmm (LP: #428445).
* Also closes LP: #230007, LP: #393229, LP: #393231, LP: #394507,
  LP: #394887, LP: #394894, LP: #397409, LP: #381563.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* Glom
2
 
 *
3
 
 * Copyright (C) 2001-2004 Murray Cumming
4
 
 *
5
 
 * This program is free software; you can redistribute it and/or
6
 
 * modify it under the terms of the GNU General Public License as
7
 
 * published by the Free Software Foundation; either version 2 of the
8
 
 * License, or (at your option) any later version.
9
 
 *
10
 
 * This program is distributed in the hope that it will be useful, but
11
 
 * WITHOUT ANY WARRANTY; without even the implied warranty of
12
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13
 
 * General Public License for more details.
14
 
 *
15
 
 * You should have received a copy of the GNU General Public
16
 
 * License along with this program; if not, write to the
17
 
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18
 
 * Boston, MA 02111-1307, USA.
19
 
 */
20
 
 
21
 
#include "combo_summarytype.h"
22
 
#include <gtk/gtkcombobox.h>
23
 
#include <glibmm/i18n.h>
24
 
 
25
 
namespace Glom
26
 
{
27
 
 
28
 
Combo_SummaryType::Combo_SummaryType(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& /* refGlade */)
29
 
: Gtk::ComboBox(cobject)
30
 
{
31
 
  m_model = Gtk::ListStore::create(m_model_columns);
32
 
 
33
 
  //Fill the model:
34
 
 
35
 
  Gtk::TreeModel::iterator iter = m_model->append();
36
 
  (*iter)[m_model_columns.m_summary_type] = LayoutItem_FieldSummary::TYPE_SUM;
37
 
  (*iter)[m_model_columns.m_name] = LayoutItem_FieldSummary::get_summary_type_name(LayoutItem_FieldSummary::TYPE_SUM);
38
 
  iter = m_model->append();
39
 
  (*iter)[m_model_columns.m_summary_type] = LayoutItem_FieldSummary::TYPE_AVERAGE;
40
 
  (*iter)[m_model_columns.m_name] = LayoutItem_FieldSummary::get_summary_type_name(LayoutItem_FieldSummary::TYPE_AVERAGE);
41
 
  iter = m_model->append();
42
 
  (*iter)[m_model_columns.m_summary_type] = LayoutItem_FieldSummary::TYPE_COUNT;
43
 
  (*iter)[m_model_columns.m_name] = LayoutItem_FieldSummary::get_summary_type_name(LayoutItem_FieldSummary::TYPE_COUNT);
44
 
 
45
 
  set_model(m_model);
46
 
 
47
 
  //Show this column.
48
 
  pack_start(m_model_columns.m_name);
49
 
}
50
 
 
51
 
 
52
 
Combo_SummaryType::~Combo_SummaryType()
53
 
{
54
 
 
55
 
}
56
 
 
57
 
void Combo_SummaryType::set_summary_type(LayoutItem_FieldSummary::summaryType summary_type)
58
 
{
59
 
  for(Gtk::TreeModel::iterator iter = m_model->children().begin(); iter != m_model->children().end(); ++iter)
60
 
  {
61
 
    const LayoutItem_FieldSummary::summaryType this_value = (*iter)[m_model_columns.m_summary_type];
62
 
 
63
 
    if(this_value == summary_type)
64
 
    {
65
 
      set_active(iter);
66
 
      return; //success
67
 
    }
68
 
  }
69
 
 
70
 
  g_warning("Combo_SummaryType::set_summary_type(): no item found");
71
 
 
72
 
  //Not found, so mark it as blank:
73
 
  unset_active();
74
 
}
75
 
 
76
 
LayoutItem_FieldSummary::summaryType Combo_SummaryType::get_summary_type() const
77
 
{
78
 
  //Get the active row:
79
 
  Gtk::TreeModel::iterator active_row = get_active();
80
 
  if(active_row)
81
 
  {
82
 
    Gtk::TreeModel::Row row = *active_row;
83
 
    return row[m_model_columns.m_summary_type];
84
 
  }
85
 
 
86
 
  return LayoutItem_FieldSummary::TYPE_INVALID;
87
 
}
88
 
 
89
 
} //namespace Glom
90
 
 
91
 
 
92
 
 
93