First IDL proposal



Well, here you have my first proposal to the gdareport's IDL.

It's only a skeleton, it isn't ended.

As you could see, it's very similar to the report's DTD.

Please feel free to ask me about it :-)

Thanks in advance.

P.S.: Rodrigo, should i upload it into libgda's cvs module although it's
unfinished?

Bye
-- 

Carlos Perell&#-31; Mar&#-54;n
carlos hispalinux es
http://TorresQuevedo.hispalinux.es
http://nulies.hispalinux.es
http://www.Hispalinux.es
Valencia - Espa&#-54;a


Y tu, ya has Evolucionado?, p&#-31;sate a Evolution :-)
/*
 * GdaReport module CORBA interface
 *
 * Author:
 *   Carlos Perelló Marín (carlos hispalinux es)
 *
 * (C) 2000 Carlos Perelló Marín <carlos hispalinux es>
 */

#include <Bonobo.idl>

module GNOME {

	module GDA {

  	module Report {
			enum PositionFreq {
			  FIRST,
        INSIDE,
        LAST,
        ALLBUTFIRST,
        ALLBUTLAST,
        FIRSTANDLAST,
        ALL
   		};
   		
   		enum PageFreq {
			  EVEN,
        ODD,
        ALL
   		};
   		
   		enum LineStyle {
			  NONE,
        SOLID,
        DASH,
        DOT,
        DASHDOT,
        DASHDOTDOT
   		};
   		
   		enum FontWeight {
			  LIGHT,
        NORMAL,
        SEMIBOLD,
        BOLD,
        BLACK
   		};
   		
   		enum HAlignment {
			  STANDARD,
        LEFT,
        CENTER,
        RIGHT
   		};
   		
   		enum VAlignment {
			  TOP,
        CENTER,
        BOTTOM
   		};

   		enum Size {
			  CUT,
        SCALE
   		};
   		
   		enum Ratio {
			  FIXED,
        FLOAT
   		};
   		
   		enum Source {
			  INTERN,
        EXTERN
   		};
   		
   		enum PageSize {
        A3,
        A4,
        A5,
        A6,
        B3,
        B4,
        B5,
        B6,
        LETTER,
        LEGAL,
        EXECUTIVE
      }
      
      enum Orientation {
        PORTRAIT,
        LANDSCAPE
      }
      
      enum Units {
        INCH,
        CM,
        PT
      }
      
   		typedef octect Color[3];

		  interface ReportEngine : Bonobo::Unknown {
        attribute PageSize pagesize;
        attribute Orientation orientation;
        attribute Units units;
        attribute long topmargin;
        attribute long bottommargin;
        attribute long leftmargin;
        attribute long rightmargin;
        attribute Color bgcolor;
        attribute Color fgcolor;
        attribute Color bordercolor;
        attribute long borderwidth;
        attribute LineStyle borderstyle;
        attribute string fontfamily;
        attribute short fontsize;
        attribute FontWeight fontweight;
        attribute boolean fontitalic;
        attribute HAlignment halignment;
        attribute VAlignment valignment;
        attribute boolean wordwrap;
        attribute Color negvaluecolor;
        attribute string dateformat;
        attribute short precision;
        attribute string currency;
        attribute boolean commaseparator;
        attribute long linewidth;
        attribute Color linecolor;
        attribute LineStyle linestyle;
      };

		  interface LineObject : Bonobo::Unknown {
		    attribute long x1;
		    attribute long y1;
    		attribute long y1;
    		attribute long y2;
    		attribute long linewidth;
    		attribute long lineheight;
    		attribute Color linecolor;
    		attribute LineStyle linestyle;
    	};
    	
    	interface PictureObject : Bonobo::Unknown {
		    attribute long x;
		    attribute long y;
    		attribute long width;
    		attribute long height;
    		attribute Size size;
    		attribute Ratio aspectratio;
    		attribute string format;
        attribute Source source;
    		attribute string data;
    	};
    		
  		interface ReportObject : Bonobo::Unknown {
  		  attribute long x;
        attribute long y;
        attribute long width;
        attribute long height;
        attribute Color bgcolor;
        attribute Color fgcolor;
        attribute Color bordercolor;
        attribute long borderwidth;
        attribute LineStyle borderStyle;

        void setGeometry (long x, long y, long width, long height);
        void move (long x, long y);
		  };

  		interface TextObject : ReportObject {
        attribute string fontfamily;
        attribute short fontsize;
        attribute FontWeight fontweight;
        attribute boolean fontitalic;
        attribute HAlignment halignment;
        attribute vAlignment valignment;
        attribute boolean wordwrap;
  	  };

  		interface LabelObject : TextObject {
  		  attribute string text;
  	  };

  		interface SpecialObject : LabelObject {
        attribute string dateformat;        
  	  };
  	  
  	  interface RepFieldObject : TextObject {
  		  attribute string query;
        attribute string value;
        attribute string datatype;  // I don't know which type of date we must assign it
        attribute string dateformat;
        attribute unsigned short precision;
        attribute string currency;
        attribute Color negvaluecolor;
        attribute boolean commaseparator;
  	  };

	};
};



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]