source: subversion/applications/editors/potlatch/start.as @ 11151

Last change on this file since 11151 was 11151, checked in by richard, 11 years ago

Potlatch 0.10e

  • Property svn:executable set to *
File size: 7.0 KB
Line 
1
2        // Potlatch introduction/welcome functions
3       
4        // -----------------------------------------------------------------------
5        // Load presets
6       
7        function loadPresets() {
8                _root.windows.attachMovie("modal","pleasewait",++windowdepth);
9                _root.windows.pleasewait.init(295,35,new Array(),null);
10                _root.windows.pleasewait.box.createTextField("prompt",2,37,8,280,20);
11                _root.windows.pleasewait.box.attachMovie("whirl","whirl",3);
12                with (_root.windows.pleasewait.box.whirl) { _x=20; _y=18; }
13                writeText(_root.windows.pleasewait.box.prompt,"Please wait - loading presets.");
14                preresponder = function() { };
15                preresponder.onResult = function(result) {
16                        _root.presets=result[0];
17                        _root.presetmenus=result[1];
18                        _root.presetnames=result[2];
19                        _root.colours=result[3];
20                        _root.casing=result[4];
21                        _root.areas=result[5];
22                        _root.autotags=result[6];
23                        _root.relcolours=result[7];
24                        _root.relalphas=result[8];
25                        _root.relwidths=result[9];
26                        _root.i18n=result[10];
27                        _root.panel.i_preset._visible=false;
28
29                        _root.waysloading._x=Stage.width-220;
30                        _root.waysloading._y=5;
31                        _root.waysloading.createTextField('prompt',2,0,0,195,20);
32                        with (_root.waysloading.prompt) {
33                                text=iText("loading ways",'hint_loading'); setTextFormat(plainRight);
34                                selectable=false;
35                        }
36                        _root.waysloading.createEmptyMovieClip('bg',1);
37                        with (_root.waysloading.bg) {
38                                beginFill(0xFFFFFF,75);
39                                moveTo(215,0); lineTo(210-_root.waysloading.prompt.textWidth-22,0);
40                                lineTo(210-_root.waysloading.prompt.textWidth-22,_root.waysloading.prompt.textHeight+5);
41                                lineTo(215,_root.waysloading.prompt.textHeight+5); lineTo(215,0);
42                                endFill();
43                        }
44                        _root.waysloading.attachMovie("whirl","whirl",3);
45                        _root.waysloading.whirl._x=205;
46                        _root.waysloading.whirl._y=10;
47                        _root.waysloading.whirl._xscale=
48                        _root.waysloading.whirl._yscale=75;
49
50                        if (lat!=undefined) { startPotlatch(); }        // Parse GPX if supplied
51                        if (gpx) { parseGPX(gpx); }                                     //  |
52                                else { _root.windows.pleasewait.remove(); }
53                        if (lat==undefined) { lat=0; long=0; startPotlatch(); }
54                        if (!preferences.data.nosplash) { splashScreen(); }
55                        welcomeButtons();
56                };
57                remote_read.call('getpresets',preresponder);
58        }
59       
60        // -----------------------------------------------------------------------
61        // Create splash screen
62       
63        function splashScreen() {
64                _root.windows.attachMovie("modal","splashscreen",++windowdepth);
65                _root.windows.splashscreen.init(500,225,[],null,true);
66
67                _root.windows.splashscreen.box.createTextField("title",1,7,7,500-14,20);
68                with (_root.windows.splashscreen.box.title) {
69                        type='dynamic';
70                        text=iText("Welcome to OpenStreetMap!",'prompt_welcome'); setTextFormat(boldText);
71                }
72
73                // Light grey background
74                _root.windows.splashscreen.box.createEmptyMovieClip('lightgrey',2);
75                with (_root.windows.splashscreen.box.lightgrey) {
76                        beginFill(0xF3F3F3,100);
77                        moveTo(10,30); lineTo(492,30);
78                        lineTo(492,195); lineTo(10,195);
79                        lineTo(10,30); endFill();
80                };
81               
82                _root.windows.splashscreen.box.createTextField("prompt",3,15,35,500-30,180);
83                writeText(_root.windows.splashscreen.box.prompt,iText(
84                        "Choose a button below to get editing. If you click 'Start', "+
85                        "you'll be editing the main map directly - changes usually show "+
86                        "up every Thursday. If you click 'Play', your changes won't be "+
87                        "saved, so you can practise editing.\n\n"+
88                        "Remember the golden rules of OpenStreetMap:\n\n",'prompt_introduction')+
89                        chr(0x278A)+"  "+iText("Don't copy from other maps"                                                     ,'prompt_dontcopy')+"\n"+
90                        chr(0x278B)+"  "+iText("Accuracy is important - only map places you've been",'prompt_accuracy')+"\n"+
91                        chr(0x278C)+"  "+iText("And have fun!"                                                                          ,'prompt_enjoy'   )+"\n");
92
93                _root.windows.splashscreen.box.attachMovie("checkbox","nosplash",5);
94                _root.windows.splashscreen.box.nosplash.init(12,205,iText("Don't show this message again",'dontshowagain'),preferences.data.nosplash,function(n) { preferences.data.nosplash=n; });
95        }
96
97        // -----------------------------------------------------------------------
98        // Create welcome buttons
99       
100        function welcomeButtons() {
101                _root.panel.properties._visible=false;
102                _root.panel.createEmptyMovieClip("welcome",61);
103       
104                _root.panel.welcome.createEmptyMovieClip("start",1);
105                drawButton(_root.panel.welcome.start,150,7,iText("Start",'start'),iText("Start mapping with OpenStreetMap.",'prompt_start'));
106                _root.panel.welcome.start.onPress=function() { removeWelcome(true); };
107
108                _root.panel.welcome.createEmptyMovieClip("play",2);
109                drawButton(_root.panel.welcome.play,150,29,iText("Play",'play'),iText("Practise mapping - your changes won't be saved.",'prompt_practise'));
110                _root.panel.welcome.play.onPress=function() { removeWelcome(false); };
111       
112                _root.panel.welcome.createEmptyMovieClip("help",3);
113                drawButton(_root.panel.welcome.help,150,51,iText("Help",'help'),iText("Find out how to use Potlatch, this map editor.",'prompt_help'));
114                _root.panel.welcome.help.onPress=function() { getUrl("http://wiki.openstreetmap.org/index.php/Potlatch","_blank"); };
115       
116                if (gpx) {
117                        _root.panel.welcome.createEmptyMovieClip("convert",4);
118                        drawButton(_root.panel.welcome.convert,150,73,iText("Track",'track'),iText("Convert your GPS track to (locked) ways for editing.",'prompt_track'));
119                        _root.panel.welcome.convert.onPress=function() { gpxToWays(); removeWelcome(true); };
120                }
121        }
122
123        function removeWelcome(live) {
124                if (!_root.panel.welcome) { return; }
125                removeMovieClip(_root.panel.welcome);
126                _root.panel.properties._visible=true;
127                _root.panel.presets._visible=true;
128                _root.windows.splashscreen.remove();
129                if (live) { setEditingStatus(iText("Editing map",'editingmap')); }
130                         else { setEditingStatus(iText("Practice mode",'practicemode'));
131                                        _root.sandbox=true; }
132        }
133
134        // -----------------------------------------------------------------------
135        // Main start function
136
137        function startPotlatch() {
138                _root.urllat  =Number(lat);                                             // LL from query string
139                _root.urllong =Number(long);                                    //  |
140                _root.baselong=urllong-xradius/masterscale/bscale;
141                _root.basey   =lat2y(urllat)+yradius/masterscale/bscale;
142                _root.baselat =y2lat(basey);
143                _root.ylat=baselat;      _root.lastylat=ylat;           // current Yahoo state
144                _root.ylon=baselong; _root.lastylon=ylon;               //  |
145                updateCoords(0,0);
146                updateLinks();
147                setBackground(preferences.data.baselayer);
148                whichWays();
149                _root.onEnterFrame=function() { everyFrame(); };
150        }
151       
152        // -----------------------------------------------------------------------
153        // Main start function
154
155        function setEditingStatus(str) {
156                _root.createEmptyMovieClip("status",62);
157                _root.status.createTextField("btext",1,0,0,90,20);
158                with (_root.status.btext) {
159                        text=str;
160                        setTextFormat(boldWhite);
161                        selectable=false; type='dynamic';
162                };
163                setStatusPosition();
164                var tw=_root.status.btext.textWidth+5;
165                with (_root.status) {
166                        if (preferences.data.baselayer==2) { _y-=32; }
167                        beginFill(0xFF0000,100);
168                        moveTo(0,0); lineTo(tw,0); lineTo(tw,17);
169                        lineTo(0,17); lineTo(0,0); endFill();
170                };
171        };
172
173        function setStatusPosition() {
174                _root.status._x=Stage.width-_root.status.btext.textWidth-9;
175                _root.status._y=Stage.height-panelheight-22;
176                if (preferences.data.baselayer==2) { _root.status._y-=32; }
177        };
Note: See TracBrowser for help on using the repository browser.