Commit Graph

3658 Commits

Author SHA1 Message Date
Felipe Magno de Almeida 30df128be5 eldbus-cxx: Implementation of eldbus C++ API
Summary:
Applications can:

  void method_callback(void* data, const Eldbus_Service_Interface* iface,
                       const Eldbus_Message* message);
  struct { ... } data_struct;

  Eldbus_Method methods[] =
   {
     "method1", ELDBUS_ARGS("b", "bool"), ELDBUS_ARGS("b", "bool"), ELDBUS_METHOD_FLAG_HAS_DATA
     , (Eldbus_Method_Cb)&method_callback, &data_struct
   };

   And method_callback will be called with data parameter pointing to data_struct global object.

Also, Eldbus-cxx supports registering an interface passing a lambda or
function object as method. For example:

  edb::service_interface iface = edb::service_interface_register
    (c, path, interface
     , es::method("SendStringAndBool"
                  , [expected_string, expected_bool] (std::string const& n, bool b
                                                      , bool* out)
                  {
                    std::cout << "Running SendStringAndBool" << std::endl;
                    ck_assert(n == expected_string);
                    ck_assert(b == expected_bool);
                    *out = b;
                    return n;
                  }
                  , es::ins<std::string, bool>("string", "bool")
                  , es::outs<std::string, bool>("string", "bool")
                  )
    );

When a request for "SendStringAndBool" with the proper signature is
called, executes the lambda and replies with the return value and
its bool* out parameter value.

Reviewers: cedric, woohyun, raster

CC: savio, cedric

Differential Revision: https://phab.enlightenment.org/D1052
2014-07-03 16:28:23 +09:00
Igor Gala ddac21534f edje: Edje-Edit: edje_edit_state_map_perspective_xet()
Summary:
There are new 'get and set' API for block 'map'.
Those functions return or set  part's name which is used as 'perspective point'
for giving a part '3d look'.
@feature

Reviewers: seoz, cedric, raster, Hermet

CC: reutskiy.v.v, cedric

Differential Revision: https://phab.enlightenment.org/D1047
2014-07-03 16:23:15 +09:00
Jean-Philippe Andre b0df307927 Evas gl: Add support for S3TC textures
Add support for DXT1, DXT3 and DXT5 textures (4 formats in total).

@feature Add support for S3TC textures if the GPU supports them
2014-07-03 15:36:22 +09:00
Jean-Philippe Andre c424153867 Evas: Add DDS image file loader
@feature: Add a Micrsoft DirectDraw Surface file loader
2014-07-03 11:37:48 +09:00
Jean-Philippe Andre e239f8f4de Evas loaders: Add new format definitions for S3TC 2014-07-03 11:37:48 +09:00
Jean-Philippe Andre a2de0a0bc9 Evas: Support duplicated borders in surface alloc
Now, the evas loader is supposed to advertise the actual border
size in case of compressed texture formats.

The only case where the border was non zero was ETC formats,
from the TGV loader, so I think we don't need to keep the
previous behaviour (auto-calculate borders for ETC).
2014-07-03 11:37:48 +09:00
Jean-Philippe Andre 2b191b3c51 Evas loader: Introduce border param 2014-07-03 11:37:47 +09:00
Daniel Kolesa 8c80b1a7f4 eolian: rename the log domain 2014-07-03 01:50:47 +01:00
Daniel Kolesa a621692fdd eolian: use eina logging for error messages 2014-07-03 01:48:00 +01:00
Daniel Kolesa 61da74bc42 eolian: print error line with a caret 2014-07-03 00:30:39 +01:00
Daniel Kolesa 8d902a4820 eolian: keep track of column better 2014-07-03 00:14:28 +01:00
Daniel Kolesa 55e5e71593 eolian: use eina API 2014-07-03 00:05:16 +01:00
Daniel Kolesa 08a669f08b eolian: show column information when matching balanced braces 2014-07-03 00:05:16 +01:00
Daniel Kolesa 7d46c921cb eolian: column information in error messages 2014-07-02 23:39:44 +01:00
Carsten Haitzler 8edc879cc2 remove edje file changed monitoring as it's nothing but a bug vector
so this has to go. reloading edje files is nothing but trouble.
example - if you update your os your theme files get updated and then
all sorts of stuff goes wrong. jeff is right. this makes it an
intractible problem. we have an open file handle on the edj file. we
share that anre reuse it via eina_file - keep it. this keeps tyhe edje
file stable and consistant.

<Jef91> Elementary applications freak the fuck out
<Jef91> if you change the theme file
<Jef91> that they are using
<Jef91> SeoZ,
http://forums.bodhilinux.com/index.php?/topic/10629-eepdater-display-issue/
<Jef91> that happens when my theme file that is in use changes

we will get nothing but continued issues and complains if we keep
doing this. it's a fairly pointless mis-feature. thank god its got no
apis - just signals and internals.
2014-07-02 11:28:42 +09:00
Daniel Kolesa f12b36e1c1 eolian: some dirty janitoring 2014-07-01 18:25:17 +01:00
Daniel Kolesa 8c44810525 eolian: keep the struct keyword in the regular type name 2014-07-01 18:03:20 +01:00
Daniel Kolesa 0cc319a5b2 eolian: restrict own() for pointers only 2014-07-01 17:55:34 +01:00
Chris Michael e1e8859aa0 ecore-drm: Fix formatting from a7428edeb4
Fix horrible formatting before it gets too far...
Bad Stefan, no cookie ;)

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-07-01 10:59:31 -04:00
Stefan Schmidt a7428edeb4 ecore_drm: Check for currently used CRTC first before searching others
If we have a CRTC already configured save the work to search for a new
crtc and encoder combination that works with this connector. Just use what
we have.

Also always check if the CRTC is already allocated for a different connection
before using it.
2014-07-01 15:10:00 +02:00
Carsten Haitzler 64d54ed964 fix tabe/whitespace format issues in evas module 2014-07-01 20:25:04 +09:00
Carsten Haitzler ae63d023dd fix static jpeg saver usage due to defines being removed from config.h 2014-07-01 20:22:42 +09:00
Carsten Haitzler 12dc40fa3b formatting - convert tabs to whitespace 2014-07-01 19:57:04 +09:00
Carsten Haitzler 007dd02c56 ecore_x - add some minor calls to be able to suspend/resume screensaver 2014-07-01 19:40:26 +09:00
Carsten Haitzler eeb66d4d32 update po files 2014-07-01 19:40:26 +09:00
Carsten Haitzler d43c8eb4dd edje - fix self feed complaint to be an ERR so we see it 2014-07-01 19:40:26 +09:00
Savio Sena ce63b16f40 eolian-cxx: Make proper handling of namespaces.
Summary:
The generation of class prefixes was not taking into account the full
classname -- the namespace was not being prepended to it. Fixed that and
also re-organized the code a bit, removed some Wshadow warnings also.

This commit fixes 'make examples' and 'make check'.

Reviewers: tasn, cedric, q66

CC: felipealmeida, smohanty, cedric

Differential Revision: https://phab.enlightenment.org/D1100
2014-07-01 10:55:45 +01:00
Olivier Guiter 86aa034379 core_fb: Fix crash on tablet with removable kbd
On tablet with removable keyboard (e.g.: T100), as the FB support
in ecore is very limited, the lib crashes when you remove the kbd.
This patch disabled gracefully a "not anymore present" keyboard...

Signed-off-by: Olivier Guiter <olivier.guiter@linux.intel.com>
2014-06-30 19:55:40 -03:00
Daniel Kolesa e5e6d8f1f2 eolian: also allow void in @out params 2014-06-30 23:21:36 +01:00
Daniel Kolesa 8d0649ef0b eolian: remove superfluous macros 2014-06-30 23:17:05 +01:00
Daniel Kolesa 154a407bf2 eolian: allow void return in getter accessors (to force the return to be an out param) 2014-06-30 23:13:04 +01:00
Daniel Kolesa 39aad55991 eolian: support for void as separate type type 2014-06-30 23:07:32 +01:00
Daniel Kolesa d5f4af5e61 eolian: different syntax for functions (func ret_type (arg_types)) 2014-06-30 22:07:13 +01:00
Daniel Kolesa d2fb3c5cb0 eolian: function type parsing 2014-06-30 21:52:57 +01:00
Daniel Kolesa 14a85859c5 eolian: _CLASS -> _CLASS/INTERFACE/MIXIN 2014-06-30 21:29:50 +01:00
Daniel Kolesa c05493b480 eolian-cxx: Added namespaces and more (see below)
Implemented namespaces
Added eolian_wrappers.hh with C++ code wrapping Eolain API
Changed eolian_cxx program options. Now they're eolian_gen's
Added functions to safe_str.hh (safe_lower, safe_upper, normalize_spaces, path_base)
Added a mocked version of type_lookup.hh in advance. The full
version will come as soon as complex-types are added.

Made apply again by Daniel Kolesa, original implementation by Savio Sena.
2014-06-30 19:35:06 +01:00
Tom Hacohen bd41cfe9ea Evas: Fix object_top_at_pointer_get().
I accidentally changed that function in a previous commit.

Thanks to davemds for reporting.
2014-06-30 19:31:07 +01:00
Daniel Kolesa c8e2e8d48a eolian: @own -> own 2014-06-30 18:10:29 +01:00
Tom Hacohen 14ce09686a Evas object eolian: Fix namespace. 2014-06-30 17:47:07 +01:00
Tom Hacohen 25ef15dedc Evas object smart eolian: Update namespace. 2014-06-30 17:47:07 +01:00
Tom Hacohen 37bc841fcc Evas smart clipped eolian: Update namespace. 2014-06-30 17:47:07 +01:00
Tom Hacohen 896ef1a588 Evas eolian: Fix namespace for many more classes. 2014-06-30 17:47:06 +01:00
Tom Hacohen 7f3a44894b Evas canvas eolian: Fix namespace and class name for the evas canvas. 2014-06-30 17:47:06 +01:00
Tom Hacohen aa450fa8dd Edje eolian: Fix namespaces for all of the edje classes. 2014-06-30 17:47:06 +01:00
Tom Hacohen e4123fda30 Ecore eolian: Fix namespaces for all of the ecore classes. 2014-06-30 17:47:06 +01:00
Tom Hacohen ac922d02e5 Eo abstract class: Fix namespace. 2014-06-30 17:47:06 +01:00
Tom Hacohen c19948c2cf Eo (base class): Fix .eo file to have proper namespacing for the class naem. 2014-06-30 17:47:06 +01:00
Daniel Kolesa e84275cc37 eolian: make tests pass 2014-06-30 17:20:39 +01:00
Daniel Kolesa 7b54a0101c eolian: new type API
This new API supports function pointer types, multiple type subtypes, const attribute without parsing
the name string, own attribute for any partial type and more. This commit also updates the C and C++
generators so that they compile and generate correct code.

@feature
2014-06-30 17:20:39 +01:00
Daniel Kolesa 70347cb7d7 eolian: preparation for new type API 2014-06-30 17:20:39 +01:00