PDA

View Full Version : [CLOSED] ChangeLog Questions



softmachine2011
Jun 14, 2012, 10:53 AM
Hi,

I'm reading in depth v2 changelog and I see some inconsistences.


5. Panel .Border type has been changed from a Boolean to a Int. To remove border, set to "0".

Example

// Old
<ext:Panel runat="server" Border="false" />

// New
<ext:Panel runat="server" Border="0" />



In v1 and v2b3 (via NuGET) only is accepting Booleans. Is it a bug?



9. GridPanel .TrackMouseOver has been moved to GridView and renamed to .TrackOver

Example

//Old
<ext:GridPanel runat="server" TrackMouseOver="true">

//New
<ext:GridPanel runat="server">
<View>
<ext:GridView runat="server" TrackOver="true" />
</View>
</ext:GridPanel>

Note

In according to ExtJS docs the default value is false. Now it's not. So, it needs to check it in the future.
Now is August'17.
12. Column .ColumnID has been renamed to .ID

Now Column is a component and registered in ComponentMgr (http://www.sencha.com/forum/showthread.php?133562)

Example

//Old
<ext:Column ColumnID="company">

//New
<ext:Column ID="company" runat="server">

13. Column .Header has been replaced with .Text
The JavaScript config option .header can still work, but it's deprecated.

Example 1

//Old
<ext:Column Header="Company">

//New
<ext:Column Text="Company">

Example 2

//Old
Column c = new Column()
{
Header = "Company"
};

//New
Column c = new Column()
{
Text = "Company"
};


TrackMouseOver is still working, it would be working in final version 2? Same question for points 12-13.

Finally, when is planned final version of v2?

Daniil
Jun 14, 2012, 12:37 PM
Hi,


5. Panel .Border type has been changed from a Boolean to a Int. To remove border, set to "0".

Thanks for the report. We will correct or just remove this changelog item.

Now it has "bool?" type. To set up numeric values, please use BorderSpec.


9. GridPanel .TrackMouseOver has been moved to GridView and renamed to .TrackOver

TrackMouseOver is still working, it would be working in final version 2?

Well, the GridPanel TrackMouseOver has been removed and it can't work. The changelog item appears to be actual. Please clarify.


12. Column .ColumnID has been renamed to .ID

The ColumnID property has been removed and won't be back.


13. Column .Header has been replaced with .Text
The JavaScript config option .header can still work, but it's deprecated.

The server side Column Header property has been removed and won't be back. Then you define

Header="Some Header"
in the markup, it's considered as a client side config option and rendered as:

header : "Some Header"

So, the JavaScript "header" config option is still working, but it's deprecated and will be removed in some next releases. So, I would use the Text property only.

Hope this helps.

softmachine2011
Jun 14, 2012, 1:01 PM
ok thanks for explanation

softmachine2011
Jul 12, 2012, 1:10 PM
Related with changelog #5 it has changed to that


5. The server Panel Border property type has been changed from bool to bool?.
The server Panel BodyBorder property type has been changed from bool to int?.


Is it normal that when I type Border=" the intellisense doesn't show True, False like in the past v1.x ?

Daniil
Jul 12, 2012, 1:17 PM
Unfortunately, intellisense doesn't work with nullable types like "bool?".

softmachine2011
Jul 12, 2012, 2:04 PM
Unfortunately, intellisense doesn't work with nullable types like "bool?".

I think that you could implement custom enums in next releases to improve intellisense in this cases.

In this case you should have True, False, Null (or something else). And internally you must to parse to the consecuent value.


Thanks for all.

Daniil
Jul 12, 2012, 2:56 PM
Sure, it can be implemented the way you described.

For example, we have applied this for the Ext.NET v1 TreeNode Checked property.

But we have gave it up due to some disadvantage: Enums are not too comfortable to deal with them in code behind. A developer will need to use the Enum instead of simple true/false. Many ones prefer to use true/false in theirs configuration objects. In the case with Enums they will need to case true/false to the Enum value manually. So, we have just chose the lesser of two evils.