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


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

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


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

示例1: Workspaces

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);

		// status look (border style, ...)
		index = fStatusLookField->Menu()->IndexOf(fStatusLookField->Menu()->FindMarked());
		settings.SetStatusWindowLook(index);
		
		// status workspaces
		index = fStatusWorkspaceField->Menu()->IndexOf(fStatusWorkspaceField->Menu()->FindMarked());
		uint32 workspaces = 0;
		if (index == 0) {
			// current workspace
			workspaces = Workspaces();
				// ToDo: correct would be to ask the status window which workspace it is on
		} else
			workspaces = B_ALL_WORKSPACES;
			
		settings.SetStatusWindowWorkspaces(workspaces);
	} 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:HaikuArchives,项目名称:BeMailDaemon,代码行数:72,代码来源:ConfigWindow.cpp


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