Commit Graph

62 Commits

Author SHA1 Message Date
14b41f9078 bugfix [#22276] filemanager autocompleate based on current path
also added autocomp to filename in fileselector
2010-05-07 23:34:03 +00:00
62c0ac2dc9 unix style outliner name wildcards *.*, Any.???, etc (using fnmatch), also removed last beos reference :) 2010-04-23 22:08:11 +00:00
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
83daf2193e File Browser: respect UserPref for filtering.
Setting 'Filter Files' to false, now shows all files in file browser by default when called with any operator.
2010-04-15 20:37:47 +00:00
19fb497d13 Fix a few warning in editors/ module. 2010-03-30 11:38:06 +00:00
9a99b7d193 Fix [#21083] Collada exporter defaults to ".blend" extension...
Also added a filter category for COLLADA files to the file selector.
2010-03-29 08:33:35 +00:00
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
08164794b2 Fix [#21658] file browser "hide invisible" doesn't hide anything
- moved global hide_dot to filelist.
- hiding dot files is now included in the filtering of files, which means that for this directory also doesn't have to be read anymore.
- reverted changes of rev. 27491 and related changes in rev. 27523 in favor of a more general abstraction for the different 'file browser modes' with respect to filtering.
2010-03-20 14:23:56 +00:00
35a5be71e7 Fix [#20908] Box Select On File/Append Selects Too Many Files 2010-03-18 04:09:59 +00:00
8fdb4d4506 Fix [#21618] Wrong Icon For BLEND file on File/Append
While the folder icon was originally planned when in append/link mode, it's easier to distinguish with a blender icon, so the folder icon is now replaced.

Also fixed issue introduced in rev. 27491 where filter settings were incorrectly set when moving out of .blend file again.
2010-03-15 20:28:13 +00:00
a892bd6976 fix for bugreport:
#21506 'sort by' while in append/link file browser causes files to disappear

- issue was that the objects were still filtered
- temporary fix until refactoring of the append/link integration
2010-03-14 18:02:18 +00:00
c0b3ab6ceb filebrowser:
* move own thread handling for thumbnails to WM_jobs 
* cleanup of thumbnail creation code
* added function to kill the job, which actually allows thread to terminate gracefully

vc9 projectfiles:
* fixed some missing includes for release target!
2010-03-10 19:30:20 +00:00
1708ac0723 rename some functions to use easier to understand names.
'BLI_makestringcode' --> 'BLI_path_rel'
'BLI_convertstringcwd' --> 'BLI_path_cwd'
'BLI_convertstringframe' --> 'BLI_path_frame'
'BLI_convertstringframe_range' --> 'BLI_path_frame_range'
'BLI_make_cwdpath' --> 'BLI_path_cwd'
2010-03-09 17:36:23 +00:00
081c1205a3 correct fsf address 2010-02-12 13:34:04 +00:00
acadb8c39f Sculpt Branch:
Revised external multires file saving. Now it is more manual in that you
have to specify where to save it, like an image file, but still saved at
the same time as the .blend. It would ideally be automatic, but this is
difficult to implement, so for now this should at least be more reliable.
2009-12-10 14:26:06 +00:00
c0a6d07212 filebrowser
* fix typo in operator property
* respect user setting for hide dot files
2009-11-22 20:24:36 +00:00
5938b4c93e new utility function for BLI_storage.h - BLI_is_dir
currently unsupported on windows.

should fix this too [#19656] N-Panel in filebrowser not working
though typing in invalid names then becomes possible
2009-10-16 10:22:11 +00:00
734d50e8df typing in non-existant dirs now goes back to the previous dir. (also for bookmarks and when changing dir's in other places) 2009-10-15 11:11:52 +00:00
3ebd58673f Key Configuration
Keymaps are now saveable and configurable from the user preferences, note
that editing one item in a keymap means the whole keymap is now defined by
the user and will not be updated by Blender, an option for syncing might be
added later. The outliner interface is still there, but I will probably
remove it.

There's actually 3 levels now:

* Default builtin key configuration.
* Key configuration loaded from .py file, for configs like Blender 2.4x
  or other 3D applications.
* Keymaps edited by the user and saved in .B.blend. These can be saved
  to .py files as well to make creating distributable configurations
  easier.

Also, user preferences sections were reorganized a bit, now there is:
Interface, Editing, Input, Files and System.


Implementation notes:
* wmKeyConfig was added which represents a key configuration containing
  keymaps.
* wmKeymapItem was renamed to wmKeyMapItem for consistency with wmKeyMap.
* Modal maps are not wrapped yet.
* User preferences DNA file reading did not support newdataadr() yet,
  added this now for reading keymaps.
* Key configuration related settings are now RNA wrapped.
* is_property_set and is_property_hidden python methods were added.
2009-10-08 18:40:03 +00:00
0356b92d46 File Browser fixes:
* The code to draw only visible items was not working, giving slow
  performance with many files (bug #19469).
* Fix detailed list display on non-windows, would give overlapping text.
* Fix folders with many files not displaying all items, changed short to
  int in various places, was overflowing.
* Recreate layout on area resizes, file view gets out of sync otherwise.
* Workaround for v2d height not being correct with image display due to
  scrollers.
* Fix view2d code to compute minimum scroller size, this would make the
  scroller go outside of its bounds.
2009-09-28 12:10:23 +00:00
6d4fb84c4e 2.5 filebrowser
* fix crash in autocomplete for very long paths
* allow longer paths in directory button
* added some TODO comments for G.lib
2009-09-20 19:10:12 +00:00
4b6c61e0a7 2.5 filebrowser
* changed filebrowser operator property "filename" to "path" - fixed two missing operators.
* small cleanup in init of filebrowser
2009-09-20 15:30:52 +00:00
063d806f15 2.5 filebrowser
bugfix #1: SpaceFile->files needs to be deleted on exec and cancel of the filebrowser and in init to ensure correct setting of the read function.
bugfix #2: SpaceFile->params needs to be set in file_init otherwise Python can't access params in header ui.
2009-09-15 20:47:34 +00:00
78bb6ce034 2.5 filebrowser
* Fix for space init when loading with pupmenu (without operator) - parameters now get reset
* experimental: made new director operator jump directly into renaming
2009-09-13 09:41:00 +00:00
7eea0b647c 2.5 filebrowser
Fix crash when loading old files with filebrowser UI
Partial Fix for invoking filebrowser via spacetype pupmenu: reset directory in filelist
Make paths relative in 'path' return when requested by 'relative_paths' property in operator
2009-09-13 08:08:50 +00:00
b1e418db20 2.5 filebrowser
fix operator property name 'type' was used by sequencer for strip effect type. Changed to 'filemode' for file browser.
2009-09-13 07:00:44 +00:00
9a25d22326 2.5 filebrowser
Appending and Linking 
* Linking Operator, invokes filebrowser for Append/Link
* Separated the append/link function into three parts:
** BLO_library_append_begin finds main for appending
** BLO_library_append_named_part appends one Object,Group, Material, ...
** BLO_library_append_end actually reads and expands the libraries

NOTE 1:
I also changed the returned properties for the filebrowser operators to the following convention:
"path" - the full path to a file or directory, means what is in directory + filename buttons in filebrowser
"directory" - the content of the directory button in filebrowser
"filename" - the content of the filename button in filebrowser
Usually only path should be required, but in some cases it might be more convenient to retrieve the parts separately.

Ton, Brecht: If you have time to take a look, let me know if anything needs to be fixed.
2009-09-12 19:54:39 +00:00
c1100361e2 2.5 filebrowser
* code cleanup: remove duplication in drawing, join list and preview drawing
2009-08-20 18:39:25 +00:00
aa44603146 2.5: File browser
* Side panels now use list widgets.
* Enabled theme colors for side panel.
* Add button in bookmarks panel.
* Operator panel title now uses operator name.
* For unix, added / to system, and home and desktop to bookmarks.

* For opening fileselect with filter, cleaned up the code a bit,
  adding WM_operator_properties_filesel instead of duplicating code.
* Also added filter for all operators calling fileselect, only image
  and file open did it before.
* Hide . files by default, and also hide files ending with ~.

* Added back .. (but not .) in the file list, I really missed this.
* File highlight now only happens when you're actually over a file,
  instead staying after you move the mouse away.
* Fix some redraw/refresh issues.
2009-07-28 16:46:14 +00:00
a869bdc44e 2.5 file browser
New:
* added filter and display to some operator properties. Now file browser opens showing only .blend files and folders on file->open and on image->open changes to image display and only shows images and movies.
Fixes:
* fixed stupid removal of wrong prototype in last commit
* fixed a few warnings
2009-07-27 19:06:33 +00:00
569bb8f47d 2.5 filebrowser
Bugfixes:
* crash when loading file that has filebrowser open
* file size over 2GB/4GB? shows negative number 
Other:
* tried to improve drawing speed a bit by only drawing the files actually shown and improving refresh behaviour a bit.

Note: Solution I found so far is to use the non-standard _stat64, as far as I could see, WIN64 should work without that patch (Genscher, please check and if needed you can enable this too by removing the !defined(WIN64) )
This probably needs to be fixed in at least one other place (BLI_filesize), will look into this once this fix proves stable enough)
2009-07-26 12:40:44 +00:00
513dcf7b46 2.5 - Silencing various compiler warnings (mingw) 2009-07-16 04:45:52 +00:00
5f8f2fc33a 2.5 filebrowser
* bugfix: parent on linux didn't account for first slash
* added some BLI_cleanup_dir to prevent weird directory names
* revert to old directory if user types bogus text.
2009-07-12 13:06:52 +00:00
184dca5396 2.5 file browser
* tweak for autocomplete, only update live if live_update and TAB key is hit. (Brecht, please check if it's ok, otherwise will revert and we'll find another way)
* adding slash at the end of directory to allow for faster autocomplete
* bugfix: directory name buton had wrong length
2009-07-12 09:03:09 +00:00
576a642ff9 NLA SoC: Merge from 2.5
21470 to 21512

Next up, NLA-branch to 2.5 :)
2009-07-11 03:23:45 +00:00
ac11d522c8 2.5 filebrowser
* bugfix: don't allow parent dir to go beyond root
* bugfix: only attempt to change directory if it exists

New (WIP) feature: autocomplete for directory
* works on TAB
* so far only one level (in current directory)
2009-07-10 19:19:54 +00:00
66ca86b40b 2.5 file browser
* directory button enabled again, c code for now, can later become nicer operator
* filename button enabled (pattern match for selection)
* RNA completed (title, file and directory)
* some unused code removal.
2009-07-10 17:05:04 +00:00
0051f1be8e NLA SoC: Merge from 2.5
21330 to 21469
2009-07-10 01:57:55 +00:00
Dalai Felinto
cfd5046c9e 2.5 filebrowser: previous/next + bugfix + elubie's changes and cleanup
* Previous/Next Folder browser
* bugfix: "open most recently opened directory".

* Previous and Next functionalities:
- use BACKSPACE to navigate to previous folders
- use SHIFT+BACKSPACE to navigate forward
- once you change the folder by other ways the forward folder list is cleared

* bug fix: the sfile->params->dir set through ED_fileselect_set_params wasn't correct. According to the code taking the settings from the existing (previous) filebrowser is a temp solution. In that case this is a fix for a temp solution :)
(changes in: wm_event_system.c, filesel.c and ED_fileselect.h)

** Andrea(elubie): we can get away of the folderlist_clear_next test if we manually pass a boolean to file_change_dir (e.g. file_change_dir(sfile, true)). I tried not to mess up with your changes here. It's slightly slower (and maybe hacky) but its's more conservative IMHO.

(my first commit to 2.5 ... that was a good reason to put my paper on hold :p)
2009-07-07 07:25:44 +00:00
b1a106dd49 NLA SoC: Merge from 2.5
21210 to 21300

Note to self: the next merge will be messy again, since 2 commits occurred this one was complete
2009-07-02 03:32:57 +00:00
5e20f57431 2.5 filebrowser
* start of filebrowser RNA 
* system files, bookmarks, etc. now nicely inside panels to allow collapsing etc.
* filebrowser header now defined in space_filebrowser.py

TODO:
* button type for bookmarks etc. not final yet, at least should get centered still. Suggestions welcome here.
2009-06-29 20:23:40 +00:00
a1c5c501a6 At last... this merge should finally do the trick!
21073 to 21145
2009-06-25 04:33:21 +00:00
ee9c260c38 2.5
- Added ND_SHADING notifier on linking materials, so it gives 
  refreshes in UI
- Removed reduntant debug prints

Crucial fixes in other code while checking warnings;
- Particle buttons were assigned to short, whilst data was int
- Filesel border select used float rect API, on an int rect.
2009-06-24 17:22:22 +00:00
964d44e6bc NLA SoC: Merge from 2.5
20571 to 20667
2009-06-06 05:00:40 +00:00
b0b8700a83 2.5 filebrowser
* code cleanup: removed unused fileselect mode (type)
* brought back 'hide dot files', needs proper storing of the settings still.
2009-06-04 20:07:06 +00:00
c42eeddea4 NLA SoC: Bugfixes + Improvements to 'Push Down' track-selection
* Trying to save no longer crashes in some cases when the NLA Editor was open with some data. The sanity check added in filesel.c might be able to be backported to 2.5? (Elubie, please check)

* NLA-track names now get drawn with the correct colours for identifying themselves as being selected or not selected.

* Now the 'push down' functionality for actions will try to add the new strip to the last NLA track, provided it has space in the range required. 
* When new strips are added, they will only be allowed to extrapolate before/after if they are the first (time-wise) strip for the set of NLA data per AnimData block. This stops layered strips overriding strips that occurred in earlier tracks at earlier times.
2009-05-31 04:52:20 +00:00
2ae34a9816 2.5 compile errors.
Wrong include name (lower case) and missing include folder in scons.
2009-05-14 18:54:41 +00:00
ba6bec56f9 2.5 filebrowser
- drawing code cleanup
- use of BLF_font in own string drawing, needs to be aligned with uiStyles still.
- thumbnail scaling now done on graphics card via new glaDrawPixelsTexScaled (slightly modified glaDrawPixelsTex)
2009-05-14 18:08:14 +00:00
5b3d7bfdf6 2.5
More cleanup!

- removed old UI font completely, including from uiBeginBlock
- emboss hints for uiBlock only have three types now;
  Regular, Pulldown, or "Nothing" (only icon/text)
- removed old font path from Userdef
- removed all old button theme hinting
- removed old "auto block" to merge buttons in groups
  (was only in use for radiosity buttons)

And went over all warnings. One hooray for make giving clean output :)
Well, we need uniform definitions for warnings, so people at least fix
them... here's the real bad bugs I found:

- in mesh code, a call to editmesh mixed *em and *me
- in armature, ED_util.h was not included, so no warnings for wrong call
  to ED_undo_push()
- The extern Py api .h was not included in the bpy_interface.c, showing
  a several calls using different args.

Further just added the missing includes, and removed unused vars.
2009-04-14 15:59:52 +00:00
e7e655ce74 2.5 filebrowser
- drawing tweak for background lines
- long and short display now behave the same, only difference is column width now.
TODO still:
- add additional columns (access rights - mode1-mode3 and owner) for non-Windows platforms
2009-03-14 18:15:28 +00:00