aboutsummaryrefslogtreecommitdiffstats
path: root/swarm/network/simulation/node.go
blob: 24b6599762eaef52ca365d8938602c1eaa1430f0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
// Copyright 2018 The go-ethereum Authors
// This file is part of the go-ethereum library.
//
// The go-ethereum library is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// The go-ethereum library 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 Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>.

package simulation

import (
    "encoding/json"
    "errors"
    "io/ioutil"
    "math/rand"
    "os"
    "time"

    "github.com/ethereum/go-ethereum/log"
    "github.com/ethereum/go-ethereum/p2p/enode"
    "github.com/ethereum/go-ethereum/p2p/simulations"
    "github.com/ethereum/go-ethereum/p2p/simulations/adapters"
)

// NodeIDs returns NodeIDs for all nodes in the network.
func (s *Simulation) NodeIDs() (ids []enode.ID) {
    nodes := s.Net.GetNodes()
    ids = make([]enode.ID, len(nodes))
    for i, node := range nodes {
        ids[i] = node.ID()
    }
    return ids
}

// UpNodeIDs returns NodeIDs for nodes that are up in the network.
func (s *Simulation) UpNodeIDs() (ids []enode.ID) {
    nodes := s.Net.GetNodes()
    for _, node := range nodes {
        if node.Up {
            ids = append(ids, node.ID())
        }
    }
    return ids
}

// DownNodeIDs returns NodeIDs for nodes that are stopped in the network.
func (s *Simulation) DownNodeIDs() (ids []enode.ID) {
    nodes := s.Net.GetNodes()
    for _, node := range nodes {
        if !node.Up {
            ids = append(ids, node.ID())
        }
    }
    return ids
}

// AddNodeOption defines the option that can be passed
// to Simulation.AddNode method.
type AddNodeOption func(*adapters.NodeConfig)

// AddNodeWithMsgEvents sets the EnableMsgEvents option
// to NodeConfig.
func AddNodeWithMsgEvents(enable bool) AddNodeOption {
    return func(o *adapters.NodeConfig) {
        o.EnableMsgEvents = enable
    }
}

// AddNodeWithService specifies a service that should be
// started on a node. This option can be repeated as variadic
// argument toe AddNode and other add node related methods.
// If AddNodeWithService is not specified, all services will be started.
func AddNodeWithService(serviceName string) AddNodeOption {
    return func(o *adapters.NodeConfig) {
        o.Services = append(o.Services, serviceName)
    }
}

// AddNode creates a new node with random configuration,
// applies provided options to the config and adds the node to network.
// By default all services will be started on a node. If one or more
// AddNodeWithService option are provided, only specified services will be started.
func (s *Simulation) AddNode(opts ...AddNodeOption) (id enode.ID, err error) {
    conf := adapters.RandomNodeConfig()
    for _, o := range opts {
        o(conf)
    }
    if len(conf.Services) == 0 {
        conf.Services = s.serviceNames
    }
    node, err := s.Net.NewNodeWithConfig(conf)
    if err != nil {
        return id, err
    }
    return node.ID(), s.Net.Start(node.ID())
}

// AddNodes creates new nodes with random configurations,
// applies provided options to the config and adds nodes to network.
func (s *Simulation) AddNodes(count int, opts ...AddNodeOption) (ids []enode.ID, err error) {
    ids = make([]enode.ID, 0, count)
    for i := 0; i < count; i++ {
        id, err := s.AddNode(opts...)
        if err != nil {
            return nil, err
        }
        ids = append(ids, id)
    }
    return ids, nil
}

// AddNodesAndConnectFull is a helpper method that combines
// AddNodes and ConnectNodesFull. Only new nodes will be connected.
func (s *Simulation) AddNodesAndConnectFull(count int, opts ...AddNodeOption) (ids []enode.ID, err error) {
    if count < 2 {
        return nil, errors.New("count of nodes must be at least 2")
    }
    ids, err = s.AddNodes(count, opts...)
    if err != nil {
        return nil, err
    }
    err = s.Net.ConnectNodesFull(ids)
    if err != nil {
        return nil, err
    }
    return ids, nil
}

// AddNodesAndConnectChain is a helpper method that combines
// AddNodes and ConnectNodesChain. The chain will be continued from the last
// added node, if there is one in simulation using ConnectToLastNode method.
func (s *Simulation) AddNodesAndConnectChain(count int, opts ...AddNodeOption) (ids []enode.ID, err error) {
    if count < 2 {
        return nil, errors.New("count of nodes must be at least 2")
    }
    id, err := s.AddNode(opts...)
    if err != nil {
        return nil, err
    }
    err = s.Net.ConnectToLastNode(id)
    if err != nil {
        return nil, err
    }
    ids, err = s.AddNodes(count-1, opts...)
    if err != nil {
        return nil, err
    }
    ids = append([]enode.ID{id}, ids...)
    err = s.Net.ConnectNodesChain(ids)
    if err != nil {
        return nil, err
    }
    return ids, nil
}

// AddNodesAndConnectRing is a helpper method that combines
// AddNodes and ConnectNodesRing.
func (s *Simulation) AddNodesAndConnectRing(count int, opts ...AddNodeOption) (ids []enode.ID, err error) {
    if count < 2 {
        return nil, errors.New("count of nodes must be at least 2")
    }
    ids, err = s.AddNodes(count, opts...)
    if err != nil {
        return nil, err
    }
    err = s.Net.ConnectNodesRing(ids)
    if err != nil {
        return nil, err
    }
    return ids, nil
}

// AddNodesAndConnectStar is a helpper method that combines
// AddNodes and ConnectNodesStar.
func (s *Simulation) AddNodesAndConnectStar(count int, opts ...AddNodeOption) (ids []enode.ID, err error) {
    if count < 2 {
        return nil, errors.New("count of nodes must be at least 2")
    }
    ids, err = s.AddNodes(count, opts...)
    if err != nil {
        return nil, err
    }
    err = s.Net.ConnectNodesStar(ids[0], ids[1:])
    if err != nil {
        return nil, err
    }
    return ids, nil
}

//UploadSnapshot uploads a snapshot to the simulation
//This method tries to open the json file provided, applies the config to all nodes
//and then loads the snapshot into the Simulation network
func (s *Simulation) UploadSnapshot(snapshotFile string, opts ...AddNodeOption) error {
    f, err := os.Open(snapshotFile)
    if err != nil {
        return err
    }
    defer func() {
        err := f.Close()
        if err != nil {
            log.Error("Error closing snapshot file", "err", err)
        }
    }()
    jsonbyte, err := ioutil.ReadAll(f)
    if err != nil {
        return err
    }
    var snap simulations.Snapshot
    err = json.Unmarshal(jsonbyte, &snap)
    if err != nil {
        return err
    }

    //the snapshot probably has the property EnableMsgEvents not set
    //just in case, set it to true!
    //(we need this to wait for messages before uploading)
    for _, n := range snap.Nodes {
        n.Node.Config.EnableMsgEvents = true
        n.Node.Config.Services = s.serviceNames
        for _, o := range opts {
            o(n.Node.Config)
        }
    }

    log.Info("Waiting for p2p connections to be established...")

    //now we can load the snapshot
    err = s.Net.Load(&snap)
    if err != nil {
        return err
    }
    log.Info("Snapshot loaded")
    return nil
}

// SetPivotNode sets the NodeID of the network's pivot node.
// Pivot node is just a specific node that should be treated
// differently then other nodes in test. SetPivotNode and
// PivotNodeID are just a convenient functions to set and
// retrieve it.
func (s *Simulation) SetPivotNode(id enode.ID) {
    s.mu.Lock()
    defer s.mu.Unlock()
    s.pivotNodeID = &id
}

// PivotNodeID returns NodeID of the pivot node set by
// Simulation.SetPivotNode method.
func (s *Simulation) PivotNodeID() (id *enode.ID) {
    s.mu.Lock()
    defer s.mu.Unlock()
    return s.pivotNodeID
}

// StartNode starts a node by NodeID.
func (s *Simulation) StartNode(id enode.ID) (err error) {
    return s.Net.Start(id)
}

// StartRandomNode starts a random node.
func (s *Simulation) StartRandomNode() (id enode.ID, err error) {
    n := s.Net.GetRandomDownNode()
    if n == nil {
        return id, ErrNodeNotFound
    }
    return n.ID(), s.Net.Start(n.ID())
}

// StartRandomNodes starts random nodes.
func (s *Simulation) StartRandomNodes(count int) (ids []enode.ID, err error) {
    ids = make([]enode.ID, 0, count)
    for i := 0; i < count; i++ {
        n := s.Net.GetRandomDownNode()
        if n == nil {
            return nil, ErrNodeNotFound
        }
        err = s.Net.Start(n.ID())
        if err != nil {
            return nil, err
        }
        ids = append(ids, n.ID())
    }
    return ids, nil
}

// StopNode stops a node by NodeID.
func (s *Simulation) StopNode(id enode.ID) (err error) {
    return s.Net.Stop(id)
}

// StopRandomNode stops a random node.
func (s *Simulation) StopRandomNode() (id enode.ID, err error) {
    n := s.Net.GetRandomUpNode()
    if n == nil {
        return id, ErrNodeNotFound
    }
    return n.ID(), s.Net.Stop(n.ID())
}

// StopRandomNodes stops random nodes.
func (s *Simulation) StopRandomNodes(count int) (ids []enode.ID, err error) {
    ids = make([]enode.ID, 0, count)
    for i := 0; i < count; i++ {
        n := s.Net.GetRandomUpNode()
        if n == nil {
            return nil, ErrNodeNotFound
        }
        err = s.Net.Stop(n.ID())
        if err != nil {
            return nil, err
        }
        ids = append(ids, n.ID())
    }
    return ids, nil
}

// seed the random generator for Simulation.randomNode.
func init() {
    rand.Seed(time.Now().UnixNano())
}
s'>-0/+219 | | | | | | | | 2005-01-10 Parthasarathi@novell.com <sparthasarathi@novell.com> * initial check in for groupwise send options svn path=/trunk/; revision=28325 * svn path=/trunk/; revision=28324Updated ja.po. T.Aihana2005-01-102-4464/+5620 | | | | | | 2005-01-10 Updated ja.po. T.Aihana <aihana@gnome.gr.jp> svn path=/trunk/; revision=28324 * first crack at saving attachments for the backendJP Rosevear2005-01-102-0/+81 | | | | | | | | | 2005-01-10 JP Rosevear <jpr@novell.com> * itip-formatter.c (update_item): first crack at saving attachments for the backend svn path=/trunk/; revision=28323 * Add shared-folder to plugin and base plugin list. Add correspondingVivek Jain2005-01-102-2/+8 | | | | | | | | | 2005-01-10 Vivek Jain <jvivek@novell.com> * configure.in : Add shared-folder to plugin and base plugin list. Add corresponding Makfile to AC_OUTPUT section. svn path=/trunk/; revision=28322 * add send-options pluginChenthill Palanisamy2005-01-102-2/+7 | | | | | | | | 2005-01-10 Chenthill Palanisamy <pchenthill@novell.com> * configure.in: add send-options plugin svn path=/trunk/; revision=28321 * 2005-01-10 Vivek Jain <jvivek@novell.com> IncludedJain Vivek2005-01-106-246/+349 | | | | | | | | | | | | | | | | * install-shared.c : opens up a wizard on reading a shared folder notification and installs shared folder at the recepient end. * share-folder-common.c : added (refresh_folder_tree) : to refresh the folder tree when a folder is shared or a shared folder is created so that different icons are displayed (get_cnc): to get a connection (get_container_id):to get the container id of the folder user selects * share-folder.c : minor changes to fix the crash * Makefile.am : including install-shared.c in sources * org-gnome-shared-folder.eplug.in : added a plugin to the e-plugin list for the message-read event svn path=/trunk/; revision=28320 * Included * ChangeLog and * install-shared.c to accept aVivek Jain2005-01-102-0/+264 | | | | | | | | 2005-01-10 Vivek Jain <jvivek@novell.com> Included * ChangeLog and * install-shared.c to accept a shared-folder-notification and install a shared folder svn path=/trunk/; revision=28319 * Plugin file to add the send options button in the account editor. Adds theChenthill Palanisamy2005-01-104-0/+295 | | | | | | | | | | | | | | 2005-01-10 Chenthill Palanisamy <pchenthill@novell.com> * MakeFile.am: * org-gnome-send-options.eplug.in: Plugin file to add the send options button in the account editor. * send-options.c: Adds the send options button inside a frame in the defaults page of the account editor for groupwise accounts. Clicking on the button gets the settings from the server and shows it in the send options dialog box. svn path=/trunk/; revision=28318 * Missed to commit this file before.Chenthill Palanisamy2005-01-103-13/+21 | | | | | | | | | 2005-01-10 Chenthill Palanisamy <pchenthill@novell.com> * backends/groupwise/e-cal-backends-groupwise-utils.h: Missed to commit this file before. svn path=/trunk/; revision=28317 * Updated Bulgarian translation by Vladimir Petkov <vpetkov@i-space.org>Alexander Shopov2005-01-102-575/+452 | | | | | | | | | 2005-01-10 Alexander Shopov <ash@contact.bg> * bg.po: Updated Bulgarian translation by Vladimir Petkov <vpetkov@i-space.org> svn path=/trunk/; revision=28316 * Added code to support global options. Filled the finalize and disposeChenthill Palanisamy2005-01-104-13/+167 | | | | | | | | | | | | | | | | | 2005-01-10 Chenthill Palanisamy <pchenthill@novell.com> * e-send-options.c: (e_send_options_get_widgets_data), (e_send_options_fill_widgets_with_data), (page_changed_cb), (init_widgets), (get_widgets), (setup_widgets), (e_sendoptions_set_global), (e_sendoptions_dialog_run), (e_sendoptions_dialog_finalize), (e_sendoptions_dialog_dispose), (e_sendoptions_dialog_init), (e_sendoptions_dialog_class_init), (e_sendoptions_dialog_get_type): Added code to support global options. Filled the finalize and dispose functions. * e-send-options.glade: Changed a label id. * e-send-options.h: Added the set_global function. svn path=/trunk/; revision=28315 * Translation updated.Priit Laes2005-01-102-21/+19 | | | | | | | | 2005-01-10 Priit Laes <plaes@cvs.gnome.org> * et.po: Translation updated. svn path=/trunk/; revision=28313 * Translation updated by Ivar Smolin.Priit Laes2005-01-102-280/+207 | | | | | | | | 2005-01-10 Priit Laes <plaes@cvs.gnome.org> * et.po: Translation updated by Ivar Smolin. svn path=/trunk/; revision=28312 * Modified cal-attachment-bar to allow the path to the local attachmentHarish Krishnaswamy2005-01-104-20/+32 | | | | | | | | | | | | | | | | * gui/dialogs/cal-attachment-bar.[ch]: (destroy), (init), (cal_attachment_bar_set_local_attachment_store), (cal_attachment_bar_get_attachment_list), (cal_attachment_bar_get_nth_attachment_filename), (cal_attachment_bar_set_attachment_list): Modified cal-attachment-bar to allow the path to the local attachment store be set externally, thereby hiding the storage policy of different backends from it. * gui/dialogs/comp-editor.c: * (real_edit_comp): set the local attachment store after obtaining it from the calendar. svn path=/trunk/; revision=28311 * Plugin to read the exchange OWA URL instead of host nameSushma Rai2005-01-103-9/+101 | | | | svn path=/trunk/; revision=28310 * Translation updated by Ivar Smolin.Priit Laes2005-01-102-283/+181 | | | | | | | | 2005-01-10 Priit Laes <plaes@cvs.gnome.org> * et.po: Translation updated by Ivar Smolin. svn path=/trunk/; revision=28309 * When spawning an editor, set the initial editability from the target book,Hans Petter Jansson2005-01-102-2/+8 | | | | | | | | | | 2005-01-10 Hans Petter Jansson <hpj@novell.com> * gui/widgets/e-minicard.c (e_minicard_activate_editor): When spawning an editor, set the initial editability from the target book, not from the minicard's own (usually stale, useless) editable state. svn path=/trunk/; revision=28308 * Updated Lithuanian translation.Žygimantas Beručka2005-01-102-115/+152 | | | | | | | | 2005-01-10 Žygimantas Beručka <uid0@akl.lt> * lt.po: Updated Lithuanian translation. svn path=/trunk/; revision=28307 * remove error modeJP Rosevear2005-01-103-24/+64 | | | | | | | | | | | | | 2005-01-09 JP Rosevear <jpr@novell.com> * itip-view.h: remove error mode * itip-formatter.c (set_itip_error): show error information to the user (extract_itip_data): use above (format_itip_object): no more "error" mode svn path=/trunk/; revision=28306 * accessor (itip_view_get_delegator): dittoJP Rosevear2005-01-104-3/+124 | | | | | | | | | | | | | | | | 2005-01-09 JP Rosevear <jpr@novell.com> * itip-view.c (itip_view_set_delegator): accessor (itip_view_get_delegator): ditto * itip-view.h: new protos * itip-formatter.c (extract_itip_data): put delegate sections back in and handle default reminder (format_itip_object): set the delegator for requests, find the delegator calendar if necessary svn path=/trunk/; revision=28305 * fix parsing of query stringJP Rosevear2005-01-102-2/+5 | | | | | | | | 2005-01-09 JP Rosevear <jpr@novell.com> * e-url.c (e_uri_new): fix parsing of query string svn path=/trunk/; revision=28304 * handle calendar:// urisJP Rosevear2005-01-102-1/+70 | | | | | | | | | 2005-01-09 JP Rosevear <jpr@novell.com> * gui/calendar-component.c (impl_handleURI): handle calendar:// uris svn path=/trunk/; revision=28303 * open a new window if we get a component id type urlJP Rosevear2005-01-103-5/+19 | | | | | | | | | | | 2005-01-09 JP Rosevear <jpr@novell.com> * e-shell.c (impl_Shell_handleURI): open a new window if we get a component id type url * Evolution-Shell.idl: add ComponentNotFound exception svn path=/trunk/; revision=28302 * launch an evolution window pointing at the calendar date of theJP Rosevear2005-01-102-2/+25 | | | | | | | | | | 2005-01-09 JP Rosevear <jpr@novell.com> * itip-formatter.c (idle_open_cb): launch an evolution window pointing at the calendar date of the appointment (view_response_cb): use it svn path=/trunk/; revision=28301 * only check for conflicts if the source has the conflict propertyJP Rosevear2005-01-102-15/+100 | | | | | | | | | | | | | | 2005-01-09 JP Rosevear <jpr@novell.com> * itip-formatter.c (find_cal_opened_cb): only check for conflicts if the source has the conflict property (initialize_selection): select the "conflict" sources in the selector (source_selection_changed): update the source properties (itip_formatter_page_factory): include the source selector for selecting conflict checking calendars svn path=/trunk/; revision=28300 * add calendar-file pluginJP Rosevear2005-01-102-2/+7 | | | | | | | | 2005-01-09 JP Rosevear <jpr@novell.com> * configure.in: add calendar-file plugin svn path=/trunk/; revision=28299 * Initial import of file properties plugin.JP Rosevear2005-01-105-0/+100 | | | | | | | | 2005-01-06 JP Rosevear <jpr@novell.com> * Initial import of file properties plugin. svn path=/trunk/; revision=28298 * Updated zh_CN translationFunda Wang2005-01-091-1/+1 | | | | svn path=/trunk/; revision=28297 * Authentication for exchange accountSushma Rai2005-01-094-1/+143 | | | | svn path=/trunk/; revision=28296 * Exchange account level settings pluginSushma Rai2005-01-094-0/+259 | | | | svn path=/trunk/; revision=28295 * Reformatted the description.Nat Friedman2005-01-092-4/+5 | | | | | | | | 2005-01-08 Nat Friedman <nat@novell.com> * org-gnome-evolution-bbdb.eplug.in: Reformatted the description. svn path=/trunk/; revision=28294 * Yet again updated Lithuanian translation.Žygimantas Beručka2005-01-092-63/+78 | | | | | | | | 2005-01-08 Žygimantas Beručka <uid0@akl.lt> * lt.po: Yet again updated Lithuanian translation. svn path=/trunk/; revision=28293 * scriptyFunda Wang2005-01-091-58/+60 | | | | svn path=/trunk/; revision=28292 * Updated Lithuanian translation.Žygimantas Beručka2005-01-082-161/+138 | | | | | | | | 2004-01-08 Žygimantas Beručka <uid0@akl.lt> * lt.po: Updated Lithuanian translation. svn path=/trunk/; revision=28291 * Remove duplicate entry for itip-formatter in plugins list.Harish Krishnaswamy2005-01-082-1/+7 | | | | | | | * configure.in : Remove duplicate entry for itip-formatter in plugins list. svn path=/trunk/; revision=28290 * update itip_send_comp calls with the new prototype.Harish Krishnaswamy2005-01-082-2/+7 | | | | svn path=/trunk/; revision=28289 * Updated Bulgarian translation by Vladimir Petkov <vpetkov@i-space.org>Alexander Shopov2005-01-082-753/+1470 | | | | | | | | | 2005-01-08 Alexander Shopov <ash@contact.bg> * bg.po: Updated Bulgarian translation by Vladimir Petkov <vpetkov@i-space.org> svn path=/trunk/; revision=28288 * Added support for attachments support to calendar items.Harish Krishnaswamy2005-01-0818-30/+383 | | | | | | | 2005-01-08 Harish Krishnaswamy <kharish@novell.com> Added support for attachments support to calendar items. svn path=/trunk/; revision=28287 * New files that provide attachments support for calendar items.Harish Krishnaswamy2005-01-087-0/+2064 | | | | svn path=/trunk/; revision=28286 * Add gnome-vfs-module-2.0 to Evo compile flags forHarish Krishnaswamy2005-01-082-1/+5 | | | | | | the calendar. svn path=/trunk/; revision=28285 * shushJP Rosevear2005-01-081-0/+5 | | | | svn path=/trunk/; revision=28284 * Updated Lithuanian translation.Žygimantas Beručka2005-01-082-3208/+3871 | | | | | | | | 2005-01-08 Žygimantas Beručka <uid0@akl.lt> * lt.po: Updated Lithuanian translation. svn path=/trunk/; revision=28283 * Add libedataserverui to the e-util libs and cflags.Hans Petter Jansson2005-01-082-1/+5 | | | | | | | | 2005-01-08 Hans Petter Jansson <hpj@novell.com> * configure.in: Add libedataserverui to the e-util libs and cflags. svn path=/trunk/; revision=28282 * scriptyFunda Wang2005-01-081-906/+1303 | | | | svn path=/trunk/; revision=28281 * new protosJP Rosevear2005-01-084-9/+202 | | | | | | | | | | | | | | | | | | | | 2005-01-07 JP Rosevear <jpr@novell.com> * itip-view.h: new protos * itip-view.c (set_tasklist_sender_text): task sender messages (set_calendar_sender_text): calendar sender messages (set_sender_text): select above as appropriate (itip_view_set_item_type): accessor (itip_view_get_item_type): ditto * itip-formatter.c (find_cal_opened_cb): messages for meetings/tasks/journals (send_item): ditto (format_itip_object): ditto (itip_formatter_page_factory): change page title svn path=/trunk/; revision=28280 * ensure there is only one attendee in the RSVP even if the user isJP Rosevear2005-01-082-2/+14 | | | | | | | | | 2005-01-07 JP Rosevear <jpr@novell.com> * itip-formatter.c (view_response_cb): ensure there is only one attendee in the RSVP even if the user is duplicated svn path=/trunk/; revision=28279 * clear the attendees, somehow I remove this in an earlier commitJP Rosevear2005-01-083-1/+8 | | | | | | | | | 2005-01-07 JP Rosevear <jpr@novell.com> * gui/dialogs/event-editor.c (event_editor_edit_comp): clear the attendees, somehow I remove this in an earlier commit svn path=/trunk/; revision=28278 * put a name to the 'Send options' frame.Rodrigo Moya2005-01-085-30/+43 | | | | | | | | | | | | | | | | | | | | | 2005-01-07 Rodrigo Moya <rodrigo@novell.com> * gui/dialogs/event-page.glade: * gui/dialogs/task-page.glade: put a name to the 'Send options' frame. * gui/dialogs/event-page.c (event_page_init): initialize reference to the 'Send options' frame. (get_widgets): get the 'Send options' frame from the .glade file. (event_page_hide_options): just hide the frame. (event_page_show_options): just show the frame. * gui/dialogs/task-page.c (task_page_init): initialize reference to the 'Send options' frame. (get_widgets): get the 'Send options' frame from the .glade file. (task_page_hide_options): just hide the frame. (task_page_show_options): just show the frame. svn path=/trunk/; revision=28277 * set the dialog's parent.Rodrigo Moya2005-01-082-0/+7 | | | | | | | | | 2005-01-07 Rodrigo Moya <rodrigo@novell.com> * e-categories-config.c (e_categories_config_open_dialog_for_entry): set the dialog's parent. svn path=/trunk/; revision=28276 * protosJP Rosevear2005-01-084-22/+124 | | | | | | | | | | | | | | | | | | 2005-01-07 JP Rosevear <jpr@novell.com> * itip-view.h: protos * itip-view.c (rsvp_toggled_cb): set comment sensitivity (itip_view_init): add comment entry (itip_view_set_rsvp): make comment entry sensitive when rsvp is (itip_view_set_rsvp_comment): accessor (itip_view_get_rsvp_comment): ditto * itip-formatter.c (find_cal_opened_cb): set error message if we can't find the item (view_response_cb): add comment if the user sets one svn path=/trunk/; revision=28275 * use the new ECategoriesDialog in libedataserverui.Rodrigo Moya2005-01-082-10/+9 | | | | | | | | | 2005-01-07 Rodrigo Moya <rodrigo@novell.com> * e-categories-config.c (e_categories_config_open_dialog_for_entry): use the new ECategoriesDialog in libedataserverui. svn path=/trunk/; revision=28274 * define EDS's datadir, needed to get to the Locations.xml file.Rodrigo Moya2005-01-083-9/+20 | | | | | | | | | | | | 2005-01-07 Rodrigo Moya <rodrigo@novell.com> * Makefile.am: define EDS's datadir, needed to get to the Locations.xml file. * calendar-weather.c (load_locations): use EDS's datadir for the Locations.xml file full path. svn path=/trunk/; revision=28273 * define weatherdatadir here, no need to use e-d-s's one, use evolution'sRodrigo Moya2005-01-082-6/+12 | | | | | | | | | 2005-01-07 Rodrigo Moya <rodrigo@novell.com> * Makefile.am: define weatherdatadir here, no need to use e-d-s's one, use evolution's instead. svn path=/trunk/; revision=28272 * removed weatherdatadir definition here.Rodrigo Moya2005-01-082-5/+4 | | | | | | | | 2005-01-07 Rodrigo Moya <rodrigo@novell.com> * configure.in: removed weatherdatadir definition here. svn path=/trunk/; revision=28271 * add protosJP Rosevear2005-01-074-21/+205 | | | | | | | | | | | | | | | | | | | | | | | | 2005-01-07 JP Rosevear <jpr@novell.com> * itip-view.h: add protos * itip-view.c (set_sender_text): update descriptions better (set_status_text): show/hide status (set_comment_text): show/hide comment (set_buttons): update buttons for add an refresh (itip_view_destroy): free comment/status (itip_view_init): add status/comment widgets (itip_view_set_status): accessor (itip_view_get_status): ditto (itip_view_set_comment): ditto (itip_view_get_comment): ditto * itip-formatter.c (find_cal_opened_cb): make sure rsvp is off for publish (format_itip_object): decline counter is sent by an organizer; set status and comment when appropriate svn path=/trunk/; revision=28270 * Translation updated.Priit Laes2005-01-072-5461/+6360 | | | | | | | | 2005-01-07 Priit Laes <plaes@cvs.gnome.org> * et.po: Translation updated. svn path=/trunk/; revision=28269 * MissingRodrigo Moya2005-01-072-0/+4 | | | | svn path=/trunk/; revision=28268 * added calendar-weather plugin to build.David Trowbridge2005-01-072-1/+11 | | | | | | | | | | 2005-01-07 David Trowbridge <David.Trowbridge@Colorado.edu> * configure.in: added calendar-weather plugin to build. 2005-01-06 JP Rosevear <jpr@novell.com> svn path=/trunk/; revision=28267 * initial import of ECalEvent targetsDavid Trowbridge2005-01-074-0/+270 | | | | | | | | | | 2005-01-06 David Trowbridge <trowbrds@cs.colorado.edu> * gui/e-cal-event[hc]: initial import of ECalEvent targets * gui/migration.c (migrate_calendars): add component.migration event svn path=/trunk/; revision=28266 * Initial import of weather properties pluginDavid Trowbridge2005-01-0711-0/+833 | | | | | | | | 2004-01-06 David Trowbridge <trowbrds@cs.colorado.edu> * Initial import of weather properties plugin svn path=/trunk/; revision=28265 * Translation updated by Ivar Smolin.Priit Laes2005-01-072-499/+380 | | | | | | | | 2005-01-07 Priit Laes <plaes@cvs.gnome.org> * et.po: Translation updated by Ivar Smolin. svn path=/trunk/; revision=28264 * remove old code, setup transient parent and weak ref for refresh. someNot Zed2005-01-074-18/+14 | | | | | | | | | | 2005-01-07 Not Zed <NotZed@Ximian.com> * em-account-prefs.c (account_add_clicked): remove old code, setup transient parent and weak ref for refresh. * *.c: some warning fixes/comment fixes svn path=/trunk/; revision=28263 * Add the GTK_DIALOG_NOSEPARATOR flag, and set appropriate border widthsRodney Dawes2005-01-072-1/+14 | | | | | | | | | | 2005-01-06 Rodney Dawes <dobey@novell.com> * e-config.c (e_config_create_window): Add the GTK_DIALOG_NOSEPARATOR flag, and set appropriate border widths around the main dialog vbox, and action area, to be more HIG compliant svn path=/trunk/; revision=28262 * add some uninstall rules for local dataJP Rosevear2005-01-072-0/+14 | | | | | | | | 005-01-06 JP Rosevear <jpr@novell.com> * data/Makefile.am: add some uninstall rules for local data svn path=/trunk/; revision=28261 * install schemas properlyJP Rosevear2005-01-072-1/+5 | | | | | | | | 2005-01-06 JP Rosevear <jpr@novell.com> * gui/Makefile.am: install schemas properly svn path=/trunk/; revision=28260 * install schemas properlyJP Rosevear2005-01-072-1/+5 | | | | | | | | 2005-01-06 JP Rosevear <jpr@novell.com> * gui/component/Makefile.am: install schemas properly svn path=/trunk/; revision=28259 * install schemas properlyJP Rosevear2005-01-072-1/+5 | | | | | | | | 2005-01-06 JP Rosevear <jpr@novell.com> * Makefile.am: install schemas properly svn path=/trunk/; revision=28258 * install schemas properly and add some uninstall rules for local installJP Rosevear2005-01-072-1/+16 | | | | | | | | | 2005-01-06 JP Rosevear <jpr@novell.com> * Makefile.am: install schemas properly and add some uninstall rules for local install rules svn path=/trunk/; revision=28257 * Handle the CamelOfflineStore case just like the CamelDiscoStore case.Jeffrey Stedfast2005-01-073-22/+53 | | | | | | | | | | | | | | 2005-01-06 Jeffrey Stedfast <fejj@novell.com> * mail-folder-cache.c (mail_note_store): Handle the CamelOfflineStore case just like the CamelDiscoStore case. * mail-ops.c (prep_offline_do): Since we can't kill off CamelDisco* (groupwise is using it), we have to handle both CamelOfflineFolder and CamelDiscoFolder for now. (set_offline_do): Same. svn path=/trunk/; revision=28256 * dist the glade fileJP Rosevear2005-01-062-0/+5 | | | | | | | | 2005-01-06 JP Rosevear <jpr@novell.com> * Makefile.am: dist the glade file svn path=/trunk/; revision=28255 * include top_srcdirJP Rosevear2005-01-062-0/+5 | | | | | | | | 2005-01-06 JP Rosevear <jpr@novell.com> * Makefile.am: include top_srcdir svn path=/trunk/; revision=28254 * use the base name only, so if a full path is passed to us we still writeJP Rosevear2005-01-062-2/+11 | | | | | | | | | | 2005-01-06 JP Rosevear <jpr@novell.com> * e-error-tool.c (main): use the base name only, so if a full path is passed to us we still write out to the current directory, for when builddir != srcdir svn path=/trunk/; revision=28253 * Commiting send optionsChenthill Palanisamy2005-01-0612-7/+588 | | | | | | | | 2005-01-06 Chenthill Palanisamy <pchenthill@novell.com> Commiting send options svn path=/trunk/; revision=28252 * Commiting the files mentioned below again to HEAD since it was not addedChenthill Palanisamy2005-01-064-0/+1939 | | | | | | | | | 2005-01-06 Chenthill Palanisamy <pchenthill@novell.com> Commiting the files mentioned below again to HEAD since it was not added in head. svn path=/trunk/; revision=28250 * merging send optionsChenthill Palanisamy2005-01-062-0/+12 | | | | | | | | | | | 2005-01-06 Chenthill Palanisamy <pchenthill@novell.com> merging send options * Makefile.am: * e-send-options.[ch]: Widgets for the send options dialog * e-send-options.glade: Contains interface for the dialog svn path=/trunk/; revision=28249 * fix build for non gtk file chooser caseJP Rosevear2005-01-062-1/+6 | | | | | | | | | 2005-01-05 JP Rosevear <jpr@novell.com> * save-calendar.c (ask_destination_and_save): fix build for non gtk file chooser case svn path=/trunk/; revision=28248 * Dist the errors data properly, and add the .eplug output file toRodney Dawes2005-01-062-2/+8 | | | | | | | | | 2005-01-05 Rodney Dawes <dobey@novell.com> * Makefile.am: Dist the errors data properly, and add the .eplug output file to BUILT_SOURCES svn path=/trunk/; revision=28247 * Remove mail-errors.xml (the .h belongs here, not the straight .xmlRodney Dawes2005-01-052-1/+5 | | | | | | | | | 2005-01-05 Rodney Dawes <dobey@novell.com> * POTFILES.in: Remove mail-errors.xml (the .h belongs here, not the straight .xml currently) svn path=/trunk/; revision=28246 * added a new argument to pass the calendar client, since it might happen toRodrigo Moya2005-01-053-4/+27 | | | | | | | | | | | | | | | | | 2005-01-05 Rodrigo Moya <rodrigo@novell.com> * gui/e-day-view.c (e_day_view_find_event_from_uid): added a new argument to pass the calendar client, since it might happen to have events with the same UID on different calendars. (e_day_view_do_key_press, model_rows_deleted_cb): added new argument to e_day_view_find_event_from_uid. * gui/e-week-view.c (e_week_view_find_event_from_uid): same as e-day-view.c. (e_week_view_do_key_press, model_rows_deleted_cb): added new argument to e_week_view_find_event_from_uid. svn path=/trunk/; revision=28245 * Add the widget target, missed this.Not Zed2005-01-052-0/+11 | | | | | | | | 2005-01-05 Not Zed <NotZed@Ximian.com> * em-menu.c: (emph_targets[]): Add the widget target, missed this. svn path=/trunk/; revision=28244 * turn off debug, setup g private instance data structure. (setup_ui):Not Zed2005-01-052-3/+46 | | | | | | | | | | | | 2005-01-05 Not Zed <NotZed@Ximian.com> * e-msg-composer.c (d): turn off debug, setup g private instance data structure. (setup_ui): activate the composer plugin menu. (destroy): clean up the composer plugin menu. (class_init, init): init private instance data & plugin menu. svn path=/trunk/; revision=28243 * add a semi-dummy target for widget target.Not Zed2005-01-053-0/+34 | | | | | | | | | 2005-01-05 Not Zed <NotZed@Ximian.com> * em-menu.c (em_menu_target_new_widget): add a semi-dummy target for widget target. svn path=/trunk/; revision=28242 * handle the "reply" parameter, if set.Not Zed2005-01-053-9/+35 | | | | | | | | | | | | | 2005-01-05 Not Zed <NotZed@Ximian.com> * mail-component.c (handleuri_got_folder): handle the "reply" parameter, if set. * em-composer-utils.c (em_utils_reply_to_message): only ref the source if supplied. (reply_to_message): only unref the source if supplied. svn path=/trunk/; revision=28241 * -uu-:---F1 POTFILES.in (FundamentalJP Rosevear2005-01-052-5/+4 | | | | | | | | <jpr@novell.com> * POTFILES.in: remove dead files svn path=/trunk/; revision=28240 * new protos, modesJP Rosevear2005-01-057-36/+419 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-01-04 JP Rosevear <jpr@novell.com> * e-sidebar.h: new protos, modes * e-sidebar.c: handle 2 more modes, text only and toolbar style; allow visibility to be set for the buttons * e-shell-window.h: new proto * e-shell-window.c (setup_widgets): set the sidebar setting and visibility based on stored gconf settings (e_shell_window_save_defaults): save the current sidebar setting visibility (e_shell_window_peek_sidebar): return the sidebar * e-shell-window-commands.c (e_shell_window_commands_setup): add listeners for each of the component button radio items and for the hide toggle (view_buttons_icontext_item_toggled_handler): listener callback, set mode (view_buttons_icon_item_toggled_handler): ditto (view_buttons_text_item_toggled_handler): ditto (view_buttons_toolbar_item_toggled_handler): ditto (view_buttons_hide_item_toggled_handler): listener callback, set visibility * apps_evolution_shell.schemas.in.in: add component button style and visibility defaults svn path=/trunk/; revision=28239 * add component button view itemsJP Rosevear2005-01-055-5/+38 | | | | | | | | | | | | | | 2005-01-04 JP Rosevear <jpr@novell.com> * evolution.xml: add component button view items * evolution.xml: set the toolbar look to "system" everywhere * evolution-signature-editor.xml: ditto * evolution-message-composer.xml: ditto svn path=/trunk/; revision=28238 * remove dead filesJP Rosevear2005-01-057-347/+4 | | | | | | | | 2005-01-04 JP Rosevear <jpr@novell.com> * Makefile.am: remove dead files svn path=/trunk/; revision=28237 * use the new e-categories API in e-d-s.Rodrigo Moya2005-01-052-1/+7 | | | | | | | | | 2005-01-04 Rodrigo Moya <rodrigo@novell.com> * gui/e-cal-component-preview.c (write_html): use the new e-categories API in e-d-s. svn path=/trunk/; revision=28236 * removed most of the API. The rest will be removed as the GAL dependenciesRodrigo Moya2005-01-053-114/+15 | | | | | | | | | 2005-01-04 Rodrigo Moya <rodrigo@novell.com> * e-categories-config.[ch]: removed most of the API. The rest will be removed as the GAL dependencies are sorted out. svn path=/trunk/; revision=28235 * search our internal data for the correct event.Rodrigo Moya2005-01-052-2/+26 | | | | | | | | | 2005-01-04 Rodrigo Moya <rodrigo@novell.com> * gui/e-week-view.c (model_rows_deleted_cb): search our internal data for the correct event. svn path=/trunk/; revision=28234 * Use standard error messagesPhilip Van Hoof2005-01-043-34/+14 | | | | | | | | 2005-01-04 Philip Van Hoof <pvanhoof@gnome.org> * csv-format.c, rdf-format.c: Use standard error messages svn path=/trunk/; revision=28233 * Use standard error messagesPhilip Van Hoof2005-01-042-17/+8 | | | | | | | | 2005-01-04 Philip Van Hoof <pvanhoof@gnome.org> * save-attachments.c: Use standard error messages svn path=/trunk/; revision=28232 * add a11y name to calendar sidebar selector. add a11y name to task sidebarHarry Lu2005-01-043-0/+13 | | | | | | | | | | | 2005-01-04 Harry Lu <harry.lu@sun.com> * gui/calendar-component.c: (create_component_view): add a11y name to calendar sidebar selector. * gui/tasks-component.c: (create_component_view): add a11y name to task sidebar selector. svn path=/trunk/; revision=28231 * add atk name for the treeview.Mengjie Yu2005-01-042-0/+9 | | | | | | | | | 2004-12-28 Mengjie Yu <meng-jie.yu@sun.com> * em-folder-tree.c: (em_folder_tree_new_with_model): add atk name for the treeview. svn path=/trunk/; revision=28230 * Modify the changelog's entry date to corret year.Harry Lu2005-01-041-1/+1 | | | | svn path=/trunk/; revision=28229 * add ea-combo-button.[ch] to Makefile.Harry Lu2005-01-046-1/+224 | | | | | | | | | | | | 2005-01-04 Harry Lu <harry.lu@sun.com> * widgets/Makefile.am: add ea-combo-button.[ch] to Makefile. * widgets/ea-combo-button.c: * widgets/ea-combo-button.h: implement a11y object for e-combo-button. * widgets/ea-widgets.c: (e_combo_button_a11y_init): set a11y factory. * widgets/ea-widgets.h: add declaration. svn path=/trunk/; revision=28228 * new internal function to popup the menu. (impl_button_press_event): callHarry Lu2005-01-043-4/+61 | | | | | | | | | | | | | | 2004-01-04 Harry Lu <harry.lu@sun.com> * misc/e-combo-button.c: (e_combo_button_popup): new internal function to popup the menu. (impl_button_press_event): call the new function. (e_combo_button_class_init): init a11y. (e_combo_button_get_label): new function to return label. (e_combo_button_popup_menu): new function to popup menu. * misc/e-combo-button.h: add function declarations. svn path=/trunk/; revision=28227 * Don't do set_usize () on the containerRodney Dawes2005-01-042-1/+5 | | | | | | | | | 2005-01-03 Rodney Dawes <dobey@novell.com> * itip-formatter.c (format_itip_object): Don't do set_usize () on the container svn path=/trunk/; revision=28225 * load accountsJP Rosevear2005-01-042-0/+7 | | | | | | | | 2005-01-03 JP Rosevear <jpr@novell.com> * itip-formatter.c (format_itip_object): load accounts svn path=/trunk/; revision=28224 * remove unused messageJP Rosevear2005-01-043-9/+12 | | | | | | | | | | 2005-01-03 JP Rosevear <jpr@novell.com> * org-gnome-itip-formatter-errors.xml: remove unused message * itip-formatter.c (update_item): use info item, not e-error svn path=/trunk/; revision=28223 * implement cancel (update_item): add cancel info itemJP Rosevear2005-01-042-7/+19 | | | | | | | | | 2005-01-03 JP Rosevear <jpr@novell.com> * itip-formatter.c (view_response_cb): implement cancel (update_item): add cancel info item svn path=/trunk/; revision=28222 * Fixes #69663JP Rosevear2005-01-042-1/+18 | | | | | | | | | | | 2005-01-03 JP Rosevear <jpr@novell.com> Fixes #69663 * gui/e-cal-model-tasks.c (is_complete): look at the percent complete and status properties as well for completeness clues svn path=/trunk/; revision=28221 * utility routine to make it easier to add info itemsJP Rosevear2005-01-044-30/+74 | | | | | | | | | | | | | | | 2005-01-03 JP Rosevear <jpr@novell.com> * itip-view.c (itip_view_add_upper_info_item_printf): utility routine to make it easier to add info items (itip_view_add_lower_info_item_printf): ditto * itip-view.h: new protos * itip-formatter.c: use new printf routines everyhwere it makes sense svn path=/trunk/; revision=28220 * add itip-formatter to the "all" list, its not ready to be in the base yetJP Rosevear2005-01-042-2/+9 | | | | | | | | | 2005-01-03 JP Rosevear <jpr@novell.com> * configure.in: add itip-formatter to the "all" list, its not ready to be in the base yet though svn path=/trunk/; revision=28219 * move the adjust item work here when we actually have the calendarJP Rosevear2005-01-042-59/+60 | | | | | | | | | | | | | 2005-01-03 JP Rosevear <jpr@novell.com> * itip-formatter.c (find_cal_opened_cb): move the adjust item work here when we actually have the calendar (pitip_free): implement a free function (find_cal_opened_cb): check the methods instead of the show selector member (find_cal_opened_cb): default to true for the rsvp setting svn path=/trunk/; revision=28218 * move the adjust item work here when we actually have the calendarJP Rosevear2005-01-042-5/+45 | | | | | | | | | | 2005-01-03 JP Rosevear <jpr@novell.com> * itip-formatter.c (find_cal_opened_cb): move the adjust item work here when we actually have the calendar (pitip_free): implement a free function svn path=/trunk/; revision=28217 * add response enumsJP Rosevear2005-01-047-35/+288 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-01-03 JP Rosevear <jpr@novell.com> * itip-view.h: add response enums * itip-view.c (set_buttons): fiddle with button names and response enums * itip-formatter.c (find_server): don't include our uid in the conflicts search (update_attendee_status): update the status of the attendee and save it out (adjust_item): get relevant properties for items that might contain them if sent from an attendee (get_real_item): get the actual, current item (send_item): send the item (view_response_cb): handle REPLY and REFRESH requests (format_itip_object): adjust the item if necessary and set the attendee for reply/refresh; prevent crash if no description (pitip_free): skeleton free function (format_itip): load delete message setting (delete_toggled_cb): set delete message setting based on toggle (itip_formatter_page_factory): make the delete message check box work * Makefile.am: install e-error messages svn path=/trunk/; revision=28216 * new protos, signalJP Rosevear2005-01-034-114/+749 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-01-03 JP Rosevear <jpr@novell.com> * itip-view.h: new protos, signal * itip-view.c (set_info_items): be more generic so both upper and lower setting can use it (set_upper_info_items): set the upper info items (set_lower_info_items): ditto for lower items (itip_view_destroy): clear both sets of info items (itip_view_class_init): add source selected signalo (itip_view_init): add separate upper and lower info item areas and a detail area (itip_view_add_upper_info_item): add upper info item (itip_view_remove_upper_info_item): remove a singal upper area info item (itip_view_clear_upper_info_items): clear them all (itip_view_add_lower_info_item): as above (itip_view_remove_lower_info_item): ditto (itip_view_clear_lower_info_items): ditto (source_selected_cb): emit the source selected signal when the source in the option menu changes (itip_view_set_source_list): take a source list and create an e-source-option-menu if its non-null (itip_view_get_source_list): get source list (itip_view_set_source): set a specific source in the source option menu (itip_view_get_source): obtain that source (itip_view_set_rsvp): get the rsvp status (itip_view_get_rsvp): set it (itip_view_set_show_rsvp): set visibility of rsvp check box (itip_view_get_show_rsvp): get the visibility of rsvp check box (itip_view_set_buttons_sensitive): set button sensitivity (itip_view_get_buttons_sensitive): get button sensitivity * itip-formatter.c (find_my_address): find the user's address in the list of attendees (set_buttons_sensitive): set the action buttons sensitivity appropriately (cal_opened_cb): use above (start_calendar_server): ditto (start_calendar_server_by_uid): de-sensitize buttons to start (source_selected_cb): ditto (find_cal_opened_cb): check for conflicting appointments; set informative info area items (find_server): create the sexp for determining conflicts (update_item): oset informative info area items (view_response_cb): implement some of the responses, start on implementing rsvp svn path=/trunk/; revision=28215 * redo the queries after emitting the 'time_range_changed' signal, since nowRodrigo Moya2005-01-034-24/+19 | | | | | | | | | | | | | | | | | | | | | | 2005-01-03 Rodrigo Moya <rodrigo@novell.com> * gui/e-cal-model.c (e_cal_model_set_time_range): redo the queries after emitting the 'time_range_changed' signal, since now the views will only update their internal data but not redraw the events on that signal. * gui/e-day-view.c (model_changed_cb): removed, no longer needed. (e_day_view_recalc_day_starts): no need to call e_day_view_update_query. (e_day_view_init): no need to connect to 'model_changed' signal on the model, we already connect to the row/cell_changed ones. * gui/e-week-view.c (time_range_changed_cb): no need to call e_week_view_update_query. (model_changed_cb): removed, no longer needed. (e_week_view_init): no need to connect to 'model_changed' signal on the model, we already connect to the row/cell_changed ones. svn path=/trunk/; revision=28214 * Warning when overwriting filePhilip Van Hoof2005-01-034-10/+60 | | | | | | | | 2004-12-27 Philip Van Hoof <pvanhoof@gnome.org> * csv-format.c, rdf-format.c: Warning when overwriting file svn path=/trunk/; revision=28213 * Warning when overwriting filePhilip Van Hoof2005-01-032-1/+30 | | | | | | | | 2004-12-27 Philip Van Hoof <pvanhoof@gnome.org> * save-attachments.c: Warning when overwriting file svn path=/trunk/; revision=28212 * Fixing bug 61068 (removing a white space in a string)Andre Klapper2005-01-032-1/+6 | | | | | | | | | 2004-12-21 Andre Klapper <a9016009@gmx.de> * tools/evolution-addressbook-export.c: Fixing bug 61068 (removing a white space in a string) svn path=/trunk/; revision=28211 * scriptyFunda Wang2005-01-021-90/+153 | | | | svn path=/trunk/; revision=28210 * add necessary includeJP Rosevear2005-01-01