|
From: <bor...@us...> - 2008-09-05 13:56:21
|
Revision: 1971
http://ftm.svn.sourceforge.net/ftm/?rev=1971&view=rev
Author: borghesi
Date: 2008-09-05 13:56:29 +0000 (Fri, 05 Sep 2008)
Log Message:
-----------
ftm.editor: ScoreEditor, rangeMode message replaced by "view bounds content" and "view bounds default"
Modified Paths:
--------------
trunk/ftm/externals/max/ftm.editor.cpp
trunk/ftm/ftmlib/object.h
trunk/ftm/ftmlib/predefsymbols.h
trunk/ftm/gui/Juce/common/EditorContainer.cpp
trunk/ftm/gui/Juce/common/EditorContainer.h
trunk/ftm/gui/Juce/common/ImtrEditor.h
trunk/ftm/gui/Juce/common/ScoreEditor.cpp
trunk/ftm/patches/max/help/ftm.editor.help
Modified: trunk/ftm/externals/max/ftm.editor.cpp
===================================================================
--- trunk/ftm/externals/max/ftm.editor.cpp 2008-09-05 13:21:21 UTC (rev 1970)
+++ trunk/ftm/externals/max/ftm.editor.cpp 2008-09-05 13:56:29 UTC (rev 1971)
@@ -805,11 +805,6 @@
if(ac == 1 && fts_is_number(at))
editorContainer->setViewStep(index, fts_get_number_float(at));
}
- else if(prop == fts_s_rangemode)
- {
- if(ac == 1 && fts_is_symbol(at))
- editorContainer->setViewRangeMode(index, JUCE_NAMESPACE::String(fts_symbol_name(fts_get_symbol(at))));
- }
if(prop == fts_s_min)
{
if(ac > 0 && fts_is_number(at))
@@ -831,6 +826,15 @@
{
if(ac == 2 && fts_is_number(at) && fts_is_number(at+1))
editorContainer->setViewBounds(index, fts_get_number_float(at), fts_get_number_float(at+1));
+ else
+ if(ac == 1 && fts_is_symbol(at))
+ {
+ fts_symbol_t mode = fts_get_symbol(at);
+ if(mode == fts_s_content)
+ editorContainer->setViewBoundsToContent(index);
+ else if(mode == fts_s_default)
+ editorContainer->setViewBoundsDefault(index);
+ }
}
else if(prop == fts_s_center)
{
Modified: trunk/ftm/ftmlib/object.h
===================================================================
--- trunk/ftm/ftmlib/object.h 2008-09-05 13:21:21 UTC (rev 1970)
+++ trunk/ftm/ftmlib/object.h 2008-09-05 13:56:29 UTC (rev 1971)
@@ -30,9 +30,7 @@
#ifndef _FTS_OBJECT_H_
#define _FTS_OBJECT_H_
-#ifdef DEBUG
-#define DEBUG_OBJECT_RELEASE 1
-#endif
+#undef DEBUG_OBJECT_RELEASE
#define FTS_OBJECT_BITS_STATUS 2
#define FTS_OBJECT_BITS_ID (32 - FTS_OBJECT_BITS_STATUS)
Modified: trunk/ftm/ftmlib/predefsymbols.h
===================================================================
--- trunk/ftm/ftmlib/predefsymbols.h 2008-09-05 13:21:21 UTC (rev 1970)
+++ trunk/ftm/ftmlib/predefsymbols.h 2008-09-05 13:56:29 UTC (rev 1971)
@@ -302,6 +302,7 @@
PREDEF_SYMBOL( fts_s_bounds, "bounds");
PREDEF_SYMBOL( fts_s_center, "center");
PREDEF_SYMBOL( fts_s_colormode, "colormode");
+PREDEF_SYMBOL( fts_s_content, "content");
PREDEF_SYMBOL( fts_s_cursor, "cursor");
PREDEF_SYMBOL( fts_s_depth, "depth");
PREDEF_SYMBOL( fts_s_domain, "domain");
Modified: trunk/ftm/gui/Juce/common/EditorContainer.cpp
===================================================================
--- trunk/ftm/gui/Juce/common/EditorContainer.cpp 2008-09-05 13:21:21 UTC (rev 1970)
+++ trunk/ftm/gui/Juce/common/EditorContainer.cpp 2008-09-05 13:56:29 UTC (rev 1971)
@@ -1546,60 +1546,75 @@
}
void
-EditorContainer::setViewRangeMode(int index, JUCE_EDITOR_NAMESPACE::String mode)
+EditorContainer::setViewMin(int index, float min)
{
if(index == -1 || index >= editors.size())
{
int i;
for(i = 0; i < editors.size(); i++)
- editors[i]->setRangeMode(mode);
+ editors[i]->setViewMin(min);
}
else
- editors[index]->setRangeMode(mode);
+ editors[index]->setViewMin(min);
containerRefresh();
}
-
void
-EditorContainer::setViewMin(int index, float min)
+EditorContainer::setViewMax(int index, float max)
{
if(index == -1 || index >= editors.size())
{
int i;
for(i = 0; i < editors.size(); i++)
- editors[i]->setViewMin(min);
+ editors[i]->setViewMax(max);
}
else
- editors[index]->setViewMin(min);
-
+ editors[index]->setViewMax(max);
+
containerRefresh();
}
void
-EditorContainer::setViewMax(int index, float max)
+EditorContainer::setViewBounds(int index, float min, float max)
{
if(index == -1 || index >= editors.size())
{
int i;
for(i = 0; i < editors.size(); i++)
- editors[i]->setViewMax(max);
+ editors[i]->setViewBounds(min, max);
}
else
- editors[index]->setViewMax(max);
+ editors[index]->setViewBounds(min, max);
containerRefresh();
}
+
void
-EditorContainer::setViewBounds(int index, float min, float max)
+EditorContainer::setViewBoundsToContent(int index)
{
if(index == -1 || index >= editors.size())
{
int i;
for(i = 0; i < editors.size(); i++)
- editors[i]->setViewBounds(min, max);
+ editors[i]->setViewBoundsToContent();
}
else
- editors[index]->setViewBounds(min, max);
+ editors[index]->setViewBoundsToContent();
+
+ containerRefresh();
+}
+void
+EditorContainer::setViewBoundsDefault(int index)
+{
+ if(index == -1 || index >= editors.size())
+ {
+ int i;
+ for(i = 0; i < editors.size(); i++)
+ editors[i]->setViewBoundsDefault();
+ }
+ else
+ editors[index]->setViewBoundsDefault();
+
containerRefresh();
}
Modified: trunk/ftm/gui/Juce/common/EditorContainer.h
===================================================================
--- trunk/ftm/gui/Juce/common/EditorContainer.h 2008-09-05 13:21:21 UTC (rev 1970)
+++ trunk/ftm/gui/Juce/common/EditorContainer.h 2008-09-05 13:56:29 UTC (rev 1971)
@@ -558,6 +558,18 @@
*/
void setViewBounds(int index, float min, float max);
/**
+ * @brief sets the i-th view's values range bounds to min/max of data content
+ * @param index index of the view
+ * @ingroup EditorContainer
+ */
+ void setViewBoundsToContent(int index);
+ /**
+ * @brief sets the i-th view's values range bounds to default values
+ * @param index index of the view
+ * @ingroup EditorContainer
+ */
+ void setViewBoundsDefault(int index);
+ /**
* @brief sets the i-th view's values center
* @param index index of the view
* @param center 'values range' center
@@ -581,14 +593,6 @@
*/
void setViewTableVisible(int index, bool vis);
- /**
- * @brief set range mode (used by Midi editor)
- * @param index index of the view
- * @param rangeMode the range mode
- * @ingroup EditorContainer
- */
- void setViewRangeMode(int index, JUCE_EDITOR_NAMESPACE::String rangeMode);
-
/** @} View Properties */
/** @name Tabs
Modified: trunk/ftm/gui/Juce/common/ImtrEditor.h
===================================================================
--- trunk/ftm/gui/Juce/common/ImtrEditor.h 2008-09-05 13:21:21 UTC (rev 1970)
+++ trunk/ftm/gui/Juce/common/ImtrEditor.h 2008-09-05 13:56:29 UTC (rev 1971)
@@ -143,6 +143,16 @@
*/
virtual void setViewBounds(float vmin, float vmax){};
/**
+ * @brief set the bounds for the values displayed by the editor, to min-max of the content
+ * @ingroup ImtrEditor
+ */
+ virtual void setViewBoundsToContent(){};
+ /**
+ * @brief set the bounds for the values displayed by the editor to default
+ * @ingroup ImtrEditor
+ */
+ virtual void setViewBoundsDefault(){};
+ /**
* @brief gets the bounds for the values displayed by the editor
* @param vmin get the minimum
* @param vmax get the maximum
@@ -188,18 +198,6 @@
*/
virtual float getStep(){return 0.0f;};
/**
- * @brief set the range mode
- * @param mode range mode
- * @ingroup ImtrEditor
- */
- virtual void setRangeMode(JUCE_EDITOR_NAMESPACE::String mode){};
- /**
- * @brief returns the range mode
- * @return range mode
- * @ingroup ImtrEditor
- */
- virtual JUCE_EDITOR_NAMESPACE::String getRangeMode(){return JUCE_EDITOR_NAMESPACE::String::empty;};
- /**
* @brief show/hide the table view (used only by Bpf and Markers editors)
* @return vis whether to show or hide the table view
* @ingroup ImtrEditor
Modified: trunk/ftm/gui/Juce/common/ScoreEditor.cpp
===================================================================
--- trunk/ftm/gui/Juce/common/ScoreEditor.cpp 2008-09-05 13:21:21 UTC (rev 1970)
+++ trunk/ftm/gui/Juce/common/ScoreEditor.cpp 2008-09-05 13:56:29 UTC (rev 1971)
@@ -1945,28 +1945,7 @@
updateBackgroundOffscreens();
objectRefresh();
}
-
- void setRangeMode(JUCE_EDITOR_NAMESPACE::String mode)
- {
- if(mode == JUCE_EDITOR_NAMESPACE::String("whole"))
- range_mode = whole_range;
- else
- if(mode == JUCE_EDITOR_NAMESPACE::String("used"))
- range_mode = used_range;
- findPitchRange();
- updateBackgroundOffscreens();
- objectRefresh();
- }
-
- JUCE_EDITOR_NAMESPACE::String getRangeMode()
- {
- if(range_mode == whole_range)
- return JUCE_EDITOR_NAMESPACE::String("whole");
- else
- return JUCE_EDITOR_NAMESPACE::String("used");
- }
-
void setBackgroundColor(JUCE_EDITOR_NAMESPACE::Colour bcolor)
{
backcolor = bcolor;
@@ -2240,6 +2219,28 @@
moving_dx = moving_dy = 0;
objectRefresh();
}
+
+ void getViewBounds(float *vmin, float *vmax)
+ {
+ *vmin = getInvY(getHeight());
+ *vmax = getInvY(0);
+ }
+
+ void setViewBoundsToContent()
+ {
+ range_mode = used_range;
+ findPitchRange();
+ updateBackgroundOffscreens();
+ objectRefresh();
+ }
+
+ void setViewBoundsDefault()
+ {
+ range_mode = whole_range;
+ findPitchRange();
+ updateBackgroundOffscreens();
+ objectRefresh();
+ }
/************************
Coordinates conversion
***********************/
@@ -2338,10 +2339,46 @@
}
}
+ double getInvY(float y)
+ {
+ if(!container->isVertical())
+ {
+ int temp;
+ if(shape == staves_shape)
+ {
+ temp = (STAVES_BOTTOM-9-y - getPitchTransp())/4;
+ int rest = (STAVES_BOTTOM-9-y - getPitchTransp()) - temp*4;
+ int q = temp/7;
+ int r = temp - q*7;
+ temp = q*12 + getIntervallFromRest(r, rest);
+ }
+ else
+ {
+ int dy = (PIANO_BOTTOM - PIANO_TOP)/127.0f;
+ temp = v_max - (y - PIANO_TOP)/dy;
+ }
+
+ return temp;
+ }
+ else
+ {
+ float dy = (getHeight()/container->getHLength());
+ return (y/dy)/container->getHZoom() - container->getHTransposition();
+ }
+ }
+
double editorGetInvY(float y)
{
+ int temp = getInvY(y);
if(!container->isVertical())
{
+ if(temp < v_min) temp = v_min;
+ else if(temp > v_max) temp = v_max;
+ }
+ return temp;
+
+ /*if(!container->isVertical())
+ {
int temp;
if(shape == staves_shape)
{
@@ -2365,7 +2402,7 @@
{
float dy = (getHeight()/container->getHLength());
return (y/dy)/container->getHZoom() - container->getHTransposition();
- }
+ }*/
}
bool haveInfoPanel() {return true;}
JUCE_EDITOR_NAMESPACE::Image *getInfoImage()
Modified: trunk/ftm/patches/max/help/ftm.editor.help
===================================================================
--- trunk/ftm/patches/max/help/ftm.editor.help 2008-09-05 13:21:21 UTC (rev 1970)
+++ trunk/ftm/patches/max/help/ftm.editor.help 2008-09-05 13:56:29 UTC (rev 1971)
@@ -8,7 +8,7 @@
#P window setfont "Sans Serif" 9.;
#P comment 11 12 50 196617 Info panel;
#P user ftm.mess 8 69 81 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
-#T _#ftm version 2 3;
+#T _#ftm version 2 4;
#T _#scope begin;
#T _#absargs $0_ $1_ $2_ $3_ $4_ $5_ $6_ $7_ $8_ $9_;
#T _#line "_ruler visible $1";
@@ -40,7 +40,6 @@
#T _#mess 1 row 0 1 0.2 colognole 0 0;
#T _#obj 2 bpf;
#T _#mess 2 set 0. 0. 195. 0.697674 440. 0.674419 585. 0.44186 810. 0.511628 1060. 0.581395 1190. 0.511628;
-#T _#mess 2 editor zoom 0.2;
#T _#mess 1 row 1 0 _#2 0 0 0;
#T _#obj 3 fmat;
#T _#mess 3 size 10 10;
@@ -76,10 +75,10 @@
#P pop;
#P newobj 362 844 167 196622 p Info Properties;
#B color 14;
-#P user ftm.mess 135 339 119 51 3 9 255 255 255 0 0 0 4 2 0 0 0 --> 0;
+#P user ftm.mess 135 339 114 51 3 9 255 255 255 0 0 0 4 2 0 0 0 --> 0;
#T _#line "_set $t_score\,";
#T _#line "_view 0 shape staves\,";
-#T _#line "_view 0 rangemode used\,";
+#T _#line "_view 0 bounds content\,";
#T _#line "_infopanel visible 1";
#P user ftm.object 20 340 67 18 3 9 --> 0;
#T _#obj 4 track scoob;
@@ -382,14 +381,6 @@
#T _#obj 153 sequence number;
#T _#mess 153 append 0. 120.;
#T _#mess 4 tempo _#153;
-#T _#mess 4 save_editor 1;
-#T _#mess 4 editor window 752 258 839 517;
-#T _#mess 4 editor label ;
-#T _#mess 4 editor zoom 0.2;
-#T _#mess 4 editor transp 0;
-#T _#mess 4 editor view 0;
-#T _#mess 4 editor rangemode 0;
-#T _#mess 4 editor grid_mode 0;
#T _#def 1 "_track scoob" t_score local;
#P window setfont "Sans Serif" 12.;
#P comment 20 320 161 196620 TRACK of scoob as score;
@@ -14436,11 +14427,17 @@
#P pop;
#P newobj 364 788 163 196622 p Get Property values;
#B color 14;
-#N vpatcher 53 365 599 821;
+#N vpatcher 547 258 1116 723;
#P origin 11 -54;
-#P toggle 21 341 23 0;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
+#P comment 278 349 103 196617 set bounds to default;
+#P user ftm.mess 175 350 99 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
+#T _#line "_view bounds default";
+#P comment 277 333 128 196617 set to contained min/max;
+#P user ftm.mess 175 334 101 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
+#T _#line "_view bounds content";
+#P toggle 21 341 23 0;
#P comment 14 325 58 196617 View table;
#P user ftm.mess 21 368 81 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
#T _#line "_view 0 table $1";
@@ -14452,25 +14449,25 @@
#X shadow 0;
#X done;
#P window linecount 0;
-#P comment 255 389 167 196617 \$1 = range (around actual center);
-#P user ftm.mess 176 392 75 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
+#P comment 255 414 162 196617 \$1 = range (around actual center);
+#P user ftm.mess 175 414 75 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
#T _#line "_view range $1";
-#P comment 273 372 123 196617 \$1 = center [$2 = range];
-#P comment 247 353 53 196617 \$1 = max;
-#P comment 246 335 110 196617 \$1 = min [$2 = range];
+#P comment 273 398 123 196617 \$1 = center [$2 = range];
+#P comment 247 382 53 196617 \$1 = max;
+#P comment 246 366 110 196617 \$1 = min [$2 = range];
#P comment 271 318 96 196617 \$1 = min \$2 = max;
-#P user ftm.mess 175 372 94 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
+#P user ftm.mess 175 398 94 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
#T _#line "_view center $1 $2";
#P window linecount 1;
-#P comment 411 335 104 196617 used by track of fmat;
-#P comment 405 165 46 196617 Depth;
-#P newex 412 294 40 196617 / 100.;
-#P slider 412 183 15 100 0 1;
-#P newex 460 293 40 196617 / 100.;
-#P slider 461 183 15 100 0 1;
-#P user ftm.mess 412 315 89 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
+#P comment 438 335 104 196617 used by track of fmat;
+#P comment 432 165 46 196617 Depth;
+#P newex 439 294 40 196617 / 100.;
+#P slider 439 183 15 100 0 1;
+#P newex 487 293 40 196617 / 100.;
+#P slider 488 183 15 100 0 1;
+#P user ftm.mess 439 315 89 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
#T _#line "_view depth $1 $2";
-#P user panel 401 159 120 194;
+#P user panel 428 159 120 194;
#X brgb 235 252 211;
#X frgb 225 246 183;
#X border 1;
@@ -14480,9 +14477,9 @@
#P comment 175 167 46 196617 Bounds;
#P newex 174 297 40 196617 / 100.;
#P slider 175 187 15 100 0 1;
-#P user ftm.mess 174 335 66 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
+#P user ftm.mess 175 366 66 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
#T _#line "_view min $1";
-#P user ftm.mess 174 353 69 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
+#P user ftm.mess 175 382 69 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
#T _#line "_view max $1";
#P newex 223 296 40 196617 / 100.;
#P slider 223 185 15 100 0 1;
@@ -14490,7 +14487,7 @@
#P slider 272 186 15 100 0 1;
#P user ftm.mess 175 318 95 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 1;
#T _#line "_view bounds $1 $2";
-#P user panel 172 161 227 257;
+#P user panel 172 159 251 272;
#X brgb 235 252 211;
#X frgb 225 246 183;
#X border 1;
@@ -14571,7 +14568,7 @@
#P comment 30 67 14 196617 2;
#P comment 30 51 14 196617 1;
#P comment 29 35 14 196617 0;
-#P user radiogroup 13 33 38 32;
+#P user radiogroup 13 33 38 64;
#X size 4;
#X offset 16;
#X inactive 0;
@@ -14594,15 +14591,15 @@
#X rounded 0;
#X shadow 0;
#X done;
-#P user panel 2 5 526 416;
+#P user panel 2 5 551 429;
#X brgb 196 244 118;
#X frgb 225 246 183;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
-#P comment 13 424 458 196617 - If message is followed by index \, the message is sent to i-th editor. Elsewhere is sent to all editors;
-#P hidden outlet 3 434 15 0;
+#P comment 13 437 458 196617 - If message is followed by index \, the message is sent to i-th editor. Elsewhere is sent to all editors;
+#P hidden outlet 3 447 15 0;
#P hidden connect 49 0 0 0;
#P hidden connect 33 0 0 0;
#P hidden connect 26 0 0 0;
@@ -14614,6 +14611,8 @@
#P hidden connect 38 0 0 0;
#P hidden connect 43 0 0 0;
#P hidden connect 64 0 0 0;
+#P hidden connect 67 0 0 0;
+#P hidden connect 69 0 0 0;
#P connect 34 0 33 0;
#P connect 35 0 33 0;
#P connect 7 0 4 0;
@@ -14623,14 +14622,14 @@
#P connect 28 1 26 0;
#P hidden connect 6 1 4 1;
#P connect 45 0 46 0;
-#P connect 46 0 44 0;
-#P fasten 40 0 43 0 276 315 179 315;
#P connect 42 0 38 0;
-#P connect 45 0 56 0;
-#P connect 46 0 61 0;
+#P hidden connect 46 0 44 0;
+#P hidden fasten 40 0 43 0 276 315 180 315;
+#P hidden connect 45 0 56 0;
+#P hidden connect 46 0 61 0;
#P connect 14 0 15 0;
#P connect 41 0 42 0;
-#P connect 40 0 56 1;
+#P hidden connect 40 0 56 1;
#P connect 40 0 38 1;
#P connect 39 0 40 0;
#P connect 18 0 19 0;
@@ -16093,13 +16092,13 @@
#T _#mess 3794 append 2600. _#3798;
#T _#mess 3793 events _#3794;
#T _#obj 3799 sequence marker;
-#T _#obj 3800 marker label uno cue 1.;
+#T _#obj 3800 marker cue 1. label uno;
#T _#mess 3799 append 625. _#3800;
-#T _#obj 3801 marker label due cue 2.;
+#T _#obj 3801 marker cue 2. label due;
#T _#mess 3799 append 1480. _#3801;
-#T _#obj 3802 marker label tre cue 3.;
+#T _#obj 3802 marker cue 3. label tre;
#T _#mess 3799 append 2455. _#3802;
-#T _#obj 3803 marker label quattro cue 4.;
+#T _#obj 3803 marker cue 4. label quattro;
#T _#mess 3799 append 3045. _#3803;
#T _#obj 3804 marker;
#T _#mess 3799 append 4022.182373 _#3804;
@@ -16135,8 +16134,6 @@
#P user ftm.object 17 184 29 18 3 9 --> 0;
#T _#obj 3813 bpf;
#T _#mess 3813 set 0. 0.809524 230. 0.380952 460. 0.095238 690. 0.071429 1405. 0.238095 1605. 0.452381 1815. 0.714286 1975. 0.976191 2148.436768 0.786408 2433.893311 0.563107 2877.102295 0.543689 3068.941895 0.693405 3405.923584 0.732143 3646.625 0.693405 4164.132812 0.801871 5163.043457 0.674036 5836.836914 0.436893;
-#T _#mess 3813 editor size 530 150;
-#T _#mess 3813 editor zoom 0.2;
#T _#def 1 _bpf bpf_3 local;
#P user ftm.mess 95 144 59 15 3 9 255 255 255 0 0 0 1 2 0 0 0 --> 0;
#T _#line "_set $bpf_1";
@@ -16145,14 +16142,10 @@
#P user ftm.object 17 142 29 18 3 9 --> 0;
#T _#obj 3814 bpf;
#T _#mess 3814 set 0. 0. 211.302216 0.676692 444.717438 0.586466 798.525818 0.37594 949.891113 0.633333 1198.25708 0.558333 1225. 0.333333 1390. 0.071429 1629.629639 0.291667 1821.35083 0.4 2071.970703 0.63372 2471.576904 0.45574 2783.93457 0.565737 3122.527344 0.322482 3163.21167 0.429088 3346.291504 0.493052 3590.397949 0.514373 4617.678711 0.623644 4912.15 0.336044 4932.98291 0.658291 5539.297852 0.679612 5978.26123 0.660194 6406.772461 0.543689 6918.896484 0.436893 7410.117188 0.330097 8340.3 0.29497;
-#T _#mess 3814 editor size 530 150;
-#T _#mess 3814 editor zoom 0.2;
#T _#def 1 _bpf bpf_1 local;
#P user ftm.object 17 163 29 18 3 9 --> 0;
#T _#obj 3815 bpf;
#T _#mess 3815 set 0. 0. 31.1 0.264493 60.33 0.264493 75.529388 0.492754 91.897987 0.514493 116.918556 0.65942 144.043655 0.583333 192.214111 0. 854.489685 0.317649 2443.118408 0.317649 3779.010742 0.251795 4958.447266 0.286659 5620.375977 0.371882;
-#T _#mess 3815 editor size 530 150;
-#T _#mess 3815 editor zoom 0.2;
#T _#def 1 _bpf bpf_2 local;
#T _#scope end;
#P user ftm.editor 19 395 727 283;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|