~ubuntu-branches/ubuntu/maverick/ekiga/maverick

« back to all changes in this revision

Viewing changes to lib/engine/framework/form-dumper.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Eugen Dedu, Eugen Dedu, Loic Minier
  • Date: 2008-09-27 10:00:00 UTC
  • mfrom: (1.1.8 upstream)
  • mto: (1.4.1 squeeze)
  • mto: This revision was merged to the branch mainline in revision 38.
  • Revision ID: james.westby@ubuntu.com-20080927100000-l5k5werb6czr5b3h
Tags: 3.0.1-1
[ Eugen Dedu ]
* New version.  (Closes: #500089).
* Add our own changelog file in /usr/share/doc.
* Remove gnomemeeting transitional package.
* Discover new interfaces.  (Closes: #488199).
* Compile with dbus support.  (Closes: #467212).
* Numeric keypad inserts digits at correct position.  (Closes: #440159).
* Use libnotify upon call.  (Closes: #412604).
* Symlink identical GNOME help files, to reduce size.  (Closes: #505536).
* Explicitely build-depends on a few dev packages, even if they were
  pulled out anyway by the other dependencies.

[ Loic Minier ]
* Use clean:: instead of clean: in rules.
* Don't disable Uploaders: generation for control.in -> control generation
  in rules.
* Fix some tabs which were size 4 anyway.
* Generate a PO template during build by calling intltool-update -p in
  install; thanks Ubuntu and Martin Pitt; closes: #505535.
* Also let the -dbg depend on ${misc:Depends}.
* Cleanup rules; in particular, use dpkg-parsechangelog and honor
  distclean/clean failures, remove old clean rules, commented out stuff,
  gtk-only stuff.
* Pass -s to dh_* in binary-arch.
* Use debian/*.links and debian/*.manpages instead of symlink manually or
  passing files to dh_installman.
* Use ftp.gnome.org in copyright.
* Switch to quilt and fix target deps in the process; build-dep on quilt
  instead of dpatch; rename news.dpatch to 00_news.patch and refresh;
  replace 00list with series.
* Install autotools-dev config.guess and .sub after patching.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
/*
 
3
 * Ekiga -- A VoIP and Video-Conferencing application
 
4
 * Copyright (C) 2000-2007 Damien Sandras
 
5
 
 
6
 * This program is free software; you can  redistribute it and/or modify
 
7
 * it under the terms of the GNU General Public License as published by
 
8
 * the Free Software Foundation; either version 2 of the License, or (at
 
9
 * your option) any later version. This program is distributed in the hope
 
10
 * that it will be useful, but WITHOUT ANY WARRANTY; without even the
 
11
 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
12
 * See the GNU General Public License for more details.
 
13
 *
 
14
 * You should have received a copy of the GNU General Public License along
 
15
 * with this program; if not, write to the Free Software Foundation, Inc.,
 
16
 * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 
17
 *
 
18
 * Ekiga is licensed under the GPL license and as a special exception, you
 
19
 * have permission to link or otherwise combine this program with the
 
20
 * programs OPAL, OpenH323 and PWLIB, and distribute the combination, without
 
21
 * applying the requirements of the GNU GPL to the OPAL, OpenH323 and PWLIB
 
22
 * programs, as long as you do follow the requirements of the GNU GPL for all
 
23
 * the rest of the software thus combined.
 
24
 */
 
25
 
 
26
 
 
27
/*
 
28
 *                         form-dumper.cpp  -  description
 
29
 *                         ------------------------------------------
 
30
 *   begin                : written in 2007 by Julien Puydt
 
31
 *   copyright            : (c) 2007 by Julien Puydt
 
32
 *   description          : implementation of an object which prints forms
 
33
 *
 
34
 */
 
35
 
 
36
#include "form-dumper.h"
 
37
 
 
38
Ekiga::FormDumper::FormDumper (std::ostream &_out): out(_out)
 
39
{
 
40
}
 
41
 
 
42
void
 
43
Ekiga::FormDumper::dump (const Ekiga::Form &form)
 
44
{
 
45
  form.visit (*this);
 
46
}
 
47
 
 
48
void
 
49
Ekiga::FormDumper::title (const std::string _title)
 
50
{
 
51
  out << "Title: " << _title << std::endl;
 
52
}
 
53
 
 
54
void
 
55
Ekiga::FormDumper::instructions (const std::string _instructions)
 
56
{
 
57
  out << "Instructions: " << std::endl << _instructions << std::endl;
 
58
}
 
59
 
 
60
void
 
61
Ekiga::FormDumper::error (const std::string _error)
 
62
{
 
63
  out << "Error: " << _error << std::endl;
 
64
}
 
65
 
 
66
void
 
67
Ekiga::FormDumper::hidden (const std::string name,
 
68
                           const std::string value)
 
69
{
 
70
  out << "Hidden field " << name << ": " << value << std::endl;
 
71
}
 
72
 
 
73
void
 
74
Ekiga::FormDumper::boolean (const std::string name,
 
75
                            const std::string description,
 
76
                            bool value)
 
77
{
 
78
  out << "Boolean field " << name
 
79
      << " (default value: ";
 
80
  if (value)
 
81
    out << "true";
 
82
  else
 
83
    out << "false";
 
84
  out << "):" << std::endl
 
85
      << description << std::endl;
 
86
}
 
87
 
 
88
void
 
89
Ekiga::FormDumper::text (const std::string name,
 
90
                         const std::string description,
 
91
                         const std::string value)
 
92
{
 
93
  out << "Text field " << name
 
94
      << " (default value: " << value << "): " << std::endl
 
95
      << description << std::endl;
 
96
}
 
97
 
 
98
void
 
99
Ekiga::FormDumper::private_text (const std::string name,
 
100
                                 const std::string description,
 
101
                                 const std::string value)
 
102
{
 
103
  out << "Private text field " << name
 
104
      << " (default value: " << value << "): " << std::endl
 
105
      << description << std::endl;
 
106
}
 
107
 
 
108
void
 
109
Ekiga::FormDumper::multi_text (const std::string name,
 
110
                               const std::string description,
 
111
                               const std::string value)
 
112
{
 
113
  out << "Multiline text field " << name
 
114
      << " (default value: " << value << "): " << std::endl
 
115
      << description << std::endl;
 
116
}
 
117
 
 
118
void
 
119
Ekiga::FormDumper::single_choice (const std::string name,
 
120
                                  const std::string description,
 
121
                                  const std::string value,
 
122
                                  const std::map<std::string, std::string> choices)
 
123
{
 
124
  out << "Single choice list " << name
 
125
      << " (default choice: " << value << "): " << std::endl
 
126
      << description << std::endl
 
127
      << "where choices are :" << std::endl;
 
128
  for (std::map<std::string, std::string>::const_iterator iter = choices.begin ();
 
129
       iter != choices.end ();
 
130
       iter++)
 
131
    out << "(" << iter->first << ", " << iter->second << ")" << std::endl;
 
132
}
 
133
 
 
134
void
 
135
Ekiga::FormDumper::multiple_choice (const std::string name,
 
136
                                    const std::string description,
 
137
                                    const std::set<std::string> values,
 
138
                                    const std::map<std::string, std::string> choices)
 
139
{
 
140
  out << "Multiple choice list " << name << ":" << std::endl
 
141
      << description << std::endl
 
142
      << "where choices are :" << std::endl;
 
143
  for (std::map<std::string, std::string>::const_iterator iter = choices.begin ();
 
144
       iter != choices.end ();
 
145
       iter++) {
 
146
 
 
147
    out << "(" << iter->first << ", " << iter->second << ")";
 
148
 
 
149
    if (values.find (iter->first) != values.end ())
 
150
      out << " (V)" << std::endl;
 
151
    else
 
152
      out << " (X)" << std::endl;
 
153
  }
 
154
}
 
155
 
 
156
void
 
157
Ekiga::FormDumper::editable_set (const std::string name,
 
158
                                 const std::string description,
 
159
                                 const std::set<std::string> values)
 
160
{
 
161
  out << "Editable list " << name << ":" << std::endl
 
162
      << description << std::endl
 
163
      << "where current set is :" << std::endl;
 
164
  for (std::set<std::string>::const_iterator iter = values.begin ();
 
165
       iter != values.end ();
 
166
       iter++)
 
167
    out << *iter << std::endl;
 
168
}