Commit graph

1268 commits

Author SHA1 Message Date
fros4943
c6c7c51c10 generate random mote type identifiers 2009-06-03 17:27:37 +00:00
fros4943
7ada9705a4 show dialog at script errors 2009-06-03 17:26:31 +00:00
fros4943
7877d54e1e bugfix: mote plugins should use the start plugin action 2009-06-02 15:04:49 +00:00
fros4943
af0c20e00d extend SerialUI to avoid code duplication 2009-06-02 09:34:59 +00:00
fros4943
9ea673f3be minor fix: always show start of lines 2009-06-02 09:34:12 +00:00
fros4943
cdf4bfd4f8 gui action fix: do not directly change isEnabled() from the simulation thread 2009-05-28 14:53:26 +00:00
fros4943
e54e0db966 bugfix: non-simulation plugins menu items need separate action listeners 2009-05-28 13:45:18 +00:00
fros4943
c9e97fd1ae fix: only toggle actions state in visualized mode + documentation 2009-05-28 12:59:02 +00:00
fros4943
02b5d5e230 gui update: enable menu items depending on whether a simulation is loaded or not 2009-05-28 12:55:14 +00:00
nifi
efbae10245 Load last opened simulation configuration file when reloading without simulation.
Added key shortcuts to last opened files.
2009-05-27 23:23:41 +00:00
fros4943
0f924ed2dd fix: report test success by log.testOK() 2009-05-26 14:52:09 +00:00
fros4943
6ddc3642bf fix: Contiki path printout 2009-05-26 14:36:26 +00:00
fros4943
b143dbe4b2 example updates 2009-05-26 14:34:43 +00:00
fros4943
e238d84a75 milliseconds -> microseconds update + removed dependency of radio interface 2009-05-26 14:34:30 +00:00
fros4943
1c22bf5151 event based mote interfaces + reimplemented cross level functionality for TR1001 2009-05-26 14:33:30 +00:00
fros4943
c59fc91487 milliseconds -> microseconds update 2009-05-26 14:31:07 +00:00
fros4943
62db437c2d minor bugfixes + added zoom functionality 2009-05-26 14:30:20 +00:00
fros4943
7985a9310b milliseconds -> microseconds update + more effective repainting using swing timers (avoid AWT event floods) 2009-05-26 14:27:00 +00:00
fros4943
e5219e0d8b better description 2009-05-26 14:25:29 +00:00
fros4943
cf9b7b76fe milliseconds -> microseconds update 2009-05-26 14:25:07 +00:00
fros4943
d996ae1476 event based mote interfaces: less dependencies on tick polling + using new mote time events 2009-05-26 14:24:20 +00:00
fros4943
fba3701a86 contiki mote schedules their next wakeup based on Contiki etimers + removed notion of active vs LPM state (optimization no longer needed) 2009-05-26 14:21:20 +00:00
fros4943
a327180762 new help class: time event associated with (or scheduled from) a mote. if the mote is removed during simulation, this enables removing all its scheduled events 2009-05-26 14:19:17 +00:00
fros4943
633f9bb5ef radio medium updates: removed obsolete tick observer + notifying observers for each finished radio connection separately 2009-05-26 14:17:29 +00:00
fros4943
61c2ed2e1a two major updates:
simulation time now uses microsecond resolution instead of earlier millisecond (allows for better simulation accuracy)
+
Contiki motes schedule their own events instead of the earlier approach of having the simulation loop register tick events common to all Contiki motes (faster simulation)

both changes require extensive changes throughout COOJA
2009-05-26 14:15:41 +00:00
fros4943
300f3396ac allow contiki motes to handle several contiki events each tick + corrected variables types 2009-05-26 14:08:51 +00:00
fros4943
990aa93d57 setting timeline plugin as default 2009-05-26 14:07:19 +00:00
fros4943
a5ec895bf7 updated cross level test: bug fix + more debug info 2009-05-26 14:05:35 +00:00
fros4943
1b937d8287 added static connection ID for debugging purposes 2009-05-26 13:37:26 +00:00
fros4943
7c2e0a4b48 added method for peeking at first scheduled event 2009-05-26 13:36:36 +00:00
fros4943
a8e66853bc updated cc2420 converter to 6 byte xmac headers 2009-05-26 13:33:35 +00:00
fros4943
1fdd19079f catch exceptions thrown from script threads 2009-05-20 14:11:21 +00:00
fros4943
bd2ac3991a show also converted packet data in tooltip 2009-05-20 12:02:06 +00:00
fros4943
f181ba6f7d moved obsolete cooja projects to backyard 2009-05-18 14:48:10 +00:00
fros4943
88368b7c91 quick hack for storing logged events to file 2009-05-18 14:24:25 +00:00
nifi
4d38657502 setup skin from event dispatcher 2009-05-18 13:57:51 +00:00
fros4943
78979dba0d test update: verify base64 data uploaded via serial port 2009-05-18 10:19:34 +00:00
fros4943
49520f6f38 script for running several repeated tests 2009-05-18 09:08:48 +00:00
fros4943
fa4a22412a test update: delay a few seconds before pinging the node 2009-05-18 08:03:40 +00:00
adamdunkels
8bfb856220 Enable NAT on both tap0 and tun0, and set the outgoing interface to eth10 which seems to be the default on instant-contiki 2009-05-12 17:24:04 +00:00
adamdunkels
4855d0325c Small script for setting up NAT on Ubuntu (probably works on other linuxen too) 2009-05-11 07:01:54 +00:00
joxe
890eb830e8 ipv6 bridge between 802.15.4 and ethernet - over USB/SLIP - use with sliptap6 2009-05-08 12:49:36 +00:00
joxe
8e08bc085c added tapslip6 for ipv6 connectivity over USB/SLIP/ethernet - use together with uip6-bridge 2009-05-08 12:37:34 +00:00
adamdunkels
53a0c0a300 Draw 0-width radio events as one pixels wide to show all transmissions 2009-05-06 15:00:06 +00:00
fros4943
0f57afa2b3 bugfix: the preamble and synchbytes was shown instead of the payload (including 2 footer bytes) 2009-05-06 12:59:12 +00:00
fros4943
18b2392e48 minor fix: avoid repaint flicker by directly setting scroll coordinate 2009-05-04 16:03:35 +00:00
fros4943
ad2c952810 new cooja timeline plugin.
still experimental and under development, therefore not yet enabled by default
2009-05-04 15:38:35 +00:00
fros4943
8fc7bc10cd bugfix: make sure destination has not already been removed from connection 2009-05-04 15:34:28 +00:00
fros4943
316f154c1f notify when radio HW is turned on/off 2009-05-04 15:34:00 +00:00
fros4943
09409fc5a7 fixed last commit regarding "run_bigmem": some windows systems cannot allocate more than 1500mb maxmemory 2009-04-30 08:16:34 +00:00
fros4943
b22cfd88bd increased maximum heap memory 2009-04-30 07:46:17 +00:00
fros4943
dbd5f095e4 new default clock frequency for Contiki's sky motes: 3.9MHz 2009-04-29 20:04:56 +00:00
adamdunkels
3c68862599 Make wpcapslip compile with current uip headers 2009-04-29 11:56:14 +00:00
fros4943
330b5275a1 bug fix: bytes were not displayed correctly (signed) 2009-04-28 07:33:09 +00:00
fros4943
3aac9a49ce bug fix: last address bytes were not displayed correctly (signed) 2009-04-28 07:29:26 +00:00
fros4943
332d1f45c0 running test with simulation delay to avoid test timeout while external ping process has not finished 2009-04-23 10:53:32 +00:00
fros4943
964310303d cloned sky ip ping test, but for contiki motes 2009-04-23 10:43:16 +00:00
fros4943
382d69ed5d release semaphores before stopping simulation (may deadlock) 2009-04-23 10:41:35 +00:00
fros4943
921ceabb50 implemented writeArray() and writeByte() for Contiki serial interface 2009-04-23 09:17:01 +00:00
fros4943
11879f210c improved debug output 2009-04-23 08:59:22 +00:00
fros4943
2768a96b9b minor fixes: remember last used test, respect maximum window size etc 2009-04-23 08:54:10 +00:00
fros4943
3a6e561ea8 better button description: "Stop" -> "Pause" 2009-04-23 08:48:01 +00:00
fros4943
997a5f6983 reverting previous accidental commit 2009-04-21 20:46:02 +00:00
fros4943
4790ff8f74 increasing loop symbols for higher clock speed 2009-04-21 18:22:41 +00:00
fros4943
6554e2293d + draw connection arrows 2009-04-20 18:09:54 +00:00
nifi
a66724e272 made table contents more compact and changed tooltip for radio packets to show hex dump 2009-04-20 17:24:03 +00:00
nifi
ecf288c89d allow loading configs referring to MspIPAddress, which was removed 2009-04-20 17:16:20 +00:00
nifi
b08cffa3b2 Utility methods for generating hex dumps et al 2009-04-20 17:14:19 +00:00
fros4943
5a5585238b allow loading configs referring to MspIPAddress, which was removed 2009-04-20 16:48:53 +00:00
fros4943
eccadb44f1 bugfix: must lock active connections before copying 2009-04-20 16:26:02 +00:00
fros4943
eb3d501ca6 added rime address interface as default for contikii mote types 2009-04-20 16:17:38 +00:00
fros4943
d91100fdfc remade led skin: showing leds left of motes 2009-04-20 16:16:25 +00:00
fros4943
266823defa new visualizer skin: showing mote IP or Rime addresses 2009-04-20 16:15:47 +00:00
fros4943
0528bcd1bd added read-only rime address interface: currently fixed to 2 bytes 2009-04-20 16:13:11 +00:00
fros4943
3718304c76 removed abstract ip address interface: equal for all motes 2009-04-20 16:12:37 +00:00
fros4943
c76a406cba added read-only rime address interface 2009-04-20 16:12:01 +00:00
fros4943
dfbc51c6f2 disabled ip distributors, currently not used 2009-04-20 16:09:29 +00:00
fros4943
d669cc67fb removed debugging output 2009-04-20 16:09:10 +00:00
fros4943
8f8ac130fb fixed error output in log4j 2009-04-20 16:08:53 +00:00
fros4943
a9cf47c97a show error dialog when failing to add mote 2009-04-20 16:07:32 +00:00
joxe
301d25c21f added ELF file checker in mspsim - verifies ELF files based on the 4 magic bytes 2009-04-20 16:06:03 +00:00
joxe
61ed2b5b5c made COOJA accept ELF files based on MAGIC ELF code instead of filename 2009-04-20 16:04:46 +00:00
nifi
7d7f2348d9 increased tooltip timeout to one minute 2009-04-20 14:11:01 +00:00
fros4943
da33cb5e61 added test for shell sendcmd command (sky platform) 2009-04-20 13:12:52 +00:00
fros4943
f4755f649f added test for shell download command (sky platform) 2009-04-20 13:04:20 +00:00
nvt-se
2d049bf5dc fixed udp test to use new addresses. 2009-04-16 20:54:49 +00:00
fros4943
ebcd6a08a5 added method for checking if radio can receive data 2009-04-16 14:28:12 +00:00
fros4943
5af34f6800 + method for checking if radio can receive data. does not change simulation output, but allows the radio medium to better keep track of how many packets were received etc 2009-04-16 14:26:35 +00:00
zhitao
7bc3df218c removed file to avoid violation of IP rights 2009-04-16 13:37:28 +00:00
zhitao
302e4339a8 added supposedly missing BSL program for JCreate nodes 2009-04-16 12:33:19 +00:00
fros4943
906e341a65 visualizer update: enabling selecting multiple visualizer skins 2009-04-14 15:40:26 +00:00
nvt-se
d86ee2c665 changed address setup slightly. 2009-04-10 16:51:16 +00:00
nifi
7b34c4114c restored IP addresses 2009-04-09 23:10:43 +00:00
nifi
7b03d80974 added test script and info for ipv6 routing multihop simulation 2009-04-09 22:45:32 +00:00
nvt-se
670311f16c added ipv6 routing simulation with multiple hops. 2009-04-09 22:07:28 +00:00
fros4943
692dd2cb4b do not convert packet is bad length is set in cc2420 fifo 2009-04-09 17:41:29 +00:00
fros4943
38b38edf95 added method for faking mote output in tests: mostly used for debugging 2009-04-03 17:05:14 +00:00
fros4943
b2a98f49e6 + constructor option for not automatically throwing "requires visualization" exception 2009-04-03 17:03:42 +00:00
fros4943
188ce975ca radio logger plugin facelift: display the original packet data instead of only the converted data.
this allows viewing all bytes sent from for example sky motes, including radio/mac headers
2009-04-01 23:40:00 +00:00
fros4943
2ac3662ea8 sky motes output the new converted radio packets 2009-04-01 23:37:27 +00:00
fros4943
0a740aad63 documentation update 2009-04-01 23:35:23 +00:00
fros4943
5eddd2d095 added converted radio packet, containing both the original and the converted data 2009-04-01 23:34:45 +00:00
fros4943
e3bf2b58a6 logging connection start time 2009-04-01 23:33:05 +00:00
fros4943
9b41b02de1 added another ipv6 udp test:
identical setup as the sky_ipv6_udp test, but with contiki motes (native ipv6)
2009-04-01 18:09:20 +00:00
fros4943
e4858a2ade update ip interface to supports ipv6 addresses.
also disabled writing IP addresses from inside COOJA, since the these should rather be determined by Contiki
2009-04-01 17:43:17 +00:00
fros4943
0e732f8dba removed old uip/uaodv comm stack, added uipv6 2009-04-01 14:02:44 +00:00
fros4943
def81a5d02 remember last source file 2009-04-01 14:01:45 +00:00
fros4943
fe1f594d73 activated communication stack selection for contiki mote types 2009-04-01 14:00:00 +00:00
fros4943
5ed4a247f7 highlight all destination motes when clicked 2009-04-01 13:53:37 +00:00
fros4943
e0eaeb0d8b bugfix: no visualizer may be selected when simulation is reloaded 2009-04-01 13:51:50 +00:00
fros4943
1536c83f2f added serial line init 2009-04-01 13:38:14 +00:00
fros4943
13b6fe2cd5 added experimental packet counters 2009-03-26 16:24:31 +00:00
fros4943
5f1fda0406 removed unused variables + writing serial data in timeevent 2009-03-26 16:23:47 +00:00
fros4943
bc26f42992 make sure components are initialized at tick event 2009-03-26 15:41:59 +00:00
fros4943
1cc78b180f highlight several motes at the same time 2009-03-26 15:41:04 +00:00
fros4943
d7dda45a96 recompile at ctrl+r 2009-03-26 15:40:37 +00:00
fros4943
75673d18f5 minor fix: process argument also working on linux 2009-03-26 14:15:10 +00:00
fros4943
a034df48cf new test for shell command 'exec' and the Contiki elfloader:
Tests Contiki ELF loader and shell command 'exec': Hello-world is compiled as a Contiki executable (.ce) and is uploaded to the single Sky node via serial port (base64 encoded). The node then loads and starts the uploaded hello-world application. Test succeeds when the 'Hello, World' output appears
2009-03-26 12:51:56 +00:00
joxe
d9e1e9d037 updated with latest mspsim version 2009-03-24 16:31:17 +00:00
fros4943
6ab2b74258 bugfix: made classes public 2009-03-24 16:07:44 +00:00
fros4943
c377c9150f removed visualizer example project 2009-03-24 15:50:54 +00:00
fros4943
5abbb3e9c2 config update: visualizers 2009-03-24 15:49:35 +00:00
fros4943
2f25d6fbe5 backwards compatibility: visualizer plugins were removed 2009-03-24 15:47:10 +00:00
fros4943
ce32a5b0b0 register radio medium skin 2009-03-24 15:46:46 +00:00
fros4943
b949a036f2 a few simple visualizer skins 2009-03-24 15:46:29 +00:00
fros4943
b7840178a1 new visualizer plugin with skin support 2009-03-24 15:46:18 +00:00
fros4943
5c38c82608 removing old visualizer plugins.
(replaced by a generic visualizer with skin support)
2009-03-24 15:44:25 +00:00
nifi
7da12552cd fixed to save scroll position in configuration files 2009-03-23 13:26:43 +00:00
fros4943
f0c562a2c6 minor bugfixes: support relative paths when saving simulation configs + check that simulation load succeeded 2009-03-22 14:05:19 +00:00
fros4943
65d64d0c06 make sure parent directory of current config file exists 2009-03-22 13:47:38 +00:00
fros4943
950f7696a3 autostart simulation is reloaded when simulation is running 2009-03-21 16:45:42 +00:00
fros4943
fee88cb042 make sure compilation process is killed when simulation load is aborted 2009-03-21 16:44:29 +00:00
fros4943
fa09bd6c69 removed non-existing IP stack warning at startup 2009-03-21 15:49:29 +00:00
fros4943
9088341a17 added apps/avrora as default project for all platforms 2009-03-21 15:46:51 +00:00
fros4943
c205280f30 removing contiki log interface, instead only using the serial port interface 2009-03-21 15:41:42 +00:00
fros4943
480c023578 abstraction level annotation 2009-03-21 14:51:03 +00:00
fros4943
eb2753f23d set default size 2009-03-21 14:40:22 +00:00
fros4943
82669a1a89 simplified error dialog 2009-03-21 14:24:55 +00:00
joxe
29f6ee7e98 added serial output for MicaZ 2009-03-19 18:58:19 +00:00
joxe
9ea19b4e81 added generic serial GUI component 2009-03-19 18:55:44 +00:00
joxe
a464b9455c removed some debug printout and added initial serial output on stdout 2009-03-19 14:47:36 +00:00
joxe
e3fa0a41d3 fixed firmware loading bug for micaz nodes 2009-03-19 09:08:44 +00:00
fros4943
6f52115d3a bugfix: sensor process should be started by default 2009-03-17 10:34:02 +00:00
fros4943
0580b4ea9d + special case: allow single parent directory when saving relative source file paths 2009-03-17 09:16:36 +00:00
fros4943
c53d80a608 experimental: print pc history when program jumps to bad address 2009-03-13 16:24:29 +00:00
fros4943
eb3874a1fb set initial error dialog size 2009-03-13 15:15:37 +00:00
fros4943
f4333ab089 use regular api for configuring mote type, instead of directly calling contiki compile method 2009-03-13 14:33:48 +00:00
adamdunkels
65eb5fd4e8 Renamed the rimebuf module to packetbuf to signal that the module is used outside of a pure Rime context (e.g., the sicslowpan code uses it). 2009-03-12 21:58:20 +00:00
nifi
f67909271e code cleanup 2009-03-12 18:40:06 +00:00
nifi
92e941f2c1 bug fix: set simulation at configure 2009-03-12 18:25:45 +00:00
nifi
473a10caf2 fixed to finish edit before reading values from text fields 2009-03-12 17:52:20 +00:00
fros4943
536af1381a temporary fix for catching new emulationexception 2009-03-12 17:47:57 +00:00
fros4943
a27ec1bbef updated mspsim with adc bugfix 2009-03-12 17:30:07 +00:00
fros4943
67407d6f36 + support for config file relative paths when saving simulations
+ support for quickstarting from simulation config
2009-03-12 15:10:00 +00:00
fros4943
7099572282 + support for config file relative paths when saving simulations 2009-03-12 15:08:29 +00:00
fros4943
a17e7d109a minor fix: only reset dialogstate if mote type is not loaded 2009-03-12 13:20:58 +00:00
fros4943
063bf88f90 cooja quickstart should be started from normal cooja working directory, otherwise config relative paths won't work
+
cygwin path fix for quickstart
2009-03-12 13:04:10 +00:00
nifi
9a388fbd99 cleaned up exception handling 2009-03-12 11:01:26 +00:00
fros4943
be9bc1570d immediately quit if simulation has error in test mode 2009-03-11 22:17:04 +00:00
fros4943
14924bae66 experimental: quick-n-dirty way to indicate compilation progress when (re)loading simulations 2009-03-11 20:14:52 +00:00
fros4943
9b2a1097d1 using Java's built-in methods for converting to Contiki relative paths 2009-03-11 19:19:39 +00:00
fros4943
47da035f38 added simulation config backwards compatibility for contiki mote types: may not work for configurations with several compiled sources 2009-03-11 18:42:53 +00:00
fros4943
3a2718279b gui fixes: allow editing external tools settings, hide advanced tab (not used yet) etc 2009-03-11 18:18:57 +00:00
fros4943
d26ba2606b added simulation config backwards compatibility for msp motes 2009-03-11 17:46:59 +00:00
fros4943
1ca67916a4 implemented new mote type interfaces 2009-03-11 14:12:18 +00:00
fros4943
adf1489cda also clean avrora project 2009-03-11 13:54:46 +00:00
fros4943
42ed8a3b9b only remove cooja-avrora jar when cleaning 2009-03-11 13:49:47 +00:00
fros4943
aa74e55347 minor fix: clear commands from event thread 2009-03-11 13:27:51 +00:00
fros4943
82305b3572 with the recent mote type updates, the simulation config structure changed.
* updated simconfigs
2009-03-11 13:25:40 +00:00
fros4943
71ea1cc56e saving contiki relative paths 2009-03-11 11:54:19 +00:00
fros4943
9b30447b11 removed old contiki mote type dialog, replaced by the newer shared compile dialog 2009-03-11 08:46:10 +00:00
fros4943
f46770ae85 using new compiler library for configuration wizard 2009-03-11 08:44:32 +00:00
fros4943
8ec6bbd32b compile method signature update 2009-03-11 08:42:07 +00:00
fros4943
bcb34297df reimplemented quickstart functionality 2009-03-11 07:45:54 +00:00
fros4943
874ffb029b removed autostart processes from contiki template: these are now instead defined in the contiki application 2009-03-10 21:24:46 +00:00
fros4943
42a7eb3c86 new compile dialog for creating contiki mote types. 2009-03-10 21:21:44 +00:00
fros4943
fc57a7acc8 mote types are returned as array now 2009-03-10 21:20:30 +00:00
fros4943
230d580aae added functionality for generating contiki main sources and building compiler environment. used by the contiki mote type 2009-03-10 21:20:08 +00:00
fros4943
e1baf890e4 added configurable environment + other minor changes 2009-03-10 21:13:07 +00:00
fros4943
c0bdeed635 rewrote contiki mote type to be more integrated with the contiki build system.
example: instead of selecting and scanning for contiki processes, autostart processes are determined as on other platforms: via AUTOSTART() macro in the main contiki application

not all functionality has been reimplemented yet
2009-03-10 21:10:06 +00:00
fros4943
d0b7460b5e return mote types as array, not vector 2009-03-10 21:05:29 +00:00
fros4943
c7ea9fc6e1 minor documentation and code fixes 2009-03-10 21:05:00 +00:00
fros4943
eb9865ce79 removing old JNI test, replaced by a configuration wizard in Cooja 2009-03-09 17:46:48 +00:00
fros4943
25ca251a89 quick-fix: the generator assumes that the constructor accepts a mote object, this is the quickest fix currently 2009-03-09 17:14:35 +00:00
fros4943
e5a5f7dd5d using mote type configuration for generating correct mote interfaces:
it is now possible to configure which interfaces msp430-based have
2009-03-09 17:12:27 +00:00
fros4943
1c0e432969 esb mote type should use esb mote interfaces, not sky mote interfaces 2009-03-09 17:10:14 +00:00
fros4943
01b0006e6f method names changed 2009-03-09 16:08:17 +00:00
fros4943
728b22bedb renamed author to avoid compiler warnings 2009-03-09 16:05:11 +00:00
fros4943
f30f8d289e compile dialog implementations 2009-03-09 16:04:42 +00:00
fros4943
83ad0c18ba calling contiki compile library for compiling instead of as earlier the msp mote type 2009-03-09 16:03:58 +00:00
fros4943
bd3107ae0d method names changed 2009-03-09 16:01:29 +00:00
fros4943
ad63ae22fd now using contiki compilation library:
removed lots of code from this class that was earlier used for compiling sky and esb motes
2009-03-09 16:00:16 +00:00
fros4943
b1d886a8e1 added contiki-related methods to mote type java interface, for example main contiki source file 2009-03-09 15:40:26 +00:00
fros4943
f3ca86b261 new mote interfaces api + name changes 2009-03-09 15:39:33 +00:00
fros4943
74647ce2de application-level mote type implementing new mote type methods
+ radio disturber mote extending abstract application mote
2009-03-09 15:38:10 +00:00
fros4943
dadc67abd7 renamed author to avoid compiler warnings 2009-03-09 14:08:54 +00:00
fros4943
10d13f9dd3 mote interface handler initialized by class array, not vector pointer 2009-03-09 14:08:03 +00:00
fros4943
217d8cf0b3 abstract contiki compile dialog using compile library.
to be implemented by msp mote type
2009-03-09 13:58:12 +00:00
fros4943
37586984f6 contiki compile library. used by several mote type implementations (both emulated and os-level). 2009-03-09 13:32:50 +00:00
fros4943
68d110216f added commonly used popup menu items to message list, such as copy to clipboard 2009-03-09 13:19:07 +00:00