当前位置: 首页>>代码示例>>C++>>正文


C++ BMailSettings::StatusWindowLook方法代码示例

本文整理汇总了C++中BMailSettings::StatusWindowLook方法的典型用法代码示例。如果您正苦于以下问题:C++ BMailSettings::StatusWindowLook方法的具体用法?C++ BMailSettings::StatusWindowLook怎么用?C++ BMailSettings::StatusWindowLook使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在BMailSettings的用法示例。


在下文中一共展示了BMailSettings::StatusWindowLook方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: SetToGeneralSettings

void
ConfigWindow::RevertToLastSettings()
{
    // revert general settings
    BMailSettings settings;

    // restore status window look
    settings.SetStatusWindowLook(settings.StatusWindowLook());

    status_t status = SetToGeneralSettings(&settings);
    if (status != B_OK) {
        char text[256];
        sprintf(text, B_TRANSLATE(
                    "\nThe general settings couldn't be reverted.\n\n"
                    "Error retrieving general settings:\n%s\n"),
                strerror(status));
        (new BAlert("Error", text, "OK", NULL, NULL, B_WIDTH_AS_USUAL,
                    B_WARNING_ALERT))->Go();
    }

    // revert account data

    if (fAccountsListView->CurrentSelection() != -1)
        ((CenterContainer *)fConfigView)->DeleteChildren();

    Accounts::Delete();
    Accounts::Create(fAccountsListView,fConfigView);

    if (fConfigView->CountChildren() == 0)
        MakeHowToView();
}
开发者ID:mmadia,项目名称:haiku-1,代码行数:31,代码来源:ConfigWindow.cpp

示例2: BAlert

void
ConfigWindow::_RevertToLastSettings()
{
	// revert general settings
	BMailSettings settings;

	// restore status window look
	settings.SetStatusWindowLook(settings.StatusWindowLook());

	status_t status = _SetToGeneralSettings(&settings);
	if (status != B_OK) {
		char text[256];
		sprintf(text, B_TRANSLATE(
				"\nThe general settings couldn't be reverted.\n\n"
				"Error retrieving general settings:\n%s\n"),
			strerror(status));
		BAlert* alert = new BAlert(B_TRANSLATE("Error"), text,
			B_TRANSLATE("OK"), NULL, NULL, B_WIDTH_AS_USUAL, B_WARNING_ALERT);
		alert->SetFlags(alert->Flags() | B_CLOSE_ON_ESCAPE);
		alert->Go();
	}

	// revert account data

	if (fAccountsListView->CurrentSelection() != -1)
		fConfigView->DeleteChildren();

	for (int32 i = 0; i < fAccounts.CountItems(); i++) {
		BMailAccountSettings* account = fAccounts.ItemAt(i);
		_RemoveAccountFromListView(account);
		delete account;
	}
	fAccounts.MakeEmpty();
	_LoadAccounts();

	if (fConfigView->CountChildren() == 0)
		_MakeHowToView();
}
开发者ID:mylegacy,项目名称:haiku,代码行数:38,代码来源:ConfigWindow.cpp

示例3: sscanf

void
ConfigWindow::SaveSettings()
{
    // remove config views
    ((CenterContainer *)fConfigView)->DeleteChildren();

    /*** save general settings ***/

    // figure out time interval
    float interval;
    sscanf(fIntervalControl->Text(),"%f",&interval);
    float multiplier = 0;
    switch (fIntervalUnitField->Menu()->IndexOf(
                fIntervalUnitField->Menu()->FindMarked())) {
    case 1:		// minutes
        multiplier = 60;
        break;
    case 2:		// hours
        multiplier = 60 * 60;
        break;
    case 3:		// days
        multiplier = 24 * 60 * 60;
        break;
    }
    time_t time = (time_t)(multiplier * interval);

    // apply and save general settings
    BMailSettings settings;
    if (fSaveSettings) {
        settings.SetAutoCheckInterval(time * 1e6);
        settings.SetCheckOnlyIfPPPUp(fPPPActiveCheckBox->Value()
                                     == B_CONTROL_ON);
        settings.SetSendOnlyIfPPPUp(fPPPActiveSendCheckBox->Value()
                                    == B_CONTROL_ON);
        settings.SetDaemonAutoStarts(fAutoStartCheckBox->Value()
                                     == B_CONTROL_ON);

        // status mode (alway, fetching/retrieving, ...)
        int32 index = fStatusModeField->Menu()->IndexOf(
                          fStatusModeField->Menu()->FindMarked());
        settings.SetShowStatusWindow(index);

    } else {
        // restore status window look
        settings.SetStatusWindowLook(settings.StatusWindowLook());
    }

    settings.SetConfigWindowFrame(Frame());
    settings.Save();

    /*** save accounts ***/

    if (fSaveSettings)
        Accounts::Save();

    // start the mail_daemon if auto start was selected
    if (fSaveSettings && fAutoStartCheckBox->Value() == B_CONTROL_ON
            && !be_roster->IsRunning("application/x-vnd.Be-POST"))
    {
        be_roster->Launch("application/x-vnd.Be-POST");
    }
}
开发者ID:mmadia,项目名称:haiku-1,代码行数:62,代码来源:ConfigWindow.cpp

示例4: changedAccounts

void
ConfigWindow::_SaveSettings()
{
	// remove config views (trigger view archive)
	fConfigView->DeleteChildren();

	// collect changed accounts
	BMessage changedAccounts(kMsgAccountsChanged);
	for (int32 i = 0; i < fAccounts.CountItems(); i++) {
		BMailAccountSettings* account = fAccounts.ItemAt(i);
		if (account && account->HasBeenModified())
			changedAccounts.AddInt32("account", account->AccountID());
	}
	for (int32 i = 0; i < fToDeleteAccounts.CountItems(); i++) {
		BMailAccountSettings* account = fToDeleteAccounts.ItemAt(i);
		changedAccounts.AddInt32("account", account->AccountID());
	}

	// cleanup account directory
	for (int32 i = 0; i < fToDeleteAccounts.CountItems(); i++) {
		BMailAccountSettings* account = fToDeleteAccounts.ItemAt(i);
		BEntry entry(account->AccountFile());
		entry.Remove();
		delete account;
	}
	fToDeleteAccounts.MakeEmpty();

	/*** save general settings ***/

	// figure out time interval
	float interval;
	sscanf(fIntervalControl->Text(),"%f",&interval);
	float multiplier = 0;
	switch (fIntervalUnitField->Menu()->IndexOf(
			fIntervalUnitField->Menu()->FindMarked())) {
		case 1:		// minutes
			multiplier = 60;
			break;
		case 2:		// hours
			multiplier = 60 * 60;
			break;
		case 3:		// days
			multiplier = 24 * 60 * 60;
			break;
	}
	time_t time = (time_t)(multiplier * interval);

	// apply and save general settings
	BMailSettings settings;
	if (fSaveSettings) {
		settings.SetAutoCheckInterval(time * 1e6);
		settings.SetCheckOnlyIfPPPUp(fPPPActiveCheckBox->Value()
			== B_CONTROL_ON);
		settings.SetSendOnlyIfPPPUp(fPPPActiveSendCheckBox->Value()
			== B_CONTROL_ON);
		settings.SetDaemonAutoStarts(fAutoStartCheckBox->Value()
			== B_CONTROL_ON);

		// status mode (alway, fetching/retrieving, ...)
		int32 index = fStatusModeField->Menu()->IndexOf(
			fStatusModeField->Menu()->FindMarked());
		settings.SetShowStatusWindow(index);

	} else {
		// restore status window look
		settings.SetStatusWindowLook(settings.StatusWindowLook());
	}

	settings.SetConfigWindowFrame(Frame());
	settings.Save();

	/*** save accounts ***/

	if (fSaveSettings) {
		for (int i = 0; i < fAccounts.CountItems(); i++)
			fAccounts.ItemAt(i)->Save();
	}

	BMessenger messenger("application/x-vnd.Be-POST");
	if (messenger.IsValid()) {
		// server should reload general settings
		messenger.SendMessage(kMsgSettingsUpdated);
		// notify server about changed accounts
		messenger.SendMessage(&changedAccounts);
	}

	// start the mail_daemon if auto start was selected
	if (fSaveSettings && fAutoStartCheckBox->Value() == B_CONTROL_ON
		&& !be_roster->IsRunning("application/x-vnd.Be-POST"))
	{
		be_roster->Launch("application/x-vnd.Be-POST");
	}
}
开发者ID:mylegacy,项目名称:haiku,代码行数:93,代码来源:ConfigWindow.cpp


注:本文中的BMailSettings::StatusWindowLook方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。