Commit Graph

11245 Commits

Author SHA1 Message Date
Nathan Letwory
3469906125 * area split:
- prevent a few more cases of Potential Crash.
- tweak moving stuff.
2008-01-15 14:40:43 +00:00
Diego Borghetti
5ed9571ea5 More "data types" for the Operator property system.
Now you can set/get: float, arrays (int and float) and string.

The only special function is OP_get_string, it is special
because return a pointer to the IDProperty data, so you can't
change/resize/free the string.

It's possible "fix" this with:
 1) Return a "const char"
 2) Return a duplicate string

All this new function are not in use yet, but i make a simple test
with the "move areas" operator (add a property of every type and then
print the result in the other size) and work fine, more test are welcome.

Other thing to check is the new OP_free_property function, because this
properties are only local to the operator, i choice free all this in the
"exit callback" of every operator (only move areas have property now), 
so comment about this are welcome too :)

Also add some notes to the WM_api.h file.
2008-01-15 04:49:09 +00:00
Nathan Letwory
8a7558a4fb * fix for crash when mouse cursor changed areas. Not enough was tested, so sometimes we got invalid edges. 2008-01-14 20:57:43 +00:00
Nathan Letwory
c89b96645e Operators: Split Area
This commit adds split area to the window/screen manager.
 - RMB down on area edge activates
 - mouse move interactively moves areas through new edge.
 - RMB up to confirm action
 - ESCKEY or LMB to cancel.

This still crashes in some situations, but I'm on it!
Also will start using new operator property system by bdiego
2008-01-14 20:46:42 +00:00
Diego Borghetti
2a0055401e New API to access Operator properties.
This is a simple API around IDProperty to store properties
in the Operator, it is really simple and this first commit
just add support for IDP_INT data type.

Take care that this "properties" are not save yet and you get
some "Error totblock" more with this.

I add some notes to the WM_api.h file, please check this,
comment and ideas are welcome.
2008-01-14 19:44:20 +00:00
Nicholas Bishop
49eb7a3eed Applied a couple sculpt/multires fixes from trunk to blender2.5. 2008-01-12 22:06:42 +00:00
Kent Mein
69f004f90d Reverting changes made yesterday to Makefile... (Its really messed up,
Going to do it over again from scratch)

Kent
2008-01-11 16:56:00 +00:00
Chris Want
6258c0979e The python lib name should be 'bf_python' instead of 'blender_python'
when linking.
2008-01-11 16:48:07 +00:00
Kent Mein
c562fdf095 Fixed typo from merge yesterday.
Kent
2008-01-11 14:15:59 +00:00
Kent Mein
6167882776 Cleaned up some things, more work to do here but its a little simpler now.
Kent
2008-01-10 19:53:57 +00:00
Kent Mein
ec4c6154fe Change vector structs from 3 to 4 so things are aligned for 64bit machines.
Kent
2008-01-10 19:22:58 +00:00
Ton Roosendaal
11ab3d7598 Add more memory clearing on file read for WindowManager. 2008-01-10 18:56:24 +00:00
Ton Roosendaal
42e2b4edde Two fixes in 2.5 branch:
- crash on start because of unitialized pointer
- Makefile had the python lib on weird location... I prefer all 
  blender/source/blender/ libs together on 1 place? The Make needs
  cleaning... it assumes publisher stuff. :)
2008-01-10 18:13:34 +00:00
Ton Roosendaal
43cf3af8c0 Blender 2.5 project: added first more complex handler + operator
- on mouse-over edge, you can drag area borders around.
- note it's a handerized system now, so it updates UI while you
  move mouse.

Feedback needed:

- read bottom part of the screen_edit.c file. It's the proposed
  method for adding tools and handlers. I think it's close, but
  might need some tweaks.
2008-01-10 17:38:17 +00:00
Nathan Letwory
b81b6be184 * fix linking order for bf_python 2008-01-09 23:07:34 +00:00
Andrea Weikert
ce975c1027 update to cmake files
- added python library
- small fix for ignored runtime library, needed for linking debug here
Note: still some problems linking with openexr in debug
2008-01-09 18:48:04 +00:00
Chris Want
592c4c53b0 Leave the game engine out by default (WITH_GAMEENGINE=OFF). 2008-01-09 18:26:17 +00:00
Nathan Letwory
8269b89c15 * fix linking order for l00nix 2008-01-08 17:32:38 +00:00
Nathan Letwory
8d9a7941da * apply patch #8020 by Thomas Knight (epat)
Just colours the last speech mark the same as the first when printing status messages about compiling files and so on. Old behaviour was to 
colour it the same as the file name itself.
2008-01-08 16:56:00 +00:00
Kent Mein
d0a23e2eb4 Commented out a couple of verse functions that are in src
Kent
2008-01-08 16:17:26 +00:00
Nathan Letwory
15da2232f7 * tweak linking priorities - should help for GCC users
* some lib renaming
2008-01-08 09:47:44 +00:00
Nathan Letwory
c344021b83 * update scons-files to build with Ton's latest commits. 2008-01-08 05:57:27 +00:00
Diego Borghetti
e58676f713 Add missing Makefile for libpython.a
The source/blender/Makefile don't have the "python" directory
set in the DIRS var, so it skip build the python library.
2008-01-07 19:34:38 +00:00
Chris Want
5e3cffc64a Patch to change license to GPL only, from GSR. 2008-01-07 19:13:47 +00:00
Ton Roosendaal
c4a2022fe1 Fix for makefile to enter interface dir 2008-01-07 19:06:15 +00:00
Ton Roosendaal
0729ba9646 New linking order for the 2.5 editor/wm libs 2008-01-07 18:35:06 +00:00
Ton Roosendaal
1363134dee Whole lot of changes.... here a shortlist:
- removed editors/area and put this all in screen
- added first python calls (note, a new c file for scriptlinks)
- added view3d editor callbacks (no drawing yet)
- added files in editors/interface

(Cmake and Scons has to be fixed, help welcome!)

- now areas/headers are being converted on file read
- note: previously saved 2.50 files will crash!!! (.B.blend)
- area regions are being drawn, first handler for cursor added (on edge)
- window duplicate and scale works correct for screen subdiv

Todos for me:

- need to fix things in syntax (function names) a bit still
- more operators for screen
- define how Context will work... still unresolved when it gets set
- docs!

Reviews of code structure is welcome!
There are also more todos now for others, but it can wait a couple of days
2008-01-07 18:03:41 +00:00
Nathan Letwory
1005d99ea5 * GHOST win32: make sure window gets repositioned to 0,0 when setting state to fullscreen (maximised, borderless) (Patch by Gladstone) 2008-01-05 13:56:40 +00:00
Nathan Letwory
30310a530a * make sure blender2.5 still compiles when WITH_BF_VERSE=1 2008-01-05 13:55:30 +00:00
Diego Borghetti
c5488b943d Use XInternAtom by default.
I don't know the name of the "SGI Fast" atom, but this is only request
when blender start so i don't think that this make some "big" difference.

So just use plain X11 calls (thanks GSR for the info).
2008-01-04 23:17:08 +00:00
Chris Want
a2b8986d1d Support for CMake 2008-01-03 22:20:45 +00:00
Diego Borghetti
350d754b16 Add support for GHOST_kWindowState* to Linux.
This add support for the different window state in Linux/X11.
Two think to take care:
	1) m_post_*
	2) motifFullScreen

1) This is only need if we want start a window in FullScreen or Maximized
state. The basic problem is that we can't set this property to a window
until it's really map, so i add a "post init" proccess for this two
special case (check the code for more info).

2) The Motif Hint isn't really a "FullScreen" mode, it's only a
"NO DECORATIONS" options, so if the window manager don't support WM-spec
this function only remove the border of the window, don't make it
FullScreen. A simple fix (hack) is check if the Window Manager support
WM-spec, in case that not, remove the decorations and move/resize the
window.

Test in different WM (gnome, kde, etc) and comment are welcome :)
2008-01-03 21:04:16 +00:00
Nathan Letwory
c87785671c * make sure we have still a compiling GE with scons/mingw
* assist ideasman also for scons/mingw with ffmpeg enabled
2008-01-02 12:35:30 +00:00
Nathan Letwory
3c4f424fc8 * making sure removal of headers still has successful compile on win32 2008-01-01 22:10:39 +00:00
Campbell Barton
a42e548e81 removed some more header files, made the game engine compile with removed header files, added includes to SConstruct files. 2008-01-01 19:20:49 +00:00
Ton Roosendaal
372ee054c0 Some notes for those who try to follow this :)
- first work on getting area/screen handling back
- added structure for where to put stuff, is still under
  review, wait a bit for docs?

Campbell is working on removing every bad level include from
sources, so we can safely rebuild the src/ directory.
2008-01-01 18:29:19 +00:00
Campbell Barton
58bf29e389 removed blenderdef.h, BIF_*, BDR_* and BSE_* header files (except for BIF_gl.h and BIF_glutil.h) 2008-01-01 18:16:10 +00:00
Ton Roosendaal
2df4ef711a More work on restoring Blender;
- brining back subwindow management
- removing more bad level stuff
2008-01-01 15:53:38 +00:00
Nathan Letwory
881fd0cb3a * make sure desktop is redrawn when coming out of GHOST_kWindowStateFullScreen 2008-01-01 14:04:09 +00:00
Nathan Letwory
a11c4cd041 * silence more warnings 2008-01-01 11:14:25 +00:00
Nathan Letwory
7052576344 * some cleanup of warnings 2008-01-01 10:45:48 +00:00
Nathan Letwory
af4678d421 * kill a warning 2008-01-01 09:28:29 +00:00
Nathan Letwory
bcb14c2a0f * add fullscreen toggle operator (for testing fullscreen states in win32). hotkey is FKEY. Do test on other platforms, too. 2008-01-01 09:07:02 +00:00
Diego Borghetti
2d3bbe480c I got confused screenToClient with clientToScreen.
Sorry, i get the wrong value because a print the
wrong variable :/
2007-12-31 14:28:10 +00:00
Nathan Letwory
63d2208319 * fix include path (found by jensverwiebe) 2007-12-31 10:18:26 +00:00
Diego Borghetti
59751edadd Fix bad argument order to XTranslateCoordinates.
Take me a long time catch this :/ and i really don't know how this
work before, because clientToScreen always return bad values.
2007-12-31 06:19:04 +00:00
Nathan Letwory
8814476714 * make sure decoration is there when toggling away from GHOST_kWindowStateFullScreen to GHOST_kWindowStateNormal (win32) 2007-12-30 23:58:59 +00:00
Nathan Letwory
0f1e7db0b7 * also distinguish between maximised and fullscreen on GHOST win32.
* clean up some warnings (unused vars).
2007-12-30 23:09:33 +00:00
Nathan Letwory
1fec64a402 * revert my change to windowmanager move/size handling.
* made win32 ghost getClientBounds so that it returns area compatible with osx getClientBounds
  - if a window is non-fullscreen, substract decoration, since that'll be added by GHOST_WindowWin32()
* use SetWindowLongPtr/GetWindowLongPtr (instead of SetWindowLong) as it is compatible with 64bit windows.
2007-12-30 22:52:00 +00:00
Ton Roosendaal
f25ce8d0ff Removed silly Global windowstate variable.
Result: windows open default with decoration (or as your default WM
defines). 

Todo: platform maintainers re-implement a cogent way for giving 
commandline options for defaults, and test how this can be stored even
2007-12-30 17:29:13 +00:00