Discussion of article "Graphical Interfaces VI: the Checkbox Control, the Edit Control and their Mixed Types (Chapter 1)" - page 3

 
Is it possible to get a value of string type from CSpinEdit element ? Or maybe there is another (element) class for this ?
 
Evgenii Bakai:
Is it possible to get a value of string type from CSpinEdit element ? Or maybe there is another (element) class for this ?
Get the value using GetValue() method and convert it to string type.
 
Anatoli Kazharski:
Get the value using GetValue() method and convert it to string type.
Tol, there are no updates for a long time. Is it because of the ban on casting structures and entering unions?
 
Artyom Trishkin:
Tol, there's been no updates for a long time. Isn't it because of the ban on casting structures and introducing unions?

I didn't see how it could prevent further development of the library. This event went unnoticed for me.

There is a lot of work on code optimisation going on now. The total volume will be reduced by about 30%. General properties of elements will be moved to base classes. There will be fewer files, as some elements will be merged into one. Without loss of functionality, as it will be possible to select the mode. The number of graphical objects will be significantly reduced. There will now be only one type of object - bitmap label, as all elements will be drawn. Complex composite elements will now be assembled from ready-made elements instead of graphical primitive objects.

All in all, a lot of things need to be rebuilt and tested before introducing a new version. I can't say when the next article will be.

 
Anatoli Kazharski:

I didn't see how it would hinder the further development of the library. For me this event went unnoticed.

There is a lot of work on code optimisation going on now. The total volume will be reduced by about 30%. General properties of elements will be moved to base classes. There will be fewer files, as some elements will be merged into one. Without loss of functionality, as it will be possible to select the mode. The number of graphical objects will be significantly reduced. There will now be only one type of object - bitmap label, as all elements will be drawn. Complex composite elements will now be assembled from ready-made elements instead of graphical primitive objects.

All in all, a lot of things need to be rebuilt and tested before introducing a new version. I can't tell you when the next article will be.

Well..., the main thing is that work is going on, and that'sgreat. I thought there might be some compatibility issues.
 
Artyom Trishkin:
Well, the important thing is that it's working, and that'sgreat. I thought there might be some compatibility issues.
Even if they did, it's no big deal. You can always fix it.
 
Anatoli Kazharski:
Even if they did, it's no big deal. You can always fix it.

That's natural, but it takes extra time. That's why I thought of it.

However, I'm glad that everything is moving and everything is good.

Question: Tol, tell me, are you planning to add in the next update the possibility to change the background colour of CCanvasTable cells?

 
Artyom Trishkin:

...

Question: Tol, tell me, is it planned to add in the next update the ability to change the background colour of CCanvasTable cells ?

Only what was announced is planned for the next update. Everything else that was discussed will be added in the next updates.

 
Anatoli Kazharski:

Only what was announced is planned for the next one. Everything else that was discussed is in subsequent updates.

All right. Thank you.
 

I have this problem - I never follow the keyboard layout :) (Autoswitch is available) Often in SpinEdit I type "," instead of ".".

//+------------------------------------------------------------------+
//| Processing of entering a value in the input field |
//+------------------------------------------------------------------+
bool CSpinEdit::OnEndEdit(const string edited_object)
  {
//--- Exit if the foreign object name
   if(m_edit.Name()!=edited_object)
      return(false);
//--- Get the entered value
   string entered_text=m_edit.Description();
   StringReplace(entered_text,",",".");
   double entered_value=::StringToDouble(entered_text);
//--- Check, correct and remember the new value
   ChangeValue(entered_value);
//--- Send a message about it
   ::EventChartCustom(m_chart_id,ON_END_EDIT,CElement::Id(),CElement::Index(),m_label.Description());
   return(true);
  }
Added a little bit. I guess it can't hurt...