diff options
-rw-r--r-- | externals/grill/dynext/dynext.vcproj | 6 | ||||
-rw-r--r-- | externals/grill/dynext/pd/help-dyn~.pd | 36 | ||||
-rwxr-xr-x | externals/grill/dynext/readme.txt | 24 | ||||
-rw-r--r-- | externals/grill/dynext/src/main.cpp | 25 |
4 files changed, 47 insertions, 44 deletions
diff --git a/externals/grill/dynext/dynext.vcproj b/externals/grill/dynext/dynext.vcproj index 7d2121fe..b0346f05 100644 --- a/externals/grill/dynext/dynext.vcproj +++ b/externals/grill/dynext/dynext.vcproj @@ -20,7 +20,7 @@ <Tool Name="VCCLCompilerTool" Optimization="0" - AdditionalIncludeDirectories="c:\programme\audio\pd\src,f:\prog\max\flext\source" + AdditionalIncludeDirectories="c:\programme\audio\pd\src;..\flext\source" PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;PD" BasicRuntimeChecks="3" RuntimeLibrary="5" @@ -38,11 +38,11 @@ Name="VCCustomBuildTool"/> <Tool Name="VCLinkerTool" - AdditionalDependencies="pd.lib flext_d-pdwin.lib pthreadVC.lib" + AdditionalDependencies="pd.lib pthreadVC.lib" OutputFile="$(outdir)/dyn~.dll" LinkIncremental="1" SuppressStartupBanner="TRUE" - AdditionalLibraryDirectories="c:\programme\audio\pd/bin,..\flext\pd-msvc" + AdditionalLibraryDirectories="c:\programme\audio\pd/bin" GenerateDebugInformation="TRUE" ProgramDatabaseFile=".\pd-msvc/d/dyn~.pdb" ImportLibrary=".\pd-msvc/d/dyn~.lib" diff --git a/externals/grill/dynext/pd/help-dyn~.pd b/externals/grill/dynext/pd/help-dyn~.pd index 61d9e572..a9d717c2 100644 --- a/externals/grill/dynext/pd/help-dyn~.pd +++ b/externals/grill/dynext/pd/help-dyn~.pd @@ -1,5 +1,5 @@ -#N canvas 81 25 813 532 12;
-#N canvas 71 10 550 557 examples 0;
+#N canvas 131 104 817 536 12;
+#N canvas 71 10 554 561 examples 0;
#X floatatom 148 239 5 0 0 0 - - -;
#X floatatom 105 304 5 0 0 0 - - -;
#X floatatom 113 501 5 0 0 0 - - -;
@@ -59,7 +59,6 @@ conn a 0 0; #X text 181 358 delete object "a";
#X obj 11 10 cnv 15 700 40 empty empty dyn~ 10 22 0 24 -260818 -1 0
;
-#X text 133 32 http://www.parasitaere-kapazitaeten.net;
#X msg 128 387 send a message 1;
#X text 270 387 send "message 1" to a-inlet 0;
#X obj 54 468 dyn~ 0 1 0 2;
@@ -120,19 +119,20 @@ patcher; #X text 273 200 make sub patcher;
#X msg 432 198 newobj c d bang;
#X text 561 198 make object in sub patcher;
-#X text 133 12 dynamic object management \, (C)2003-2004 Thomas Grill
+#X text 133 12 dynamic object management \, (C)2003-2005 Thomas Grill
;
-#X connect 1 0 15 0;
-#X connect 3 0 15 0;
-#X connect 5 0 15 0;
-#X connect 7 0 15 0;
-#X connect 9 0 15 0;
-#X connect 13 0 15 0;
-#X connect 17 0 15 0;
-#X connect 18 0 17 0;
-#X connect 20 0 15 0;
-#X connect 23 0 15 0;
-#X connect 26 0 15 0;
-#X connect 27 0 15 0;
-#X connect 30 0 15 0;
-#X connect 32 0 15 0;
+#X text 133 30 http://grrrr.org/ext;
+#X connect 1 0 14 0;
+#X connect 3 0 14 0;
+#X connect 5 0 14 0;
+#X connect 7 0 14 0;
+#X connect 9 0 14 0;
+#X connect 12 0 14 0;
+#X connect 16 0 14 0;
+#X connect 17 0 16 0;
+#X connect 19 0 14 0;
+#X connect 22 0 14 0;
+#X connect 25 0 14 0;
+#X connect 26 0 14 0;
+#X connect 29 0 14 0;
+#X connect 31 0 14 0;
diff --git a/externals/grill/dynext/readme.txt b/externals/grill/dynext/readme.txt index 2942d4e6..9ebae392 100755 --- a/externals/grill/dynext/readme.txt +++ b/externals/grill/dynext/readme.txt @@ -1,6 +1,6 @@ dyn~ - dynamic object management for PD -Copyright (c)Thomas Grill (xovo@gmx.net) +Copyright (c)Thomas Grill (gr@grrrr.org) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. @@ -8,25 +8,9 @@ WARRANTIES, see the file, "license.txt," in this distribution. ---------------------------------------------------------------------------- You will need the flext C++ layer for PD and Max/MSP externals to compile this. -see http://www.parasitaere-kapazitaeten.net/ext +see http://grrrr.org/ext ----------------------------------------------------------------------------- - -The package should at least compile (and is tested) with the following compilers/platforms: - -pd - Windows: -------------- -o Microsoft Visual C++: edit "config-pd-msvc.txt" & run "build-pd-msvc.bat" - - -pd - linux: ------------ -o GCC: edit "config-pd-linux.txt" & run "sh build-pd-linux.sh" - - -pd - MacOSX: ------------ -o GCC: edit "config-pd-darwin.txt" & run "sh build-pd-darwin.sh" +Please see build.txt in the flext package on how to compile dyn~. ---------------------------------------------------------------------------- @@ -42,6 +26,8 @@ CHANGES: 0.1.1: - using aligned memory - cached several symbols +- strip .pd extension from abstraction filenames +- debug patcher opens on alt-click 0.1.0: - first release: PD 0.37 supports all necessary functionality diff --git a/externals/grill/dynext/src/main.cpp b/externals/grill/dynext/src/main.cpp index a9aee6b7..07b3b5e4 100644 --- a/externals/grill/dynext/src/main.cpp +++ b/externals/grill/dynext/src/main.cpp @@ -2,7 +2,7 @@ dyn~ - dynamical object management for PD -Copyright (c)2003-2004 Thomas Grill (xovo@gmx.net) +Copyright (c)2003-2005 Thomas Grill (gr@grrrr.org) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. @@ -13,8 +13,8 @@ WARRANTIES, see the file, "license.txt," in this distribution. #include <flext.h> -#if !defined(FLEXT_VERSION) || (FLEXT_VERSION < 406) -#error You need at least flext version 0.4.6 +#if !defined(FLEXT_VERSION) || (FLEXT_VERSION < 500) +#error You need at least flext version 0.5.0 #endif #define DYN_VERSION "0.1.1pre" @@ -55,6 +55,8 @@ public: protected: + virtual void m_click() { m_vis(true); } + static const t_symbol *k_obj,*k_msg,*k_text; class obj { @@ -196,7 +198,7 @@ const t_symbol *dyn::sym_dsp = NULL; void dyn::setup(t_classid c) { post(""); - post("dyn~ %s - dynamic object management, (C)2003-04 Thomas Grill",DYN_VERSION); + post("dyn~ %s - dynamic object management, (C)2003-2005 Thomas Grill",DYN_VERSION); post(""); sym_dynsin = MakeSymbol("dyn_in~"); @@ -455,6 +457,21 @@ t_gobj *dyn::New(const t_symbol *kind,int _argc_,const t_atom *_argv_,bool add) else if(!canv || !(glist = FindCanvas(canv))) err = "Canvas could not be found"; else { + // convert abstraction filenames + if(kind == k_obj && argc >= 3 && IsSymbol(argv[2])) { + const char *c = GetString(argv[2]); + int l = strlen(c); + // check end of string for .pd file extension + if(l >= 4 && !memcmp(c+l-3,".pd",4)) { + // found -> get rid of it + char tmp[64],*t = tmp; + if(l > sizeof tmp-1) t = new char[l+1]; + memcpy(tmp,c,l-3); tmp[l-3] = 0; + SetString(argv[2],tmp); + if(tmp != t) delete[] t; + } + } + // set selected canvas as current canvas_setcurrent(glist); |