⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 settings.cpp

📁 linux pritner GUI
💻 CPP
📖 第 1 页 / 共 5 页
字号:
	}      	// look for "PS_VIEWER:"	else if (find_prog_parm("PS_VIEWER:", file_read) || find_prog_parm("#PS_VIEWER:", file_read)) {	  if (!found_ps_view_cmd) {	    found_ps_view_cmd = true;	    file_list.push_back(Glib::filename_from_utf8(ps_view_cmd_line));	  }	}      	// look for "SOCK_SERVER:"	else if (find_prog_parm("SOCK_SERVER:", file_read) || find_prog_parm("#SOCK_SERVER:", file_read)) {	  if (!found_run_server) {	    found_run_server = true;	    file_list.push_back(run_server_line);	  }	}      	// look for "SOCK_POPUP:"	else if (find_prog_parm("SOCK_POPUP:", file_read) || find_prog_parm("#SOCK_POPUP:", file_read)) {	  if (!found_sock_popup) {	    found_sock_popup = true;	    file_list.push_back(sock_popup_line);	  }	}      	// look for "SOCK_SERVER_PORT:"	else if (find_prog_parm("SOCK_SERVER_PORT:", file_read) || find_prog_parm("#SOCK_SERVER_PORT:", file_read)) {	  if (!found_sock_port) {	    found_sock_port = true;	    file_list.push_back(sock_port_line);	  }	}      	// look for "SOCK_CLIENT_ADDRESS:"	else if (find_prog_parm("SOCK_CLIENT_ADDRESS:", file_read) || find_prog_parm("#SOCK_CLIENT_ADDRESS:", file_read)) {	  if (!found_sock_client_address) {	    found_sock_client_address = true;	    file_list.push_back(sock_client_address_line);	  }	}      	// look for "SOCK_OTHER_ADDRESSES:"	else if (find_prog_parm("SOCK_OTHER_ADDRESSES:", file_read) || find_prog_parm("#SOCK_OTHER_ADDRESSES:", file_read)) {	  if (!found_sock_other_addresses) {	    found_sock_other_addresses = true;	    file_list.push_back(sock_other_addresses_line);	  }	}	// look for "FAX_RECEIVED_POPUP:"	else if (find_prog_parm("FAX_RECEIVED_POPUP:", file_read) || find_prog_parm("#FAX_RECEIVED_POPUP:", file_read)) {	  if (!found_fax_received_popup) {	    found_fax_received_popup = true;	    file_list.push_back(fax_received_popup_line);	  }	}      	// look for "FAX_RECEIVED_EXEC:"	else if (find_prog_parm("FAX_RECEIVED_EXEC:", file_read) || find_prog_parm("#FAX_RECEIVED_EXEC:", file_read)) {	  if (!found_fax_received_exec) {	    found_fax_received_exec = true;	    file_list.push_back(fax_received_exec_line);	  }	}      	// look for "FAX_RECEIVED_PROG:"	else if (find_prog_parm("FAX_RECEIVED_PROG:", file_read) || find_prog_parm("#FAX_RECEIVED_PROG:", file_read)) {	  if (!found_fax_received_prog) {	    found_fax_received_prog = true;	    file_list.push_back(Glib::filename_from_utf8(fax_received_prog_line));	  }	}      	// look for "LOG_FILE:"	else if (find_prog_parm("LOG_FILE:", file_read) || find_prog_parm("#LOG_FILE:", file_read)) {	  if (!found_log_file) {	    found_log_file = true;	    file_list.push_back(Glib::filename_from_utf8(logfile_line));	  }	}      	// add any residual lines to the list, except the terminating line	else if (!find_prog_parm(terminating_line, file_read)) file_list.push_back(file_read);      }      catch (Glib::ConvertError&) {	write_error("UTF-8 conversion error in SettingsDialog::write_config()\n");      }    }    if (found_number == false) file_list.push_back(number_line);    if (found_device == false) file_list.push_back(device_line);    if (found_class == false) file_list.push_back(class_line);    if (found_page == false) file_list.push_back(page_line);    if (found_res == false) file_list.push_back(res_line);    if (found_rings == false) file_list.push_back(rings_line);    if (found_dialmode = false) file_list.push_back(dialmode_line);    if (found_init == false) file_list.push_back(init_line);    if (found_reset == false) file_list.push_back(reset_line);    if (found_capabilities == false) file_list.push_back(capabilities_line);    if (found_parms == false) file_list.push_back(extra_parms_line);    if (found_print_shrink == false) file_list.push_back(print_shrink_line);    if (found_print_popup == false) file_list.push_back(print_popup_line);    if (found_run_server == false) file_list.push_back(run_server_line);    if (found_sock_popup == false) file_list.push_back(sock_popup_line);    if (found_sock_port == false) file_list.push_back(sock_port_line);    if (found_sock_client_address == false) file_list.push_back(sock_client_address_line);    if (found_sock_other_addresses == false) file_list.push_back(sock_other_addresses_line);    if (found_fax_received_popup == false) file_list.push_back(fax_received_popup_line);    if (found_fax_received_exec == false) file_list.push_back(fax_received_exec_line);    try {      if (found_name == false) file_list.push_back(Glib::locale_from_utf8(name_line));    }    catch (Glib::ConvertError&) {      write_error("UTF-8 conversion error in SettingsDialog::write_config()\n");    }    try {      if (found_lock == false) file_list.push_back(Glib::filename_from_utf8(lock_line));    }    catch (Glib::ConvertError&) {      write_error("UTF-8 conversion error in SettingsDialog::write_config()\n");    }    try {      if (found_print_cmd == false) file_list.push_back(Glib::filename_from_utf8(print_cmd_line));    }    catch (Glib::ConvertError&) {      write_error("UTF-8 conversion error in SettingsDialog::write_config()\n");    }    try {      if (found_ps_view_cmd == false) file_list.push_back(Glib::filename_from_utf8(ps_view_cmd_line));    }    catch (Glib::ConvertError&) {      write_error("UTF-8 conversion error in SettingsDialog::write_config()\n");    }    try {      if (found_fax_received_prog == false) file_list.push_back(Glib::filename_from_utf8(fax_received_prog_line));    }    catch (Glib::ConvertError&) {      write_error("UTF-8 conversion error in SettingsDialog::write_config()\n");    }    try {      if (found_log_file == false) file_list.push_back(Glib::filename_from_utf8(logfile_line));    }    catch (Glib::ConvertError&) {      write_error("UTF-8 conversion error in SettingsDialog::write_config()\n");    }    // add the terminating line    file_list.push_back(terminating_line);        // now write out the new config file        rcfile = prog_config.homedir + "/.";    rcfile += RC_FILE;        std::ofstream fileout(rcfile.c_str(), std::ios::out);    if (!fileout) {      std::string message("Can't open file");      message += rcfile;      message += '\n';      write_error(message.c_str());      return_val = false;    }    else {      std::copy(file_list.begin(), file_list.end(),		std::ostream_iterator<std::string>(fileout, "\n"));    }  }  return return_val;}void SettingsDialog::read_config(bool search_localfile) {// search_localfile has a default value of true// get rc file  if (!get_rcfile_path(search_localfile)) {    std::string message;    if (search_localfile) {      message =  "Can't find or open file " RC_DIR "/"  RC_FILE ",\n";      if (std::strcmp(RC_DIR, "/etc")) {	message += "/etc/" RC_FILE ", ";      }      message += "or ";      message += prog_config.homedir + "/." RC_FILE "\n";    }    else {      message =  "Can't find or open file " RC_DIR "/"  RC_FILE "\n";      if (std::strcmp(RC_DIR, "/etc")) {	message += "or /etc/" RC_FILE "\n";      }    }    write_error(message.c_str());  }  else {// now extract settings from file    std::ifstream filein(rcfile.c_str(), std::ios::in);    if (!filein) {      std::string message("Can't open file ");      message += rcfile;      write_error(message.c_str());    }    else {      std::string file_read;      Glib::ustring result;      while (std::getline(filein, file_read)) {	if (!file_read.empty() && file_read[0] != '#') { // valid line to check	  // now check for other comment markers	  std::string::size_type pos = file_read.find_first_of('#');	  if (pos != std::string::npos) file_read.resize(pos); // truncate		  // look for "NAME:"	  if (get_prog_parm("NAME:", file_read, result)) {	    identity_table.set_name(result);	  }		  // look for "NUMBER:"	  else if (get_prog_parm("NUMBER:", file_read, result)) {	    identity_table.set_number(result);	  }		  // look for "DEVICE:"	  else if (get_prog_parm("DEVICE:", file_read, result)) {	    modem_table.set_device(result);	  }		  // look for "LOCK:"	  else if (get_prog_parm("LOCK:", file_read, result, Glib::filename_to_utf8)) {	    modem_table.set_lock(result);	  }	  // look for "CLASS:"	  else if (get_prog_parm("CLASS:", file_read, result)) {	    modem_table.set_class(result);	  }	  // look for "PAGE:"	  else if (get_prog_parm("PAGE:", file_read, result)) {	    page_table.set_page(result);	  }	  // look for "RES:"	  else if (get_prog_parm("RES:", file_read, result)) {	    page_table.set_res(result);	  }		  // look for "RINGS:"	  else if (get_prog_parm("RINGS:", file_read, result)) {	    modem_table.set_rings(result);	  }		  // look for "DIALMODE:"	  else if (get_prog_parm("DIALMODE:", file_read, result)) {	    modem_table.set_dialmode(result);	  }		  // look for "INIT:"	  else if (get_prog_parm("INIT:", file_read, result)) {	    parms_table.set_init(result);	  }		  // look for "RESET:"	  else if (get_prog_parm("RESET:", file_read, result)) {	    parms_table.set_reset(result);	  }	  // look for "CAPABILITIES:"	  else if (get_prog_parm("CAPABILITIES:", file_read, result)) {	    modem_table.set_capabilities(result);	  }	  // look for "PARMS:"	  else if (get_prog_parm("PARMS:", file_read, result)) {	    parms_table.set_parms(result);	  }	  // look for "PRINT_CMD:"	  else if (get_prog_parm("PRINT_CMD:", file_read, result)) {	    print_table.set_command(result);	  }	  // look for "PRINT_SHRINK:"	  else if (get_prog_parm("PRINT_SHRINK:", file_read, result)) {	    print_table.set_shrink(result);	  }	  // look for "PRINT_POPUP:"	  else if (get_prog_parm("PRINT_POPUP:", file_read, result)) {	    print_table.set_popup(result);	  }	  // look for "PS_VIEWER:"	  else if (get_prog_parm("PS_VIEWER:", file_read, result)) {	    view_table.set_ps_view_command(result);	  }	  // look for "SOCK_SERVER:"	  else if (get_prog_parm("SOCK_SERVER:", file_read, result)) {	    sock_table.set_run_server(result);	  }	  // look for "SOCK_POPUP:"	  else if (get_prog_parm("SOCK_POPUP:", file_read, result)) {	    sock_table.set_popup(result);	  }	  // look for "SOCK_SERVER_PORT:"	  else if (get_prog_parm("SOCK_SERVER_PORT:", file_read, result)) {	    sock_table.set_port(result);	  }	  // look for "SOCK_CLIENT_ADDRESS:"	  else if (get_prog_parm("SOCK_CLIENT_ADDRESS:", file_read, result)) {	    sock_table.set_if_other_address(result);	  }	  // look for "SOCK_OTHER_ADDRESSES:"	  else if (get_prog_parm("SOCK_OTHER_ADDRESSES:", file_read, result)) {	    sock_table.set_other_addresses(result);	  }	  // look for "FAX_RECEIVED_POPUP:"	  else if (get_prog_parm("FAX_RECEIVED_POPUP:", file_read, result)) {	    receive_table.set_popup(result);	  }	  // look for "FAX_RECEIVED_EXEC:"	  else if (get_prog_parm("FAX_RECEIVED_EXEC:", file_read, result)) {	    receive_table.set_exec(result);	  }	  // look for "FAX_RECEIVED_PROG:"	  else if (get_prog_parm("FAX_RECEIVED_PROG:", file_read, result)) {	    receive_table.set_prog(result);	  }	  // look for "LOG_FILE:"	  else if (get_prog_parm("LOG_FILE:", file_read, result, Glib::filename_to_utf8)) {	    logging_table.set_logfile(result);	  }	}      }    }  }}void SettingsDialog::get_reset_settings_prompt(void) {  Glib::ustring message(gettext("Enter settings from "));  message += RC_DIR "/"  RC_FILE;  if (std::strcmp(RC_DIR, "/etc")) {    message += gettext(" or\n");    message += "/etc/" RC_FILE;  }  message += gettext("?");  PromptDialog* dialog_p = new PromptDialog(message, gettext("Reset settings"), standard_size, *this);  dialog_p->accepted.connect(sigc::mem_fun(*this, &SettingsDialog::get_reset_settings)); 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -