MG: broke LCL<->interface circles

git-svn-id: trunk@3205 -
This commit is contained in:
lazarus 2002-08-19 15:15:17 +00:00
parent ebbda8c55b
commit b3fe77eb27
8 changed files with 1194 additions and 91 deletions

2
.gitattributes vendored
View File

@ -544,6 +544,7 @@ lcl/filectrl.pp svneol=native#text/pascal
lcl/forms.pp svneol=native#text/pascal
lcl/graphics.pp svneol=native#text/pascal
lcl/graphicsmath.pp svneol=native#text/pascal
lcl/graphmath.pp svneol=native#text/pascal
lcl/graphtype.pp svneol=native#text/pascal
lcl/imglist.pp svneol=native#text/pascal
lcl/include/action.inc svneol=native#text/pascal
@ -659,7 +660,6 @@ lcl/include/winapi.inc svneol=native#text/pascal
lcl/include/winapih.inc svneol=native#text/pascal
lcl/include/wincontrol.inc svneol=native#text/pascal
lcl/interfacebase.pp svneol=native#text/pascal
lcl/interfaces/abstract/interfaces.pp svneol=native#text/pascal
lcl/interfaces/gnome/gnomeint.pp svneol=native#text/pascal
lcl/interfaces/gnome/gnomewinapi.inc svneol=native#text/pascal
lcl/interfaces/gnome/gnomewinapih.inc svneol=native#text/pascal

View File

@ -25,15 +25,14 @@ unit AllUnits;
interface
uses
InterfaceBase, Interfaces, LCLStrConsts, Lazqueue,
InterfaceBase, LCLStrConsts, Lazqueue, GraphMath,
StringHashList, DynHashArray, LCLMemManager, ExtendedStrings,
Buttons, Extctrls, Registry, VCLGlobals,
Calendar, Clipbrd, FileCtrl, Forms,
LCLLinux, Spin, Comctrls, Graphics,
LMessages, Stdctrls, Arrow, Controls,
LMessages, StdCtrls, Arrow, Controls,
Imglist, Menus, Toolwin, Dialogs,
Messages, UTrace, Clistbox, ActnList,
GraphicsMath;
Messages, UTrace, Clistbox, ActnList;
implementation
@ -42,6 +41,9 @@ end.
{ =============================================================================
$Log$
Revision 1.17 2002/10/26 15:15:44 lazarus
MG: broke LCL<->interface circles
Revision 1.16 2002/10/04 14:24:14 lazarus
MG: added DrawItem to TComboBox/TListBox

1172
lcl/graphmath.pp Normal file

File diff suppressed because it is too large Load Diff

View File

@ -45,12 +45,15 @@ begin
FPopupPoint := Point(X, Y);
DoPopup(Self);
HandleNeeded;
InterfaceObject.IntSendMessage3(LM_POPUPSHOW, Self, @FPopupPoint);
SendMsgToInterface(LM_POPUPSHOW, Self, @FPopupPoint);
end;
{
$Log$
Revision 1.6 2002/10/26 15:15:48 lazarus
MG: broke LCL<->interface circles
Revision 1.5 2002/08/17 07:57:05 lazarus
MG: added TPopupMenu.OnPopup and SourceEditor PopupMenu checks

View File

@ -4,7 +4,7 @@ It is organized according to the following structure:
interfaces
|
+--- abstract
+--- gnome
|
+--- gtk
|
@ -15,11 +15,11 @@ interfaces
+--- ...
|
interfaces/abstract
Abstract definition for initial LCL compilation
interfaces/gnome:
All gnome 1.x specific code goes here.
interfaces/gtk:
All gtk specific code goes here.
All gtk 1.x specific code goes here.
interfaces/qt:
All QT specific code goes here.

View File

@ -1,51 +0,0 @@
{ $Id$ }
{
----------------------------------------------
Interfaces.pp - determines the placeholder
interface to compile the LCL
----------------------------------------------
@created(Tue Mar 27st WET 2001)
@lastmod($Date$)
@author(Marc Weustink <marc@@lazarus.dommelstein.net>)
This unit contains the definition for the LCL interface
*****************************************************************************
* *
* This file is part of the Lazarus Component Library (LCL) *
* *
* See the file COPYING.LCL, included in this distribution, *
* for details about the copyright. *
* *
* This program 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. *
* *
*****************************************************************************
}
unit Interfaces;
{$mode objfpc} {$H+}
interface
uses
InterfaceBase;
var
InterfaceObject : TInterfaceBase;
implementation
initialization
InterfaceObject := TInterfaceBase.Create;
finalization
InterfaceObject.Free;
end.

View File

@ -30,29 +30,15 @@ interface
uses
InterfaceBase;
var
InterfaceObject : TInterfaceBase;
implementation
uses
GTKInt, Clipbrd, SysUtils,
Forms; // MG: GTKInt uses forms, so the application object is destroyed
// in the forms finalization section AFTER this finalization
// section. But the lcl objects need the gtk to close cleanly.
// Therefore the application object is freed here before the
// InterfaceObject.
// Probably this is the case for all interfaces, so this should be
// moved to forms.pp.
GTKInt, Forms;
initialization
InterfaceObject := TgtkObject.Create;
InterfaceObject:= TgtkObject.Create;
finalization
Application.Free;
Application:=nil;
FreeAllClipBoards;
InterfaceObject.Free;
InterfaceObject:=nil;
FreeInterfaceObject;
end.

View File

@ -32,24 +32,15 @@ Interface
Uses
InterfaceBase;
Var
InterfaceObject: TInterfaceBase;
Implementation
Implementation
Uses
uses
Win32Int, Forms;
Initialization
InterfaceObject := TWin32Object.Create;
InterfaceObject := TWin32Object.Create;
Finalization
Application.Free;
Application := Nil;
InterfaceObject.Free;
InterfaceObject := Nil;
FreeInterfaceObject;
End.