コード例 #1
0
ファイル: image_widget.cpp プロジェクト: FlibbleMr/neogfx
	void image_widget::set_image(const i_texture& aTexture)
	{
		size oldSize = minimum_size();
		iTexture = aTexture;
		image_changed.trigger();
		if (oldSize != minimum_size() && has_managing_layout())
			managing_layout().layout_items(true);
	}
コード例 #2
0
ファイル: main_window.cpp プロジェクト: dnv190/itest_dnv
void MainWindow::previewSvg(const QString & link)
{
    if (!LQListWidget->currentIndex().isValid()) { return; }
        QuestionItem * item = current_test_questions.value(LQListWidget->currentItem());
        if (item == NULL) { return; }
    int i_link = link.toInt();
        if (i_link < 0 || i_link >= item->numSvgItems()) { return; }
        QSvgRenderer temp(item->svg(i_link).toUtf8());
        if( temp.isValid() )
        {
            QSvgWidget * svg_widget = new QSvgWidget;
                svg_widget->setAttribute(Qt::WA_DeleteOnClose);
                svg_widget->setParent(this);
        #ifndef Q_WS_MAC
                svg_widget->setWindowFlags(Qt::Dialog | Qt::WindowMaximizeButtonHint | Qt::WindowStaysOnTopHint);
        #else
                svg_widget->setWindowFlags(Qt::Dialog | Qt::WindowMaximizeButtonHint | Qt::WindowStaysOnTopHint | Qt::WindowSystemMenuHint);
        #endif
                svg_widget->setWindowTitle(item->svgName(i_link));
                QSize minimum_size = svg_widget->sizeHint();
                minimum_size.scale(128, 128, Qt::KeepAspectRatioByExpanding);
                svg_widget->setMinimumSize(minimum_size);
             //   svg_widget->setMaximumSize(minimum_size);
                svg_widget->load(item->svg(i_link).toUtf8());
                svg_widget->show();
        }
        else //bitmap
        {
            BitmapWidget *bit_widget = new BitmapWidget;

               bit_widget->setAttribute(Qt::WA_DeleteOnClose);
               bit_widget->setParent(this);
        #ifndef Q_WS_MAC
                bit_widget->setWindowFlags(Qt::Dialog | Qt::WindowMaximizeButtonHint | Qt::WindowStaysOnTopHint);
        #else
                bit_widget->setWindowFlags(Qt::Dialog | Qt::WindowMaximizeButtonHint | Qt::WindowStaysOnTopHint | Qt::WindowSystemMenuHint);
        #endif
                bit_widget->setWindowTitle(item->svgName(i_link));

                QSize minimum_size(128,128);
                minimum_size.scale(128, 128, Qt::KeepAspectRatioByExpanding);
                bit_widget->setMinimumSize(minimum_size);

            //   bit_widget->setMaximumSize(minimum_size);

                bit_widget->load(item->svg(i_link).toUtf8());
                bit_widget->show();
        }

}
コード例 #3
0
ファイル: evofs.c プロジェクト: Kazinsal/Araxes
void command_list_partitions(int argc, char* argv[]) {
	fseek(disk_image, 0, 0);
	fread(sector_buffer, 512, 1, disk_image);
	
	printf("Partition list:\n");
	
	for (int i = 0; i < 4; i++) {
		if (sector_buffer[(0x1BE)+(i*0x10)+0x04]) {
			unsigned int ss = *(unsigned int*)(sector_buffer+(0x1BE)+(i*0x10)+0x08);
			unsigned int sc = *(unsigned int*)(sector_buffer+(0x1BE)+(i*0x10)+0x0C);
			printf("%d: LBA 0x%08X - 0x%08X (%s) - Type %02X (%s)%s\n", i, ss, ss+sc-1, minimum_size(sc), sector_buffer[(0x1BE)+(i*0x10)+0x04], id_to_type(sector_buffer[(0x1BE)+(i*0x10)+0x04]), ((sector_buffer[(0x1BE)+(i*0x10)] & 0x80) ? ", active" : ""));
		} else {
			printf("%d: No partition\n", i);
		}
	}
}
コード例 #4
0
ファイル: popup_menu.cpp プロジェクト: FlibbleMr/neogfx
	size popup_menu::maximum_size(const optional_size& aAvailableSpace) const
	{
		return minimum_size(aAvailableSpace);
	}
コード例 #5
0
	size colour_picker_dialog::x_picker::maximum_size(const optional_size& aAvailableSpace) const
	{
		if (has_maximum_size())
			return framed_widget::maximum_size(aAvailableSpace);
		return minimum_size();
	}
コード例 #6
0
	void colour_picker_dialog::init()
	{
		scoped_units su(static_cast<framed_widget&>(*this), UnitsPixels);
		static const std::set<colour> sBasicColours
		{
			colour::AliceBlue, colour::AntiqueWhite, colour::Aquamarine, colour::Azure, colour::Beige, colour::Bisque, colour::Black, colour::BlanchedAlmond, 
			colour::Blue, colour::BlueViolet, colour::Brown, colour::Burlywood, colour::CadetBlue, colour::Chartreuse, colour::Chocolate, colour::Coral, 
			colour::CornflowerBlue, colour::Cornsilk, colour::Cyan, colour::DarkBlue, colour::DarkCyan, colour::DarkGoldenrod, colour::DarkGray, colour::DarkGreen, 
			colour::DarkKhaki, colour::DarkMagenta, colour::DarkOliveGreen, colour::DarkOrange, colour::DarkOrchid, colour::DarkRed, colour::DarkSalmon, 
			colour::DarkSeaGreen, colour::DarkSlateBlue, colour::DarkSlateGray, colour::DarkTurquoise, colour::DarkViolet, colour::DebianRed, colour::DeepPink, 
			colour::DeepSkyBlue, colour::DimGray, colour::DodgerBlue, colour::Firebrick, colour::FloralWhite, colour::ForestGreen, colour::Gainsboro, 
			colour::GhostWhite, colour::Gold, colour::Goldenrod, colour::Gray, colour::Green, colour::GreenYellow, colour::Honeydew, colour::HotPink, 
			colour::IndianRed, colour::Ivory, colour::Khaki, colour::Lavender, colour::LavenderBlush, colour::LawnGreen, colour::LemonChiffon, colour::LightBlue, 
			colour::LightCoral, colour::LightCyan, colour::LightGoldenrod, colour::LightGoldenrodYellow, colour::LightGray, colour::LightGreen, colour::LightPink, 
			colour::LightSalmon, colour::LightSeaGreen, colour::LightSkyBlue, colour::LightSlateBlue, colour::LightSlateGray, colour::LightSteelBlue, 
			colour::LightYellow, colour::LimeGreen, colour::Linen, colour::Magenta, colour::Maroon, colour::MediumAquamarine, colour::MediumBlue, colour::MediumOrchid, 
			colour::MediumPurple, colour::MediumSeaGreen, colour::MediumSlateBlue, colour::MediumSpringGreen, colour::MediumTurquoise, colour::MediumVioletRed,
			colour::MidnightBlue, colour::MintCream, colour::MistyRose, colour::Moccasin, colour::NavajoWhite, colour::Navy, colour::NavyBlue, colour::OldLace, 
			colour::OliveDrab, colour::Orange, colour::OrangeRed, colour::Orchid, colour::PaleGoldenrod, colour::PaleGreen, colour::PaleTurquoise, colour::PaleVioletRed, 
			colour::PapayaWhip, colour::PeachPuff, colour::Peru, colour::Pink, colour::Plum, colour::PowderBlue, colour::Purple, colour::Red, colour::RosyBrown, 
			colour::RoyalBlue, colour::SaddleBrown, colour::Salmon, colour::SandyBrown, colour::SeaGreen, colour::Seashell, colour::Sienna, colour::SkyBlue, 
			colour::SlateBlue, colour::SlateGray, colour::Snow, colour::SpringGreen, colour::SteelBlue, colour::Tan, colour::Thistle, colour::Tomato, 
			colour::Turquoise, colour::Violet, colour::VioletRed, colour::Wheat, colour::White, colour::WhiteSmoke, colour::Yellow, colour::YellowGreen 
		};
		set_margins(neogfx::margins{16.0});
		iLayout.set_margins(neogfx::margins{});
		iLayout.set_spacing(16.0);
		iLayout2.set_margins(neogfx::margins{});
		iLayout2.set_spacing(16.0);
		iRightLayout.set_spacing(16.0);
		iRightTopLayout.set_spacing(16.0);
		iRightBottomLayout.set_spacing(8.0);
		iChannelLayout.set_spacing(8.0);
		iH.first.label().text().set_text("&Hue:"); iH.second.set_size_policy(size_policy::Minimum); iH.second.text_box().set_hint("000000"); iH.second.set_minimum(0); iH.second.set_maximum(360); iH.second.set_step(1);
		iS.first.label().text().set_text("&Sat:"); iS.second.set_size_policy(size_policy::Minimum); iS.second.text_box().set_hint("000000"); iS.second.set_minimum(0); iS.second.set_maximum(100); iS.second.set_step(1);
		iV.first.label().text().set_text("&Val:"); iV.second.set_size_policy(size_policy::Minimum); iV.second.text_box().set_hint("000000"); iV.second.set_minimum(0); iV.second.set_maximum(100); iV.second.set_step(1);
		iR.first.label().text().set_text("&Red:"); iR.second.set_size_policy(size_policy::Minimum); iR.second.text_box().set_hint("000000"); iR.second.set_minimum(0); iR.second.set_maximum(255); iR.second.set_step(1);
		iG.first.label().text().set_text("&Green:"); iG.second.set_size_policy(size_policy::Minimum); iG.second.text_box().set_hint("000000"); iG.second.set_minimum(0); iG.second.set_maximum(255); iG.second.set_step(1);
		iB.first.label().text().set_text("&Blue:"); iB.second.set_size_policy(size_policy::Minimum); iB.second.text_box().set_hint("000000"); iB.second.set_minimum(0); iB.second.set_maximum(255); iB.second.set_step(1);
		iA.first.label().text().set_text("&Alpha:"); iA.second.set_size_policy(size_policy::Minimum); iA.second.text_box().set_hint("000000"); iA.second.set_minimum(0); iA.second.set_maximum(255); iA.second.set_step(1);
		iRgb.first.text().set_text("&#:"); iRgb.second.set_size_policy(size_policy::Minimum); iRgb.second.set_hint("000000"); 
		iChannelLayout.set_dimensions(4, 4);
		iChannelLayout.add_item(iH.first); iChannelLayout.add_item(iH.second);
		iChannelLayout.add_item(iR.first); iChannelLayout.add_item(iR.second);
		iChannelLayout.add_item(iS.first); iChannelLayout.add_item(iS.second);
		iChannelLayout.add_item(iG.first); iChannelLayout.add_item(iG.second);
		iChannelLayout.add_item(iV.first); iChannelLayout.add_item(iV.second);
		iChannelLayout.add_item(iB.first); iChannelLayout.add_item(iB.second);
		iChannelLayout.add_item(iRgb.first); iChannelLayout.add_item(iRgb.second);
		iChannelLayout.add_item(iA.first); iChannelLayout.add_item(iA.second);
		iBasicColoursLayout.set_dimensions(12, 12);
		for (auto const& basicColour : sBasicColours)
			iBasicColoursLayout.add_item(std::make_shared<colour_box>(*this, basicColour));
		iCustomColoursLayout.set_dimensions(2, 12);
		for (uint32_t i = 0; i < 24; ++i)
			iCustomColoursLayout.add_item(std::make_shared<colour_box>(*this, colour::White));
		button_box().add_button(dialog_button_box::Ok);
		button_box().add_button(dialog_button_box::Cancel);
		resize(minimum_size());
		rect desktopRect{ app::instance().surface_manager().desktop_rect(surface()) };
		move_surface((desktopRect.extents() - surface_size()) / 2.0);
	}
コード例 #7
0
 void minimum_size(const vector& size) noexcept {
     minimum_size(size.x, size.y);
 }
コード例 #8
0
ファイル: main_window.cpp プロジェクト: dnv190/itest_dnv
void MainWindow::setCurrentQuestion()
{
     if (LQListWidget->currentIndex().isValid()) {
        questionTextBrowser->clear();
        answersView->setEnabled(true);
        QuestionItem * item = current_test_questions.value(LQListWidget->currentItem());
        questionTextBrowser->setHtml(item->text());
        answersView->setAnswers(item->answers(), item->answered(), item->selectionType(), item->answerOrder());
        svgDisplayWidget->clear();
        if (item->numSvgItems() > 0) {
            svgDisplayWidget->setVisible(true);
            //int h = 0;
            for (int i = 0; i < item->numSvgItems(); ++i)
            {
                QSvgRenderer temp(item->svg(i).toUtf8());
                if ( temp.isValid() )
                {
                    QSvgWidget * svg_widget = new QSvgWidget;
                    QSize minimum_size = svg_widget->sizeHint();
                    minimum_size.scale(128, 128, Qt::KeepAspectRatioByExpanding);
                    svg_widget->setMinimumSize(minimum_size);

                    svg_widget->setMaximumSize(minimum_size);
                    svg_widget->load(item->svg(i).toUtf8());
                      svgDisplayWidget->addWidget(svg_widget, item->svgName(i), true);

                }
                else    //it's bitmap picture
                {

                         BitmapWidget *bit_widget = new BitmapWidget;
                         QSize minimum_size(128,128);
                         minimum_size.scale(128, 128, Qt::KeepAspectRatioByExpanding);
                         bit_widget->setMinimumSize(minimum_size);

                          bit_widget->setMaximumSize(minimum_size);
                          bit_widget->load(item->svg(i).toUtf8());
                          svgDisplayWidget->addWidget(bit_widget, item->svgName(i), true);
                }


            }
            //if (h < 168) { h = 168; }
            qApp->processEvents();
            questionTextSvgSplitter->moveSplitter(questionTextSvgSplitter->height()-svgDisplayWidget->layoutHeightForWidth(questionTextSvgSplitter->width()));
        } else {
            svgDisplayWidget->setVisible(false);
        }
        if (LQListWidget->currentRow() >= (LQListWidget->count()-1)) {
            btnNext->setEnabled(false);
        } else {
            btnNext->setEnabled(true);
        }
        if (LQListWidget->currentRow() <= 0) {
            btnLast->setEnabled(false);
        } else {
            btnLast->setEnabled(true);
        }
     } else {
        questionTextBrowser->clear();
        answersView->clear();
        answersView->setEnabled(false);
        svgDisplayWidget->clear();
        btnNext->setEnabled(false);
        btnLast->setEnabled(false);
     }
}
コード例 #9
0
ファイル: tab_bar.cpp プロジェクト: basisbit/neogfx
	size tab_bar::maximum_size(const optional_size& aAvailableSpace) const
	{
		if (has_maximum_size())
			return widget::maximum_size(aAvailableSpace);
		return minimum_size(aAvailableSpace);
	}
コード例 #10
0
ファイル: evofs.c プロジェクト: Kazinsal/Araxes
int main(int argc, char* argv[]) {
	//int i = 0;
	struct stat st_diskimage;
	char command_input[150];
	char* commandv[32];
	
	char* argv_dummy_confirm[] = {"dummy", "confirm", };
	
	int exec_vbr = 0;
	int exec_stage2 = 0;
	
	memset(sector_buffer, 0, 512);
	
	for (int i = 0; i < argc; i++) {
		if (argc == 1)
			break;
		
		if (!strcmp(argv[i], "-v") || !strcmp(argv[i], "--verbose")) {
			verbose = 1;
			continue;
		}
		
		if (!strcmp(argv[i], "-?") || !strcmp(argv[i], "--help")) {
			print_usage(1);
			return 0;
		}
		
		if (!strcmp(argv[i], "-p0")) {
			current_partition = 0;
			continue;
		}
		else if (!strcmp(argv[i], "-p1")) {
			current_partition = 1;
			continue;
		}
		else if (!strcmp(argv[i], "-p2")) {
			current_partition = 2;
			continue;
		}
		else if (!strcmp(argv[i], "-p3")) {
			current_partition = 3;
			continue;
		}
		else if (!strncmp(argv[i], "-p", 2)) {
			fprintf(stderr, "Error: invalid partition \"%s\".\n", argv[i]+2);
			continue;
		}
		
		if (!strcmp(argv[i], "--vbr")) {
			exec_vbr = 1;
			continue;
		}
		
		if (!strcmp(argv[i], "--stage2")) {
			exec_stage2 = 1;
			continue;
		}
			
		if (i == argc-1) {
			image_filename = argv[i];
			break;
		}
	}
	
	if (image_filename == 0) {
		print_usage(0);
		return -1;
	}
	
	disk_image = fopen(image_filename, "rb+");
	
	if (!disk_image) {
		if (errno == ENOENT) {
			fprintf(stderr, "Error: %s doesn't exist.\n", image_filename);
			print_usage(0);
			return -1;
		}
	}

    stat(image_filename, &st_diskimage);
    disk_image_bytes = st_diskimage.st_size;
    disk_image_sectors = disk_image_bytes / 512;
	
	printf("Disk image is %u sectors (%s) long.\n", disk_image_sectors, minimum_size(disk_image_sectors));
	
	//printf("sizeof(off_t) == %lu\n", sizeof(off_t));
	
	//command_list_partitions(0, 0);
	
	if (current_partition != -1)
		command_select_partition(2, argv_dummy_confirm);
	
	if (exec_vbr)
		command_inject_vbr(2, argv_dummy_confirm);
	
	if (exec_stage2)
		command_inject_stage2(2, argv_dummy_confirm);
	
	if (exec_vbr || exec_stage2) {
		fclose(disk_image);
		return 0;
	}
	
	printf("\nEVOfs Toolbox - version 0\n");
	printf("Not sure what to do? Try the \"help\" or \"list\" commands.\n");
	
	for (;;) {
		int command_count = 0;
		if (current_partition == -1)
			printf("> ");
		else
			printf("%02X> ", current_partition);
		
		fgets(command_input, 150, stdin);
		if (strrchr(command_input, '\n'))
			*(strrchr(command_input, '\n')) = 0;
			
		if (!strlen(command_input))
			continue;
		
		char* cmdp = strtok(command_input, " ");
		while (cmdp) {
			commandv[command_count++] = cmdp;
			cmdp = strtok(NULL, " ");
		}
		
		/*printf("command_count = %d\n", command_count);
		for (int i = 0; i < command_count; i++) {
			printf("commandv[%d] = \"%s\"\n", i, commandv[i]);
		}*/
		
		if (!strcmp(commandv[0], "list") || !strcmp(commandv[0], "l"))
			command_list_partitions(command_count, commandv);
		else if (!strcmp(commandv[0], "quit") || !strcmp(commandv[0], "exit") || !strcmp(commandv[0], "q") || !strcmp(commandv[0], "ex"))
			break;
		else if (!strcmp(commandv[0], "select") || !strcmp(commandv[0], "s"))
			command_select_partition(command_count, commandv);
		else if (!strcmp(commandv[0], "create") || !strcmp(commandv[0], "c"))
			command_create_filesystem(command_count, commandv);
		else if (!strcmp(commandv[0], "mbr") || !strcmp(commandv[0], "m"))
			command_inject_mbr(command_count, commandv);
		else if (!strcmp(commandv[0], "vbr") || !strcmp(commandv[0], "v"))
			command_inject_vbr(command_count, commandv);
		else if (!strcmp(commandv[0], "help") || !strcmp(commandv[0], "?"))
			command_display_help(command_count, commandv);
		else
			printf("No such command \"%s\".\n", commandv[0]);
	}
	
	fclose(disk_image);
	return 0;
}