summaryrefslogblamecommitdiff
path: root/src/lib/ector/ector_surface.eo
blob: 67a4813368a76bc23b5bdcacd4fec0c518ed68c9 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                              
 

                                  
                           
              
            
                                 
                                                                                
                            

                 

                                                        
          
       
                                          
                                                             
                                                                                                                             
                 
                                                                                                            
          
       









                                                         
    
 
mixin @beta Ector.Surface extends Ector.Buffer
{
   [[Surface interface for Ector]]

   c_prefix: ector_surface;
   data: null;
   methods {
      @property reference_point {
         [[This defines where (0,0) is in pixel coordinates inside the surface]]
         set @pure_virtual {
         }
         values {
            x: int; [[X coordinate for reference point]]
            y: int; [[Y coordinate for reference point]]
         }
      }
      renderer_factory_new @pure_virtual {
         [[Create a new renderer factory for the given type]]
         return: Efl.Object; [[Renderer factory object]] /* FIXME: Should be a more restricted type, only here for cyclic. */
         params {
            @in type: const(Efl.Class); [[Efl class]] /* FIXME: Should probably be a more restricted type */
         }
      }
      draw_image @pure_virtual {
         [[ Draw image's buffer to surface buffer. ]]
         params {
            @in image: Ector.Buffer; [[Image buffer]]
            @in x: int; [[Buffer position x]]
            @in y: int; [[Buffer position y]]
            @in alpha: int; [[Buffer alpha value]]
         }
         return: bool; [[True if drawing was successful]]
      }
   }
}