Commit Graph

167 Commits

Author SHA1 Message Date
Bruno Minervino 882be286d9 Update copyright year for 2017 2017-01-13 08:47:07 -02:00
Ranieri Althoff 2f1f62a916
Update copyright year for 2016 2016-07-09 22:11:34 -03:00
Gabriel Pedro 04b516a1a0 Update copyright for 2015 2015-03-04 10:36:51 -04:00
BenDol a02c091376 Fix stop crashing with UIWidget::moveChildToIndex. 2014-04-04 11:33:17 +13:00
BenDol 547b18db9a Update copyright for 2014 2014-04-01 18:36:42 +13:00
conde2 4dcb30110f Use of clamp 2013-12-01 00:48:36 -02:00
conde2 ca2fe9cf45 Fix compilation under MSVC
Use template for std::min and std::max
2013-11-30 23:08:43 -02:00
Eduardo Bart b43a196eac Minor fixes and add auto resize for images 2013-03-15 21:59:22 -03:00
Eduardo Bart 9a54bfcc90 Minimap, hotkeys and lot of other changes
* Begin working on a new layout system for UIMinimap and later UIMap,
this new layout system allows to add widgets to the minimap
* Add option to disable motd
* Rework hotkey binding
* Lots of fixes in hotkeys manager
* Add fullmap view using Ctrl+Shift+M
* Prevent some crashs in ThingType draw
* Add function to load minimap from PNG files
* Fixes in minimap saving
* Fixes in Tile::isClickable
* Add UIMapAnchorLayout, new layout for maps
* Fix freezes in win32 when pressing alt key
2013-02-21 17:03:05 -03:00
Eduardo Bart cf77df05ca Fix possible leaks in stdext::format 2013-02-05 20:00:28 -02:00
Eduardo Bart 1bf77c35c6 Fix some minor bugs in widgets events 2013-01-31 00:21:39 -02:00
Eduardo Bart 4b1db2bcd6 Fix #235 and other changes 2013-01-26 18:40:03 -02:00
Eduardo Bart 4f8f02acad Rework auto focus behavior, closes #222 2013-01-26 17:06:25 -02:00
Eduardo Bart 27d5506262 Some fixes in entergame and widget clipping 2013-01-22 19:48:25 -02:00
Eduardo Bart c28596292f Text selection in chat
* Remove fancy stuff from background
* Improve text windows
* More improvements to textedit
2013-01-20 13:40:40 -02:00
Eduardo Bart f389c3b3fe Widgets can now rotate :O 2013-01-19 14:44:07 -02:00
Eduardo Bart 5344a179a4 Many UI improvements and minor fixes 2013-01-08 18:01:47 -02:00
Eduardo Bart 122577a916 Just rename some files
* Fix a server ping issue
2013-01-08 16:32:05 -02:00
Henrique Santiago 2142ee765d Fix issue #21, but miniwindows can be a lot smarter 2012-08-21 02:35:20 -03:00
Henrique Santiago 4d2bd54f6b Fixed #12 #28 #51 issues 2012-08-17 18:37:11 -03:00
Eduardo Bart 54f4e2b801 Fix console error 2012-08-06 20:54:56 -03:00
Eduardo Bart ec1d5aa260 Minor changes
Update hovered widget when moving widget
Remove lockWalk from g_game.follow()
2012-08-03 03:16:14 -03:00
Eduardo Bart 3bac3dcbb4 Rework stdext classes
Implement new classes:
* stdext::any => ligher replacement for boost::any
* stdext::packed_any => like any but optimized to use less memory
* stdext::shared_object => ligher replacement for std::shared_ptr
* stdext::shared_object_ptr => replacement for boost::intrusive_ptr
* stdext::fast_storage => for storing dynamic data
* stdext::packed_storage => same but with less memory
* stdext::packed_vector => std::vector with less memory

Compiling should be a little faster now because global boost including
is not needed anymore
2012-08-01 09:23:35 -03:00
Eduardo Bart 614d1544c0 Fix market reload and a crash when exiting 2012-07-31 11:42:26 -03:00
Eduardo Bart 59b6abfa09 Implement message modes for 9.6
Fix possible crash when closing otclient
Fix private messages
Fix messages in 9.6
2012-07-30 09:33:52 -03:00
Eduardo Bart e0431021b5 Huge engine change, replace all std::shared_ptrs
Create a new shared pointer type stdext::shared_object_ptr and stdext::shared_obj
using boost::intrusive_ptr

Advantages:
 * half memory usage
 * faster and lightweight

Disadvantages:
 * using weak_ptr is not supported anymore
 * compiling seems slower
2012-07-29 00:34:40 -03:00
Eduardo Bart 497902736c Enable widget debugging 2012-07-28 08:43:48 -03:00
Eduardo Bart c795eb91ab More multiprotocol support 2012-07-26 03:10:28 -03:00
Eduardo Bart 98c4240446 Changes for the mapeditor 2012-07-15 03:17:31 -03:00
Eduardo Bart e3298d561c Rework application class and framework
Make otclient's framework flexible enough to run console apps like
servers, so this mean is possible to build otclient versions without
graphical interface and use it's framework to code servers
2012-07-13 22:23:11 -03:00
Eduardo Bart 98a1b611bf Refactor for documentation 2012-06-25 19:19:17 -03:00
Henrique Santiago a7c17cec2e Save miniwindows states 2012-06-21 16:31:36 -03:00
Eduardo Bart 8761220deb Refactoring and flexibility changes
* Split game module into game and game_interface
* Move core_lib to corelib
* Move miniwindow to corelib
* Introduce init.lua script for initializing the client, giving much more flexibility
* OTClient is no longer Application derived and is much simpler
2012-06-19 21:16:52 -03:00
Eduardo Bart 1c7bbaea89 Fix memory leaks
* Fix recursive reference memory leak in UIWidget
* Make Event/ScheduledEvent memory-leak safe
* Fix exit crashs by freeing graphics resources before destroying GL context
* Add many asserts to avoid any leak regression
2012-06-18 05:13:52 -03:00
Eduardo Bart 10b33c6124 Compile with clang and add cotire
* Add cotire cmake module to speedup compilation https://github.com/sakra/cotire
* Fix clang error and warnings
* Rename Font to BitmapFont to fix conflict with Xlib.g Font typedef
* Remove legacy PCH support
* Improve Position hash
2012-06-16 20:20:22 -03:00
Eduardo Bart 8cef6463b3 improve miniwindow moving 2012-06-11 11:10:03 -03:00
Eduardo Bart 1a7f2a44fc graphics fixes and improvements 2012-06-08 21:40:41 -03:00
Eduardo Bart 257f652bb7 more opengl graphics fixes 2012-06-02 15:58:30 -03:00
Eduardo Bart 59a80ffaf9 scroll when focusing widgets 2012-06-01 21:38:26 -03:00
Eduardo Bart 14db1066fc change logger 2012-06-01 17:39:23 -03:00
Eduardo Bart bd2faabe99 graphics optimization feature inspirated by diablo3 engine
* the rendering now consits of two panes
- the background pane (for animated stuff like the map)
- the foreground pane (for steady stuff, like UI)
each pane has it own max FPS and works idependently
this may increase graphics performance on many platforms
2012-06-01 16:39:09 -03:00
Eduardo Bart c01b32b032 rework log function and protocol
* remove some protocol ifdefs, replace with game features system
2012-05-28 19:04:44 -03:00
Eduardo Bart 4c80d783d6 rewrite and reoganize tools functions
* create stdext namespace which contains additional C++ algorithms
* organize stdext in string, math, cast and exception utilities
2012-05-28 10:06:26 -03:00
Eduardo Bart beaba25af1 UI tweaks 2012-04-30 16:30:37 -03:00
Eduardo Bart 3f689e0edf optimize UIWidget for largers NPC trades 2012-04-30 03:34:29 -03:00
Eduardo Bart fae2cc6481 new scripting functionality
* dofiles functions to run all scripts inside a directory
* new style option ! that evaluates its value from a lua code
2012-04-26 12:11:03 -03:00
Eduardo Bart 58d76e255d begin implementing OpenGL 1.0 engine
* option to pass -opengl1 or -opengl2 as argument
* note that with this commit there are a lot of graphics regressions and the master will remaing unstable for a while
* shaders disabled for a while
2012-04-18 20:03:43 -03:00
Eduardo Bart 1d2f6c7e9f enable text-auto-resize for width 2012-04-10 23:59:05 -03:00
Eduardo Bart 5425d344ba optimize widget destruction 2012-04-09 17:53:45 -03:00
Eduardo Bart 2e43a77d64 change mouse press behaviour 2012-04-07 00:37:29 -03:00