Representing Delphi set in a GUI

Does anyone have any suggestions for representing an enumerated Set in the GUI?

Thanks,

--
Warm Regards,

Lee
0
Lee
8/18/2008 6:10:23 PM
embarcadero.delphi.general 4258 articles. 0 followers. Follow

18 Replies
1106 Views

Similar Articles

[PageSpeed] 26
Get it on Google Play
Get it on Apple App Store

Lee Jenkins wrote:

> Does anyone have any suggestions for representing an enumerated Set
> in the GUI?

I usually use a TChecklistbox for that. One item per element of the
enumeration, checked items included in the set on display.

-- 
Peter Below (TeamB)  
Don't be a vampire (http://slash7.com/pages/vampires), 
use the newsgroup archives :
http://www.tamaracka.com/search.htm
http://groups.google.com
0
Peter
8/18/2008 6:52:20 PM
Peter Below wrote:
> Lee Jenkins wrote:
> 
>> Does anyone have any suggestions for representing an enumerated Set
>> in the GUI?
> 
> I usually use a TChecklistbox for that. One item per element of the
> enumeration, checked items included in the set on display.
> 

Interesting.  Never had an occasion to use the TCheckListBox.  Peter, how do you 
enumerate the set, do you mind?

Thanks again,

Warm Regards,

Lee
0
Lee
8/18/2008 7:06:45 PM
Lee Jenkins wrote:
> Peter Below wrote:
>> Lee Jenkins wrote:
>>
>>> Does anyone have any suggestions for representing an enumerated Set
>>> in the GUI?
>> I usually use a TChecklistbox for that. One item per element of the
>> enumeration, checked items included in the set on display.
>>
> 
> Interesting.  Never had an occasion to use the TCheckListBox.  Peter, how do you 
> enumerate the set, do you mind?
> 

Let me explain.  I want to create a mediator for it so I'll know nothing about 
the the set as far as its range, etc.

--
Warm Regards,

Lee
0
Lee
8/18/2008 7:08:54 PM
Lee Jenkins wrote:
> Lee Jenkins wrote:
>> Peter Below wrote:
>>> Lee Jenkins wrote:
>>>
>>>> Does anyone have any suggestions for representing an enumerated Set
>>>> in the GUI?
>>> I usually use a TChecklistbox for that. One item per element of the
>>> enumeration, checked items included in the set on display.
>>>
>> Interesting.  Never had an occasion to use the TCheckListBox.  Peter, how do you 
>> enumerate the set, do you mind?
>>
> 
> Let me explain.  I want to create a mediator for it so I'll know nothing about 
> the the set as far as its range, etc.
> 

Only needed it one place in the application so I hard coded a specialized 
mediator for it.  It' not every day when I have to represent a set in the GUI in 
this particular way so I'll delve into how to do this when I have more time...

To the the FutureFollowUps folder...

So solved (sort of) for now.

--
Warm Regards,

Lee
0
Lee
8/18/2008 9:12:56 PM
Lee Jenkins wrote:

> Interesting.  Never had an occasion to use the TCheckListBox.  Peter,
> how do you enumerate the set, do you mind?

Here's an example of enumerating a set. Modify to suit <g>

uses
  TypInfo;

function SetToString(ATypeInfo: PTypeInfo; Value: Integer; Brackets:
Boolean): string;
var
  S: TIntegerSet;
  BaseTypeInfo: PTypeInfo;
  I: Integer;
begin
  Result := '';
  Integer(S) := Value;
  BaseTypeInfo := GetTypeData(ATypeInfo)^.CompType^;
  for I := 0 to SizeOf(Integer) * 8 - 1 do
    if I in S then
    begin
      if Result <> '' then
        Result := Result + ',';
      Result := Result + GetEnumName(BaseTypeInfo, I);
    end;
  if Brackets then
    Result := '[' + Result + ']';
end;

eg:

  SetToString(TypeInfo(TBorderIcon), AForm.BorderIcons, True);

-- 
Dave Nottage [TeamB]
0
Dave
8/18/2008 10:28:27 PM
Dave,

| Here's an example of enumerating a set. Modify to suit <g>

What if one has more than 32 elements in a set? <g>

--
   Q

08/18/2008 16:01:15

XanaNews Version 1.18.1.52  [Everyone's & Q's Mods]
0
Quentin
8/18/2008 11:02:05 PM
> {quote:title=Quentin Correll wrote:}{quote}
> Dave,
> 
> | Here's an example of enumerating a set. Modify to suit <g>
> 
> What if one has more than 32 elements in a set? <g>
> 
> --
>    Q
> 
> 08/18/2008 16:01:15
> 
> XanaNews Version 1.18.1.52  [Everyone's & Q's Mods]


This is a more generic approach, I think. Again, adapt as needed:

type TStatusOption  = (soQuoteOnly{0}, soUnknown{1}, soOutstanding{2}, soDelivered{3},
                       soReceived{4},  soCompleted{5},   soCollected{6}, soAll{high(TStatusOption)});

type TStatusOptions = set of TStatusOption;

function StatusList : tStringList;                       // return a stringlist containing state names
function StatusName(aState:tStatusOption):string;        // return the name of a specific status option
function StatusValue(aStateName: string): tStatusOption; // return the state value for a state name

....

{*------------------------------------------------------------------------------
return a stringlist containing state names
attaches the state value in the object reference

caller is responsible for destruction of result
------------------------------------------------------------------------------*}
function StatusList : tStringList;
var soState      : TStatusOption;
begin
  result := tStringList.create;

//<note> how do you escape the square brackets in this forum?
// you need to change the angle brackets <> 
//    to square pascal set brackets in the following line
// the square brackets turn the line into a URL

  for soState in <low(tStatusOption)..high(tStatusOption)> do begin
     result.AddObject(StatusName(soState), tObject(soState));
  end;
end;

{*------------------------------------------------------------------------------
return the name of a specific status option
------------------------------------------------------------------------------*}
function StatusName(aState:tStatusOption):string;
begin
  // get raw name
  result := GetEnumName(TypeInfo(tStatusOption), ord(aState));
  // strip off the 'so' prefix
  result := copy(result,3,length(result));
end;

{*------------------------------------------------------------------------------
return the state value for a state name
------------------------------------------------------------------------------*}
function StatusValue(aStateName: string): tStatusOption; //
var soState      : TStatusOption;
    sDesired     : string;
    sCandidate   : string;
begin
  result   := soUnknown;
  sDesired := uppercase(aStateName);
  if (ansileftstr(sDesired,2) = 'SO') then begin
     sDesired := copy(sDesired,3,length(sDesired)); // strip off prefix
  end;
  // find the desired state name in the enumeration

// note again <> => square brackets

  for soState in <low(tStatusOption)..high(tStatusOption)> do begin
     sCandidate := uppercase(StatusName(soState));
     if sCandidate = sDesired then begin
        result := soState;
        break;
     end;
  end;
end;

-----------------------------------
Keith

Edited by: Keith Latham on Aug 19, 2008 9:10 AM
0
Keith
8/18/2008 11:14:46 PM
Keith Latham wrote:

> This is a more generic approach, I think. Again, adapt as needed:

My idea of "generic" must be vastly different to yours.

-- 
Dave Nottage [TeamB]
0
Dave
8/18/2008 11:14:52 PM
> {quote:title=Dave Nottage wrote:}{quote}
> Keith Latham wrote:
> 
> > This is a more generic approach, I think. Again, adapt as needed:
> 
> My idea of "generic" must be vastly different to yours.
> 
> -- 
> Dave Nottage [TeamB]

Why vastly different?

Quentin asked about more than 32 items. 

My method handles any number of elements and demonstrates two way access to element values and names, this is what I meant by more generic.

However it does not work on assigned enums ( statevalue=47 ) because they do not have RTTI
0
Keith
8/18/2008 11:24:50 PM
Keith,

| This is a more generic approach, I think. Again, adapt as needed:

Thanks!

I think I'll file that under "Things I may need someday."

--
   Q

08/18/2008 16:40:20

XanaNews Version 1.18.1.52  [Everyone's & Q's Mods]
0
Quentin
8/18/2008 11:41:23 PM
Dave Nottage wrote:
> Lee Jenkins wrote:
> 
>> Interesting.  Never had an occasion to use the TCheckListBox.  Peter,
>> how do you enumerate the set, do you mind?
> 
> Here's an example of enumerating a set. Modify to suit <g>
> 
> uses
>   TypInfo;
> 
> function SetToString(ATypeInfo: PTypeInfo; Value: Integer; Brackets:
> Boolean): string;
> var
>   S: TIntegerSet;
>   BaseTypeInfo: PTypeInfo;
>   I: Integer;
> begin
>   Result := '';
>   Integer(S) := Value;
>   BaseTypeInfo := GetTypeData(ATypeInfo)^.CompType^;
>   for I := 0 to SizeOf(Integer) * 8 - 1 do
>     if I in S then
>     begin
>       if Result <> '' then
>         Result := Result + ',';
>       Result := Result + GetEnumName(BaseTypeInfo, I);
>     end;
>   if Brackets then
>     Result := '[' + Result + ']';
> end;
> 
> eg:
> 
>   SetToString(TypeInfo(TBorderIcon), AForm.BorderIcons, True);
> 

Thanks Dave,

--
Warm Regards,

Lee
0
Lee
8/19/2008 1:36:33 AM
Keith Latham wrote:
>> {quote:title=Quentin Correll wrote:}{quote}
>> Dave,
>>
>> | Here's an example of enumerating a set. Modify to suit <g>
>>
>> What if one has more than 32 elements in a set? <g>
>>
> 
> This is a more generic approach, I think. Again, adapt as needed:
> 
> function StatusList : tStringList;
> var soState      : TStatusOption;
> begin
>   result := tStringList.create;
> 
> //<note> how do you escape the square brackets in this forum?
> // you need to change the angle brackets <> 
> //    to square pascal set brackets in the following line
> // the square brackets turn the line into a URL
> 
>   for soState in <low(tStatusOption)..high(tStatusOption)> do begin
>      result.AddObject(StatusName(soState), tObject(soState));
>   end;
> end;
> 
> {*------------------------------------------------------------------------------
> return the name of a specific status option
> ------------------------------------------------------------------------------*}
> function StatusName(aState:tStatusOption):string;
> begin
>   // get raw name
>   result := GetEnumName(TypeInfo(tStatusOption), ord(aState));
>   // strip off the 'so' prefix
>   result := copy(result,3,length(result));
> end;
> 
> {*------------------------------------------------------------------------------
> return the state value for a state name
> ------------------------------------------------------------------------------*}
> function StatusValue(aStateName: string): tStatusOption; //
> var soState      : TStatusOption;
>     sDesired     : string;
>     sCandidate   : string;
> begin
>   result   := soUnknown;
>   sDesired := uppercase(aStateName);
>   if (ansileftstr(sDesired,2) = 'SO') then begin
>      sDesired := copy(sDesired,3,length(sDesired)); // strip off prefix
>   end;
>   // find the desired state name in the enumeration
> 
> // note again <> => square brackets
> 
>   for soState in <low(tStatusOption)..high(tStatusOption)> do begin
>      sCandidate := uppercase(StatusName(soState));
>      if sCandidate = sDesired then begin
>         result := soState;
>         break;
>      end;
>   end;
> end;
> 
> -----------------------------------
> Keith
> 

Slick.  Ready to apply to any TStrings property like the .Items property of the 
TCheckListBox that Peter suggested.

-- 
Warm Regards,

Lee
0
Lee
8/19/2008 1:50:03 AM
> {quote:title=Lee Jenkins wrote:}{quote}
> 
> Slick.  Ready to apply to any TStrings property like the .Items property of the 
> TCheckListBox that Peter suggested.
> 
> -- 
> Warm Regards,
> 
> Lee

Thanks

Notice however that my suite of routines is not "generic" in the sense that Dave Nottage would like. He passes the type info into his routine so its "generic" for any enumerated set. My suite of routines are specific to a particular set; the typeinfo is determined inside the method; so if you have several sets you need several suites. Seems to me a little thought could combine the two approaches to get the best of both worlds. I might think about it next time I need it. 

And yeah, that is the purpose of the stringlist output. I usually use the output in a combobox, but checkboxes and radiogroups are appropriate under various conditions.
0
Keith
8/19/2008 10:40:06 AM
From our component library:

procedure TPsStateItemList.AddEnumValues(TypeInfo: PTypeInfo);
var
   P: Integer;
   T: PTypeData;
begin
   T := GetTypeData(GetTypeData(TypeInfo)^.BaseType^);
   for P := T^.MinValue to T^.MaxValue do
     AddState(GetEnumName(TypeInfo, P), P);
end;

Replace AddState with, for example,

StringList.AddObject(GetEnumName(TypeInfo, P), TObject(P))

(Keith's version strips the first lowercase characters from the 
GetEnumName - which would be a good addition here, too)

You can then get the enum value back from the list with

TYourEnumType(StringList.Objects[StringList.ItemIndex]);

Combine with bits of Dave's code to get it working with sets.

BR, Jouni
0
Jouni
8/19/2008 11:04:15 AM
Lee Jenkins wrote:

> Lee Jenkins wrote:
> > Peter Below wrote:
> >> Lee Jenkins wrote:
> > > 
> >>> Does anyone have any suggestions for representing an enumerated
> Set >>> in the GUI?
> >> I usually use a TChecklistbox for that. One item per element of the
> >> enumeration, checked items included in the set on display.
> > > 
> > 
> > Interesting.  Never had an occasion to use the TCheckListBox.
> > Peter, how do you enumerate the set, do you mind?
> > 
> 
> Let me explain.  I want to create a mediator for it so I'll know
> nothing about the the set as far as its range, etc.

The mediator needs to have available the typeinfo reference for the
enumerated type (Typeinfo(TMyEnumType) gets you that as an opaque
pointer). With that you can use routines from the TypInfo unit to
figure out low and high bounds of the type (the matching ordinal values
in fact), from that you can deduce the the size of a set of that type
and get the string names for the enumeration members. If you don't want
to display the enum member names as they appear in the source code the
mediator would also need an array of display strings to use instead.
You have to use the ordinal values of the enumerated type as index if
you want this to be generic.

-- 
Peter Below (TeamB)  
Don't be a vampire (http://slash7.com/pages/vampires), 
use the newsgroup archives :
http://www.tamaracka.com/search.htm
http://groups.google.com
0
Peter
8/19/2008 5:10:45 PM
Peter Below wrote:
> Lee Jenkins wrote:
> 
>> Lee Jenkins wrote:
>>> Peter Below wrote:
>>>> Lee Jenkins wrote:
>>>>
>>>>> Does anyone have any suggestions for representing an enumerated
>> Set >>> in the GUI?
>>>> I usually use a TChecklistbox for that. One item per element of the
>>>> enumeration, checked items included in the set on display.
>>>>
>>> Interesting.  Never had an occasion to use the TCheckListBox.
>>> Peter, how do you enumerate the set, do you mind?
>>>
>> Let me explain.  I want to create a mediator for it so I'll know
>> nothing about the the set as far as its range, etc.
> 
> The mediator needs to have available the typeinfo reference for the
> enumerated type (Typeinfo(TMyEnumType) gets you that as an opaque
> pointer). With that you can use routines from the TypInfo unit to
> figure out low and high bounds of the type (the matching ordinal values
> in fact), from that you can deduce the the size of a set of that type
> and get the string names for the enumeration members. If you don't want
> to display the enum member names as they appear in the source code the
> mediator would also need an array of display strings to use instead.
> You have to use the ordinal values of the enumerated type as index if
> you want this to be generic.
> 

Nice.  Thank you.

--
Warm Regards,

Lee
0
Lee
8/20/2008 3:21:18 AM
Dave Nottage wrote:

> 
> Here's an example of enumerating a set. Modify to suit <g>
> 
> uses
>   TypInfo;
> 
> function SetToString(ATypeInfo: PTypeInfo; Value: Integer; Brackets:
> Boolean): string;
> var
>   S: TIntegerSet;
>   BaseTypeInfo: PTypeInfo;
>   I: Integer;
> begin
>   Result := '';
>   Integer(S) := Value;
>   BaseTypeInfo := GetTypeData(ATypeInfo)^.CompType^;
>   for I := 0 to SizeOf(Integer) * 8 - 1 do
>     if I in S then
>     begin
>       if Result <> '' then
>         Result := Result + ',';
>       Result := Result + GetEnumName(BaseTypeInfo, I);
>     end;
>   if Brackets then
>     Result := '[' + Result + ']';
> end;
> 
> eg:
> 
>   SetToString(TypeInfo(TBorderIcon), AForm.BorderIcons, True);

Very interesting. Caused me to lookup rtti in delphi and found this
article by brian long (about.com also has more about using rtti
including a ref to this article).

http://www.blong.com/Conferences/BorConUK98/DelphiRTTI/CB140.htm

Thanks for bring this up. As I understand it, all the rtti is included
in the exe whether you refer to it or not. I suspect that enumerated
sets would not be included unless you used the GetEnumName on them. If
anyone knows different, it would be nice to know.
0
Joe
8/20/2008 9:56:43 PM
> {quote:title=Joe Hicks wrote:}{quote}
> Dave Nottage wrote:
> 
> > 
> > Here's an example of enumerating a set. Modify to suit <g>
> > 
> > uses
> >   TypInfo;
> > 
> > function SetToString(ATypeInfo: PTypeInfo; Value: Integer; Brackets:
> > Boolean): string;
> > var
> >   S: TIntegerSet;
> >   BaseTypeInfo: PTypeInfo;
> >   I: Integer;
> > begin
> >   Result := '';
> >   Integer(S) := Value;
> >   BaseTypeInfo := GetTypeData(ATypeInfo)^.CompType^;
> >   for I := 0 to SizeOf(Integer) * 8 - 1 do
> >     if I in S then
> >     begin
> >       if Result <> '' then
> >         Result := Result + ',';
> >       Result := Result + GetEnumName(BaseTypeInfo, I);
> >     end;
> >   if Brackets then
> >     Result := '[' + Result + ']';
> > end;
> > 
> > eg:
> > 
> >   SetToString(TypeInfo(TBorderIcon), AForm.BorderIcons, True);
> 
> Very interesting. Caused me to lookup rtti in delphi and found this
> article by brian long (about.com also has more about using rtti
> including a ref to this article).
> 
> http://www.blong.com/Conferences/BorConUK98/DelphiRTTI/CB140.htm
> 
> Thanks for bring this up. As I understand it, all the rtti is included
> in the exe whether you refer to it or not. I suspect that enumerated
> sets would not be included unless you used the GetEnumName on them. If
> anyone knows different, it would be nice to know.


RTTI is available for enumerated sets UNLESS you explicitly assign the elements a value.

so this has RTTI:

type TStatusOption  = (soQuoteOnly{0}, soUnknown{1}, soOutstanding{2}, soDelivered{3},
                       soReceived{4},  soCompleted{5},   soCollected{6}, soAll{high(TStatusOption)});

this doesn't:

type TStatusOption  = (soQuoteOnly=0, soUnknown=10, soOutstanding=20, soDelivered=30,
                       soReceived=40,  soCompleted=50,   soCollected=60, soAll=999);
0
Keith
8/21/2008 12:38:15 AM
Reply:

Similar Artilces:

Delphi and Delphi for .Net
It seems that Delphi for .Net is slower than Delphi Win32 native applicaiton. I would like to know is it true all .Net application is slower than Win32 native applicaiton or it is Delphi for .Net only. Your information is great appreciated, Inung On 2011-06-21 18:20:17 +0100, Inung Huang said: > It seems that Delphi for .Net is slower than Delphi Win32 native applicaiton. > I would like to know is it true all .Net application is slower than > Win32 native applicaiton or it is Delphi for .Net only. If you are only running the code in the application once then, yes, yo...

SEPA components for Delphi with Source Code (Delphi 5
Hi all, in the european union change next year the Bankingformat to the SEPA Format. All peoples and companies must change the bankingssoftware and the costumer data form acountnummers in the new IBAN and BIC numbers. See: http://www.arma-it.de/shop/artikelueber.php?wgruppeid=211&wgruppe_offen=211 Functions: - generate SEPA XML'S - Calc IBAN - BIC Database (DE,AT and CH) Questions: vertrieb@arma-it.de PS: Bankinssoftware for Develpoers (Germany only) http://www.arma-it.de/shop/artikelueber.php?wgruppeid=212&wgruppe_offen=212 El 26/10/13 21:38, A...

Delphi and virus, or virus and Delphi.
Hi all. There is some discussion about a 'new' virus, that targets Delphi (and developers). The article is in danish: <http://www.version2.dk/artikel/11833-delphi-udviklere-jages-af-ny-type-malware> but refers to this article: <http://news.cnet.com/8301-27080_3-10312628-245.html> From the Danish article POV, it seems like Delphi itself is vunerable, which is not true. As far as i can see, is the attack vector, injection of (source) code in the 'Sysconst' unit. What's going on? -- Best regards Stig Johansen Perhaps checking other thre...

Delphi 5 to Delphi 6 and up
Dear List, Trying to add 7Zip compression support to my delphi application. I am using the ported 7Zip sdk (see their website, they have a link). I am stumped on how to rewrite a single function: function ReverseDecode(var Models: array of SmallInt; ....): ..... where the input is mostly a fixed size array of SmallInt. This code perfectly compiles and functions in Delphi 6 and up, but in Delphi 5 I get the error: There is no overloaded version of 'ReverseDecode' that can be called with these arguments And obviously, the input (fixed) isn't the same as the param de...

Delphi 7 to Delphi XE
Have been using Delphi 7 for many moons ( have got later versions but never upgraded to ) My first problem is: Component Palette. in XE it is a small toolbar docked in top right in Delphi 7 it gives a large view of all the components. I am struggling to be able to cope/access my components.in Delphi XE. Can I make the component pallette tool bar the same size as Delphi 7, or is there a fast way to view/choose all available components in XE, that I have not spotted yet? Kind Regards, Robert. Hi, What I know is that in Delphi 2010 and XE you can choose between t...

Delphi 4 to Delphi 2007
Hello, I will have to port a D4 application (with source) to D2007. what kind of problem could I face ? I will have to go to customer site tommorow to analyse its source code to quote the work, what should I care of to hestimate the porting time ? Thanks John Terry wrote: > Hello, > I will have to port a D4 application (with source) to D2007. > what kind of problem could I face ? > I will have to go to customer site tommorow to analyse its source code > to quote the work, what should I care of to hestimate the porting time ? You can probably do it by just changi...

Delphi 5 To Delphi 2009
I upgraded to Delphi 2009 from D5. The install says I can install Delphi and/or C++. Delphi installed OK but I see nothing of C++. What am I missing or does my upgrade not include C++? Thanks It depends on what you bought. If you bought Delphi 2009 only, that's what you get. If you bought Delphi 2009 and C++ Builder 2009 you get both. My guess is you got Delphi 2009 only. The simplest way to verify is look your invoice - it should say I would think. You could also go to members.embarcadero.com, login, then click on my registered products. There will be a textual description of...

Delphi 4 to Delphi 2009
Hello, Thanks to all who answered my previous question. That was a great help. And atlast our client agreed to upgrade our delphi version from 4 to Delphi 2009. *Sigh*. But before that, I need to give the estimation and cost regarding the migration to delphi 2009. Can anyone tell me is there any tool to migrate from delphi 4 to delphi 2009 or just I need to compile our Delphi 4 application in Delphi 2009. I have read from the delphi 2009 feature matrix that Delphi 1 through Delphi 2007 import is possible in delphi 2009. But i am not that sure considering the size of our application. ...

Delphi XE / Delphi 2010
Hello! I noticed that Embarcadero® Delphi® 2010 Version is not on the list of products on Embarcadero page. Or is it still possible to buy it? Will RAD Studio XE compile programs written in Delphi 2010 without problems.? Thanks. Am 13.09.2010 09:04, schrieb Petra Nemec: > Will RAD Studio XE compile programs written in Delphi 2010 without problems.? As always you will probably have to recreate the projects as the import is still a bit -- special. Christian Hello! Does anybody know if it is still possible to get a Delphi2010 trial version (if yes where)? ...

Delphi 5 to Delphi XE4
Thinking about making the conversion. Of course we have numerous components such as: TurboPower AsyncPro, TurboPower Orpheus ICS2 Synactis All-In-The-Box. You guys have any advice as to the effort and time it may possibly take. It is a large application, several hundred thousand lines. And that's what happens when using third party components, a lot of extra work. I have been burned a few times. I now minimize the use to a few well known suppliers, like TMS. I have "banned" a lot of other components. Regards, Ole > > Thinking about making the conver...

Delphi 2007 to Delphi 7
I've written a class in Delphi 2007 that is not supported in Delphi 7. What would be the best way to achive what I've done in Delphi 2007 in Delphi 7? Thanks, Tom type BondConstants = class { Bond Types } type BondType = record const TREASURY = 3; AGENCY = 0; CORP = 1; MUNI = 2; SBA = 5; MBS = 4; CMO = 6; end; { Day Count Methods } type DayCount = record const ACTUAL_360 = 2; ACTUAL_365 = 1; ACTUAL_ACTUAL = 1; d30_360 = 0; ...

Delphi 7 to Delphi XE2
Hi, Still using that old workhorse, Delphi7, but am going to the conference in London hosted by Embarcadero on Delphi XE2. Although I would like to "move with the times" and am keen to get the UNICODE and 64-bit support offered by the latest IDEs, I confess to being more than a little scared about all the UNICODE/String/AnsiString and 32/64 bit issues I'm probably going to fall over. Anyone recently upgraded from Delphi7 to one of the latest Delphi IDEs? Thanks, Alain On 03/02/2012 08:55, Alain Dekker wrote: > Still using that old workhorse, Delphi7, but...

from delphi 6 to delphi 2010
Hi. It is possible, with component RX, dxforumlibrary, InfoPower3000Pro, StringAlignGrid. Accepts communication BDE. Thank by comments. excequiel arostica wrote: >Hi. > It is possible, with component RX, dxforumlibrary, >InfoPower3000Pro, StringAlignGrid. Accepts communication BDE. > >Thank by comments. Rx is dead and sources are taken over by jcl/jvcl. I dont know about the rest of the components and i have no experiences with bde over the last 9 years. excequiel arostica wrote: > Hi. > It is possible, with component RX, dxforumlibrary,...

Delphi for PHP or Delphi PRISM
Hi, I have the opportunity to develop a web-based library management system. Nothing fancy, just being able to do the usual CRUD stuff for books and provide a search facility. Borrowing is to be done via an email request to the library admin who then sends out the book(s). Since both Delphi for PHP and Delphi PRISM will enable me to develop the app, which one will allow me to deliver it in less time and also increase (even how small) my marketability as a web developer? Thanks. Phillip Flores Phillip Flores wrote: > Hi, > > I have the opportunity to develop a...

Web resources about - Representing Delphi set in a GUI - embarcadero.delphi.general

A Collection of Songs Representing an Enthusiasm for Recording...By Amateurs - Wikipedia, the free encyclopedia ...
Text is available under the Creative Commons Attribution-ShareAlike License ;additional terms may apply. By using this site, you agree to the ...

DLA Piper Stops Representing Paul Ceglia in Controversial Facebook Ownership Claim
Paul Ceglia’s claims to a serious ownership share in Facebook had looked intriguing when they first surfaced last summer — and even more so this ...

All sizes - Marie B. representing Bitcoin ATM #coolasevertech - Flickr - Photo Sharing!
Flickr is almost certainly the best online photo management and sharing application in the world. Show off your favorite photos and videos to ...

Successfully Establishing and Representing DevOps in an Audit by James DeLuccia - YouTube
Presented at FlowCon San Francisco 2013 http://flowcon.org/flowcon-sanfran-2013/schedule/index.jsp Organizations and development teams are moving ...

Matildas representing Australia at World Cup are paid just a quarter of national average salary
The Matildas will be playing in a world cup to represent a country that pays them a quarter of the national average salary.

Union representing Airservices Australia staff call for Fair Work Commission conciliation meetings
A union representing Airservices Australia staff plans to lodge a formal dispute with the Fair Work Commission over changes to pay conditions. ...

ASIO raided office of lawyer representing East Timor in spying case
A lawyer representing East Timor in its spying case against Australia says his office been raided by ASIO.

Unions representing federal scientists protest 'partisan interference'
Representatives from Canada's major federal public sector unions protest "the muzzling of Canada's public scientists and partisan interference ...

Condo Fraud: Meerai Cho, Toronto Condo Lawyer Representing Centrium, Faces 75 Charges
Toronto police continue to investigate the disappearance of millions of dollars in down payments from hopeful condo buyers, as the provincial ...

WSJ: Motorola wants 2.25-percent of iPhone sales, representing over $1B in 2011
Following a brief injunction in the Motorola patent case forcing Apple to remove products from its German online store , a judge shortly after ...

Resources last updated: 1/22/2016 11:17:24 PM