2004-10-07 19:25:40 +00:00
|
|
|
/*
|
2003-02-19 19:20:11 +00:00
|
|
|
* $Id$
|
|
|
|
*
|
|
|
|
* ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU General Public License
|
|
|
|
* as published by the Free Software Foundation; either version 2
|
|
|
|
* of the License, or (at your option) any later version. The Blender
|
|
|
|
* Foundation also sells licenses for use in proprietary software under
|
|
|
|
* the Blender License. See http://www.blender.org/BL/ for information
|
|
|
|
* about this.
|
|
|
|
*
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with this program; if not, write to the Free Software Foundation,
|
|
|
|
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
|
|
*
|
|
|
|
* The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
|
|
|
|
* All rights reserved.
|
|
|
|
*
|
2003-02-26 19:22:24 +00:00
|
|
|
* The Original Code is: source/blender/bpyton/include/BPY_extern.h
|
2003-02-19 19:20:11 +00:00
|
|
|
*
|
BPython:
- tentative fix for scripts with CR/LF endings and split lines:
in 2.32, the ac3d and vrml2 exporters, for example, had lines
split with '\\\\' and so gave syntax errors when executed on Win
platforms, because the scripts bundled with Win binaries had dos
line endings.
- Chris Keith has written code to execute Python scripts from the
command-line, with '-P ' switch: "blender -P filename":
a Blender.Quit function was also added, so Blender can quit after
running the script (end the script with Blender.Quit()), but there's
still work to be done in this part, including adding more functions,
to load / save .blend files and to run scripts. More testing and
discussions are necessary.
Thanks Chris, for both your contributions and your patience, since I
wasn't available to check / commit this for a while.
2004-03-31 04:18:39 +00:00
|
|
|
* Contributor(s): Michel Selten, Willian P. Germano, Chris Keith
|
2003-02-19 19:20:11 +00:00
|
|
|
*
|
|
|
|
* ***** END GPL/BL DUAL LICENSE BLOCK *****
|
|
|
|
*/
|
|
|
|
|
2004-10-07 19:25:40 +00:00
|
|
|
extern char bprogname[]; /* holds a copy of argv[0], from creator.c */
|
2003-06-28 07:38:21 +00:00
|
|
|
|
2004-10-07 19:25:40 +00:00
|
|
|
struct Text; /* defined in DNA_text_types.h */
|
|
|
|
struct ID; /* defined in DNA_ID.h */
|
|
|
|
struct ScriptLink; /* defined in DNA_scriptlink_types.h */
|
|
|
|
struct ListBase; /* defined in DNA_listBase.h */
|
|
|
|
struct SpaceText; /* defined in DNA_space_types.h */
|
|
|
|
struct SpaceScript; /* defined in DNA_space_types.h */
|
|
|
|
struct Script; /* defined in BPI_script.h */
|
2003-02-26 19:22:24 +00:00
|
|
|
/*
|
2003-02-19 19:20:11 +00:00
|
|
|
struct _object; // forward declaration for PyObject !
|
2003-02-26 19:22:24 +00:00
|
|
|
*/
|
2004-04-02 13:18:54 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
2003-02-19 19:20:11 +00:00
|
|
|
|
2004-10-07 19:25:40 +00:00
|
|
|
void BPY_start_python( void );
|
|
|
|
void BPY_end_python( void );
|
|
|
|
void BPY_post_start_python( void );
|
|
|
|
int BPY_Err_getLinenumber( void );
|
|
|
|
const char *BPY_Err_getFilename( void );
|
2003-02-19 19:20:11 +00:00
|
|
|
/* void BPY_Err_Handle(struct Text *text); */
|
2004-10-07 19:25:40 +00:00
|
|
|
int BPY_txt_do_python( struct SpaceText *st );
|
|
|
|
int BPY_menu_do_python( short menutype, int event );
|
|
|
|
void BPY_run_python_script( char *filename );
|
|
|
|
void BPY_free_compiled_text( struct Text *text );
|
2003-02-19 19:20:11 +00:00
|
|
|
/*void BPY_clear_bad_scriptlink(struct ID *id, struct Text *byebye); */
|
2004-10-07 19:25:40 +00:00
|
|
|
void BPY_clear_bad_scriptlinks( struct Text *byebye );
|
2003-02-19 19:20:11 +00:00
|
|
|
/*void BPY_clear_bad_scriptlist(struct ListBase *, struct Text *byebye); */
|
2004-10-07 19:25:40 +00:00
|
|
|
int BPY_has_onload_script( void );
|
|
|
|
void BPY_do_all_scripts( short event );
|
|
|
|
void BPY_do_pyscript( struct ID *id, short event );
|
|
|
|
void BPY_free_scriptlink( struct ScriptLink *slink );
|
|
|
|
void BPY_copy_scriptlink( struct ScriptLink *scriptlink );
|
2003-02-19 19:20:11 +00:00
|
|
|
|
|
|
|
/* format importer hook */
|
2004-10-07 19:25:40 +00:00
|
|
|
int BPY_call_importloader( char *name );
|
2003-02-19 19:20:11 +00:00
|
|
|
|
2003-12-14 01:18:09 +00:00
|
|
|
//int BPY_spacetext_is_pywin(struct SpaceText *st);
|
2004-10-07 19:25:40 +00:00
|
|
|
void BPY_spacescript_do_pywin_draw( struct SpaceScript *sc );
|
|
|
|
void BPY_spacescript_do_pywin_event( struct SpaceScript *sc,
|
|
|
|
unsigned short event, short val );
|
|
|
|
void BPY_clear_script( struct Script *script );
|
|
|
|
void BPY_free_finished_script( struct Script *script );
|
2003-11-23 14:28:46 +00:00
|
|
|
|
2004-10-07 19:25:40 +00:00
|
|
|
void init_syspath( void );
|
|
|
|
void syspath_append( char *dir );
|
|
|
|
char *bpy_gethome( void );
|
2004-04-02 13:18:54 +00:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
2004-10-07 19:25:40 +00:00
|
|
|
} /* extern "C" */
|
2004-04-02 13:18:54 +00:00
|
|
|
#endif
|