Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: Vatman в Apr 12, 2007, 21:54



Титла: Добавяне на опция в create new менюто на КДЕ
Публикувано от: Vatman в Apr 12, 2007, 21:54
Искам като цъкна менюто за създаване на нови файлове да имам опция за файлове с произволно разширение по мой избор.


Титла: Добавяне на опция в create new менюто на КДЕ
Публикувано от: ivo1204 в Apr 14, 2007, 08:06
Ето  пример :
http://developer.kde.org/documentation/tutorials/dot/servicemenus.html
http://techbase.kde.org/Develop....e_Menus
http://freshmeat.net/projects/kservicemenu/
http://kde-apps.org/index.php?xcontentmode=287

За да те улесня , давам пример , нямам претенций да е добър ,ама работи при мен:

Правя файл : my1.desktop в:
/root/.kde/share/apps/konqueror/servicemenus

[Desktop Action setAsWallpaper]
Exec=Make_New_File
Icon=background
Name=PLY
Name[bg]=Прави нов файл
[Desktop Entry]
Actions=setAsWallpaper
Icon=
ServiceTypes=all/all

/записвам го с KWrite като избирам "Запис като" и utf8.

Сега , пиша програмка ,която да се извика при това действие:

//main.cpp
l// Make New File

#include <qapplication.h>
#include <qfiledialog.h>
#include <qfile.h>
#include <qdir.h>

int main( int argc, char **argv )
{
   QApplication a( argc, argv );
   QString work_dir=QDir::currentDirPath();
   QFileDialog dlg;
    QString s = dlg.getSaveFileName(
                    work_dir,
                    "All (*.*)",
                    &dlg,
                    "save file dialog",
                    "Choose a filename to save under" );
 QFile f1( s );
        f1.open( IO_Raw | IO_ReadWrite );
   f1.close();
    return 0;
}
Записвам я като main.cpp
Отварям конзола и викам "qmake":
#qmake -project
#qmake
#make
Трябва да имаш инсталирани "qt3-dev-tools" ,libqt3-mt-dev
от "qt-x11-free"
Новият компилиран файл има име на директорията , където компилираш. Даваш му име "Make_New_File" и го слагаш някъде ,където може да буде извикан ( echo $PATH) .
Та това е идеята .