+#include "creaSystem.h"
#include "bbtkUtilities.h"
#include "bbtkMessageManager.h"
}
//=========================================================================
+
+
+
+//=====================================================================================
+/* http://forums.codeguru.com/showthread.php?336106-WCHAR*-to-CHAR*
+|| ::DESCRIPTION::
+|| This function will convert a WCHAR string to a CHAR string.
+||
+|| Param 1 :: Pointer to a buffer that will contain the converted string. Ensure this
+|| buffer is large enough; if not, buffer overrun errors will occur.
+|| Param 2 :: Constant pointer to a source WCHAR string to be converted to CHAR
+*/
+/*
+void wtoc(const WCHAR* Source,CHAR* Dest)
+{
+ int i = 0;
+ while(Source[i] != '\0')
+ {
+ Dest[i] = (CHAR)Source[i];
+ ++i;
+ } // while
+}
+*/
+
+
+
+
//=========================================================================
// From http://www.fltk.org/newsgroups.php?gfltk.general+v:22083
//
//2018-07-06 mingw64
wchar_t pname2[512];
long result = GetModuleFileName(NULL, pname2, pathsize);
- int ret = wcstombs ( pname, pname2, sizeof(pname) );
+ crea::System::wtoc(pname2,pname);
// long result = GetModuleFileName(NULL, pname, pathsize);
if (result > 0)
{
{
char name[PATH_MAX];
int err = get_app_path(name, PATH_MAX);
+printf("EED bbtk Utilities::GetExecutablePath 1%s \n",name);
+
if (err)
{
try
std::string Utilities::GetEnvHome()
{
-#if defined(__GNUC__)
+#if defined(_WIN32)
+ std::string strHome( getenv("USERPROFILE") );
+#elif defined(__GNUC__)
std::string strHome;
char *envHome=getenv("HOME");
if (envHome!=NULL)
} else {
strHome = "/var/www/testwtdbg/docroot";
} // if
-#elif defined(_WIN32)
- std::string strHome( getenv("USERPROFILE") );
#endif
return strHome;
}
EnableContextMenu();
#endif
}
-
+
void WxGUIBlackBoxList::Insert(BlackBoxDescriptor::Pointer d)
{
if (GetColumnCount()!=3)
*/
}
+
void WxGUIBlackBoxList::OnCacheHint(wxListEvent& event)
{
//================================================================
WxGUIBlackBoxInfo::WxGUIBlackBoxInfo(wxWindow* parent)
:
+// wxPanel(parent, -1,wxDefaultPosition, wxDefaultSize, wxFULL_REPAINT_ON_RESIZE),
wxPanel(parent, -1),
mDescriptor()
{
mCategory = new wxStaticText(this,-1,_T(""));
sizer->Add(mCategory,0,wxGROW);
- wxBoxSizer *inputs =
- new wxStaticBoxSizer
- ( new wxStaticBox(this, wxID_ANY, _T("Inputs")), wxVERTICAL );
+ wxBoxSizer *inputs = new wxStaticBoxSizer ( new wxStaticBox(this, wxID_ANY, _T("Inputs")), wxVERTICAL );
mInputList = new wxListCtrl(this, -1,
wxDefaultPosition,
wxDefaultSize,
inputs->Add(mInputList,1,wxGROW);
sizer->Add(inputs,1,wxGROW);
- wxBoxSizer *outputs =
- new wxStaticBoxSizer
- ( new wxStaticBox(this, wxID_ANY, _T("Outputs")), wxVERTICAL );
+ wxBoxSizer *outputs = new wxStaticBoxSizer ( new wxStaticBox(this, wxID_ANY, _T("Outputs")), wxVERTICAL );
mOutputList = new wxListCtrl(this, -1,
wxDefaultPosition,
wxDefaultSize,
wxLC_REPORT //wxLC_LIST
- | wxSUNKEN_BORDER);
+ | wxBORDER_SUNKEN);
+// | wxFULL_REPAINT_ON_RESIZE | wxVSCROLL);
outputs->Add(mOutputList,1,wxGROW);
sizer->Add(outputs,1,wxGROW);
SetSizer(sizer);
+// sizer->FitInside(this);
+ Connect( this->GetId(), wxEVT_ERASE_BACKGROUND , (wxObjectEventFunction) (void (WxGUIBlackBoxInfo::*)(wxEvent&)) &WxGUIBlackBoxInfo::OnEraseBackGround );
+
+
SetAutoLayout(true);
Layout();
}
//================================================================
+
+ void WxGUIBlackBoxInfo::OnEraseBackGround( wxEvent& )
+ {
+ mInputList->ClearBackground();
+ mOutputList->ClearBackground();
+ }
+
+
//================================================================
void WxGUIBlackBoxInfo::UpdateInfo(BlackBoxDescriptor* descr)
id_fc3
};
+ //================================================================
+ void WxGUIPackageBrowser2::OnEraseBackGround( wxEvent& )
+ {
+ mBoxList->ClearBackground();
+ ClearBackground();
+ Refresh();
+// Update();
+ }
+ //================================================================
+
+
//================================================================
WxGUIPackageBrowser2::WxGUIPackageBrowser2( wxWindow *parent,
WxGUIPackageBrowser2User* user )
wxLC_REPORT //wxLC_LIST
| wxSUNKEN_BORDER);
mBoxList->SetUser(this);
- mBoxList->SetBackgroundColour(*wxWHITE);
+ Connect( GetId(), wxEVT_SIZE , (wxObjectEventFunction) (void (WxGUIPackageBrowser2::*)(wxEvent&)) &WxGUIPackageBrowser2::OnEraseBackGround );
// JGRR & CM DISABLED CLOSE BUTTON
m_mgr.AddPane(mBoxList,
Layout();
}
- //================================================================
+
+ //================================================================
Factory::Pointer WxGUIPackageBrowser2::GetFactory()
{
return mFactory;
//================================================================
void WxGUIPackageBrowser2::RebuildList()
{
- mBoxList->Hide();
+// mBoxList->Hide();
mBoxList->ClearAll();
-
+ mBoxList->ClearBackground();
const Factory::PackageMapType& M = mFactory->GetPackageMap();
Factory::PackageMapType::const_iterator i;
for (i=M.begin();i!=M.end();++i)
void UpdateInfo(BlackBoxDescriptor* descr);
void InsertInputOutput(wxListCtrl* l, BlackBoxInputOutputDescriptor* i);
+ void OnEraseBackGround( wxEvent& );
private:
BlackBoxDescriptor* mDescriptor;
wxStaticText* mName;
void OnActivated(wxListEvent& event);
void OnFocused(wxListEvent& event);
void OnCacheHint(wxListEvent& event);
-
void OnChar(wxKeyEvent& event);
#if USE_CONTEXT_MENU
bool IsVisible(BlackBoxDescriptor::Pointer d);
void OnFilter(wxCommandEvent&);
+ void OnEraseBackGround( wxEvent& );
// User callback when a box is selected in the list
void WxGUIBlackBoxListUserOnSelected( BlackBoxDescriptor* );