28 EXTRA->modelInfo->get(kTTSym_address, v);
39 if (!JamomaApplication.
send(
"ObjectRegister", args, none)) {
41 EXTRA->presetManager->set(kTTSym_address, modelAdrs);
64 outlet_anything((t_outlet*)x->
outlets[dump_out], gensym(
"names"), argc, argv);
81 if (EXTRA->presetManager->valid()) {
92 aTextHandler.
set(kTTSym_object, *EXTRA->presetManager);
95 tterr = aTextHandler.
send(kTTSym_Read, v, none);
101 outlet_anything(x->dumpOut,gensym(
"read"), argc, argv);
104 outlet_anything(x->dumpOut, gensym(
"error"), 0 , NULL);
129 aTextHandler.
set(kTTSym_object, *EXTRA->presetManager);
132 tterr = aTextHandler.
send(kTTSym_ReadAgain);
138 outlet_anything(x->dumpOut,gensym(
"read"),0,NULL);
141 outlet_anything(x->dumpOut,gensym(
"error"),0,NULL);
155 char filename[MAX_FILENAME_CHARS];
167 if (EXTRA->presetManager->valid()) {
179 aTextHandler.
set(kTTSym_object, *EXTRA->presetManager);
182 tterr = aTextHandler.
send(kTTSym_Write, v, none);
187 outlet_anything(x->dumpOut, gensym(
"write"),0,NULL);
190 outlet_anything(x->dumpOut, gensym(
"error"),0,NULL);
227 aTextHandler.
set(kTTSym_object, *EXTRA->presetManager);
230 tterr = aTextHandler.
send(kTTSym_WriteAgain);
235 outlet_anything(x->dumpOut, gensym(
"write"),0,NULL);
238 outlet_anything(x->dumpOut, gensym(
"error"),0,NULL);
253 t_fourcc outtype, filetype =
'TEXT';
254 char fullpath[MAX_PATH_CHARS];
255 char posixpath[MAX_PATH_CHARS];
261 if (EXTRA->attr_presets != kTTSym_none) {
263 textfile = gensym(EXTRA->attr_presets.c_str());
271 return pd_error((t_object*)x,
"preset_default : can't get the context of the patcher");
273 if (locatefile_extended((
char*)textfile->s_name, &outvol, &outtype, &filetype, 1)) {
278 path_topathname(outvol, (
char*)textfile->s_name, fullpath);
281 atom_setsym(&a, gensym(posixpath));
286 atom_setsym(&a, gensym(
"default"));
301 pd_error((t_object*)x,
"preset_default : can't get the class of the patcher");
307 char fullpath[MAX_PATH_CHARS];
308 char posixpath[MAX_PATH_CHARS];
314 EXTRA->presetManager->get(
"current", v);
316 path_topathname(path, filename, fullpath);
319 atom_setsym(&a, gensym(posixpath));
339 if (atom_gettype(argv) == A_SYM)
343 EXTRA->presetManager->send(kTTSym_Recall, v, none);
350 char title[MAX_FILENAME_CHARS];
359 *EXTRA->toEdit = *EXTRA->presetManager;
360 EXTRA->presetName = kTTSymEmpty;
364 if (atom_gettype(argv) == A_LONG) {
367 EXTRA->presetManager->get(
"names", v);
370 name = v[atom_getlong(argv)-1];
373 pd_error((t_object*)x,
"%ld doesn't exist", atom_getlong(argv));
377 else if (atom_gettype(argv) == A_SYM)
378 name =
TTSymbol(atom_getsym(argv)->s_name);
380 if (name != kTTSymEmpty) {
383 EXTRA->presetManager->get(
"presets", v);
389 if (!allPresets->
lookup(name, v)) {
392 *EXTRA->toEdit = v[0];
393 EXTRA->presetName = name;
396 pd_error((t_object*)x,
"%s doesn't exist", atom_getsym(argv)->s_name);
447 EXTRA->textEditor = NULL;
468 tterr = aTextHandler.
send(kTTSym_Read, (
TTPtr)EXTRA->text, none);
472 atom_setsym(&a, gensym(
"closed"));
473 outlet_anything(x->dumpOut, gensym(
"editor"),1,&a);
477 outlet_anything(x->dumpOut,gensym(
"read"),0,NULL);
480 outlet_anything(x->dumpOut,gensym(
"error"),0,NULL);
487 EXTRA->textEditor = NULL;
488 *EXTRA->toEdit = *EXTRA->presetManager;
489 EXTRA->presetName = kTTSymEmpty;
497 EXTRA->attr_presets =
TTSymbol(atom_getsym(av)->s_name);
500 EXTRA->attr_presets = kTTSym_none;
514 if (!(*av = (t_atom*)getbytes(
sizeof(t_atom)*(*ac)))) {
520 atom_setsym(*av, gensym(EXTRA->attr_presets.c_str()));
TTAddress appendAddress(const TTAddress &toAppend)
Return a new TTAddress with the appended part.
void model_preset_read(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
void model_preset_doread_again(TTPtr self)
TTErr send(const TTSymbol aName)
Send a message to this object with no arguments.
j.model / j.view - The main control center of Jamoma model and view patcher
void model_preset_filechanged(TTPtr self, char *filename, short path)
TTHandle outlets
an array of outlet
void model_preset_write_again(TTPtr self)
TTErr lookup(const TTSymbol key, TTValue &value)
Find the value for the given key.
TTSymbol patcherClass
the patcher class in which the external is
void model_preset_dorecall(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
The TTAddress class is used to represent a string and efficiently pass and compare that string...
Create and use Jamoma object instances.
size_type size() const noexcept
Return the number of elements.
t_object * patcherPtr
the patcher in which the external is (ignoring subpatcher)
TTHashPtr internals
An hash table to store any internal TTObjectBases (like TTData, TTViewer, ...)
Maintain a collection of TTValue objects indexed by TTSymbol pointers.
void append(const T &anElementValueToAppend)
Insert a single TTElement at the end.
void model_preset_amenities(TTPtr self)
void * TTPtr
A generic pointer.
void model_preset_read_again(TTPtr self)
void model_preset_edclose(TTPtr self, char **text, long size)
void model_preset_doedit(TTPtr self)
TTErr set(const TTSymbol aName, T aValue)
Set an attribute value for an object.
The TTSymbol class is used to represent a string and efficiently pass and compare that string...
void model_preset_edit(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
void model_preset_doread(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
void model_preset_default(TTPtr self)
const char * c_str() const
Return a pointer to the internal string as a C-string.
std::int32_t TTInt32
32 bit signed integer
void model_preset_dowrite(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
void model_preset_write(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
Data Structure for this object.
t_max_err model_preset_set_presets(TTPtr self, TTPtr attr, long ac, t_atom *av)
TTErr
Jamoma Error Codes Enumeration of error codes that might be returned by any of the TTBlue functions a...
void model_preset_dowrite_again(TTPtr self)
void model_preset_return_names(TTPtr self, t_symbol *msg, long argc, t_atom *argv)
TTSymbol patcherContext
the patcher context in which the external is (model, view)
The TTString class is used to represent a string.
WrappedModularInstance * WrappedModularInstancePtr
Pointer to a wrapped instance of our object.
[doxygenAppendixC_copyExample]
t_max_err model_preset_get_presets(TTPtr self, TTPtr attr, long *ac, t_atom **av)