diff options
author | Campbell Barton <ideasman42@gmail.com> | 2009-07-17 02:47:27 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2009-07-17 02:47:27 +0400 |
commit | deb180e37f324ab789ecbf608d08c9f031953749 (patch) | |
tree | 1e8c4525cc9180ed9b7eb88523c9bef32345c90f /source/blender/makesdna/DNA_windowmanager_types.h | |
parent | 9eebb2ca36fc7ea05fb46eb23cca8821e81889b8 (diff) |
- Scrollbars for the console (use View2D functions)
- Set View2D operators not to register, got in the way a lot with the console.
- Made autocomplete Ctrl+Enter so Tab can be used.
- Should work with python 2.5 now. (patch from Vilda)
- Moved report struct definitions into DNA_windowmanager_types.h, could also have DNA_report_types.h however the reports are not saved, its just needed so the report list can be used in the wmWindowManager struct. Fixes a crash reported by ZanQdo.
- Store the report message length in the report so calculating the total height including word wrap is not so slow.
Diffstat (limited to 'source/blender/makesdna/DNA_windowmanager_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_windowmanager_types.h | 41 |
1 files changed, 39 insertions, 2 deletions
diff --git a/source/blender/makesdna/DNA_windowmanager_types.h b/source/blender/makesdna/DNA_windowmanager_types.h index 9a60e3c92b8..69ab45d3389 100644 --- a/source/blender/makesdna/DNA_windowmanager_types.h +++ b/source/blender/makesdna/DNA_windowmanager_types.h @@ -52,6 +52,44 @@ struct wmTimer; struct StructRNA; struct PointerRNA; struct ReportList; +struct Report; + +typedef enum ReportType { + RPT_DEBUG = 1<<0, + RPT_INFO = 1<<1, + RPT_OPERATOR = 1<<2, + RPT_WARNING = 1<<3, + RPT_ERROR = 1<<4, + RPT_ERROR_INVALID_INPUT = 1<<5, + RPT_ERROR_INVALID_CONTEXT = 1<<6, + RPT_ERROR_OUT_OF_MEMORY = 1<<7 +} ReportType; + +#define RPT_DEBUG_ALL (RPT_DEBUG) +#define RPT_INFO_ALL (RPT_INFO) +#define RPT_OPERATOR_ALL (RPT_OPERATOR) +#define RPT_WARNING_ALL (RPT_WARNING) +#define RPT_ERROR_ALL (RPT_ERROR|RPT_ERROR_INVALID_INPUT|RPT_ERROR_INVALID_CONTEXT|RPT_ERROR_OUT_OF_MEMORY) + +enum ReportListFlags { + RPT_PRINT = 1, + RPT_STORE = 2, +}; +typedef struct Report { + struct Report *next, *prev; + int type; /* ReportType */ + int len; /* strlen(message), saves some time calculating the word wrap */ + char *typestr; + char *message; +} Report; +typedef struct ReportList { + ListBase list; + int printlevel; /* ReportType */ + int storelevel; /* ReportType */ + int flag, pad; +} ReportList; +/* reports need to be before wmWindowManager */ + /* windowmanager is saved, tag WMAN */ typedef struct wmWindowManager { @@ -68,7 +106,7 @@ typedef struct wmWindowManager { ListBase queue; /* refresh/redraw wmNotifier structs */ - struct ReportList *reports; /* information and error reports */ + struct ReportList reports; /* information and error reports */ ListBase jobs; /* threaded jobs manager */ @@ -258,6 +296,5 @@ typedef enum wmRadialControlMode { WM_RADIALCONTROL_ANGLE } wmRadialControlMode; - #endif /* DNA_WINDOWMANAGER_TYPES_H */ |