Package: GWindows.Panels


with GWindows.Types;
with GWindows.Drawing;
with GWindows.Windows;


GWINDOWS - Ada 95 Framework for Win32 Development

G W I N D O W S . P A N E L S

S p e c

$Revision: 1.2 $

Copyright (C) 1999 - 2004 David Botton

This is free software; you can redistribute it and/or modify it under terms of the GNU General Public License as published by the Free Soft- ware Foundation; either version 2, or (at your option) any later ver- sion. It is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License distributed with this; see file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

As a special exception, if other files instantiate generics from this unit, or you link this unit with other files to produce an executable, this unit does not by itself cause the resulting executable to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU Public License.

More information about GWindows and the latest current release can be located on the web at



package GWindows.Panels is

Type Summary

Panel_Type derived from Window_Type
Overridden Operations:  On_Paint
New Operations:  Border_Thickness, Border_Thickness, Border_Type, Border_Type
Inherited Operations:  Accelerator_Handle, Accelerator_Handle, Accelerator_Table, Accept_File_Drag_And_Drop, Attach, Attach_Control, Attach_Dialog, Attach_Dialog_Item, Border, Border, Capture_Mouse, Center, Center, Child, Client_Area_Height, Client_Area_Height, Client_Area_Size, Client_Area_Width, Client_Area_Width, Close, Control, Controlling_Parent, Create, Create_As_Control, Create_As_Dialog, Create_As_Dialog, Create_As_Tool_Window, Create_Child, Create_Control, Create_Dialog, Create_Dialog, Create_MDI_Child, Create_MDI_Top, Disable, Display_Context_Menu, Display_Context_Menu, Dock, Dock, Dock_Children, Enable, Enabled, Enabled, End_Dialog, Enumerate_Children, Finalize, Fire_On_Accelerator_Select, Fire_On_Change_Cursor, Fire_On_Character_Down, Fire_On_Character_Up, Fire_On_Close, Fire_On_Context_Menu, Fire_On_Create, Fire_On_Destroy, Fire_On_Erase_Background, Fire_On_File_Drop, Fire_On_Focus, Fire_On_Hide, Fire_On_Horizontal_Scroll, Fire_On_Left_Mouse_Button_Double_Click, Fire_On_Left_Mouse_Button_Down, Fire_On_Left_Mouse_Button_Up, Fire_On_Lost_Focus, Fire_On_MDI_Activate, Fire_On_MDI_Deactivate, Fire_On_Menu_Hover, Fire_On_Menu_Select, Fire_On_Middle_Mouse_Button_Double_Click, Fire_On_Middle_Mouse_Button_Down, Fire_On_Middle_Mouse_Button_Up, Fire_On_Mouse_Move, Fire_On_Move, Fire_On_Paint, Fire_On_Pre_Create, Fire_On_Right_Mouse_Button_Double_Click, Fire_On_Right_Mouse_Button_Down, Fire_On_Right_Mouse_Button_Up, Fire_On_Show, Fire_On_Size, Fire_On_Vertical_Scroll, First_Window, Focus, Focus, Freeze, Get_Canvas, Get_Font, Get_Full_Window_Canvas, Group, Group, Handle, Height, Height, Hide, Horizontal_Scroll_Bar, Horizontal_Scroll_Bar, Iconic, Iconic, ID, Initialize, Is_Dialog, Is_Dialog, Is_Modal, Is_Modal, Keyboard_Support, Keyboard_Support, Large_Icon, Last_Window, Left, Left, MDI_Active_Window, MDI_Active_Window, MDI_Arrange_Icons, MDI_Cascade, MDI_Client_Window, MDI_Client_Window, MDI_Close_All, MDI_Menu, MDI_Tile_Horizontal, MDI_Tile_Vertical, Menu, Menu, Menu, Menu_Refresh, Modal_Result, Modal_Result, Move, Next_Tab_Stop, Next_Window, On_Accelerator_Select, On_Accelerator_Select_Handler, On_Change_Cursor, On_Change_Cursor_Handler, On_Character_Down, On_Character_Down_Handler, On_Character_Up, On_Character_Up_Handler, On_Close, On_Close_Handler, On_Command, On_Context_Menu, On_Context_Menu_Handler, On_Create, On_Create_Handler, On_Destroy, On_Destroy_Handler, On_Draw_Item, On_Erase_Background, On_Erase_Background_Handler, On_File_Drop, On_File_Drop_Handler, On_Filter_Message, On_Focus, On_Focus_Handler, On_Hide, On_Hide_Handler, On_Horizontal_Scroll, On_Horizontal_Scroll_Handler, On_Left_Mouse_Button_Double_Click, On_Left_Mouse_Button_Double_Click_Handler, On_Left_Mouse_Button_Down, On_Left_Mouse_Button_Down_Handler, On_Left_Mouse_Button_Up, On_Left_Mouse_Button_Up_Handler, On_Lost_Focus, On_Lost_Focus_Handler, On_MDI_Activate, On_MDI_Activate_Handler, On_MDI_Deactivate, On_MDI_Deactivate_Handler, On_Menu_Hover, On_Menu_Hover_Handler, On_Menu_Select, On_Menu_Select_Handler, On_Message, On_Middle_Mouse_Button_Double_Click, On_Middle_Mouse_Button_Double_Click_Handler, On_Middle_Mouse_Button_Down, On_Middle_Mouse_Button_Down_Handler, On_Middle_Mouse_Button_Up, On_Middle_Mouse_Button_Up_Handler, On_Mouse_Move, On_Mouse_Move_Handler, On_Move, On_Move_Handler, On_Notify, On_Paint_Handler, On_Pre_Create, On_Pre_Create_Handler, On_Right_Mouse_Button_Double_Click, On_Right_Mouse_Button_Double_Click_Handler, On_Right_Mouse_Button_Down, On_Right_Mouse_Button_Down_Handler, On_Right_Mouse_Button_Up, On_Right_Mouse_Button_Up_Handler, On_Show, On_Show_Handler, On_Size, On_Size_Handler, On_Vertical_Scroll, On_Vertical_Scroll_Handler, Order, Order, Parent, Parent, Point_To_Client, Point_To_Desktop, Previous_Tab_Stop, Previous_Window, Redraw, Scroll_Drag_Position, Scroll_Maximum, Scroll_Maximum, Scroll_Minimum, Scroll_Minimum, Scroll_Page_Size, Scroll_Page_Size, Scroll_Position, Scroll_Position, Scroll_Range, Set_Font, Show, Size, Small_Icon, Tab_Stop, Tab_Stop, Text, Text, Text_Length, Thaw, Top, Top, Valid, Vertical_Scroll_Bar, Vertical_Scroll_Bar, Visible, Visible, Width, Width, Zoom, Zoom

Other Items:

type Panel_Type is new GWindows.Windows.Window_Type with private;

type Panel_Access is access all Panel_Type;

type Pointer_To_Panel_Class is access all Panel_Type'Class;
Panel_Type - Properties

type Panel_Border_Type is (None, Sunken, Raised);

procedure Border_Type (Panel  : in out Panel_Type;
                       Border : in     Panel_Border_Type);

function Border_Type (Panel : in Panel_Type) return Panel_Border_Type;

procedure Border_Thickness (Panel     : in out Panel_Type;
                            Thickness : in     Positive);

function Border_Thickness (Panel : in Panel_Type) return Positive;
Panel_Type - Event Framework Methods

When overiding events, to insure that the event handlers will still be executed when set by users, call the base class or fire the event handler directly.

procedure On_Paint (Window : in out Panel_Type;
                    Canvas : in out GWindows.Drawing.Canvas_Type;
                    Area   : in     GWindows.Types.Rectangle_Type);
Handles drawing border


   --  Implementation-defined ...
end GWindows.Panels;