1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24 #ifndef _PAD_COMMANDDLG_HXX_ 25 #define _PAD_COMMANDDLG_HXX_ 26 27 #include <vcl/dialog.hxx> 28 #include <tools/config.hxx> 29 #ifndef _SV_BUTTON_HXX 30 #include <vcl/button.hxx> 31 #endif 32 #include <vcl/fixed.hxx> 33 #include <vcl/group.hxx> 34 #include <vcl/combobox.hxx> 35 #include <vcl/lstbox.hxx> 36 #include <vcl/field.hxx> 37 #include <vcl/tabpage.hxx> 38 39 #include <list> 40 41 namespace padmin { 42 43 class RTSDialog; 44 45 class CommandStore 46 { 47 static void getStoredCommands( const char* pGroup, ::std::list< String >& rCommands ); 48 static void getSystemPrintCommands( ::std::list< String >& rCommands ); 49 static void getSystemPdfCommands( ::std::list< String >& rCommands ); 50 static void setCommands( const char* pGroup, const ::std::list< String >& rCommands, const ::std::list< String >& rSysCommands ); 51 52 public: 53 static void getPrintCommands( ::std::list< String >& rCommands ); 54 static void getFaxCommands( ::std::list< String >& rCommands ); 55 static void getPdfCommands( ::std::list< String >& rCommands ); 56 57 static void setPrintCommands( const ::std::list< String >& rCommands ); 58 static void setFaxCommands( const ::std::list< String >& rCommands ); 59 static void setPdfCommands( const ::std::list< String >& rCommands ); 60 }; 61 62 class RTSCommandPage : public TabPage 63 { 64 private: 65 RTSDialog* m_pParent; 66 67 ComboBox m_aCommandsCB; 68 CheckBox m_aExternalCB; 69 FixedText m_aQuickFT; 70 ComboBox m_aQuickCB; 71 FixedLine m_aCommandTitle; 72 FixedText m_aPrinterName; 73 FixedText m_aConnectedTo; 74 FixedLine m_aPrinterFL; 75 76 FixedText m_aConfigureText; 77 ListBox m_aConfigureBox; 78 sal_uInt16 m_nPrinterEntry; 79 sal_uInt16 m_nFaxEntry; 80 sal_uInt16 m_nPdfEntry; 81 FixedText m_aPdfDirectoryText; 82 PushButton m_aPdfDirectoryButton; 83 Edit m_aPdfDirectoryEdit; 84 CheckBox m_aFaxSwallowBox; 85 86 PushButton m_aHelpButton; 87 PushButton m_aRemovePB; 88 89 ::std::list< String > m_aPrinterCommands; 90 ::std::list< String > m_aFaxCommands; 91 ::std::list< String > m_aPdfCommands; 92 93 String m_aFaxHelp; 94 String m_aPrinterHelp; 95 String m_aPdfHelp; 96 97 bool m_bWasFax; 98 bool m_bWasPdf; 99 bool m_bWasExternalDialog; 100 101 DECL_LINK( DoubleClickHdl, ComboBox* ); 102 DECL_LINK( ClickBtnHdl, Button* ); 103 DECL_LINK( SelectHdl, Control* ); 104 DECL_LINK( ModifyHdl, Edit* ); 105 106 void ConnectCommand(); 107 void UpdateCommands(); 108 109 public: 110 RTSCommandPage( RTSDialog* ); 111 ~RTSCommandPage(); 112 113 void save(); 114 }; 115 116 } // namespace 117 118 #endif 119