🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.delphi
Article #346557

Re: Rozszerzenie typu

#346557
From: Krzysztof Szyszka
Date: Mon, 09 Apr 2018 18:48
33 lines
2400 bytes
> Mam sobie komponent który posiada własność
>
>   property ProjectDialogAction: TProjectDialogAction
>        read FProjectDialogAction write SetProjectDialogAction;
>
> którego to definicja typu wygląda w ten sposob:
>
> type
>    TProjectDialogAction = (pdaCreate, pdaEdit, pdaRemove);
>
> nastepnie chce zbudować komponent dziedziczący po tym właśnie co zawiera powyższą własność i chce 
> by w komponencie tym dziedziczącym z powyższego znajodwała się analogiczna własnosc tylko z 
> rozszerzonym o jeden element typerm
>
> type
>    TProjectDialogAction = (pdaCreate, pdaEdit, pdaRemove, pdaFile);
>
> i teraz pytanie czy idzie to jakoś ładnie oprogramować w sensie takim bym w tym ostatecznym 
> komponencie nie musiał zakładać nowego typu tylko go rozszerzyć?

Typu wyliczeniowego nie da się rozszerzyć, ale można go przesłonić w drugim
module i to samo dotyczy property ProjectDialogAction. Podstawowe pytanie
jakie należy sobie zadać, to z jakiego poziomu potrzebujesz dostęp do tego
rozszerzonego typu i property. Jeśli tylko z tego nowego modułu (lub innych
które mają go podane w uses) to rób śmiało, ale moduły które mają w uses
tylko moduł podstawowy nie będą widzieć property w rozszerzonej wersji.

-- 
pozdrowienia
Krzysztof Szyszka, X-Files Software
Developer of X-DBGrid Component
Embarcadero Technology Partner
http://www.x-files.pl/
Technical Details
Message-ID: <pagcj3$b5m$1@node1.news.atman.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
References: <5acba18c$0$31350$65785112@news.neostrada.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
From: "Krzysztof Szyszka" <nomail@gazeta.pl>
Newsgroups: pl.comp.lang.delphi
Subject: Re: Rozszerzenie typu
Date: Mon, 9 Apr 2018 20:48:50 +0200
Organization: ATMAN - ATM S.A.
Lines: 34
Message-ID: <pagcj3$b5m$1@node1.news.atman.pl>
References: <5acba18c$0$31350$65785112@news.neostrada.pl>
NNTP-Posting-Host: 89-77-104-79.dynamic.chello.pl
Mime-Version: 1.0
X-Trace: node1.news.atman.pl 1523299747 11446 89.77.104.79 (9 Apr 2018 18:49:07 GMT)
X-Complaints-To: usenet@atman.pl
NNTP-Posting-Date: Mon, 9 Apr 2018 18:49:07 +0000 (UTC)
In-Reply-To: <5acba18c$0$31350$65785112@news.neostrada.pl>
X-Priority: 3
X-MSMail-Priority: Normal
Importance: Normal
X-Newsreader: Microsoft Windows Live Mail 16.4.3528.331
X-MimeOLE: Produced By Microsoft MimeOLE V16.4.3528.331
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit