Ejemplo n.º 1
0
void TDDSuiteLayer::refreshTestMenu()
{
	//Array *menuArray = Array::createWithCapacity(gTestCount);
	Vector<MenuItem *> menuArray;
	
	
	// TODO: Filtering !!!!
	const char *filterPattern = getFilterName();
	
	std::vector<int> selectedIndices;
	for (int i = 0; i < gTestCount; i++)
	{
		const char *name = gTestArray[i].name;
		if(passFilter(name, filterPattern) == false) {
			continue;
		}

		selectedIndices.push_back(i);
	}
	
	createMenuItemArray(selectedIndices, menuArray);
	
	// mTestMenu->setMenuItems(menuArray);
	mTestMenu->setItemsWithColumn(menuArray);
}
Ejemplo n.º 2
0
void TDDSuiteLayer::setDisplayTestWithFilter(const std::string &filter)
{
    mDisplayTest.clear();


    // TODO: Filtering !!!!
    const char *filterPattern = getFilterName();

    for (int i = 0; i < gTestCount; i++)
    {
        const char *name = gTestArray[i].name;

        if(passFilter(name, filterPattern) == false) {
            continue;
        }
        log("Test: %s", name);
        mDisplayTest.push_back(std::string(name));
    }

    refreshTestMenu();

    // Tool bar
    if(mEditFilter != NULL) {
        mEditFilter->setVisible(true);
    }

    if(mClearMenu != NULL) {
        mClearMenu->setVisible(false);
    }

    //
    updateStatusBar();

}
void SludgeApplication::on_open()
{
	if (!reallyClose()) return;
	GtkWidget *dialog;
	GtkFileFilter *filter;

	dialog = gtk_file_chooser_dialog_new ("Open File",
				      NULL,
				      GTK_FILE_CHOOSER_ACTION_OPEN,
				      GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
				      GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
				      NULL);

	filter = gtk_file_filter_new();
	gtk_file_filter_set_name(filter, getFilterName());
	gtk_file_filter_add_pattern(filter, getFilterPattern());
	gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (dialog), filter);

	if (currentFolder[0] != 0)
	{
		gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dialog), currentFolder);
	}

	if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT)
	{
		char *filename;
		filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog));
		flipBackslashes(&filename);
		open(filename);
		g_free (filename);
	}
	gtk_widget_destroy (dialog);
}
Ejemplo n.º 4
0
int BaseFilter::start()
{   
	if (s_computing)
	{
		throwError(-32);
		return -1;
	}

	QProgressDialog progressCb("Operation in progress",QString(),0,0);

	if (m_show_progress)
    {
		progressCb.setWindowTitle(getFilterName());
		progressCb.show();
		QApplication::processEvents();
	}

	s_computeStatus = -1;
	s_filter = this;
	s_computing = true;
	int progress = 0;

	QFuture<void> future = QtConcurrent::run(doCompute);
	while (!future.isFinished())
	{
#if defined(CC_WINDOWS)
		::Sleep(500);
#else
		usleep(500 * 1000);
#endif
		if (m_show_progress)
			progressCb.setValue(++progress);
	}
	
	int is_ok = s_computeStatus;
	s_filter = 0;
	s_computing = false;

	if (m_show_progress)
	{
        progressCb.close();
        QApplication::processEvents();
	}

	if (is_ok < 0)
	{
		throwError(is_ok);
		return -1;
	}

	return 1;
}
Ejemplo n.º 5
0
void SludgeProjectManager::postNew()
{
	GtkWidget *dialog;
	GtkFileFilter *filter;
	gboolean success = FALSE;

	dialog = gtk_file_chooser_dialog_new("New SLUDGE Project",
				      NULL,
				      GTK_FILE_CHOOSER_ACTION_SAVE,
				      GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
				      GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT,
				      NULL);
	gtk_file_chooser_set_do_overwrite_confirmation(GTK_FILE_CHOOSER (dialog), TRUE);

	filter = gtk_file_filter_new();
	gtk_file_filter_set_name(filter, getFilterName());
	gtk_file_filter_add_pattern(filter, getFilterPattern());
	gtk_file_chooser_set_filter(GTK_FILE_CHOOSER (dialog), filter);

	gtk_file_chooser_set_current_name(GTK_FILE_CHOOSER (dialog), getUntitledFilename());

	if (currentFolder[0] != 0)
	{
		gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER (dialog), currentFolder);
	}

	if (gtk_dialog_run(GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT)
	{
		char *filename;
		filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER (dialog));
		flipBackslashes(&filename);

		doNewProject(filename, fileList, &fileListNum);
		listChanged(FILE_TREEVIEW);
		listChanged(RESOURCE_TREEVIEW);
		gtk_list_store_clear(errorsListStore);
		gtk_widget_set_sensitive(projectRunGameItem, FALSE);

		setFilename(filename);
		setFolderFromFilename(filename);

		g_free(filename);
		success = TRUE;
	}
	gtk_widget_destroy(dialog);

	if (success)
		on_project_settings();

	setupButtons();
}
Ejemplo n.º 6
0
int BaseFilter::start()
{   
	//old version
    //int is_ok = compute();

	//Version with a separate thread (and a progress callback)
	ccProgressDialog* progressCb = new ccProgressDialog();
	progressCb->setCancelButton(0);
	progressCb->setRange(0,0);
	progressCb->setInfo("Operation in progress");
	progressCb->setMethodTitle(qPrintable(getFilterName()));
	progressCb->start();
	QApplication::processEvents();

	if (s_computing)
	{
		throwError(-32);
		return -1;
	}

	s_computeStatus = -1;
	s_filter = this;
	s_computing = true;
	unsigned progress = 0;

	QFuture<void> future = QtConcurrent::run(doCompute);
	while (!future.isFinished())
	{
#if defined(_WIN32) || defined(WIN32)
		::Sleep(500);
#else
        sleep(1.0);
#endif
		progressCb->update(++progress);
	}
	int is_ok = s_computeStatus;
	s_filter = 0;
	s_computing = false;

	progressCb->stop();
	QApplication::processEvents();

    if (is_ok < 0)
    {
        throwError(is_ok);
        return -1;
    }

	return 1;
}
nsresult
nsMsgFilterDelegateFactory::getFilterDelegate(nsIRDFResource *aOuter,
                                              nsIMsgFilter **aResult)
{
    nsresult rv;
    // now try to find ";filterName="
    nsCString uri;
    rv = aOuter->GetValue(getter_Copies(uri));
    if (NS_FAILED(rv)) return rv;
    
    PRInt32 separatorPosition = 0;
    const char *filterTag = uri.get();
    while (filterTag && *filterTag != ';') {
        separatorPosition++;
        filterTag++;
    }
    
    // if no ;, and it's not a folder,
    // I don't know what the heck it is.
    if (!filterTag)
        return NS_ERROR_FAILURE;

    const char *filterName = getFilterName(filterTag);

    nsCOMPtr<nsIMsgFilterList> filterList;
    rv = getFilterList(uri.get(), separatorPosition, getter_AddRefs(filterList));

        // now that we have the filter list and index, retrieve the filter.

    // XXX convert from UTF8
    nsAutoString filterString;
    PRUnichar *unicodeString =
        nsTextFormatter::smprintf(unicodeFormatter, filterName);
    NS_ENSURE_TRUE(unicodeString, NS_ERROR_OUT_OF_MEMORY);
    
    filterString.Assign(unicodeString);

    nsTextFormatter::smprintf_free(unicodeString);
    
    nsCOMPtr<nsIMsgFilter> filter;
    rv = filterList->GetFilterNamed(filterString, getter_AddRefs(filter));
    if (NS_FAILED(rv)) return rv;

    *aResult = filter;
    NS_IF_ADDREF(*aResult);
    
    return NS_OK;
}
void SludgeApplication::saveToFile()
{
	GtkWidget *dialog;
	GtkFileFilter *filter;

	dialog = gtk_file_chooser_dialog_new ("Save File",
				      NULL,
				      GTK_FILE_CHOOSER_ACTION_SAVE,
				      GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
				      GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT,
				      NULL);
	gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE);

	filter = gtk_file_filter_new();
	gtk_file_filter_set_name(filter, getFilterName());
	gtk_file_filter_add_pattern(filter, getFilterPattern());
	gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (dialog), filter);

	if (currentShortname[0] != 0)
	{
		gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (dialog), currentShortname);
	}
	if (currentFolder[0] != 0)
	{
		gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dialog), currentFolder);
	}

	if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT)
	{
		char *filename;
		filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog));
		flipBackslashes(&filename);

		if (!saveFile (filename))
		{
			errorBox ("Error", "Saving file failed.");
		}
		else
		{
			setFilename(filename);
			setFolderFromFilename(filename);
		}

		g_free (filename);
	}
	gtk_widget_destroy (dialog);
}
Ejemplo n.º 9
0
QString BaseFilter::getErrorMessage(int errorCode)
{
    QString errorMsg;
    switch(errorCode)
    {
        //ERRORS RELATED TO SELECTION
        case -11:
            errorMsg=QString("No entity selected in tree.");
            break;

        case -12:
            errorMsg=QString("Too many entities selected.");
            break;

        case -13:
            errorMsg=QString("Wrong type of entity selected");
            break;

        //ERRORS RELATED TO DIALOG
        case -21:
            errorMsg=QString("Dialog was not correctly filled in");
            break;

        //ERRORS RELATED TO COMPUTATION
        case -31:
            errorMsg=QString("Errors while computing");
            break;
        case -32:
			errorMsg=QString("Thread already in use!");
            break;

        // DEFAULT
        default:
            errorMsg=QString("Undefined error in " + getFilterName() + " filter");
            break;
    }

	return errorMsg;
}
Ejemplo n.º 10
0
bool TautoPresetProps::dsfilterMatch(const char_t *f1,const char_t *)
{
    if (!graphPtr) {
        deci->getGraph(&graphPtr);
        if (graphPtr) {
            comptr<IEnumFilters> eff;
            if (graphPtr->EnumFilters(&eff)==S_OK) {
                eff->Reset();
                for (comptr<IBaseFilter> bff; eff->Next(1,&bff,NULL)==S_OK; bff=NULL) {
                    char_t name[MAX_PATH],filtername[MAX_PATH];
                    getFilterName(bff,name,filtername,countof(filtername));
                    filtersnames.push_back(name);
                }
            }
        }
    }
    for (strings::const_iterator f2=filtersnames.begin(); f2!=filtersnames.end(); f2++)
        if (fnmatch(f1,f2->c_str())) {
            return true;
        }
    return false;
}
Ejemplo n.º 11
0
const char*
CLog::getFilterName() const
{
	return getFilterName(getFilter());
}