[DEV] correction of the filename display and management
This commit is contained in:
parent
7acd5127eb
commit
f1543f6199
@ -13,6 +13,8 @@
|
||||
#include <ewol/context/clipBoard.h>
|
||||
#include <appl/HighlightManager.h>
|
||||
|
||||
#undef __class__
|
||||
#define __class__ "Buffer"
|
||||
|
||||
const char* const appl::Buffer::eventIsModify = "edn-is-modify";
|
||||
const char* const appl::Buffer::eventIsSave = "edn-is-save";
|
||||
@ -143,8 +145,11 @@ appl::Buffer::~Buffer(void) {
|
||||
}
|
||||
|
||||
bool appl::Buffer::loadFile(const std::string& _name) {
|
||||
APPL_DEBUG("Load file : '" << _name << "'");
|
||||
m_fileName = _name;
|
||||
APPL_DEBUG("Convert filename :'" << _name << "'");
|
||||
etk::FSNode file(_name);
|
||||
std::string name = file.getName();
|
||||
APPL_INFO("Load file : '" << name << "'");
|
||||
m_fileName = name;
|
||||
m_hasFileName = true;
|
||||
m_isModify = true;
|
||||
m_cursorPos = 0;
|
||||
@ -160,10 +165,13 @@ bool appl::Buffer::loadFile(const std::string& _name) {
|
||||
}
|
||||
|
||||
void appl::Buffer::setFileName(const std::string& _name) {
|
||||
if (m_fileName == _name) {
|
||||
APPL_DEBUG("Convert filename :'" << _name << "'");
|
||||
etk::FSNode file(_name);
|
||||
std::string name = file.getName();
|
||||
if (m_fileName == name) {
|
||||
return;
|
||||
}
|
||||
m_fileName = _name;
|
||||
m_fileName = name;
|
||||
m_hasFileName = true;
|
||||
generateEventId(eventChangeName);
|
||||
setModification(true);
|
||||
|
@ -6,10 +6,11 @@
|
||||
* @license GPL v3 (see license file)
|
||||
*/
|
||||
|
||||
#include <etk/types.h>
|
||||
#include <etk/os/FSNode.h>
|
||||
#include <appl/debug.h>
|
||||
#include <appl/global.h>
|
||||
#include <appl/BufferManager.h>
|
||||
#include <etk/types.h>
|
||||
#include <ewol/object/Object.h>
|
||||
#include <ewol/object/Manager.h>
|
||||
#include <ewol/resource/Manager.h>
|
||||
@ -51,6 +52,7 @@ appl::Buffer* appl::BufferManager::createNewBuffer(void) {
|
||||
}
|
||||
|
||||
appl::Buffer* appl::BufferManager::get(const std::string& _fileName, bool _createIfNeeded) {
|
||||
APPL_INFO("get(" << _fileName << "," << _createIfNeeded << ")");
|
||||
for (int32_t iii = 0; iii < m_list.size(); ++iii) {
|
||||
if (m_list[iii] == NULL) {
|
||||
continue;
|
||||
@ -61,7 +63,8 @@ appl::Buffer* appl::BufferManager::get(const std::string& _fileName, bool _creat
|
||||
}
|
||||
if (_createIfNeeded == true) {
|
||||
if (etk::FSNodeGetType(_fileName) == etk::FSN_FOLDER) {
|
||||
APPL_INFO("try open a folder : " << _fileName);
|
||||
APPL_WARNING("try open a folder : " << _fileName);
|
||||
APPL_CRITICAL("plop");
|
||||
return NULL;
|
||||
}
|
||||
appl::Buffer* tmp = new appl::Buffer();
|
||||
|
@ -384,9 +384,10 @@ void MainWindows::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
tmpp->registerOnEvent(this, appl::Buffer::eventIsSave);
|
||||
tmpp->registerOnEvent(this, appl::Buffer::eventChangeName);
|
||||
}
|
||||
setTitle(std::string("Edn : ") + (tmpp->isModify()==true?" *":"") + tmpp->getFileName());
|
||||
std::string nameFileSystem = etk::FSNode(tmpp->getFileName()).getFileSystemName();
|
||||
setTitle(std::string("Edn : ") + (tmpp->isModify()==true?" *":"") + nameFileSystem);
|
||||
if (m_widgetLabelFileName != NULL) {
|
||||
m_widgetLabelFileName->setLabel(tmpp->getFileName() + (tmpp->isModify()==true?" *":""));
|
||||
m_widgetLabelFileName->setLabel(nameFileSystem + (tmpp->isModify()==true?" *":""));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -82,13 +82,13 @@ void appl::TextPluginCtags::jumpTo(const std::string& _name) {
|
||||
if (NULL == tmpWidget) {
|
||||
APPL_ERROR("Can not allocate widget == > display might be in error");
|
||||
} else {
|
||||
tmpWidget->addCtagsNewItem(myfile.getName(), lineID);
|
||||
tmpWidget->addCtagsNewItem(myfile.getFileSystemName(), lineID);
|
||||
do {
|
||||
tmpFile = m_tagFolderBase + "/" + entry.file;
|
||||
myfile = tmpFile;
|
||||
lineID = entry.address.lineNumber;
|
||||
printTag(&entry);
|
||||
tmpWidget->addCtagsNewItem(myfile.getName(), lineID);
|
||||
tmpWidget->addCtagsNewItem(myfile.getFileSystemName(), lineID);
|
||||
} while (tagsFindNext (m_ctagFile, &entry) == TagSuccess);
|
||||
ewol::getContext().getWindows()->popUpWidgetPush(tmpWidget);
|
||||
tmpWidget->registerOnEvent(this, applEventctagsSelection, eventOpenCtagsSelectReturn);
|
||||
@ -156,7 +156,7 @@ void appl::TextPluginCtags::onReceiveMessage(const ewol::object::Message& _msg)
|
||||
etk::FSNode tmpFilename = _msg.getData();
|
||||
m_tagFilename = tmpFilename.getNameFile();
|
||||
m_tagFolderBase = tmpFilename.getNameFolder();
|
||||
APPL_DEBUG("Receive load Ctags file : " << m_tagFolderBase << "/" << m_tagFilename << " ");
|
||||
APPL_INFO("Receive load Ctags file : " << m_tagFolderBase << "/" << m_tagFilename << " ");
|
||||
loadTagFile();
|
||||
} else if (_msg.getMessage() == eventOpenCtagsSelectReturn) {
|
||||
// parse the input data
|
||||
|
@ -103,12 +103,16 @@ bool APP_Init(ewol::Context& _context, size_t _initId, size_t& _nbInitStep) {
|
||||
if (tmpppp == "-t") {
|
||||
ctagDetected = true;
|
||||
} else if (true == ctagDetected) {
|
||||
APPL_INFO("Load ctag file : \"" << tmpppp << "\"" );
|
||||
etk::FSNode file(tmpppp);
|
||||
std::string name = file.getName();
|
||||
APPL_INFO("Load ctag file : \"" << name << "\"" );
|
||||
ctagDetected = false;
|
||||
_context.getEObjectManager().multiCast().anonymousSend(ednMsgCtagsLoadFile, tmpppp);
|
||||
_context.getEObjectManager().multiCast().anonymousSend(ednMsgCtagsLoadFile, name);
|
||||
} else {
|
||||
APPL_INFO("need load file : \"" << tmpppp << "\"" );
|
||||
bufferManager->open(tmpppp);
|
||||
etk::FSNode file(tmpppp);
|
||||
std::string name = file.getName();
|
||||
APPL_INFO("need load file : \"" << name << "\"" );
|
||||
bufferManager->open(name);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user