aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* utils/colors: move colors into subdir, add hsvAlexander Sulfrian2014-04-0814-52/+450
| | | | | | | All color classes are now in an own subdirectory with a short name. The new class HsvColor represents the Hue/Saturation/Value color model and comes with conversion functions to and from rgb colors (currently integer arithmetic without optimization for higher presicion).
* menu/timer: use base/timestampAlexander Sulfrian2013-01-213-15/+9
|
* utils/activator: removed unnecessary templateAlexander Sulfrian2013-01-214-18/+51
|
* test/menu/application: add some application testsAlexander Sulfrian2013-01-211-0/+83
|
* menu/application: add is_runningAlexander Sulfrian2013-01-212-0/+7
|
* menu/application: add quit() to quit the app from everywhereAlexander Sulfrian2013-01-212-5/+11
|
* menu/application: add free to allow multiple runsAlexander Sulfrian2013-01-213-1/+9
| | | | | | free() is used to reset the instance of this singleton, so that it gets recreated on the next access. This allows multiple creation/deletion cycles (for example in the tests).
* test/base/timestamp: some timestamp testsAlexander Sulfrian2013-01-211-0/+68
|
* menu/text: check error state firstAlexander Sulfrian2013-01-211-2/+1
|
* base/time: use float value to force float resultAlexander Sulfrian2013-01-211-1/+1
|
* menu/drawable_control: add signals for mouse eventsAlexander Sulfrian2013-01-202-0/+18
|
* fix includesAlexander Sulfrian2013-01-2020-11/+56
|
* Merge remote-tracking branch 'origin/cpp' into cppAlexander Sulfrian2013-01-201-0/+1
|\ | | | | | | | | * origin/cpp: menu/control: add include to fix build for gcc 4.6
| * menu/control: add include to fix build for gcc 4.6Robin Nehls2013-01-181-0/+1
| |
* | menu/drawable_control: add static member for debug boxesAlexander Sulfrian2013-01-202-6/+21
| |
* | menu/drawable_control: fix focus with clippingAlexander Sulfrian2013-01-201-0/+1
| |
* | menu: add mouse manager for handling mouse focus and clicksAlexander Sulfrian2013-01-185-0/+246
| |
* | menu/mouse_event: add wrapper for mouse events to detect dbl-clicksAlexander Sulfrian2013-01-182-0/+143
| |
* | menu: add get_component_at to get componentAlexander Sulfrian2013-01-184-0/+49
|/ | | | This is the basis for mouse focus handling.
* menu/application: toggle debug boxes with dAlexander Sulfrian2013-01-181-0/+5
|
* drawable_control: add focusable propertyAlexander Sulfrian2013-01-183-2/+21
| | | | drawable controls could now disable the ability to receive focus
* text: resize text, if auto_size is enabledAlexander Sulfrian2013-01-181-2/+4
| | | | | Change the default for auto_size to false, so that it is not automatically resized during construction.
* rectangle: add possibility to get dimensionAlexander Sulfrian2013-01-181-0/+5
|
* menu/container: add window_coords_changeAlexander Sulfrian2013-01-182-2/+30
| | | | | | The children container of a container have to be notified if the window coordinates of the parent changed. The children have to recalculate their own window coordinates.
* menu/static: remove empty lineAlexander Sulfrian2013-01-181-1/+0
|
* menu/static: add getter for vertices_countAlexander Sulfrian2013-01-182-0/+6
|
* utils/rectangle: add is_in(Point)Alexander Sulfrian2013-01-181-0/+15
| | | | Add possibility to check whether a Point is inside the rectangle.
* utils/rectangle: add + and =+ operator to move rectangleAlexander Sulfrian2013-01-181-0/+19
| | | | | Points could be added to rectangles and moves the rectangle by this amount.
* utils/rectangle: add set_leftAlexander Sulfrian2013-01-181-0/+7
|
* menu: mouse events now take points, not the single coordsAlexander Sulfrian2013-01-184-16/+18
|
* base/timestamp: add class to store a point of timeAlexander Sulfrian2013-01-182-0/+108
|
* base/time: make get_time static, constructor protectedAlexander Sulfrian2013-01-182-3/+18
| | | | | | The Time class does not have any state so the get_time method could be static. Because the Time class now has only static methods, deny creation by making the ctor protected.
* base/time: removed unused RelativeTimerAlexander Sulfrian2013-01-182-110/+0
|
* menu: fix calculate window coordinatesAlexander Sulfrian2013-01-184-4/+15
|
* menu/software_mouse_pointer: implement pressed stateAlexander Sulfrian2013-01-132-4/+65
|
* menu/event_manager: add more mouse eventsAlexander Sulfrian2013-01-134-3/+13
|
* menu/background_*: vertices are only recalculated if the size changedAlexander Sulfrian2013-01-134-20/+66
| | | | | | The size of the parent component is cached by the backgrounds and the vertices to draw the backgrounds are only calculated again, if the size of the parent component changed.
* menu/background_image: remove the unused texture colorAlexander Sulfrian2013-01-132-6/+1
|
* menu/texture: implement GlDelayedAllocation interfaceAlexander Sulfrian2013-01-136-45/+58
| | | | | Textures are now initialized during their first use, destroyed after their last used and could be use with the Activator.
* utils/image: add shortcut to get image size as DimensionAlexander Sulfrian2013-01-132-0/+8
|
* add const where applicableAlexander Sulfrian2013-01-134-14/+22
|
* menu/background: use boost::noncopyableAlexander Sulfrian2013-01-131-10/+7
|
* menu/gl_delayed_allocation: add helper for opengl allocationAlexander Sulfrian2013-01-132-0/+159
| | | | | | | | | | | | opengl allocation could not be done in the constructor of the opengl objects. The opengl calls only have effect when called form the opengl thread, but the objects could be constructed from other threads. The analogous applies to the destruction. This helper handles the allocation on first use from the opengl thread and frees the resources while calling dispose before real destruction (see Disposable). If dispose is called from the opengl thread, it frees the resources immediately, but if dispose is called from another thread it waits (blocks) until the next use from the opengl thread is complete.
* utils: add disposer helperAlexander Sulfrian2013-01-133-0/+158
| | | | | | | | | The disposer helper should be used to encapsulate disposable objects. This objects have to cleanup something before deconstruction and so you need to help dispose before destruction of the object. The disposer takes care for you. On destruction of the disposer, it calls dispose of the encapsulated object and then destroy it, too. So you do not need to remember to call dispose manually.
* utils: add activator helperAlexander Sulfrian2013-01-132-0/+93
| | | | | | | | | The activator should be used to encapsulate activatable objects. It calls enable on construction and disable on deconstruction. It should be used for example to enable some opengl settings, while the activator object is used in local scope. It ensures, that the opengl setting get disabled, if the scope is left even when throwing an exception.
* menu: add some commentsAlexander Sulfrian2013-01-136-6/+61
|
* utils/dimension: add == and != operatorsAlexander Sulfrian2013-01-131-8/+11
|
* menu/application: add possibility to query if ogl threadAlexander Sulfrian2013-01-132-0/+11
| | | | | | | opengl calls should only executed in the thread, that created the opengl context. To query whether the current thread is the opengl thread, the application class stores the current thread id of the opengl thread after initializing opengl.
* menu: use RgbColor.get_array(?) magic everywhereAlexander Sulfrian2013-01-136-65/+13
|
* menu/text: basic handling of auto sizeAlexander Sulfrian2013-01-132-0/+18
| | | | | | | | | If auto_size is false the control is setup clipping, so that the outside parts of the control gets discarded. If auto_size enable, the drawn parts outside the component rectangle are drawn. TODO: currently the component dost not really change its size. This could be necessary for sensible regions.