From 6bda2054c8dda9b98f9958c54fce9f27927642c5 Mon Sep 17 00:00:00 2001 From: graemeg Date: Mon, 23 Jul 2007 09:28:01 +0000 Subject: Part 2 of the restructure. * Moved all the images from the prototype directory. * Removed all the obsolete examples --- examples/gui/layouttest/Makefile | 1320 -------------------------------- examples/gui/layouttest/Makefile.fpc | 10 - examples/gui/layouttest/boxform.frm | 24 - examples/gui/layouttest/layouttest.lpi | 59 -- examples/gui/layouttest/layouttest.pas | 417 ---------- 5 files changed, 1830 deletions(-) delete mode 100644 examples/gui/layouttest/Makefile delete mode 100644 examples/gui/layouttest/Makefile.fpc delete mode 100644 examples/gui/layouttest/boxform.frm delete mode 100644 examples/gui/layouttest/layouttest.lpi delete mode 100644 examples/gui/layouttest/layouttest.pas (limited to 'examples/gui/layouttest') diff --git a/examples/gui/layouttest/Makefile b/examples/gui/layouttest/Makefile deleted file mode 100644 index 2ccf237e..00000000 --- a/examples/gui/layouttest/Makefile +++ /dev/null @@ -1,1320 +0,0 @@ -# -# Makefile generated by fpcmake v1.00 [2000/12/14] -# - -defaultrule: all - -##################################################################### -# Autodetect OS (Linux or Dos or Windows NT) -# define inUnix when running under Unix (Linux,FreeBSD) -# define inWinNT when running under WinNT -##################################################################### - -# We need only / in the path -override PATH:=$(subst \,/,$(PATH)) - -# Search for PWD and determine also if we are under linux -PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(subst ;, ,$(PATH))))) -ifeq ($(PWD),) -PWD:=$(strip $(wildcard $(addsuffix /pwd,$(subst :, ,$(PATH))))) -ifeq ($(PWD),) -nopwd: - @echo You need the GNU utils package to use this Makefile! - @echo Get ftp://ftp.freepascal.org/pub/fpc/dist/go32v2/utilgo32.zip - @exit -else -inUnix=1 -endif -else -PWD:=$(firstword $(PWD)) -endif - -# Detect NT - NT sets OS to Windows_NT -# Detect OS/2 - OS/2 has OS2_SHELL defined -ifndef inUnix -ifeq ($(OS),Windows_NT) -inWinNT=1 -else -ifdef OS2_SHELL -inOS2=1 -endif -endif -endif - -# The extension of executables -ifdef inUnix -SRCEXEEXT= -else -SRCEXEEXT=.exe -endif - -# The path which is searched separated by spaces -ifdef inUnix -SEARCHPATH=$(subst :, ,$(PATH)) -else -SEARCHPATH=$(subst ;, ,$(PATH)) -endif - -# Base dir -ifdef PWD -BASEDIR:=$(shell $(PWD)) -else -BASEDIR=. -endif - -##################################################################### -# FPC version/target Detection -##################################################################### - -# What compiler to use ? -ifndef FPC -# Compatibility with old makefiles -ifdef PP -FPC=$(PP) -else -FPC=ppc386 -endif -endif -override FPC:=$(subst $(SRCEXEEXT),,$(FPC)) -override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT) - -# Target OS -ifndef OS_TARGET -OS_TARGET:=$(shell $(FPC) -iTO) -endif - -# Source OS -ifndef OS_SOURCE -OS_SOURCE:=$(shell $(FPC) -iSO) -endif - -# Target CPU -ifndef CPU_TARGET -CPU_TARGET:=$(shell $(FPC) -iTP) -endif - -# Source CPU -ifndef CPU_SOURCE -CPU_SOURCE:=$(shell $(FPC) -iSP) -endif - -# FPC version -ifndef FPC_VERSION -FPC_VERSION:=$(shell $(FPC) -iV) -endif - -export FPC OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FPC_VERSION FPCOPT - -##################################################################### -# FPCDIR Setting -##################################################################### - -# Test FPCDIR to look if the RTL dir exists -ifdef FPCDIR -override FPCDIR:=$(subst \,/,$(FPCDIR)) -ifeq ($(wildcard $(FPCDIR)/rtl),) -ifeq ($(wildcard $(FPCDIR)/units),) -override FPCDIR=wrong -endif -endif -else -override FPCDIR=wrong -endif - -# Detect FPCDIR -ifeq ($(FPCDIR),wrong) -ifdef inUnix -override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION) -ifeq ($(wildcard $(FPCDIR)/units),) -override FPCDIR=/usr/lib/fpc/$(FPC_VERSION) -endif -else -override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH)))))) -override FPCDIR:=$(FPCDIR)/.. -ifeq ($(wildcard $(FPCDIR)/rtl),) -ifeq ($(wildcard $(FPCDIR)/units),) -override FPCDIR:=$(FPCDIR)/.. -ifeq ($(wildcard $(FPCDIR)/rtl),) -ifeq ($(wildcard $(FPCDIR)/units),) -override FPCDIR=c:/pp -endif -endif -endif -endif -endif -endif - -ifndef PACKAGESDIR -PACKAGESDIR=$(FPCDIR)/packages -endif -ifndef TOOLKITSDIR -TOOLKITSDIR= -endif -ifndef COMPONENTSDIR -COMPONENTSDIR= -endif - -# Create units dir -ifneq ($(FPCDIR),.) -UNITSDIR=$(FPCDIR)/units/$(OS_TARGET) -endif - -##################################################################### -# User Settings -##################################################################### - - -# Targets - -override EXEOBJECTS+=layouttest - -# Clean - - -# Install - -ZIPTARGET=install - -# Defaults - -override NEEDOPT=-S2h - -# Directories - - -# Packages - -override PACKAGES+=rtl fcl fpgfx fpgui - -# Libraries - - -# Info - -INFOTARGET=fpc_infocfg fpc_infoobjects fpc_infoinstall - -##################################################################### -# Shell tools -##################################################################### - -# echo -ifndef ECHO -ECHO:=$(strip $(wildcard $(addsuffix /gecho$(EXEEXT),$(SEARCHPATH)))) -ifeq ($(ECHO),) -ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(ECHO),) -ECHO:=echo -ECHOE:=echo -else -ECHO:=$(firstword $(ECHO)) -ECHOE=$(ECHO) -E -endif -else -ECHO:=$(firstword $(ECHO)) -ECHOE=$(ECHO) -E -endif -endif - -# To copy pograms -ifndef COPY -COPY:=cp -fp -endif - -# Copy a whole tree -ifndef COPYTREE -COPYTREE:=cp -rfp -endif - -# To move pograms -ifndef MOVE -MOVE:=mv -f -endif - -# Check delete program -ifndef DEL -DEL:=rm -f -endif - -# Check deltree program -ifndef DELTREE -DELTREE:=rm -rf -endif - -# To install files -ifndef INSTALL -ifdef inUnix -INSTALL:=install -c -m 644 -else -INSTALL:=$(COPY) -endif -endif - -# To install programs -ifndef INSTALLEXE -ifdef inUnix -INSTALLEXE:=install -c -m 755 -else -INSTALLEXE:=$(COPY) -endif -endif - -# To make a directory. -ifndef MKDIR -ifdef inUnix -MKDIR:=install -m 755 -d -else -MKDIR:=ginstall -m 755 -d -endif -endif - -export ECHO ECHOE COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR - -##################################################################### -# Default Tools -##################################################################### - -# assembler, redefine it if cross compiling -ifndef AS -AS=as -endif - -# linker, but probably not used -ifndef LD -LD=ld -endif - -# ppas.bat / ppas.sh -ifdef inUnix -PPAS=ppas.sh -else -ifdef inOS2 -PPAS=ppas.cmd -else -PPAS=ppas.bat -endif -endif - -# ldconfig to rebuild .so cache -ifdef inUnix -LDCONFIG=ldconfig -else -LDCONFIG= -endif - -# ppumove -ifndef PPUMOVE -PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(PPUMOVE),) -PPUMOVE= -else -PPUMOVE:=$(firstword $(PPUMOVE)) -endif -endif -export PPUMOVE - -# ppufiles -ifndef PPUFILES -PPUFILES:=$(strip $(wildcard $(addsuffix /ppufiles$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(PPUFILES),) -PPUFILES= -else -PPUFILES:=$(firstword $(PPUFILES)) -endif -endif -export PPUFILES - -# Look if UPX is found for go32v2 and win32. We can't use $UPX becuase -# upx uses that one itself (PFV) -ifndef UPXPROG -ifeq ($(OS_TARGET),go32v2) -UPXPROG:=1 -endif -ifeq ($(OS_TARGET),win32) -UPXPROG:=1 -endif -ifdef UPXPROG -UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(UPXPROG),) -UPXPROG= -else -UPXPROG:=$(firstword $(UPXPROG)) -endif -else -UPXPROG= -endif -endif -export UPXPROG - -# ZipProg, you can't use Zip as the var name (PFV) -ifndef ZIPPROG -ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(ZIPPROG),) -ZIPPROG= -else -ZIPPROG:=$(firstword $(ZIPPROG)) -endif -endif -export ZIPPROG - -ZIPOPT=-9 -ZIPEXT=.zip - -# Tar -ifndef TARPROG -TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH)))) -ifeq ($(TARPROG),) -TARPROG= -else -TARPROG:=$(firstword $(TARPROG)) -endif -endif -export TARPROG - -ifeq ($(USETAR),bz2) -TAROPT=vI -TAREXT=.tar.bz2 -else -TAROPT=vz -TAREXT=.tar.gz -endif - -##################################################################### -# Default extensions -##################################################################### - -# Default needed extensions (Go32v2,Linux) -LOADEREXT=.as -EXEEXT=.exe -PPLEXT=.ppl -PPUEXT=.ppu -OEXT=.o -ASMEXT=.s -SMARTEXT=.sl -STATICLIBEXT=.a -SHAREDLIBEXT=.so -RSTEXT=.rst -FPCMADE=fpcmade - -# Go32v1 -ifeq ($(OS_TARGET),go32v1) -PPUEXT=.pp1 -OEXT=.o1 -ASMEXT=.s1 -SMARTEXT=.sl1 -STATICLIBEXT=.a1 -SHAREDLIBEXT=.so1 -FPCMADE=fpcmade.v1 -endif - -# Go32v2 -ifeq ($(OS_TARGET),go32v2) -FPCMADE=fpcmade.dos -endif - -# Linux -ifeq ($(OS_TARGET),linux) -EXEEXT= -HASSHAREDLIB=1 -FPCMADE=fpcmade.lnx -endif - -# Linux -ifeq ($(OS_TARGET),freebsd) -EXEEXT= -HASSHAREDLIB=1 -FPCMADE=fpcmade.freebsd -endif - -# Win32 -ifeq ($(OS_TARGET),win32) -PPUEXT=.ppw -OEXT=.ow -ASMEXT=.sw -SMARTEXT=.slw -STATICLIBEXT=.aw -SHAREDLIBEXT=.dll -FPCMADE=fpcmade.w32 -endif - -# OS/2 -ifeq ($(OS_TARGET),os2) -PPUEXT=.ppo -ASMEXT=.so2 -OEXT=.oo2 -SMARTEXT=.so -STATICLIBEXT=.ao2 -SHAREDLIBEXT=.dll -FPCMADE=fpcmade.os2 -endif - -# library prefix -LIBPREFIX=lib -ifeq ($(OS_TARGET),go32v2) -LIBPREFIX= -endif -ifeq ($(OS_TARGET),go32v1) -LIBPREFIX= -endif - -# determine which .pas extension is used -ifndef PASEXT -ifdef EXEOBJECTS -override TESTPAS:=$(strip $(wildcard $(addsuffix .pas,$(firstword $(EXEOBJECTS))))) -else -override TESTPAS:=$(strip $(wildcard $(addsuffix .pas,$(firstword $(UNITOBJECTS))))) -endif -ifeq ($(TESTPAS),) -PASEXT=.pp -else -PASEXT=.pas -endif -endif - - -# Check if the dirs really exists, else turn it off -ifeq ($(wildcard $(UNITSDIR)),) -UNITSDIR= -endif -ifeq ($(wildcard $(TOOLKITSDIR)),) -TOOLKITSDIR= -endif -ifeq ($(wildcard $(PACKAGESDIR)),) -PACKAGESDIR= -endif -ifeq ($(wildcard $(COMPONENTSDIR)),) -COMPONENTSDIR= -endif - - -# PACKAGESDIR packages - -PACKAGERTL=1 -PACKAGEFCL=1 -PACKAGEFPGFX=1 -PACKAGEFPGUI=1 - -ifdef PACKAGERTL -ifneq ($(wildcard $(FPCDIR)/rtl),) -ifneq ($(wildcard $(FPCDIR)/rtl/$(OS_TARGET)),) -PACKAGEDIR_RTL=$(FPCDIR)/rtl/$(OS_TARGET) -else -PACKAGEDIR_RTL=$(FPCDIR)/rtl -endif -ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),) -override COMPILEPACKAGES+=package_rtl -package_rtl: - $(MAKE) -C $(PACKAGEDIR_RTL) all -endif -UNITDIR_RTL=$(PACKAGEDIR_RTL) -else -PACKAGEDIR_RTL= -ifneq ($(wildcard $(UNITSDIR)/rtl),) -ifneq ($(wildcard $(UNITSDIR)/rtl/$(OS_TARGET)),) -UNITDIR_RTL=$(UNITSDIR)/rtl/$(OS_TARGET) -else -UNITDIR_RTL=$(UNITSDIR)/rtl -endif -else -UNITDIR_RTL= -endif -endif -ifdef UNITDIR_RTL -override NEEDUNITDIR+=$(UNITDIR_RTL) -endif -endif -ifdef PACKAGEFCL -ifneq ($(wildcard $(FPCDIR)/fcl),) -ifneq ($(wildcard $(FPCDIR)/fcl/$(OS_TARGET)),) -PACKAGEDIR_FCL=$(FPCDIR)/fcl/$(OS_TARGET) -else -PACKAGEDIR_FCL=$(FPCDIR)/fcl -endif -ifeq ($(wildcard $(PACKAGEDIR_FCL)/$(FPCMADE)),) -override COMPILEPACKAGES+=package_fcl -package_fcl: - $(MAKE) -C $(PACKAGEDIR_FCL) all -endif -UNITDIR_FCL=$(PACKAGEDIR_FCL) -else -PACKAGEDIR_FCL= -ifneq ($(wildcard $(UNITSDIR)/fcl),) -ifneq ($(wildcard $(UNITSDIR)/fcl/$(OS_TARGET)),) -UNITDIR_FCL=$(UNITSDIR)/fcl/$(OS_TARGET) -else -UNITDIR_FCL=$(UNITSDIR)/fcl -endif -else -UNITDIR_FCL= -endif -endif -ifdef UNITDIR_FCL -override NEEDUNITDIR+=$(UNITDIR_FCL) -endif -endif -ifdef PACKAGEFPGFX -ifneq ($(wildcard $(PACKAGESDIR)/fpgfx),) -ifneq ($(wildcard $(PACKAGESDIR)/fpgfx/$(OS_TARGET)),) -PACKAGEDIR_FPGFX=$(PACKAGESDIR)/fpgfx/$(OS_TARGET) -else -PACKAGEDIR_FPGFX=$(PACKAGESDIR)/fpgfx -endif -ifeq ($(wildcard $(PACKAGEDIR_FPGFX)/$(FPCMADE)),) -override COMPILEPACKAGES+=package_fpgfx -package_fpgfx: - $(MAKE) -C $(PACKAGEDIR_FPGFX) all -endif -UNITDIR_FPGFX=$(PACKAGEDIR_FPGFX) -else -PACKAGEDIR_FPGFX= -ifneq ($(wildcard $(UNITSDIR)/fpgfx),) -ifneq ($(wildcard $(UNITSDIR)/fpgfx/$(OS_TARGET)),) -UNITDIR_FPGFX=$(UNITSDIR)/fpgfx/$(OS_TARGET) -else -UNITDIR_FPGFX=$(UNITSDIR)/fpgfx -endif -else -UNITDIR_FPGFX= -endif -endif -ifdef UNITDIR_FPGFX -override NEEDUNITDIR+=$(UNITDIR_FPGFX) -endif -endif -ifdef PACKAGEFPGUI -ifneq ($(wildcard $(PACKAGESDIR)/fpgui),) -ifneq ($(wildcard $(PACKAGESDIR)/fpgui/$(OS_TARGET)),) -PACKAGEDIR_FPGUI=$(PACKAGESDIR)/fpgui/$(OS_TARGET) -else -PACKAGEDIR_FPGUI=$(PACKAGESDIR)/fpgui -endif -ifeq ($(wildcard $(PACKAGEDIR_FPGUI)/$(FPCMADE)),) -override COMPILEPACKAGES+=package_fpgui -package_fpgui: - $(MAKE) -C $(PACKAGEDIR_FPGUI) all -endif -UNITDIR_FPGUI=$(PACKAGEDIR_FPGUI) -else -PACKAGEDIR_FPGUI= -ifneq ($(wildcard $(UNITSDIR)/fpgui),) -ifneq ($(wildcard $(UNITSDIR)/fpgui/$(OS_TARGET)),) -UNITDIR_FPGUI=$(UNITSDIR)/fpgui/$(OS_TARGET) -else -UNITDIR_FPGUI=$(UNITSDIR)/fpgui -endif -else -UNITDIR_FPGUI= -endif -endif -ifdef UNITDIR_FPGUI -override NEEDUNITDIR+=$(UNITDIR_FPGUI) -endif -endif - - -##################################################################### -# Default Directories -##################################################################### - -# Linux and freebsd use unix dirs with /usr/bin, /usr/lib -# When zipping use the target as default, when normal install then -# use the source os as default -ifdef ZIPNAME -# Zipinstall -ifeq ($(OS_TARGET),linux) -UNIXINSTALLDIR=1 -endif -ifeq ($(OS_TARGET),freebsd) -UNIXINSTALLDIR=1 -endif -else -# Normal install -ifeq ($(OS_SOURCE),linux) -UNIXINSTALLDIR=1 -endif -ifeq ($(OS_SOURCE),freebsd) -UNIXINSTALLDIR=1 -endif -endif - -# set the prefix directory where to install everything -ifndef PREFIXINSTALLDIR -ifdef UNIXINSTALLDIR -PREFIXINSTALLDIR=/usr -else -PREFIXINSTALLDIR=/pp -endif -endif -export PREFIXINSTALLDIR - -# Where to place the resulting zip files -ifndef DESTZIPDIR -DESTZIPDIR:=$(BASEDIR) -endif -export DESTZIPDIR - -##################################################################### -# Install Directories -##################################################################### - -# set the base directory where to install everything -ifndef BASEINSTALLDIR -ifdef UNIXINSTALLDIR -BASEINSTALLDIR=$(PREFIXINSTALLDIR)/lib/fpc/$(FPC_VERSION) -else -BASEINSTALLDIR=$(PREFIXINSTALLDIR) -endif -endif - -# set the directory where to install the binaries -ifndef BININSTALLDIR -ifdef UNIXINSTALLDIR -BININSTALLDIR=$(PREFIXINSTALLDIR)/bin -else -BININSTALLDIR=$(BASEINSTALLDIR)/bin/$(OS_TARGET) -endif -endif - -# set the directory where to install the units. -ifndef UNITINSTALLDIR -UNITINSTALLDIR=$(BASEINSTALLDIR)/units/$(OS_TARGET) -ifdef UNITSUBDIR -UNITINSTALLDIR:=$(UNITINSTALLDIR)/$(UNITSUBDIR) -endif -endif - -# Where to install shared libraries -ifndef LIBINSTALLDIR -ifdef UNIXINSTALLDIR -LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib -else -LIBINSTALLDIR=$(UNITINSTALLDIR) -endif -endif - -# Where the source files will be stored -ifndef SOURCEINSTALLDIR -ifdef UNIXINSTALLDIR -SOURCEINSTALLDIR=$(PREFIXINSTALLDIR)/src/fpc-$(FPC_VERSION) -else -SOURCEINSTALLDIR=$(BASEINSTALLDIR)/source -endif -ifdef SOURCESUBDIR -SOURCEINSTALLDIR:=$(SOURCEINSTALLDIR)/$(SOURCESUBDIR) -endif -endif - -# Where the doc files will be stored -ifndef DOCINSTALLDIR -ifdef UNIXINSTALLDIR -DOCINSTALLDIR=$(PREFIXINSTALLDIR)/doc/fpc-$(FPC_VERSION) -else -DOCINSTALLDIR=$(BASEINSTALLDIR)/doc -endif -endif - -# Where to install the examples, under linux we use the doc dir -# because the copytree command will create a subdir itself -ifndef EXAMPLEINSTALLDIR -ifdef UNIXINSTALLDIR -EXAMPLEINSTALLDIR=$(DOCINSTALLDIR)/examples -else -EXAMPLEINSTALLDIR=$(BASEINSTALLDIR)/examples -endif -ifdef EXAMPLESUBDIR -EXAMPLEINSTALLDIR:=$(EXAMPLEINSTALLDIR)/$(EXAMPLESUBDIR) -endif -endif - -# Where the some extra (data)files will be stored -ifndef DATAINSTALLDIR -DATAINSTALLDIR=$(BASEINSTALLDIR) -endif - -##################################################################### -# Redirection -##################################################################### - -ifndef REDIRFILE -REDIRFILE=log -endif - -ifdef REDIR -ifndef inUnix -override FPC=redir -eo $(FPC) -endif -# set the verbosity to max -override FPCOPT+=-va -override REDIR:= >> $(REDIRFILE) -endif - - -##################################################################### -# Compiler Command Line -##################################################################### - -# Load commandline OPTDEF and add FPC_CPU define -override FPCOPTDEF:=-d$(CPU_TARGET) - -# Load commandline OPT and add target and unit dir to be sure -ifneq ($(OS_TARGET),$(OS_SOURCE)) -override FPCOPT+=-T$(OS_TARGET) -endif - -# User dirs should be first, so they are looked at first -ifdef UNITDIR -override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) -endif -ifdef LIBDIR -override FPCOPT+=$(addprefix -Fl,$(LIBDIR)) -endif -ifdef OBJDIR -override FPCOPT+=$(addprefix -Fo,$(OBJDIR)) -endif -ifdef INCDIR -override FPCOPT+=$(addprefix -Fi,$(INCDIR)) -endif - -# Smartlinking -ifdef LINKSMART -override FPCOPT+=-XX -endif - -# Smartlinking creation -ifdef CREATESMART -override FPCOPT+=-CX -endif - -# Debug -ifdef DEBUG -override FPCOPT+=-gl -dDEBUG -endif - -# Release mode (strip, optimize and don't load ppc386.cfg) -# 0.99.12b has a bug in the optimizer so don't use it by default -ifdef RELEASE -ifeq ($(FPC_VERSION),0.99.12) -override FPCOPT+=-Xs -OGp3 -n -else -override FPCOPT+=-Xs -OG2p3 -n -endif -endif - -# Strip -ifdef STRIP -override FPCOPT+=-Xs -endif - -# Optimizer -ifdef OPTIMIZE -override FPCOPT+=-OG2p3 -endif - -# Verbose settings (warning,note,info) -ifdef VERBOSE -override FPCOPT+=-vwni -endif - -ifdef NEEDOPT -override FPCOPT+=$(NEEDOPT) -endif - -ifdef NEEDUNITDIR -override FPCOPT+=$(addprefix -Fu,$(NEEDUNITDIR)) -endif - -ifdef UNITSDIR -override FPCOPT+=-Fu$(UNITSDIR) -endif - -# Target dirs and the prefix to use for clean/install -ifdef TARGETDIR -override FPCOPT+=-FE$(TARGETDIR) -ifeq ($(TARGETDIR),.) -override TARGETDIRPREFIX= -else -override TARGETDIRPREFIX=$(TARGETDIR)/ -endif -endif -ifdef UNITTARGETDIR -override FPCOPT+=-FU$(UNITTARGETDIR) -ifeq ($(UNITTARGETDIR),.) -override UNITTARGETDIRPREFIX= -else -override UNITTARGETDIRPREFIX=$(TARGETDIR)/ -endif -else -ifdef TARGETDIR -override UNITTARGETDIR=$(TARGETDIR) -override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX) -endif -endif - -# Add commandline options last so they can override -ifdef OPT -override FPCOPT+=$(OPT) -endif - -# Add defines from FPCOPTDEF to FPCOPT -ifdef FPCOPTDEF -override FPCOPT+=$(FPCOPTDEF) -endif - -# Error file ? -ifdef ERRORFILE -override FPCOPT+=-Fr$(ERRORFILE) -endif - -# Was a config file specified ? -ifdef CFGFILE -override FPCOPT+=@$(CFGFILE) -endif - -# For win32 the options are passed using the environment FPCEXTCMD -ifeq ($(OS_SOURCE),win32) -override FPCEXTCMD:=$(FPCOPT) -override FPCOPT:=!FPCEXTCMD -export FPCEXTCMD -endif - -# Compiler commandline -override COMPILER:=$(FPC) $(FPCOPT) - -# also call ppas if with command option -s -# but only if the OS_SOURCE and OS_TARGE are equal -ifeq (,$(findstring -s ,$(COMPILER))) -EXECPPAS= -else -ifeq ($(OS_SOURCE),$(OS_TARGET)) -EXECPPAS:=@$(PPAS) -endif -endif - -##################################################################### -# Standard rules -##################################################################### - -all: fpc_all - -debug: fpc_debug - -smart: fpc_smart - -shared: fpc_shared - -showinstall: fpc_showinstall - -install: fpc_install - -sourceinstall: fpc_sourceinstall - -exampleinstall: fpc_exampleinstall - -zipinstall: fpc_zipinstall - -zipsourceinstall: fpc_zipsourceinstall - -zipexampleinstall: fpc_zipexampleinstall - -clean: fpc_clean - -distclean: fpc_distclean - -cleanall: fpc_cleanall - -info: fpc_info - -.PHONY: all debug smart shared showinstall install sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall clean distclean cleanall info - -##################################################################### -# Exes -##################################################################### - -.PHONY: fpc_exes - -ifdef EXEOBJECTS -override EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS)) -override EXEOFILES:=$(addsuffix $(OEXT),$(EXEOBJECTS)) $(addprefix $(LIBPREFIX),$(addsuffix $(STATICLIBEXT),$(EXEOBJECTS))) - -override ALLTARGET+=fpc_exes -override INSTALLEXEFILES+=$(EXEFILES) -override CLEANEXEFILES+=$(EXEFILES) $(EXEOFILES) - -endif - -fpc_exes: $(EXEFILES) - -##################################################################### -# General compile rules -##################################################################### - -.PHONY: fpc_packages fpc_all fpc_debug - -$(FPCMADE): $(ALLTARGET) - @$(ECHO) Compiled > $(FPCMADE) - -fpc_packages: $(COMPILEPACKAGES) - -fpc_all: fpc_packages $(FPCMADE) - -fpc_debug: - $(MAKE) all DEBUG=1 - -# Search paths for .ppu if targetdir is set -ifdef UNITTARGETDIR -vpath %$(PPUEXT) $(UNITTARGETDIR) -endif - -# General compile rules, available for both possible PASEXT - -.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp - -%$(PPUEXT): %.pp - $(COMPILER) $< $(REDIR) - $(EXECPPAS) - -%$(PPUEXT): %.pas - $(COMPILER) $< $(REDIR) - $(EXECPPAS) - -%$(EXEEXT): %.pp - $(COMPILER) $< $(REDIR) - $(EXECPPAS) - -%$(EXEEXT): %.pas - $(COMPILER) $< $(REDIR) - $(EXECPPAS) - -##################################################################### -# Library -##################################################################### - -.PHONY: fpc_smart fpc_shared - -ifdef LIBVERSION -LIBFULLNAME=$(LIBNAME).$(LIBVERSION) -else -LIBFULLNAME=$(LIBNAME) -endif - -# Default sharedlib units are all unit objects -ifndef SHAREDLIBUNITOBJECTS -SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS) -endif - -fpc_smart: - $(MAKE) all LINKSMART=1 CREATESMART=1 - -fpc_shared: all -ifdef HASSHAREDLIB -ifndef LIBNAME - @$(ECHO) "LIBNAME not set" -else - $(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBFULLNAME) -endif -else - @$(ECHO) "Shared Libraries not supported" -endif - -##################################################################### -# Install rules -##################################################################### - -.PHONY: fpc_showinstall fpc_install - -ifdef EXTRAINSTALLUNITS -override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS)) -endif - -ifdef INSTALLPPUFILES -override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES)) -ifdef PPUFILES -INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES)) -else -INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(LIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))) -endif -override INSTALLPPULINKFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)) -endif - -ifdef INSTALLEXEFILES -override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES)) -endif - -fpc_showinstall: $(SHOWINSTALLTARGET) -ifdef INSTALLEXEFILES - @$(ECHO) -e $(addprefix "\n"$(BININSTALLDIR)/,$(INSTALLEXEFILES)) -endif -ifdef INSTALLPPUFILES - @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFILES)) -ifneq ($(INSTALLPPULINKFILES),) - @$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES)) -endif -ifneq ($(wildcard $(LIBFULLNAME)),) - @$(ECHO) $(LIBINSTALLDIR)/$(LIBFULLNAME) -ifdef HASSHAREDLIB - @$(ECHO) $(LIBINSTALLDIR)/$(LIBNAME) -endif -endif -endif -ifdef EXTRAINSTALLFILES - @$(ECHO) -e $(addprefix "\n"$(DATAINSTALLDIR)/,$(EXTRAINSTALLFILES)) -endif - -fpc_install: $(INSTALLTARGET) -# Create UnitInstallFiles -ifdef INSTALLEXEFILES - $(MKDIR) $(BININSTALLDIR) -# Compress the exes if upx is defined -ifdef UPXPROG - -$(UPXPROG) $(INSTALLEXEFILES) -endif - $(INSTALLEXE) $(INSTALLEXEFILES) $(BININSTALLDIR) -endif -ifdef INSTALLPPUFILES - $(MKDIR) $(UNITINSTALLDIR) - $(INSTALL) $(INSTALLPPUFILES) $(UNITINSTALLDIR) -ifneq ($(INSTALLPPULINKFILES),) - $(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR) -endif -ifneq ($(wildcard $(LIBFULLNAME)),) - $(MKDIR) $(LIBINSTALLDIR) - $(INSTALL) $(LIBFULLNAME) $(LIBINSTALLDIR) -ifdef inUnix - ln -sf $(LIBFULLNAME) $(LIBINSTALLDIR)/$(LIBNAME) -endif -endif -endif -ifdef EXTRAINSTALLFILES - $(MKDIR) $(DATAINSTALLDIR) - $(INSTALL) $(EXTRAINSTALLFILES) $(DATAINSTALLDIR) -endif - -##################################################################### -# SourceInstall rules -##################################################################### - -.PHONY: fpc_sourceinstall - -ifndef SOURCETOPDIR -SOURCETOPDIR=$(BASEDIR) -endif - -fpc_sourceinstall: clean - $(MKDIR) $(SOURCEINSTALLDIR) - $(COPYTREE) $(SOURCETOPDIR) $(SOURCEINSTALLDIR) - -##################################################################### -# exampleinstall rules -##################################################################### - -.PHONY: fpc_exampleinstall - -fpc_exampleinstall: $(addsuffix _clean,$(EXAMPLEDIROBJECTS)) -ifdef EXAMPLESOURCEFILES - $(MKDIR) $(EXAMPLEINSTALLDIR) - $(COPY) $(EXAMPLESOURCEFILES) $(EXAMPLEINSTALLDIR) -endif -ifdef EXAMPLEDIROBJECTS -ifndef EXAMPLESOURCEFILES - $(MKDIR) $(EXAMPLEINSTALLDIR) -endif - $(COPYTREE) $(addsuffix /*,$(EXAMPLEDIROBJECTS)) $(EXAMPLEINSTALLDIR) -endif - -##################################################################### -# Zip -##################################################################### - -.PHONY: fpc_zipinstall - -# Create suffix to add -ifndef PACKAGESUFFIX -PACKAGESUFFIX=$(OS_TARGET) -ifeq ($(OS_TARGET),go32v2) -PACKAGESUFFIX=go32 -endif -ifeq ($(OS_TARGET),win32) -PACKAGESUFFIX=w32 -endif -endif - -# Temporary path to pack a file -ifndef PACKDIR -ifndef inUnix -PACKDIR=$(BASEDIR)/pack_tmp -else -PACKDIR=/tmp/fpc-pack -endif -endif - -# Maybe create default zipname from packagename -ifndef ZIPNAME -ifdef PACKAGENAME -ZIPNAME=$(PACKAGEPREFIX)$(PACKAGENAME)$(PACKAGESUFFIX) -endif -endif - -# Use tar by default under linux -ifndef USEZIP -ifdef inUnix -USETAR=1 -endif -endif - -fpc_zipinstall: -ifndef ZIPNAME - @$(ECHO) "Please specify ZIPNAME!" - @exit 1 -else - $(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR) -ifdef USETAR - $(DEL) $(DESTZIPDIR)/$(ZIPNAME)$(TAREXT) - cd $(PACKDIR) ; $(TARPROG) cf$(TAROPT) $(DESTZIPDIR)/$(ZIPNAME)$(TAREXT) * ; cd $(BASEDIR) -else - $(DEL) $(DESTZIPDIR)/$(ZIPNAME)$(ZIPEXT) - cd $(PACKDIR) ; $(ZIPPROG) -Dr $(ZIPOPT) $(DESTZIPDIR)/$(ZIPNAME)$(ZIPEXT) * ; cd $(BASEDIR) -endif - $(DELTREE) $(PACKDIR) -endif - -.PHONY: fpc_zipsourceinstall - -fpc_zipsourceinstall: - $(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall PACKAGESUFFIX=src - -.PHONY: fpc_zipexampleinstall - -fpc_zipexampleinstall: - $(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall PACKAGESUFFIX=exm - -##################################################################### -# Clean rules -##################################################################### - -.PHONY: fpc_clean fpc_cleanall fpc_distclean - -ifdef EXEFILES -override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES)) -endif - -ifdef EXTRACLEANUNITS -override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRACLEANUNITS)) -endif - -ifdef CLEANPPUFILES -override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES)) -# Get the .o and .a files created for the units -ifdef PPUFILES -CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES)) -else -CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(LIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))) -endif -override CLEANPPULINKFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)) -endif - -fpc_clean: $(CLEANTARGET) -ifdef CLEANEXEFILES - -$(DEL) $(CLEANEXEFILES) -endif -ifdef CLEANPPUFILES - -$(DEL) $(CLEANPPUFILES) -endif -ifneq ($(CLEANPPULINKFILES),) - -$(DEL) $(CLEANPPULINKFILES) -endif -ifdef CLEANRSTFILES - -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES)) -endif -ifdef EXTRACLEANFILES - -$(DEL) $(EXTRACLEANFILES) -endif -ifdef LIBNAME - -$(DEL) $(LIBNAME) $(LIBFULLNAME) -endif - -$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE) - -fpc_distclean: fpc_clean - -# Also run clean first if targetdir is set. Unittargetdir is always -# set if targetdir or unittargetdir is specified -ifdef UNITTARGETDIR -TARGETDIRCLEAN=fpc_clean -endif - -fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN) -ifdef CLEANEXEFILES - -$(DEL) $(CLEANEXEFILES) -endif - -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT) - -$(DELTREE) *$(SMARTEXT) - -$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE) - -##################################################################### -# Info rules -##################################################################### - -.PHONY: fpc_info fpc_cfginfo fpc_objectinfo fpc_toolsinfo fpc_installinfo \ - fpc_dirinfo - -fpc_info: $(INFOTARGET) - -fpc_infocfg: - @$(ECHO) - @$(ECHO) == Configuration info == - @$(ECHO) - @$(ECHO) FPC....... $(FPC) - @$(ECHO) Version... $(FPC_VERSION) - @$(ECHO) CPU....... $(CPU_TARGET) - @$(ECHO) Source.... $(OS_SOURCE) - @$(ECHO) Target.... $(OS_TARGET) - @$(ECHO) - -fpc_infoobjects: - @$(ECHO) - @$(ECHO) == Object info == - @$(ECHO) - @$(ECHO) LoaderObjects..... $(LOADEROBJECTS) - @$(ECHO) UnitObjects....... $(UNITOBJECTS) - @$(ECHO) ExeObjects........ $(EXEOBJECTS) - @$(ECHO) - @$(ECHO) ExtraCleanUnits... $(EXTRACLEANUNITS) - @$(ECHO) ExtraCleanFiles... $(EXTRACLEANFILES) - @$(ECHO) - @$(ECHO) ExtraInstallUnits. $(EXTRAINSTALLUNITS) - @$(ECHO) ExtraInstallFiles. $(EXTRAINSTALLFILES) - @$(ECHO) - -fpc_infoinstall: - @$(ECHO) - @$(ECHO) == Install info == - @$(ECHO) -ifdef DATE - @$(ECHO) DateStr.............. $(DATESTR) -endif -ifdef PACKAGEPREFIX - @$(ECHO) PackagePrefix........ $(PACKAGEPREFIX) -endif -ifdef PACKAGENAME - @$(ECHO) PackageName.......... $(PACKAGENAME) -endif - @$(ECHO) PackageSuffix........ $(PACKAGESUFFIX) - @$(ECHO) - @$(ECHO) BaseInstallDir....... $(BASEINSTALLDIR) - @$(ECHO) BinInstallDir........ $(BININSTALLDIR) - @$(ECHO) LibInstallDir........ $(LIBINSTALLDIR) - @$(ECHO) UnitInstallDir....... $(UNITINSTALLDIR) - @$(ECHO) SourceInstallDir..... $(SOURCEINSTALLDIR) - @$(ECHO) DocInstallDir........ $(DOCINSTALLDIR) - @$(ECHO) DataInstallDir....... $(DATAINSTALLDIR) - @$(ECHO) - @$(ECHO) DestZipDir........... $(DESTZIPDIR) - @$(ECHO) ZipName.............. $(ZIPNAME) - @$(ECHO) - -##################################################################### -# Local Makefile -##################################################################### - -ifneq ($(wildcard fpcmake.loc),) -include fpcmake.loc -endif - diff --git a/examples/gui/layouttest/Makefile.fpc b/examples/gui/layouttest/Makefile.fpc deleted file mode 100644 index f779ccca..00000000 --- a/examples/gui/layouttest/Makefile.fpc +++ /dev/null @@ -1,10 +0,0 @@ -# -# Makefile.fpc for fpGUI LayoutTest example -# - -[targets] -programs=layouttest - -[require] -options=-S2h -packages=fcl fpgfx fpgui diff --git a/examples/gui/layouttest/boxform.frm b/examples/gui/layouttest/boxform.frm deleted file mode 100644 index b2dc8320..00000000 --- a/examples/gui/layouttest/boxform.frm +++ /dev/null @@ -1,24 +0,0 @@ -object BoxWindow: TBoxWindow - Text = 'Box layout' - BorderWidth = 8 - object Layout: TFBoxLayout - Spacing = 8 - Orientation = Vertical - object BoxLayout: TFBoxLayout - Spacing = 4 - object Button1: TFButton - Text = 'Button 1' - end - object Button2: TFButton - Text = 'Button 2' - end - object Button3: TFButton - Text = 'Button 3' - end - end - object FlipButton: TFButton - Text = 'Switch to vertical' - OnClick = FlipOrientation - end - end -end diff --git a/examples/gui/layouttest/layouttest.lpi b/examples/gui/layouttest/layouttest.lpi deleted file mode 100644 index a37c989e..00000000 --- a/examples/gui/layouttest/layouttest.lpi +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/gui/layouttest/layouttest.pas b/examples/gui/layouttest/layouttest.pas deleted file mode 100644 index acee6124..00000000 --- a/examples/gui/layouttest/layouttest.pas +++ /dev/null @@ -1,417 +0,0 @@ -program LayoutTest; - -uses - Classes - ,fpGUI - ,fpguipackage - ,fpGFX - ,SysUtils - ; - -type - // Forward declarations - TDockingForm = class; - TGridForm = class; - TBoxForm = class; - TSimpleForm = class; - TFixedForm = class; - - { TMainForm } - - TMainForm = class(TFForm) - private - DockingForm: TDockingForm; - GridForm: TGridForm; - BoxForm: TBoxForm; - SimpleForm: TSimpleForm; - FixedForm: TFixedForm; - procedure BuildGUI; - public - constructor Create(AOwner: TComponent); override; - destructor Destroy; override; - published - Box: TFBoxLayout; - Title: TFLabel; - SimpleBtn, FixedBtn, BoxBtn, GridBtn, DockingBtn, ExitBtn: TFButton; - Separator: TSeparator; - procedure SimpleBtnClicked(Sender: TObject); - procedure FixedBtnClicked(Sender: TObject); - procedure DockingBtnClicked(Sender: TObject); - procedure GridBtnClicked(Sender: TObject); - procedure BoxBtnClicked(Sender: TObject); - procedure ExitBtnClicked(Sender: TObject); - end; - - - TSimpleForm = class(TFForm) - Button: TFButton; - public - constructor Create(AOwner: TComponent); override; - end; - - - TFixedForm = class(TFForm) - Layout: TFFixedLayout; - Button1, Button2: TFButton; - public - constructor Create(AOwner: TComponent); override; - end; - - - TDockingForm = Class(TFForm) - Layout: TFDockingLayout; - Button1, Button2, Button3, Button4, Button5: TFButton; - ListBox: TFListBox; - public - constructor Create(AOwner: TComponent); override; - end; - - - TGridForm = Class(TFForm) - Layout: TFGridLayout; - Button1, Button2, Button3, Button4, Button5, Button6: TFButton; - public - constructor Create(AOwner: TComponent); override; - end; - - - TBoxForm = Class(TFForm) - Layout, BoxLayout: TFBoxLayout; - Button1, Button2, Button3, FlipButton: TFButton; - procedure FlipOrientation(Sender: TObject); - public - constructor Create(AOwner: TComponent); override; - end; - - -// ------------------------------------------------------------------- -// TMainForm -// ------------------------------------------------------------------- - -procedure TMainForm.BuildGUI; -begin - Name := 'MainForm'; - BorderWidth := 8; - Text := 'Layout Demo'; - - Box := TFBoxLayout.Create(self); - Box.Spacing := 8; - Box.Orientation := Vertical; - InsertChild(Box); - - Title := TFLabel.Create('Choose a test Window:', self); - Box.InsertChild(Title); - - SimpleBtn := TFButton.Create('Simple layout', self); - SimpleBtn.CanExpandWidth := True; - SimpleBtn.OnClick := @SimpleBtnClicked; - Box.InsertChild(SimpleBtn); - - FixedBtn := TFButton.Create('Fixed layout', self); - FixedBtn.CanExpandWidth := True; - FixedBtn.OnClick := @FixedBtnClicked; - Box.InsertChild(FixedBtn); - - BoxBtn := TFButton.Create('Boxed layout', self); - BoxBtn.CanExpandWidth := True; - BoxBtn.OnClick := @BoxBtnClicked; - Box.InsertChild(BoxBtn); - - GridBtn := TFButton.Create('Grid layout', self); - GridBtn.CanExpandWidth := True; - GridBtn.OnClick := @GridBtnClicked; - Box.InsertChild(GridBtn); - - DockingBtn := TFButton.Create('Docking layout', self); - DockingBtn.CanExpandWidth := True; - DockingBtn.OnClick := @DockingBtnClicked; - Box.InsertChild(DockingBtn); - - Separator := TSeparator.Create(self); - Box.InsertChild(Separator); - - ExitBtn := TFButton.Create('Exit', self); - ExitBtn.CanExpandWidth := True; - ExitBtn.OnClick := @ExitBtnClicked; - Box.InsertChild(ExitBtn); -end; - -constructor TMainForm.Create(AOwner: TComponent); -begin - inherited Create(AOwner); - BuildGUI; -end; - -destructor TMainForm.Destroy; -begin - FixedForm.Free; - GridForm.Free; - BoxForm.Free; - DockingForm.Free; - SimpleForm.Free; - inherited Destroy; -end; - - -procedure TMainForm.SimpleBtnClicked(Sender: TObject); -begin - if not Assigned(SimpleForm) then - SimpleForm := TSimpleForm.Create(self); - SimpleForm.Show; -end; - - -type - TFriend = class(TFFixedLayout) - end; - -procedure TMainForm.FixedBtnClicked(Sender: TObject); -begin - if not Assigned(FixedForm) then - FixedForm := TFixedForm.Create(self); - FixedForm.Show; -end; - - -procedure TMainForm.DockingBtnClicked(Sender: TObject); -begin - if not Assigned(DockingForm) then - DockingForm := TDockingForm.Create(self); - DockingForm.Show; -end; - - -procedure TMainForm.GridBtnClicked(Sender: TObject); -var - f, f2: TStream; -begin - if not Assigned(GridForm) then - GridForm := TGridForm.Create(self); - GridForm.Show; - { Output the structure of GridForm.Layout } - f := TMemoryStream.Create; - f.WriteComponent(GridForm.Layout); - f2 := THandleStream.Create(StdOutputHandle); - f.Position := 0; - ObjectBinaryToText(f, f2); - f2.Free; - f.Free; -end; - - -procedure TMainForm.BoxBtnClicked(Sender: TObject); -begin - if not Assigned(BoxForm) then - BoxForm := TBoxForm.Create(self); - BoxForm.Show; -end; - - -procedure TMainForm.ExitBtnClicked(Sender: TObject); -begin - Close; -end; - - -// ------------------------------------------------------------------- -// TSimpleForm -// ------------------------------------------------------------------- - -constructor TSimpleForm.Create(AOwner: TComponent); -begin - inherited Create(AOwner); - - Text := 'Simple Layout'; - BorderWidth := 8; - - Button := TFButton.Create(Self); - Button.Text := 'A button...'; - Child := Button; -end; - - -// ------------------------------------------------------------------- -// TFixedForm -// ------------------------------------------------------------------- - -constructor TFixedForm.Create(AOwner: TComponent); -begin - inherited Create(AOwner); - - Text := 'Fixed Layout'; - BorderWidth := 8; - - Layout := TFFixedLayout.Create(Self); - Layout.Name := 'Layout'; - InsertChild(Layout); - - Button1 := TFButton.Create('A button', self); - Button1.Name := 'Button1'; - Layout.AddWidget(Button1, 20, 20); - - Button2 := TFButton.Create('Another button', self); - Button2.Name := 'Button2'; - Layout.AddWidget(Button2, 50, 100); - Button2.SetBounds(50, 100, 100, 25); // resize second button to show it works -end; - - -// ------------------------------------------------------------------- -// TDockingForm -// ------------------------------------------------------------------- - - -constructor TDockingForm.Create(AOwner: TComponent); -begin - inherited Create(AOwner); - - Text := 'Docking Layout'; - BorderWidth := 8; - - Layout := TFDockingLayout.Create(Self); - Layout.Name := 'Layout'; - InsertChild(Layout); - - Layout.AddWidget(TFButton.Create('Top Alignment', self), dmTop); - Layout.AddWidget(TFButton.Create('Bottom Alignment', self), dmBottom); - Layout.AddWidget(TFButton.Create('Left Alignment', self), dmLeft); - Layout.AddWidget(TFButton.Create('Right Alignment', self), dmRight); - - Layout.AddWidget(TFButton.Create('aaa (bottom)', self), dmBottom); - Layout.AddWidget(TFButton.Create('bbb (bottom)', self), dmBottom); - Layout.AddWidget(TFButton.Create('ccc (bottom)', self), dmBottom); - - ListBox := TFListBox.Create(self); - ListBox.Items.Add('Client Alignment'); - ListBox.Items.Add(''); - ListBox.Items.Add('procedure KeyPressed();'); - ListBox.Items.Add('procedure KeyReleased();'); - ListBox.Items.Add('procedure ButtonPressed();'); - ListBox.Items.Add('procedure ButtonReleased();'); - ListBox.Items.Add('procedure EnterWindow();'); - ListBox.Items.Add('procedure LeaveWindow();'); - ListBox.Items.Add('procedure PointerMoved();'); - ListBox.Items.Add('procedure Expose();'); - ListBox.Items.Add('procedure FocusIn();'); - ListBox.Items.Add('procedure FocusOut();'); - ListBox.Items.Add('procedure Map();'); - ListBox.Items.Add('procedure Unmap();'); - ListBox.Items.Add('procedure Reparent();'); - ListBox.Items.Add('procedure DestroyWindow();'); - ListBox.Items.Add('procedure Configure();'); - ListBox.Items.Add('procedure ClientMessage();'); - Layout.AddWidget(ListBox, dmClient); -end; - - -// ------------------------------------------------------------------- -// TGridForm -// ------------------------------------------------------------------- - -constructor TGridForm.Create(AOwner: TComponent); -begin - inherited Create(AOwner); - - Text := 'Grid Layout'; - BorderWidth := 8; - - Layout := TFGridLayout.Create(Self); - Layout.Name := 'Layout'; - Layout.RowCount := 4; - Layout.ColCount := 3; - InsertChild(Layout); - - Button1 := TFButton.Create('Top Left', Self); - Button1.Name := 'TopLeft'; - Layout.AddWidget(Button1, 0, 0, 1, 1); - - Button2 := TFButton.Create('Top Right', Self); - Button2.Name := 'TopRight'; - Layout.AddWidget(Button2, 2,0,1,1); - - Button3 := TFButton.Create(Self); - Button3.Name := 'CenterCenter'; - Button3.Text := 'Center Center'; - Layout.AddWidget(Button3, 1,1,1,1); - - Button4 := TFButton.Create('Bottom Left', Self); - Button4.Name := 'BottomLeft'; - Layout.AddWidget(Button4,0,2,1,1); - - Button5 := TFButton.Create('Bottom Right', Self); - Button5.Name := 'BottomRight'; - Layout.AddWidget(Button5, 2,2,1,1); - - Button6 := TFButton.Create('Span Columns', Self); - Button6.Name := 'BottomSpan'; - Layout.AddWidget(Button6, 0,3,3,1); -end; - - -// ------------------------------------------------------------------- -// TBoxForm -// ------------------------------------------------------------------- - -procedure TBoxForm.FlipOrientation(Sender: TObject); -begin - with BoxLayout do - begin - if Orientation = Horizontal then - begin - Orientation := Vertical; - FlipButton.Text:='Switch to horizontal'; - end - else - begin - Orientation := Horizontal; - FlipButton.text:='Switch to vertical'; - end; - end; { with } - - // A quick hack to get the Form to redraw correctly - Close; - Show; -end; - -constructor TBoxForm.Create(AOwner: TComponent); -begin - inherited Create(AOwner); - Text := 'Box Layout'; - BorderWidth := 8; - - Layout := TFBoxLayout.Create(self); - Layout.Spacing := 8; - Layout.Orientation := Vertical; - InsertChild(Layout); - - BoxLayout := TFBoxLayout.Create(self); - BoxLayout.Spacing := 4; - Layout.InsertChild(BoxLayout); - - Button1 := TFButton.Create('Button 1', self); - BoxLayout.InsertChild(Button1); - - Button2 := TFButton.Create('Button 2', self); - BoxLayout.InsertChild(Button2); - - Button3 := TFButton.Create('Button 3', self); - BoxLayout.InsertChild(Button3); - - FlipButton := TFButton.Create('Switch to vertical', self); - FlipButton.OnClick := @FlipOrientation; - Layout.InsertChild(FlipButton); -end; - - -var - MainForm: TMainForm; -begin - GFApplication.Initialize; - MainForm := TMainForm.Create(GFApplication); - try - MainForm.Show; - GFApplication.Run; - finally - MainForm.Free; - end; -end. -- cgit v1.2.3-70-g09d2