780 Commits

Author SHA1 Message Date
Adrien Destugues
07bfc119b8 -No need to check if a pointer is null before freeing it.
-However if the pointer is still living (for example a global) you should assign NULL to it to avoid bad ram access and random bugs. Accessing a NULL pointer always  gives a segfault, accessing a freed pointer may or may not crash.
-Also fixed a memory leak


git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@924 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-16 07:33:14 +00:00
Adrien Destugues
8b5681eccb -"fixed" warning about vars being used uninitialized (may happen if mouse cursor is totally offscreen or screen resolution is 0 pixel height, that is, never).
-Put some cursor drawing loops in the right order (loop on y, then on x) to make them a little more cache-friendly (and easier to read). I wrote them the wrong way, sorry!
-Some code formatting to 80 columns (not really important, don't worry about it)
-Added a sample neochrome picture to the pic-samples folder.


git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@923 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-16 07:04:39 +00:00
Yves Rizoud
9d0c73b5be Tweaked the line clamping algorithm (Issue 186): Multiples of 45° use orthogonal projection (again), ISO lines are now constrained to exact 2:1 lines and their length is projected on most significant axis, horizontal or vertical
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@922 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-15 20:11:07 +00:00
Yves Rizoud
7fc318a856 Experimental work on mouse locking with shift (issue 193). Consider unstable.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@921 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-15 18:50:25 +00:00
Yves Rizoud
c596b80b8d GUI: Made slider controls movable even if you bring mouse cursor far from them. Makes it much easier to maximize or minimize a value.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@920 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-14 20:43:51 +00:00
Yves Rizoud
3a5b460184 Finished the sticky buttons (didn't have any visible effect)
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@919 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-13 21:36:53 +00:00
Yves Rizoud
77728125fb GUI: All controls are now 'sticky', ie. when you're dragging a slider/scroller and you move the mouse too far, it no longer activate other buttons. (Issue 191)
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@918 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-13 19:10:48 +00:00
Adrien Destugues
7bde7d90ce Quick-made support for Neochrome files. Loading works, saving leaves parts of the header uninitialized. Neochrome may or may not like it.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@911 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-13 08:09:40 +00:00
Yves Rizoud
260347ac21 Updated credits
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@909 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-09 01:08:02 +00:00
Yves Rizoud
c425d3e20d OSX: Config files now in a subdirectory of ~/Library/Preferences. This will keep your settings when you install new versions. Patch by MagerValp, issue 192
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@907 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-08 00:27:05 +00:00
Yves Rizoud
ec1642ff79 Merged in the fix from r880: Issue 182, Out of memory errors, on machines with more than 4Gb RAM
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@906 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-07 19:58:24 +00:00
Yves Rizoud
72e6452d5b Integrated Makefile changes from MagerValp (Issue 188 comment 4) for MacOSX; adapted Windows build slightly; Updated Help screens for list of bug finders.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@904 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-07 19:26:37 +00:00
Adrien Destugues
cadb762640 Fixed issue 190: buffer overflow in splash screen.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@903 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-07 14:03:21 +00:00
Adrien Destugues
15a8c67db7 Patch by MagerValp to allow building on mac with make. Thanks !
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@902 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-07 13:58:37 +00:00
Pete Gordon
243b645383 Fixes to make it build on OS4 and the latest SDK
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@898 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-03 11:49:09 +00:00
Yves Rizoud
392d17c56c Fixed the clamping of Grad rectangle (I hadn't tested at all :-/ )
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@897 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-02 22:12:24 +00:00
Yves Rizoud
158cd7ff45 Fixed an old (pre v2.0) control bug where releasing shift key had the extra effect of releasing the left mouse button.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@896 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-02 22:09:57 +00:00
Yves Rizoud
9e9fd506b6 Continued the line clamping. Seems to work perfectly for all 16 directions, but I discovered an older problem in the input handler when you release a key that participates in cursor emulation. Not completely fixed.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@895 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-02 21:38:11 +00:00
Adrien Destugues
19a2892e88 I extended the line clamping to do iso pixelart. However I only managed to find the equation for the 3 others. Maybe someone is better at geometry. I let the unequationed lines move free when you press shift. The limit between each spot can also be adjusted. Is someone better than me at math around here ?
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@894 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-07-01 19:21:58 +00:00
Yves Rizoud
8b4533f105 Skin graphics and font are now recorded & reloaded.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@891 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-29 00:28:58 +00:00
Yves Rizoud
d4dcba62a6 More work on fonts/skins
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@890 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-28 21:50:01 +00:00
Adrien Destugues
48c98b2234 -Remove the spaces I just added when looking for the fonts,
-No need to check if a pointer is NULL before freeing it, free() takes care of that,
-Removed useless variables after Yves cleanup


git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@889 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-28 19:36:06 +00:00
Adrien Destugues
cc64de7e1f -Pad font names with spaces, as we need that to clear the dropdown button from previus selection
-Made the font dropdown a little larger to hold 'fairlight' (quite a big group ;))
-Don't list fonts in the skin fileselector


git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@888 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-28 19:27:20 +00:00
Adrien Destugues
a619897862 Don't free the GrafX2 logo when exiting the splash screen, it's now part of a struct and we free the struct at exit. This made the linux version crash. If you find it's memory waste, then make the logo a pointer instead of an array of bytes in the struct.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@887 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-28 19:18:30 +00:00
Yves Rizoud
67dbb218a2 GUI skins and fileselectors: cleaned up a little
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@886 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-28 18:19:21 +00:00
Yves Rizoud
ab9671b286 Separated font graphics from skin graphics. WIP, a lot is still hard-coded (font list) or not coded at all (save/load in ini, and match in skin selection screen).
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@885 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-23 21:04:58 +00:00
Adrien Destugues
77c87dcc24 Linux build fix.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@884 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-22 21:42:28 +00:00
Yves Rizoud
230baa77e7 GUI Listboxes: fixed mouse cursor display while using keyboard;
Skin selector: tweaked position and made it ignore files that don't end in .PNG .GIF, or those that start with '_';
Added 2 old fonts and 2 new ones (thanks Ilkke) as files skins/_fontname.png


git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@883 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-22 21:30:54 +00:00
Yves Rizoud
5a01415960 GUI Generic list control: now takes cursors and mousewheel shortcuts. Still some mouse cursor problems, but almost done.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@882 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-22 17:35:52 +00:00
Yves Rizoud
f683d9ff2e GUI skins: The loader now recovers cleanly from errors and displays a message that says what's the problem in the image.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@881 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-21 18:34:57 +00:00
Yves Rizoud
164b538725 Fix 'Out of memory' message on machines with more than 4Gb free RAM (issue 182)
git-svn-id: svn://pulkomandy.tk/GrafX2/branches/release@880 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-20 19:08:13 +00:00
Yves Rizoud
0d54a9524f More work on List controls. Used in GUI Skin selector now
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@879 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-18 19:43:40 +00:00
Yves Rizoud
7f3fd42f77 Started implementing generic 'List' controls. Currently in Text window, it's WIP, misses the initial display, no kb shortcuts, and untested with lists smaller than display area.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@878 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-17 23:49:56 +00:00
Yves Rizoud
1910a39fd4 Gui skins: Added memory checks and correctness
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@877 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-17 19:38:55 +00:00
Yves Rizoud
1c53b5dd7f GUI skins: fixes INI ascending compatibility
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@876 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-17 19:23:41 +00:00
Yves Rizoud
3b417545b2 Merged in the fix of Issue 180 from trunk r874
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@875 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-17 19:16:03 +00:00
Yves Rizoud
cc4e60954f Fix issue 180: Quicksearch filenames and brush resize shortcuts don't work
git-svn-id: svn://pulkomandy.tk/GrafX2/branches/release@874 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-17 18:28:41 +00:00
Adrien Destugues
a219287e23 Typo. Sorry !
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@873 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-17 16:09:24 +00:00
Adrien Destugues
51bcccce47 Yay ! A 10 hours trip in the train is good for my opensource productivity :)
- Moved font and cursor choice to the skin window instead of settings
- Changed them to use dropdown instead of buttons
- Save the config includintg the chosen skin (i had to wildly hack the save routine to allow '.' as a character in a string in the inifile... check if it's ok please)
- Renamed 00.rgb.studios to "the Peach", as they seem to be the same person :) in the help/bugfinders
- Wrote a little help for the skins window
- Some other random tweakings i already forgot.


git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@872 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-17 15:11:32 +00:00
Yves Rizoud
1b2fa69f6a GUi skin elements are allocated on the heap
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@871 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-16 19:43:37 +00:00
Adrien Destugues
62738a1526 Begin of work on the file selector.
Quite ugly, i tried to reuse code from the other fileselectors, but I failed.

Basically, it works, but we can improve it a lot.


git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@870 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-15 21:43:21 +00:00
Adrien Destugues
aff6fe50b2 -Renomed skins. "base" becomes "classic", "ilkke" becomes "modern" (as I heard Ilkke is working on yet another skin...).
-Converted them to png (base was a .gif but this is a bad format :))
-Changed dates in the splash screen to say coyright 2007-2009.


git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@869 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-15 20:09:57 +00:00
Yves Rizoud
2189d00ec4 Merged buttons 'Grad rectangle' and 'Gradient menu' (issue 107)
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@868 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-15 19:53:12 +00:00
Yves Rizoud
04ff11c4d9 Fixed typo in previous commit
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@867 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-15 18:46:23 +00:00
Yves Rizoud
dad7e3d363 Help for the quick translucency shortcuts. Fix a bug in Help where a hotkey highlight was on wrong position if an escaped character preceded it (The case never occured in 2.0)
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@866 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-15 18:41:36 +00:00
Yves Rizoud
69dbed8d04 Fix default shortcuts from previous commit (in code). Implemented user-definable mouse-click speed and double-keypress speed.
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@865 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-14 20:15:20 +00:00
Yves Rizoud
8478d29373 Quick shortcuts for numeric transparency levels (Issue 154) (defaults 1-9 and 0). Shortcut for all effects off (default shift-E)
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@864 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-14 19:48:03 +00:00
Yves Rizoud
fb05f785bd (Dev) Makefile: File names from 'make ziprelease' are now grafx2-2.1wip862-win32.zip if label is '2.1wip', and grafx2-2.1.862-win32.zip if label is '2.1'
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@863 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-14 18:22:29 +00:00
Yves Rizoud
7cb2519e2a (Dev) "trunk" is now labelled "2.1 wip". Makefile: "make ziprelease" now automatically names archives according to the version label from pversion.c
git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@862 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-12 21:15:46 +00:00
Yves Rizoud
daa38a37fb Creating a branch for maintenance of the latest release
git-svn-id: svn://pulkomandy.tk/GrafX2/branches/release@861 416bcca6-2ee7-4201-b75f-2eb2f807beb1
2009-06-12 18:48:28 +00:00