From 42b9bf131bc17f9fb0e7e9ead0c6f992eee11a2b Mon Sep 17 00:00:00 2001 From: Ken Moore Date: Mon, 23 Nov 2015 13:26:49 -0500 Subject: A few fixes for the desktop: 1) Clean up the characters which are unsupported by the notepad for filenames (quotes of all kinds, semicolons, slashes) 2) Start Menu: allow clicks on the item text to trigger the launch, add the generic "comment" text underneath the name of the application (if available) in italics and indented. 3) Remove an extra processEvents call during session startup. --- .../desktop-plugins/notepad/NotepadPlugin.cpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'lumina-desktop/desktop-plugins/notepad/NotepadPlugin.cpp') diff --git a/lumina-desktop/desktop-plugins/notepad/NotepadPlugin.cpp b/lumina-desktop/desktop-plugins/notepad/NotepadPlugin.cpp index e229774d..bfb985d1 100644 --- a/lumina-desktop/desktop-plugins/notepad/NotepadPlugin.cpp +++ b/lumina-desktop/desktop-plugins/notepad/NotepadPlugin.cpp @@ -6,6 +6,7 @@ #include #include #include +#include NotePadPlugin::NotePadPlugin(QWidget* parent, QString ID) : LDPlugin(parent, ID){ //qDebug() << "Creating Notepad Plugin:"; @@ -64,8 +65,8 @@ NotePadPlugin::NotePadPlugin(QWidget* parent, QString ID) : LDPlugin(parent, ID) //qDebug() << "Connect Signals/slots"; //Setup the button connections - connect(open, SIGNAL(clicked()), this, SLOT(openNote()) ); - connect(add, SIGNAL(clicked()), this, SLOT(newNote()) ); + connect(open, SIGNAL(clicked()), this, SLOT(openNoteClicked()) ); + connect(add, SIGNAL(clicked()), this, SLOT(newNoteClicked()) ); connect(rem, SIGNAL(clicked()), this, SLOT(remNote()) ); connect(edit, SIGNAL(textChanged()), this, SLOT(newTextAvailable()) ); connect(cnote, SIGNAL(currentIndexChanged(QString)), this, SLOT(noteChanged()) ); @@ -134,9 +135,12 @@ void NotePadPlugin::newNote(){ dlg.move( center.x()-(dlg.width()/2), center.y()-(dlg.height()/2) ); dlg.show(); while( dlg.isVisible() ){ + //this->thread()->usleep(300000); //300 ms between updates QApplication::processEvents(); } QString name = dlg.textValue(); + //make sure to remove any "bad" characters from the name + name.remove("\""); name.remove(";"); name.remove("\'"); name.replace("/","_"); if(name.isEmpty() || dlg.result()!=QDialog::Accepted){ return; } //cancelled QString fullpath = QDir::homePath()+"/Notes/"+name; if(!fullpath.endsWith(".note")){ fullpath.append(".note"); } @@ -156,6 +160,16 @@ void NotePadPlugin::newNote(){ } } +void NotePadPlugin::openNoteClicked(){ + //QtConcurrent::run(this, &NotePadPlugin::openNote); + openNote(); +} + +void NotePadPlugin::newNoteClicked(){ + //QtConcurrent::run(this, &NotePadPlugin::newNote); + newNote(); +} + void NotePadPlugin::remNote(){ QString note = cnote->currentData().toString(); if(note.isEmpty()){ return; } -- cgit