Commit Graph

156 Commits

Author SHA1 Message Date
Campbell Barton
b95beea539 style chang, made mainly because I wanted to be able to add breakpoints to MEM_freeN calls which were on the same line as the if's. 2012-01-21 22:00:40 +00:00
Campbell Barton
e10fd04db0 use BLI_strncpy and BLI_snprintf when the size of the string is known.
fix for sequencer unique naming which was missed with string length update.
2012-01-11 12:33:51 +00:00
Campbell Barton
535d27eb49 minor cleanup for string use - no functional changes
- use more logical names for strings, noticed too many strings called `str` when reviewing name patch.
- pass __func__ macro to uiBeginBlock(), quite a few names were wrong (copy/paste error).
2012-01-11 09:33:44 +00:00
Campbell Barton
b21a0f4fa1 formatting edits 120 line length 2011-12-24 02:37:42 +00:00
Brecht Van Lommel
7217518179 UI:
* Add theme option to show panel header background.
* Draw panel collapse widget a bit smaller.
* Add theme option to draw icons muted.
* Code tweak: replace U.themes.first by UI_GetTheme() calls.
2011-11-19 20:57:53 +00:00
Campbell Barton
4a04f72069 remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n 2011-10-23 17:52:20 +00:00
Sergey Sharybin
7172316b94 Merging r40366 through r40392 from trunk into soc-2011-garlic 2011-09-20 12:01:16 +00:00
Campbell Barton
84d06f252e tag & comment unused vars with /* UNUSED */ 2011-09-20 08:48:48 +00:00
Xiao Xiangquan
77926a7f9d select uiStyle according to UserDef and update lang-packs 2011-07-16 18:28:24 +00:00
Xiao Xiangquan
b429af10d0 merge from trunk #37722 2011-06-24 03:30:50 +00:00
Campbell Barton
1283b07409 use ascii drawing function where utf8 isnt needed. 2011-06-18 09:01:26 +00:00
Campbell Barton
170716ca53 use BKE_area_find_region_type in place of inline loops (no functional changes). 2011-05-20 05:27:31 +00:00
Campbell Barton
5f5cdf9d00 for bug [#27358] Transform bug when transform > 500
mouse coords would with cont. grab would wrap at short.
use mouse coords as int rather then short.

this problem still happens on linux because of XTranslateCoordinates
2011-05-12 16:47:36 +00:00
Campbell Barton
8d7c3f8a7e interface: floats were being implicitly promoted to doubles, adjust to use floats (in most cases) otherwise cast to double. 2011-03-27 14:52:16 +00:00
Campbell Barton
c7fccc84bf use NULL rather then 0 for pointer assignments & comparison, modifier, imbuf & editors. 2011-03-05 10:29:10 +00:00
Nathan Letwory
95100afc12 doxygen: blender/editors tagged. 2011-02-27 20:29:51 +00:00
Nathan Letwory
5b607701a7 doxygen: prevent GPL license block from being parsed as doxygen comment. 2011-02-23 10:52:22 +00:00
Ton Roosendaal
f5e2669444 Icons in outliner were jittering a bit on sizing of the area.
Subpixel position issue... when is this ever correct? :)
2011-02-01 17:54:02 +00:00
Ton Roosendaal
c7ea17bb92 After test, offset is better to be 0.001f (test in windows nvidia) 2011-01-26 12:48:22 +00:00
Ton Roosendaal
efa9d4f7e0 Bugfix #25756
Outliner was drawing icons sometimes blurred. Happens when subpixel
positions vary. UI code doesn't suffer this, it makes own ortho for
it.

This fix re-uses an un-used v2d flag (V2D_PIXELOFS_X) to force a 2d
view on pixel exact positions. It's set for outliner only, I need
testing feedback first.
2011-01-26 12:26:44 +00:00
Campbell Barton
70a828d5a5 remove unused vars, comment some which look like they could be useful still. have makesrna.c omit unused _data definitions for rna funcs with no args. 2011-01-09 01:17:56 +00:00
Campbell Barton
89c9aaaa25 remove references to BKE_utildefines where its not needed.
- move GS() define into DNA_ID.h
- add BLI_utildefines as an automatic include with makesrna generated files.
2011-01-07 19:18:31 +00:00
Campbell Barton
8f21a43535 split BKE_utildefines.h, now it only has blender specific defines like GS() MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
no functional changes.
2011-01-07 18:36:47 +00:00
Ton Roosendaal
5eaad696e8 Bugfix, own collection
Graph editor: sliding Nkey Properties to left, closing curves view
entirely, was hanging in eternal loop. Caused by division by zero.
2011-01-03 18:57:13 +00:00
Ton Roosendaal
9297cb01f6 Todo item:
2D view scrollers were drawing over background contents, making it
look somewhat messy (like for text, nodes, fcurves). Now it clears
first the back in the region edge.
2011-01-03 18:14:10 +00:00
Campbell Barton
a7ceeafd71 - correct typos in comments.
- move boxpack struct out of the public header.
2011-01-02 11:06:50 +00:00
Sergey Sharybin
858ae19e4e Fix #25375: Vertical numbers in F-Curve Editor out-of-alignment with grid
Issue caused because previously sliders used a separate mask and now they're
drawing inside of region.

Thanks to AlexKu for point and Ton for checking :)
2010-12-26 10:34:09 +00:00
Campbell Barton
3bed4cbf2b fix [#25283] Edge length display difficult to read
- made theme colors for mesh edge len & face angle/area display.
- use %g rather then %f for float display, trims unneeded zeros.
- store cached 2d and 3d text color as bytes rather then floats, compare when drawing to avoid setting the context.
- use unsigned char for more color functions, avoids casting to glColorubv().
2010-12-20 03:59:22 +00:00
Campbell Barton
d620ff8380 2D text drawing
- with the NLA on a small strip text was drawn under the scroll bar, now draw with same alignment as rectangle constrained text.
- single alloc per text item.
- was using opengl context rather then passing color value.
2010-12-07 07:02:47 +00:00
Campbell Barton
b45c3363fd fix for some pedantic warnings. 2010-12-03 01:52:28 +00:00
Ton Roosendaal
01169dd632 Bugfix #24971
Outliner: if bottom slider was hidden, you still could not click there
on items. Code was using region-mask to clip input, but the mask is not
adjusted for sliders now (keeps view same).
2010-11-29 17:10:46 +00:00
Campbell Barton
80a650dfb1 BLF_draw functions take an extra length argument, so the console drawing doenst need to swap in NULL chars to draw word wrapping. 2010-11-11 06:35:45 +00:00
Campbell Barton
0dde63c044 bugfix [#24377] Bad frames drawn 2010-10-25 13:37:49 +00:00
Campbell Barton
f8d7451c73 remove unused args or tag as unused for image and screen editors, uiItemEnumR_string was ignoring name and icon args. 2010-10-14 12:24:08 +00:00
Campbell Barton
a9197c3aa2 remove unused args in draw*.c and some in view*.c, tag some as UNUSED(). 2010-10-14 01:22:14 +00:00
Campbell Barton
d1759639dc - remove unused includes IMB_*, BIF_* & MEM_*
- remove MEM_guardedalloc.h from header files (include directly)
2010-08-16 05:46:10 +00:00
Campbell Barton
d153850520 fix for hanging while drawing fcurves, the function made some attempt to avoid the problem but when the view is zero pixels wide it still hung for some time. 2010-05-11 21:46:20 +00:00
Campbell Barton
f721447f22 billboards were using un-initialized memory and avoid divide by zero in some cases. 2010-05-04 21:10:26 +00:00
Diego Borghetti
a56b72fd82 BugFix:
[#20854] PROPERTIES STAMP: Rendering stamp flickers in output renders

Blenfont was not thread safe, that is why one thread can change
the font properties (size, dpi, color, etc) at the same time
that the stamp draw on the image, and then the problem.

To make blenfont thread safe I have to change two important things:

1) Every BLF_* function take one argument, the font id.
2) We have two new function to make font "thread safe":
	BLF_load_unique
	BLF_load_mem_unique

This two function are for case like stamp, that need and own font
that don't share the glyph cache, so can draw without problem
in a different thread.

Why the BLF_*_unique function ?

Because blenfont keep only one copy of a font and keep a list of
"glyph cache". Every glyph cache have size and dpi, so if two
different thread access the same font at the same time, they can
change value and finish with something like the stamp problem.

Why don't remove the glyph cache ?

Because if we do that, we finish with a font object for every size
and dpi, and the stamp is really a special case that happen in
the rendering process, so I really thing is better keep the
glyph cache and make this two new function to handle this
special case.

(When I say "font object" I mean have the same freetype font multiple
times just to have differents size and dpi)

As Matt point we still can have one case that two thread access
the BLF_*_unique function at the same time, but I am looking to
fix this with some class of thread lock.

For now I test and work fine, so if some one found problem, please
let me know.

Campbell I have to change the python api (python/generic/blf_api.c)
to the new syntax, so maybe you can take a look at this.
2010-04-22 10:56:45 +00:00
Campbell Barton
f743b583bf more lint includes
Only source/blender/editors/ dir, should not give errors on different platforms
Only removing:  UI_*.h, ED_*.h, WM_*.h, DNA_*.h, IMB_*.h, RNA_*.h, PIL_*.h
2010-03-23 14:09:09 +00:00
Brecht Van Lommel
24a0eececf Fix user preferences window contents being shifted to the left. 2010-02-16 17:07:06 +00:00
Campbell Barton
081c1205a3 correct fsf address 2010-02-12 13:34:04 +00:00
Brecht Van Lommel
3b83ff755d Fix jumping panels when opening a new properties area or area containing
a region with panels (e.g. file browser).
2010-02-07 01:11:02 +00:00
Brecht Van Lommel
81cd4edfb6 Fix #20891: opengl animation render could mess up the view.
The problem was that wmPushMatrix/wmOrtho/.. and similar functions did not
work well for offscreen rendering. It would have been possible to make a
fake subwindow for this, but I decided to just remove this extra layer as
it does not seem to have much purpose and has been quite confusing when
trying to fix other bugs. The relevant matrices are already stored in
RegionView3D so there will be no increase in calls to glGetFloat, which may
have been a performance reason to use this system in the past.
2010-02-01 15:32:55 +00:00
Joshua Leung
1277543732 Various tweaks to View2D code for handling of scrollbar interactions in relation to bug 19881:
* Clearly labelled the way that the scrollbar hiding works. Also see the report comments for an overview
* Added another pair of flags for another one of the cases in which scrollbars should also get ignored; when the entire contents of the view are visible, a pair of flags is now set in the view2d data (instead of for the scrollers tempdata only) for detecting this case too
* Fixed the potential for scrollbars without zoom handles shown to have those handles still considered. This still happened in the User Preferences window, but has now been disabled.

--

These changes still don't solve the bug though. Currently after the scrollbar operator passes through, the Outliner's activate-selection operators still fail to start.
2010-01-31 11:13:31 +00:00
Joshua Leung
e1fdf7fc58 View2D/TimeCode Drawing:
This commit introduces a few cleanups and tweaks to the way that timecodes (i.e. the timing indications used instead of frame numbers) get displayed.

1. Custom Spacing of TimeCodes/Gridlines
Made the minimum number of pixels between gridlines/timecode indications a user-preference, instead of being a hardcoded constant. This allows to set the spacing tighter/looser than the defaults, and is also used for the other changes.

2. Default timecode display style, (now named 'minimal') uses '+' as the delimeter for the sub-second frames. This hopefully makes it a bit clearer what those values represent, as opposed to the '!', which can sometimes look too much like a colon.

3. Added various timecode display styles as user-preference. - These include always displaying full SMPTE, to showing milliseconds instead of frams for sub-second times, and also an option to just show the times as seconds only.
- When changing the timecode style, the spacing setting is automatically modified so that the timecodes are spaced far apart enough so that they won't clash (under most circumstances). This automatic modification is only done if the spacing is too tight for the style being set.

4. Unified the code for generating timecode strings between the View2D scrollbar drawing and the current frame indicator drawing.
2010-01-30 04:43:36 +00:00
Joshua Leung
5a1603374c Bugfix #19344: Using the scroll bar zoom widget doesn't work in some situations
Zoom widgets now only show if the scrollbar only shows scale markings (i.e. timegrids).


---

Also removed an empty header file.
2010-01-26 10:52:42 +00:00
Joshua Leung
3b446ed4e4 Durian Request/Bugfixes: Graph Editor Zooming doesn't go far enough
Pushed limits for Graph Editor view extents to proper limits, and fixed clamping used in View2D code which was preventing height of View2D viewports from getting below 1.0
2010-01-25 11:06:55 +00:00
Matt Ebb
38aacb92f3 Cleaned up some printfs in editors/ - converted some to reports, hid others behind G_DEBUG. 2010-01-22 06:48:29 +00:00
Matt Ebb
e93d6655bd Fix [#19932] When reducing panels vertically the scrollbar should not continue redraw in
opposite direction
2010-01-14 04:16:45 +00:00