#include "frmSearch.h"
#include "frmMain.h"
+#include "frmContact.h"
#include "search/XABSearchPanel.h"
#include "search/frmSearchAccounts.h"
#include "common/preferences.h"
#include "vcard/vcard.h"
#include <thread>
+#include <wx/fs_mem.h>
/*#include <boost/filesystem.hpp>
#include <boost/filesystem/fstream.hpp>
#include <boost/filesystem/path.hpp>*/
void frmSearch::ReloadAccountList( wxCommandEvent& event ){
+ // Currently unimplemented.
+
}
void frmSearch::AddResult( wxCommandEvent& event ){
intContactSeekNum = lstResults->GetItemData(intSelected);
- UCNotif *uc = new UCNotif;
+ if (SearchMode == TRUE){
+
+ wxMessageBox(SearchResultFilename[intContactSeekNum]);
+
+ vCard Person;
+
+ Person.LoadFile(SearchResultFilename[intContactSeekNum]);
+
+ wxMemoryInputStream istream(bigimgs_contactpersonicon48_png, sizeof(bigimgs_contactpersonicon48_png));
+ wxImage bigimgs_contactpersonicon48i(istream, wxBITMAP_TYPE_PNG);
+ wxBitmap contacticonbmp(bigimgs_contactpersonicon48i, -1);
+ wxIcon contacticon;
+ contacticon.CopyFromBitmap(contacticonbmp);
+
+ frmContact *Contact = new frmContact( this );
+
+ Contact->SetupPointers(&SearchModeMemoryFSPtr);
+ Contact->SetupContactData(&Person);
+
+ Contact->SetIcon(contacticon);
+ Contact->Show(true);
- uc->ContactAccount = SearchResultAccount[intContactSeekNum];
- uc->ContactFilename = SearchResultFilename[intContactSeekNum];
+ } else {
+
+ UCNotif *uc = new UCNotif;
+
+ uc->ContactAccount = SearchResultAccount[intContactSeekNum];
+ uc->ContactFilename = SearchResultFilename[intContactSeekNum];
- wxCommandEvent oc(CE_OPENCONTACT);
- oc.SetClientData(uc);
- wxPostEvent(this->GetParent(), oc);
+ wxCommandEvent oc(CE_OPENCONTACT);
+ oc.SetClientData(uc);
+ wxPostEvent(this->GetParent(), oc);
+
+ }
}
SearchUID = UID;
+}
+
+void frmSearch::SetSearchMode(bool SearchModeIn){
+
+ SearchMode = SearchModeIn;
+
+ if (SearchMode == TRUE){
+
+ mnuContactEdit->Enable(FALSE);
+ mnuContactReveal->Enable(FALSE);
+
+ wxFileSystem::AddHandler(new wxMemoryFSHandler);
+ wxImage ciicon_png;
+
+ wxMemoryInputStream ciptostream(icons_cipto_png, sizeof(icons_cipto_png));
+ ciicon_png.LoadFile(ciptostream, wxBITMAP_TYPE_PNG);
+ wxMemoryFSHandler::AddFile(wxT("cipto.png"), ciicon_png, wxBITMAP_TYPE_PNG);
+
+ wxMemoryInputStream cilogstream(icons_cilog_png, sizeof(icons_cilog_png));
+ ciicon_png.LoadFile(cilogstream, wxBITMAP_TYPE_PNG);
+ wxMemoryFSHandler::AddFile(wxT("cilog.png"), ciicon_png, wxBITMAP_TYPE_PNG);
+
+ wxMemoryInputStream cisndstream(icons_cisnd_png, sizeof(icons_cisnd_png));
+ ciicon_png.LoadFile(cisndstream, wxBITMAP_TYPE_PNG);
+ wxMemoryFSHandler::AddFile(wxT("cisnd.png"), ciicon_png, wxBITMAP_TYPE_PNG);
+
+ wxMemoryInputStream cikeystream(icons_cikey_png, sizeof(icons_cikey_png));
+ ciicon_png.LoadFile(cikeystream, wxBITMAP_TYPE_PNG);
+ wxMemoryFSHandler::AddFile(wxT("cikey.png"), ciicon_png, wxBITMAP_TYPE_PNG);
+
+ wxMemoryInputStream civenstream(icons_civen_png, sizeof(icons_civen_png));
+ ciicon_png.LoadFile(civenstream, wxBITMAP_TYPE_PNG);
+ wxMemoryFSHandler::AddFile(wxT("civen.png"), ciicon_png, wxBITMAP_TYPE_PNG);
+
+ wxMemoryInputStream ciextstream(icons_ciext_png, sizeof(icons_ciext_png));
+ ciicon_png.LoadFile(ciextstream, wxBITMAP_TYPE_PNG);
+ wxMemoryFSHandler::AddFile(wxT("ciext.png"), ciicon_png, wxBITMAP_TYPE_PNG);
+
+ } else {
+
+ mnuContactEdit->Enable(TRUE);
+ mnuContactReveal->Enable(TRUE);
+
+ }
+
}
\ No newline at end of file
std::map<wxString, wxString> SearchAccountsPaths;
std::map<long, wxString> SearchResultAccount;
std::map<long, wxString> SearchResultFilename;
+ std::map<wxString, wxString> SearchModeMemoryFSPtr;
int ScrollGen = 0;
int SearchUID = 0;
bool SearchEnabled = FALSE;
bool StopMode = FALSE;
+ bool SearchMode = FALSE;
bool CheckDuplicate(wxString Filename,
wxString Account,
std::map<long,wxString> *SRAcc,
/** Constructor */
frmSearch( wxWindow* parent );
void SetUID(int UID);
+ void SetSearchMode(bool SearchModeIn);
DECLARE_EVENT_TABLE()
//// end generated class members
#include "bitmaps.h"
#include "version.h"
#include "frmActivityMgr.h"
+#include "frmSearch.h"
#include "common/timers.h"
#include "common/defaults.h"
{ wxCMD_LINE_SWITCH, wxT_2("h"), wxT_2("help"), wxTRANSLATE("Displays help on command line parameters"),
wxCMD_LINE_VAL_NONE, wxCMD_LINE_OPTION_HELP },
/*{ wxCMD_LINE_OPTION, wxT_2("e"), wxT_2("edit"), wxTRANSLATE("Edit a vCard 4.0 formatted contact"),
- wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },
+ wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },*/
{ wxCMD_LINE_SWITCH, wxT_2("s"), wxT_2("search"), wxTRANSLATE("Display the search window instead of starting normally"),
- wxCMD_LINE_VAL_NONE, wxCMD_LINE_PARAM_OPTIONAL },*/
+ wxCMD_LINE_VAL_NONE, wxCMD_LINE_PARAM_OPTIONAL },
{ wxCMD_LINE_SWITCH, wxT_2("v"), wxT_2("version"), wxTRANSLATE("Displays version number"),
wxCMD_LINE_VAL_NONE, wxCMD_LINE_PARAM_OPTIONAL },
{ wxCMD_LINE_NONE }
if (XABArgs.Found(wxT("v"))){
+ wxPuts(XSDAB_VERSION);
exit(0);
}
wxInitAllImageHandlers();
- /*if (XABArgs.Found(wxT("e"), &wxSContactFilename)){
+ if (XABArgs.Found(wxT("s"))){
+
+ // Open up the search window.
+ frmSearch *frmSearchPtr = new frmSearch( NULL );
+ frmSearchPtr->Show(true);
+ frmSearchPtr->SetSearchMode(true);
+ return true;
+
+ }
+
+ /*if (XABArgs.Found(wxT("e"), &wxSContactFilename)){
+ Xestia Gelforn Project Repositories - xestiaab/.git/tree - source/vcard/
// Check if the filename exists.
//wxImage::AddHandler(new wxPNGHandler);