Jump to content

Visual components


mspak
 Share

Recommended Posts

  • 3 weeks later...
  • 2 months later...

What do you mean by "special conversion method"?

 

like by AsInteger, AsFloat, AsHexadecimal... etc.

 

for better access to values without individual change Text property:

 

property AsInteger: Integer read GetInteger write SetInteger;
...
function <editdesc>.GetInteger: Integer;
begin
 if not TryStrToInt(Text, Result) then
   Result := 0; //may be raise exception ?
end; 

procedure <editdesc>.SetInteger(Value: Integer);
begin
 Text := IntToStr(Value);
end;

Link to comment
Share on other sites

like by AsInteger, AsFloat, AsHexadecimal... etc.

 

for better access to values without individual change Text property:

 

property AsInteger: Integer read GetInteger write SetInteger;
...
function <editdesc>.GetInteger: Integer;
begin
 if not TryStrToInt(Text, Result) then
   Result := 0; //may be raise exception ?
end; 

procedure <editdesc>.SetInteger(Value: Integer);
begin
 Text := IntToStr(Value);
end;

 

of course you can make a descendant of TUniEdit to accomplish this.

I myself, already make TUniXNumericEdit (to avoid name duplication if one day Farshad make TUniNumericEdit available to us).

Several features I've made are:

property:

- IntValue

- FloatValue

- MinValue

- MaxValue

- DecimalSeparator/ThousandSeparator

- DecimalPrecision

- IntegersOnly

 

well, not 100% optimized yet, but it works already.

 

PS: I will not make this available to public before I get permission from Farshad.

Link to comment
Share on other sites

of course you can make a descendant of TUniEdit to accomplish this.

I myself, already make TUniXNumericEdit (to avoid name duplication if one day Farshad make TUniNumericEdit available to us).

Several features I've made are:

property:

- IntValue

- FloatValue

- MinValue

- MaxValue

- DecimalSeparator/ThousandSeparator

- DecimalPrecision

- IntegersOnly

 

well, not 100% optimized yet, but it works already.

 

PS: I will not make this available to public before I get permission from Farshad.

 

OK, I understand.

I have my own implementation like TPubEdit component as TEdit descentant with AsXXX properties and some enhancements like converters, autocomplete, long-hint, evaluation, focus colorize etc. but only target Windows or .NET; and I should try convert some properties convert to uniGUI, no more. if it allows the right/permisions/licence to add anything to the product uniGUI...

Link to comment
Share on other sites

OK, I understand.

I have my own implementation like TPubEdit component as TEdit descentant with AsXXX properties and some enhancements like converters, autocomplete, long-hint, evaluation, focus colorize etc. but only target Windows or .NET; and I should try convert some properties convert to uniGUI, no more. if it allows the right/permisions/licence to add anything to the product uniGUI...

 

yeah, there will abundant of problem converting component targeted for Windows to UniGUI.

But it's still possible to simply add properties like xxx.AsYYYY. The only problem is only with 'visual'.

You need JavaScript to change/add the visual of the component.

 

About the rights/permissions, I think Farshad will gladly to allow you to make a descendant component of uniGUI component.

But for license, AFAIK, until current version (0.88.931), uniGUI still free, and it still bound to the license of extJS (if you want to make it commercial).

Link to comment
Share on other sites

  • Administrators

You can create your own components based on uniGUI controls. uniGUI license doesn't avoid this. Of course, like any other package you can only distribute your own code with your own license. uniGUI source code and binaries are subjected to uniGUI license terms. IOW, you can't distribute uniGUI code/binaries as an integrated part of your package.

Link to comment
Share on other sites

You can create your own components based on uniGUI controls. uniGUI license doesn't avoid this. Of course, like any other package you can only distribute your own code with your own license. uniGUI source code and binaries are subjected to uniGUI license terms. IOW, you can't distribute uniGUI code/binaries as an integrated part of your package.

 

I read this a long time ago, and I just saw that is still there:

 

YOU MAY NOT:

i) Create derivative library, framework or similar works based on this beta;

 

Is there any contradiction to your words??? Or is this applied to beta and not to alfa release??? I'm a little confused, because you can create just one component or create a set of component and in this case it will call a "library", for example: "UNIGUI Extension library for Medical Purporses".

Link to comment
Share on other sites

  • Administrators

I read this a long time ago, and I just saw that is still there:

 

 

 

Is there any contradiction to your words??? Or is this applied to beta and not to alfa release??? I'm a little confused, because you can create just one component or create a set of component and in this case it will call a "library", for example: "UNIGUI Extension library for Medical Purporses".

 

It depends on how you interpret derivative work. We may need to make it more clear in license.

 

By saying derivative library we mean a library which provides a similar functionality like uniGUI. For example, you may take uniGUI add some additions or modifications and distribute the whole package, including parts of or complete uniGUI binaries, under a different name. It is forbidden.

 

The point here is simple. When you create a uniGUI extension library, you are allowed to distribute your own part of code/component/library.

 

uniGUI binaries can only be distributed as an integrated part of an executable binary targeting end-users.

Link to comment
Share on other sites

It depends on how you interpret derivative work. We may need to make it more clear in license.

 

By saying derivative library we mean a library which provides a similar functionality like uniGUI. For example, you may take uniGUI add some additions or modifications and distribute the whole package, including parts of or complete uniGUI binaries, under a different name. It is forbidden.

 

The point here is simple. When you create a uniGUI extension library, you are allowed to distribute your own part of code/component/library.

 

uniGUI binaries can only be distributed as an integrated part of an executable binary targeting end-users.

 

Ok, I totally agree with you and the doubt is totally clarified.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...