diff -r 86d729874ff4 -r a4f4123ca12a ui/qt/window.cpp --- a/ui/qt/window.cpp Sat Jan 23 18:37:30 2016 +0100 +++ b/ui/qt/window.cpp Sat Jan 23 20:47:07 2016 +0100 @@ -35,8 +35,9 @@ #include "container.h" #include +#include -UiObject* ui_window(char *title, void *window_data) { +static UiObject* create_window(char *title, void *window_data, bool simple) { UcxMempool *mp = ucx_mempool_new(256); UiObject *obj = (UiObject*)ucx_mempool_calloc(mp, 1, sizeof(UiObject)); obj->ctx = uic_context(obj, mp); @@ -46,10 +47,11 @@ QMainWindow *window = new QMainWindow(); obj->widget = window; - ui_add_menus(obj, window); - - QToolBar *toolbar = ui_create_toolbar(obj); - window->addToolBar(Qt::TopToolBarArea, toolbar); + if(!simple) { + ui_add_menus(obj, window); + QToolBar *toolbar = ui_create_toolbar(obj); + window->addToolBar(Qt::TopToolBarArea, toolbar); + } QBoxLayout *box = new QVBoxLayout(); QWidget *boxWidget = new QWidget(); @@ -60,3 +62,34 @@ obj->widget = window; return obj; } + +UiObject* ui_window(char *title, void *window_data) { + return create_window(title, window_data, FALSE); +} + +UiObject* ui_simplewindow(char *title, void *window_data) { + return create_window(title, window_data, TRUE); +} + + +char* ui_openfiledialog(UiObject *obj) { + QString fileName = QFileDialog::getOpenFileName(obj->widget); + if(fileName.size() > 0) { + QByteArray array = fileName.toLocal8Bit(); + const char *cstr = array.constData(); + return strdup(cstr); + } else { + return NULL; + } +} + +char* ui_savefiledialog(UiObject *obj) { + QString fileName = QFileDialog::getSaveFileName(obj->widget); + if(fileName.size() > 0) { + QByteArray array = fileName.toLocal8Bit(); + const char *cstr = array.constData(); + return strdup(cstr); + } else { + return NULL; + } +}