Description
A 
Gtk_Plot_Canvas is a special kind of drawing area used with Gtk_Plot
widgets.
It provides drag-and-drop capabilities for the texts, legends, points...
available in a Gtk_Plot.
Note that this widget is specifically designed for Gtk_Plot widgets, and
won't provide any other capability for other kinds of widgets.
Like any child of Gtk_Layout, this widget can have an almost unlimited
size for its children, and provides scrolling.
  
  
  
  
   Types
   
     - 
         type Gtk_Plot_Canvas is access all Gtk_Plot_Canvas_Record'Class; 
- 
         type Gtk_Plot_Canvas_Child is access all Gtk_Plot_Canvas_Child_Record'Class; 
- 
         
         
- 
         
         
- 
         type Plot_Canvas_Action is
     (Action_Inactive,
      Action_Selection,
      Action_Drag,
      Action_Resize); 
- 
         type Plot_Canvas_Flag is new Gint; 
- 
         type Plot_Canvas_Pos is
     (Canvas_Out,
      Canvas_In,
      Canvas_Left,
      Canvas_Right,
      Canvas_Top,
      Canvas_Bottom,
      Canvas_Top_Left,
      Canvas_Top_Right,
      Canvas_Bottom_Left,
      Canvas_Bottom_Right); 
- 
         type Plot_Canvas_Selection is
     (Select_None,
      Select_Markers,
      Select_Target); 
- 
         type Plot_Canvas_Selection_Mode is
     (Select_Click_1,
      Select_Click_2); 
  
   
   
  
   Subprograms
   
  
  Creating and manipulating the canvas
  
     - 
procedure Gtk_New
  (Widget        : out Gtk_Plot_Canvas;
   Width         : Gint;
   Height        : Gint;
   Magnification : Gdouble := 1.0); 
- 
procedure Initialize
  (Widget        : access Gtk_Plot_Canvas_Record'Class;
   Width         : Gint;
   Height        : Gint;
   Magnification : Gdouble := 1.0); 
- 
- 
- 
procedure Refresh (Canvas : access Gtk_Plot_Canvas_Record); 
- 
procedure Paint (Canvas : access Gtk_Plot_Canvas_Record); 
- 
procedure Freeze (Canvas : access Gtk_Plot_Canvas_Record); 
- 
procedure Thaw (Canvas : access Gtk_Plot_Canvas_Record); 
- 
procedure Grid_Set_Visible
  (Canvas  : access Gtk_Plot_Canvas_Record;
   Visible : Boolean); 
- 
procedure Grid_Set_Step
  (Canvas : access Gtk_Plot_Canvas_Record;
   Step   : Gdouble); 
- 
- 
procedure Cancel_Action (Plot_Canvas : access Gtk_Plot_Canvas_Record); 
- 
procedure Unselect (Canvas : access Gtk_Plot_Canvas_Record); 
- 
function Get_Active_Item
  (Canvas  : access Gtk_Plot_Canvas_Record)
  return Gtk_Plot_Canvas_Child; 
- 
procedure Set_Size
  (Canvas  : access Gtk_Plot_Canvas_Record;
   Width   : Gint;
   Height  : Gint); 
- 
procedure Set_Magnification
  (Canvas        : access Gtk_Plot_Canvas_Record;
   Magnification : Gdouble := 1.0); 
- 
procedure Set_Transparent
  (Canvas : access Gtk_Plot_Canvas_Record; Transparent : Boolean); 
- 
function Transparent
  (Canvas : access Gtk_Plot_Canvas_Record) return Boolean; 
- 
procedure Set_Background
  (Canvas     :  access Gtk_Plot_Canvas_Record;
   Background :  Gdk.Color.Gdk_Color); 
 
- 
procedure Get_Pixel
  (Canvas : access Gtk_Plot_Canvas_Record;
   Px     : Gdouble;
   Py     : Gdouble;
   X      : out Gint;
   Y      : out Gint); 
- 
procedure Get_Position
  (Canvas : access Gtk_Plot_Canvas_Record;
   X      : Gint;
   Y      : Gint;
   Px     : out Gdouble;
   Py     : out Gdouble); 
- 
procedure Put_Child
  (Canvas : access Gtk_Plot_Canvas_Record;
   Child  : access Gtk_Plot_Canvas_Child_Record'Class;
   X1     : Gdouble;
   Y1     : Gdouble;
   X2     : Gdouble := 0.0;
   Y2     : Gdouble := 0.0); 
- 
procedure Remove_Child
  (Canvas : access Gtk_Plot_Canvas_Record;
   Child  : access Gtk_Plot_Canvas_Child_Record'Class); 
- 
procedure Child_Move
  (Canvas : access Gtk_Plot_Canvas_Record;
   Child  : access Gtk_Plot_Canvas_Child_Record'Class;
   X1     : Gdouble;
   Y1     : Gdouble); 
- 
procedure Child_Move_Resize
  (Canvas : access Gtk_Plot_Canvas_Record;
   Child  : access Gtk_Plot_Canvas_Child_Record'Class;
   X1     : Gdouble;
   Y1     : Gdouble;
   X2     : Gdouble;
   Y2     : Gdouble); 
- 
procedure Set_Selection
  (Child     : access Gtk_Plot_Canvas_Child_Record;
   Selection : Plot_Canvas_Selection); 
- 
procedure Set_Selection_Mode
  (Child     : access Gtk_Plot_Canvas_Child_Record;
   Mode      : Plot_Canvas_Selection_Mode); 
- 
procedure Get_Position
  (Canvas    : access Gtk_Plot_Canvas_Record;
   Child     : access Gtk_Plot_Canvas_Child_Record'Class;
   X1, Y1    : out Gdouble;
   X2, Y2    : out Gdouble); 
Flags
  Some flags are defined for this widget. You can not access them through
the usual interface in 
Gtk.Object.Flag_Is_Set since this widget is not
part of the standard gtk+ packages. Instead, use the functions below.
- 
function Plot_Canvas_Flag_Is_Set
  (Plot_Canvas : access Gtk_Plot_Canvas_Record;
   Flag        : in Guint16)
  return Boolean; 
- 
procedure Plot_Canvas_Set_Flags
  (Plot_Canvas  : access Gtk_Plot_Canvas_Record;
   Flags        : in Guint16); 
- 
procedure Plot_Canvas_Unset_Flags
  (Plot_Canvas  : access Gtk_Plot_Canvas_Record;
   Flags        : in Guint16);