Example #1
0
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    QWidget *main = new QWidget;
    setCentralWidget(main);

    QVBoxLayout *main_layout = new QVBoxLayout;
    main->setLayout(main_layout);

    QHBoxLayout *btn_layout = new QHBoxLayout;
    main_layout->addLayout(btn_layout);

    QPushButton *load = new QPushButton;
    load->setText("&Load");
    connect(load, SIGNAL(clicked()), this, SLOT(on_load()));
    btn_layout->addWidget(load);

    QPushButton *save = new QPushButton;
    save->setText("&Save");
    connect(save, SIGNAL(clicked()), this, SLOT(on_save()));
    btn_layout->addWidget(save);

    text = new QTextEdit;
    text->setText("Type some text here");
    main_layout->addWidget(text);


}
gboolean SludgeApplication::reallyClose()
{
	if (fileChanged) {
		GtkWidget *dialog;
		gint response;
		dialog = gtk_message_dialog_new (NULL,
										GTK_DIALOG_MODAL,
										GTK_MESSAGE_QUESTION,
										GTK_BUTTONS_NONE,
										"Save the changes to '%s' before closing?", currentShortname);

		gtk_dialog_add_buttons(GTK_DIALOG(dialog), 
								"Don't Save", GTK_RESPONSE_REJECT,
								"Cancel", GTK_RESPONSE_CANCEL,
								"Save", GTK_RESPONSE_ACCEPT,
								NULL);
		                    
		gtk_window_set_title(GTK_WINDOW(dialog), "There are unsaved changes.");
		    
		response = gtk_dialog_run (GTK_DIALOG (dialog));
		gtk_widget_destroy (dialog);

		if (response == GTK_RESPONSE_CANCEL || response == GTK_RESPONSE_NONE) {
			return FALSE;
		}
		if (response == GTK_RESPONSE_ACCEPT) {
			on_save();
		}
	}
	return TRUE;
}
static void on_buttons_update(GtkWidget* selection, gpointer button, gpointer data)
{
    gboolean   active;
    gboolean   valid;
    int        nsel;
    erGtkSelectionGroup *widget;
    gboolean toDeactive = TRUE;

    CN_LOGPRINTF("entry");

    active = gtk_toggle_button_get_active(button);
    valid = edit_overview_check_network_settings();
    if (active && valid)
    {
        widget = ERGTK_SELECTION_GROUP(g_buttons->details->selection);
        ergtk_selection_group_get_selected_buttons(widget, &nsel, 1);
        switch (nsel)
        {
            case 0:
                // test button is selected
                on_test();
                toDeactive = FALSE;
                break;
            case 1:
                // save button is selected
                on_save();
                toDeactive = FALSE;
                break;
            case 2:
                // save&connect button is selected
                on_saveconnect();
                toDeactive = FALSE;
                break;
            default:
                break;
        }
    }

    if (active && toDeactive)
    {
        g_timeout_add(500, delayed_deactive_button, button);
    }
}
Example #4
0
bool http_download::save(http_request* req)
{
	// 开始接收服务端的 HTTP 数据体

	char  buf[8192];
	int   ret;
	while (true)
	{
		ret = req->get_body(buf, sizeof(buf));
		if (ret <= 0)
			break;
		if (on_save(buf, ret) == false)
		{
			logger_error("on_save error, url: %s", url_);
			return false;
		}
	}
	return true;
}
Example #5
0
FileBar::FileBar(SigSession &session, QWidget *parent) :
    QToolBar("File Bar", parent),
    _enable(true),
    _session(session),
    _file_button(this)
{
    setMovable(false);

    _action_load = new QAction(this);
    _action_load->setText(QApplication::translate(
        "File", "&Load...", 0));
    _action_load->setIcon(QIcon::fromTheme("file",
        QIcon(":/icons/open.png")));
    _action_load->setObjectName(QString::fromUtf8("actionLoad"));
    connect(_action_load, SIGNAL(triggered()), this, SLOT(on_actionLoad_triggered()));

    _action_store = new QAction(this);
    _action_store->setText(QApplication::translate(
        "File", "S&tore...", 0));
    _action_store->setIcon(QIcon::fromTheme("file",
        QIcon(":/icons/save.png")));
    _action_store->setObjectName(QString::fromUtf8("actionStore"));
    connect(_action_store, SIGNAL(triggered()), this, SLOT(on_actionStore_triggered()));

    _action_default = new QAction(this);
    _action_default->setText(QApplication::translate(
        "File", "&Default...", 0));
    _action_default->setIcon(QIcon::fromTheme("file",
        QIcon(":/icons/gear.png")));
    _action_default->setObjectName(QString::fromUtf8("actionDefault"));
    connect(_action_default, SIGNAL(triggered()), this, SLOT(on_actionDefault_triggered()));

    _menu_session = new QMenu(tr("Settings"), parent);
    _menu_session->setIcon(QIcon::fromTheme("file",
        QIcon(":/icons/gear.png")));
    _menu_session->setObjectName(QString::fromUtf8("menuSession"));
    _menu_session->addAction(_action_load);
    _menu_session->addAction(_action_store);
    _menu_session->addAction(_action_default);

    _action_open = new QAction(this);
    _action_open->setText(QApplication::translate(
        "File", "&Open...", 0));
    _action_open->setIcon(QIcon::fromTheme("file",
        QIcon(":/icons/open.png")));
    _action_open->setObjectName(QString::fromUtf8("actionOpen"));
    connect(_action_open, SIGNAL(triggered()), this, SLOT(on_actionOpen_triggered()));

    _action_save = new QAction(this);
    _action_save->setText(QApplication::translate(
        "File", "&Save...", 0));
    _action_save->setIcon(QIcon::fromTheme("file",
        QIcon(":/icons/save.png")));
    _action_save->setObjectName(QString::fromUtf8("actionSave"));
    connect(_action_save, SIGNAL(triggered()), this, SIGNAL(on_save()));

    _action_export = new QAction(this);
    _action_export->setText(QApplication::translate("File", "&Export...", 0));
    _action_export->setIcon(QIcon::fromTheme("file",QIcon(":/icons/export.png")));
    _action_export->setObjectName(QString::fromUtf8("actionExport"));
    connect(_action_export, SIGNAL(triggered()), this, SIGNAL(on_export()));


    _action_capture = new QAction(this);
    _action_capture->setText(QApplication::translate(
        "File", "&Capture...", 0));
    _action_capture->setIcon(QIcon::fromTheme("file",
        QIcon(":/icons/capture.png")));
    _action_capture->setObjectName(QString::fromUtf8("actionCapture"));
    connect(_action_capture, SIGNAL(triggered()), this, SLOT(on_actionCapture_triggered()));

    _file_button.setPopupMode(QToolButton::InstantPopup);
    _file_button.setIcon(QIcon(":/icons/file.png"));

    _menu = new QMenu(this);
    _menu->addMenu(_menu_session);
    _menu->addAction(_action_open);
    _menu->addAction(_action_save);
    _menu->addAction(_action_export);
    _menu->addAction(_action_capture);
    _file_button.setMenu(_menu);
    addWidget(&_file_button);
}
Example #6
0
CWindowMain::CWindowMain(QWidget *parent)
    : QMainWindow(parent),
      m_executThread(NULL)
{
    m_widgetBFGenerate  = new CWidgetBFGenerate(this);
    m_widgetBFList      = new CWidgetBFList(this);
    m_widgetBFView      = new CWidgetBFView(this);
    m_widgetConsol      = new CWidgetConsol(this);
    m_widgetConsol->setVisible(false);
    m_widgetPanelMode   = new CWidgetPanelMode(this);
    m_widgetTreeSat     = new CWidgetTreeSat(this);

    QWidget *wBFViewBFGenerate = new QWidget();
    QVBoxLayout *boxBFViewBFGenerate = new QVBoxLayout();
    boxBFViewBFGenerate->addWidget(m_widgetBFGenerate);
    boxBFViewBFGenerate->addWidget(m_widgetBFView);
    boxBFViewBFGenerate->setMargin(0);
    boxBFViewBFGenerate->setSpacing(0);
    boxBFViewBFGenerate->setStretch(1,100);
    wBFViewBFGenerate->setLayout(boxBFViewBFGenerate);

    QSplitter *spListBFTreeAlg = new QSplitter(Qt::Vertical);
    spListBFTreeAlg->addWidget(m_widgetBFList);
    spListBFTreeAlg->addWidget(m_widgetTreeSat);

    QSplitter *spTreeView = new QSplitter(Qt::Horizontal);
    spTreeView->addWidget(spListBFTreeAlg);
    spTreeView->addWidget(wBFViewBFGenerate);
    spTreeView->setStretchFactor(1,100);

    QSplitter *spMain = new QSplitter(Qt::Vertical);
    spMain->addWidget(spTreeView);
    spMain->addWidget(m_widgetConsol);
    spMain->setStretchFactor(0,100);

    QWidget *widgetCenter = new QWidget(this);
    setCentralWidget(widgetCenter);

    QHBoxLayout *hbox = new QHBoxLayout();
    centralWidget()->setLayout(hbox);

    hbox->addWidget(m_widgetPanelMode);
    hbox->addWidget(spMain);
    hbox->setMargin(0);
    hbox->setSpacing(0);
    hbox->setStretch(1,100);

    m_actOpen = new QAction(QIcon(":/ico/main_open.png"),tr("&Открыть"),this);
    m_actOpen->setShortcut(QKeySequence::Open);
    connect(m_actOpen,SIGNAL(triggered()),this,SLOT(on_open()));

    m_actSave = new QAction(QIcon(":/ico/main_save.png"),tr("&Сохранить"),this);
    m_actSave->setShortcut(QKeySequence::Save);
    connect(m_actSave,SIGNAL(triggered()),this,SLOT(on_save()));

    m_actSaveAs = new QAction(QIcon(":/ico/main_save_as.png"),tr("&Сохранить как"),this);
    m_actSaveAs->setShortcut(QKeySequence::SaveAs);
    connect(m_actSaveAs,SIGNAL(triggered()),this,SLOT(on_save_as()));

    m_actQuit = new QAction(QIcon("://ico/main_quit.png"),tr("Выйти"),this);
    m_actQuit->setShortcut(QKeySequence::Close);
    m_actQuit->setStatusTip(tr("Выйти из приложения"));
    connect(m_actQuit, SIGNAL(triggered()), this, SLOT(close()));

    mainMenu = menuBar()->addMenu(tr("Файл"));
    mainMenu->addAction(m_actOpen);
    mainMenu->addAction(m_actSave);
    mainMenu->addAction(m_actSaveAs);
    mainMenu->addSeparator();
    mainMenu->addAction(m_actQuit);

    mainMenu = menuBar()->addMenu(tr("Вид"));
    mainMenu->addAction(m_widgetBFGenerate->actVisible());
    mainMenu->addAction(m_widgetConsol->actVisible());

    // m_widgetPanelMode
    connect(m_widgetPanelMode,SIGNAL(run()),
            m_widgetTreeSat,SLOT(on_runChecked()));

    connect(m_widgetPanelMode,SIGNAL(run()),
            m_widgetBFGenerate,SLOT(on_resetTriggered()));

    connect(m_widgetPanelMode,SIGNAL(runLog()),
            m_widgetTreeSat,SLOT(on_runLogChecked()));

    connect(m_widgetPanelMode,SIGNAL(runLog()),
            m_widgetBFGenerate,SLOT(on_resetTriggered()));

    connect(m_widgetPanelMode,SIGNAL(terminate()),
            this,SIGNAL(terminated()));

    connect(m_widgetPanelMode,SIGNAL(toggledRand(bool)),
            m_widgetBFList,SLOT(setVisible(bool)));
    connect(m_widgetPanelMode,SIGNAL(toggledRand(bool)),
            m_widgetBFList,SLOT(on_disabledHide(bool)));

    connect(m_widgetPanelMode,SIGNAL(toggledRand(bool)),
            m_widgetBFGenerate,SLOT(setVisible(bool)));
    connect(m_widgetPanelMode,SIGNAL(toggledRand(bool)),
            m_widgetBFGenerate->actVisible(),SLOT(setChecked(bool)));
    connect(m_widgetPanelMode,SIGNAL(toggledRand(bool)),
            m_widgetBFGenerate->actVisible(),SLOT(setEnabled(bool)));

    connect(m_widgetPanelMode,SIGNAL(toggledRand(bool)),
            m_widgetTreeSat,SLOT(setVisible(bool)));
    connect(m_widgetPanelMode,SIGNAL(toggledRand(bool)),
            m_widgetTreeSat,SLOT(on_disabledHide(bool)));

    // m_widgetBFView
    connect(m_widgetBFView,SIGNAL(message(QString)),
            this,SIGNAL(messageAppend(QString)));

    connect(m_widgetBFView,SIGNAL(getLogSelectSat(bool)),
            m_widgetTreeSat,SLOT(on_returnLogSelectSat(bool)));

    // m_widgetBFList
    connect(m_widgetBFList,SIGNAL(generate()),
            m_widgetBFGenerate,SLOT(on_generate()));

    connect(m_widgetBFList,SIGNAL(selected(QString,CBoolFormula*)),
            m_widgetBFGenerate,SLOT(on_set(QString,CBoolFormula*)));

    connect(m_widgetBFList,SIGNAL(selected(QString,CBoolFormula*)),
            m_widgetTreeSat,SLOT(on_set(QString,CBoolFormula*)));

    connect(m_widgetBFList,SIGNAL(selected(QString,CBoolFormula*)),
            m_widgetBFView,SLOT(on_set(QString,CBoolFormula*)));

    connect(m_widgetBFList,SIGNAL(message(QString)),
            this,SIGNAL(messageAppend(QString)));

    // m_widgetBFGenerate
    connect(m_widgetBFGenerate,SIGNAL(append(QString,CBoolFormula*)),
            m_widgetBFList,SIGNAL(appendgen(QString,CBoolFormula*)));

    connect(m_widgetBFGenerate,SIGNAL(append(QString,CBoolFormula*)),
            m_widgetPanelMode,SLOT(on_resetTriggered()));

    connect(m_widgetBFGenerate,SIGNAL(execut(QList<CExecutObject*>)),
            this,SLOT(on_execut(QList<CExecutObject*>)));

    connect(m_widgetBFGenerate,SIGNAL(replace(QString,CBoolFormula*)),
            m_widgetBFList,SIGNAL(replace(QString,CBoolFormula*)));

    connect(m_widgetBFGenerate,SIGNAL(replace(QString,CBoolFormula*)),
            m_widgetPanelMode,SLOT(on_resetTriggered()));

    connect(m_widgetBFGenerate,SIGNAL(remove(QString)),
            m_widgetBFList,SIGNAL(remove(QString)));

    connect(m_widgetBFGenerate,SIGNAL(terminated()),
            this,SIGNAL(terminated()));

    // m_widgetTreeSat
    connect(m_widgetTreeSat,SIGNAL(execut(QList<CExecutObject*>)),
            this,SLOT(on_execut(QList<CExecutObject*>)));

    connect(m_widgetTreeSat,SIGNAL(logSelectSat(QString)),
            m_widgetBFView,SIGNAL(setText(QString)));

    // main
    connect(this,SIGNAL(messageAppend(QString)),
            m_widgetConsol,SLOT(messageAppend(QString)));

    connect(this,SIGNAL(messageSet(QString)),
            m_widgetConsol,SLOT(messageSet(QString)));

    connect(this,SIGNAL(executingOperation(QString)),
            m_widgetConsol,SLOT(executingOperation(QString)));

    connect(this,SIGNAL(append(QString,CBoolFormula*)),
            m_widgetBFList,SIGNAL(append(QString,CBoolFormula*)));

    connect(this,SIGNAL(locked()),m_widgetPanelMode,SLOT(on_locked()));
    connect(this,SIGNAL(unlocked()),m_widgetPanelMode,SLOT(on_unlocked()));

    connect(this,SIGNAL(locked()),m_widgetBFGenerate,SLOT(on_locked()));
    connect(this,SIGNAL(unlocked()),m_widgetBFGenerate,SLOT(on_unlocked()));

    connect(this,SIGNAL(updateView()),m_widgetBFView,SLOT(on_viewUpdate()));

    m_widgetPanelMode->on_checkedRand();  // set checked Random bool formula state for start application
}
Example #7
0
ProviderDialog::ProviderDialog(MainObject *mOb, QDialog *parent) :
    QDialog(parent)
{
    mainObject = mOb;
    //provider = prov;

    //setFixedWidth(300);
    setWindowIcon(QIcon(":/icons/provider"));
    setWindowTitle("Provider");


    QVBoxLayout *mainOuterLayout = new QVBoxLayout();
    this->setLayout(mainOuterLayout);
    mainOuterLayout->setContentsMargins(0,0,0,0);
    mainOuterLayout->setSpacing(0);

    //** Header Label
    headerLabel = new QLabel();
    headerLabel->setText("-- provider --");
    headerLabel->setStyleSheet("font-size: 20pt; background-color: white; color: green;");
    mainOuterLayout->addWidget(headerLabel);


    QVBoxLayout *mainLayout = new QVBoxLayout();
    mainOuterLayout->addLayout(mainLayout);
    mainLayout->setContentsMargins(20,20,20,20);
    mainLayout->setSpacing(10);


    //QString styleGrp = QString("QGroupBox{  border:2px solid gray;border-radius:5px;  margin-top: 1ex;} QGroupBox::title{subcontrol-origin: margin;subcontrol-position:top left;padding:0px 3px;}");
    QString styleGrp = QString("QGroupBox{  border:1px solid gray; margin-top: 2ex;} QGroupBox::title{subcontrol-origin: margin;subcontrol-position:top left;padding:0px 3px;}");

    //***************************************************
    //** Browse Button Group
    QGroupBox *grpBrowse = new QGroupBox();
    grpBrowse->setTitle("Open in web browser..");
    grpBrowse->setStyleSheet(styleGrp);
    mainLayout->addWidget(grpBrowse);
    QHBoxLayout *grpBrowseLayout = new QHBoxLayout();
    grpBrowseLayout->setContentsMargins(10,10,10,10);
    grpBrowse->setLayout(grpBrowseLayout);

    //** Browser Buttons
    QButtonGroup *buttonGroupBrowse = new QButtonGroup(this);
    connect(buttonGroupBrowse, SIGNAL(buttonClicked(QAbstractButton*)),
            this, SLOT(on_browse_button(QAbstractButton*))
    );

    buttHomePage = new QPushButton();
    buttHomePage->setText("Home page");
    grpBrowseLayout->addWidget(buttHomePage);
    buttonGroupBrowse->addButton(buttHomePage);

    buttPrices = new QPushButton();
    buttPrices->setText("Prices");
    grpBrowseLayout->addWidget(buttPrices);
    buttonGroupBrowse->addButton(buttPrices);

    buttSignUp = new QPushButton();
    buttSignUp->setText("Sign Up");
    grpBrowseLayout->addWidget(buttSignUp);
    buttonGroupBrowse->addButton(buttSignUp);

    buttLogin = new QPushButton();
    buttLogin->setText("Login");
    grpBrowseLayout->addWidget(buttLogin);
    buttonGroupBrowse->addButton(buttLogin);


    mainLayout->addSpacing(20);

    //*************************************************************
    //** Credentials
    grpCredentials = new QGroupBox();
    grpCredentials->setTitle("Account Details");
    grpCredentials->setCheckable(true);
    grpCredentials->setStyleSheet(styleGrp);
    mainLayout->addWidget(grpCredentials);
    connect(grpCredentials, SIGNAL(clicked(bool)), this, SLOT(on_credentials_checkbox(bool)));

    QGridLayout *credLayout = new QGridLayout();
    credLayout->setContentsMargins(10,20,10,10);
    grpCredentials->setLayout(credLayout);
    int row =0;

    QLabel *lblUsername = new QLabel("Username");
    credLayout->addWidget( lblUsername, row, 0 );

    txtUsername = new QLineEdit();
    credLayout->addWidget(txtUsername, ++row, 0, 1, 1);


    QLabel *lblPassword = new QLabel("Password");
    credLayout->addWidget( lblPassword, ++row, 0, 1, 1 );
    txtPass = new QLineEdit();
    credLayout->addWidget(txtPass, ++row, 0, 1, 1);
    //credLayout->addSpacing(10);

    QLabel *lblEmail = new QLabel("Email");
    credLayout->addWidget( lblEmail, ++row, 0 );
    txtEmail = new QLineEdit();
    credLayout->addWidget(txtEmail, ++row, 0, 1, 2);

    credLayout->setColumnStretch(0,1);
    credLayout->setColumnStretch(1,1);

    mainLayout->addSpacing(20);


    //**************************************************
    //** Buttons
    QHBoxLayout *buttonBox = new QHBoxLayout();
    mainLayout->addLayout(buttonBox);
    buttonBox->addStretch(10);

    QPushButton *cancelButton = new QPushButton();
    cancelButton->setText("Cancel");
    cancelButton->setIcon(QIcon(":/icons/black"));
    buttonBox->addWidget(cancelButton);
    connect(cancelButton, SIGNAL(clicked()), this, SLOT(on_cancel()));

    QPushButton *saveButton = new QPushButton();
    saveButton->setText("Save");
    saveButton->setIcon(QIcon(":/icons/ok"));
    buttonBox->addWidget(saveButton);
    connect(saveButton, SIGNAL(clicked()), this, SLOT(on_save()));

    statusBar = new XStatusBar();
    mainOuterLayout->addWidget(statusBar);
    statusBar->showMessage("Loaded", 2000);


}