diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 8a1baec..0000000 --- a/.gitignore +++ /dev/null @@ -1,13 +0,0 @@ -.* -*.class - -# Mobile Tools for Java (J2ME) -.mtj.tmp/ - -# Package Files # -*.jar -*.war -*.ear - -# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml -hs_err_pid* diff --git a/README.md b/README.md deleted file mode 100644 index 6467a8e..0000000 --- a/README.md +++ /dev/null @@ -1,16 +0,0 @@ -# ChatApp -Base repo for collective 2-year students' project - -## Инструкция -1. **Один** из членов команды делает **"fork"** этого репозитория в своем аккаунте. -2. **Каждый** член команды клонирует форк из п.1 *локально* у себя на ПК во **временную папку**: git clone http://github.com/your_boss_account/ChatApp tmp_dir -3. Каждый создает у себя проект в Eclipse (или другой IDE). -4. Перемещает все содержимое папки tmp_dir в папку с вновь созданным проектом (в том числе скрытые элементы .git и .gitignore!) -5. "Босс" из п.1 дает доступ на запись в свой репозиторий каждому участнику команды (settings->collaborators) - -## Далее -Javadoc на классы от преподавателя можно посмотреть **тут**: http://dimalit.github.io/ChatApp/index.html - -Стандартный цикл разработки: git pull - git add - git commit - git push - -Как тут: http://rogerdudler.github.io/git-guide/ diff --git a/objects/12/a3451cef2e642c9fd9eab7b4b3ad4b17d7b2e7 b/objects/12/a3451cef2e642c9fd9eab7b4b3ad4b17d7b2e7 new file mode 100644 index 0000000..308992c Binary files /dev/null and b/objects/12/a3451cef2e642c9fd9eab7b4b3ad4b17d7b2e7 differ diff --git a/objects/17/443b3e16942feb776754978f8a8485ffbcaf84 b/objects/17/443b3e16942feb776754978f8a8485ffbcaf84 new file mode 100644 index 0000000..7faa5a0 Binary files /dev/null and b/objects/17/443b3e16942feb776754978f8a8485ffbcaf84 differ diff --git a/objects/18/b984a27ded49243f2bc5e2e8aff818e2b14ec0 b/objects/18/b984a27ded49243f2bc5e2e8aff818e2b14ec0 new file mode 100644 index 0000000..aac96c9 --- /dev/null +++ b/objects/18/b984a27ded49243f2bc5e2e8aff818e2b14ec0 @@ -0,0 +1,3 @@ +x-PMJPvS;ԕzkLIUZWHLB_M^ͤzL~GzT y.4G- +Myr! jBБ^!]dzc >^ +㣫$l5O5ʣ3ڃrT nf/fVs:Yn+g4cѕJȎ@mx7^$ݖpj UI{'d_Mq@(pnb7f`$4~j;=MBa׼hz%W< 8̔J/YVު%ٔdIDHE*rڕ;ׅ锁ƀwX3F# ,E0ZßtId 'KI4 5ܫ?.TAބZڸh6PΌ%ŕ`#E̲Қ3E!s;r`Ċw[K2&|G`rƘr@ST"c)el;G /󝁖=(ָ㌧N:m +OD$cci[קON>r,Ü*[N\T4Óy\?XlLBHḅwqy60s t$0Iu`%+2E4Z «_ Cpt}P59C0TJqt(fC/ + d2^>-AHcڗ|tz%j7¦b Ϥs훪nekw~SA[BR:~k|NoӾ7Dp ~utZd樨2l媌10]mezb+s+HyM0%FޖϘH]7+.K*B0eRʵ\0t:f5^ƖpރtxeƭWMcs빮_#`ύ P42S_2%&/;,$'{QP!p[psdݳ4)3 +k~VSLtNx|iONVdx NU!ѐ3B|i;`B2K I6r{th iFV`zA0i֭t!lO`kbNLՊdzq}ѰQD"GgqsQ\ջ[(GZB"O;P3 {O1ljT%SSi))䘍s'Gcp[{"ZW\xMU MʩB1g>Lե>쏱CEE||Zt+\0#;qQ109-[e+P(m@ܜ|Eu-eDJ=^p*S/Cș(=ڔz^-/X>ItAr?4<OP"T2ETΰ$j哹!-֢H6X>Ytc$٪Ed"3!OOvX 逦s 8A~!A( \N[ccyWx'mº<07/I˔"0>`B)\ Z/F3 .'G9KMR+ ڷOؙ7:A \ No newline at end of file diff --git a/objects/8b/137891791fe96927ad78e64b0aad7bded08bdc b/objects/8b/137891791fe96927ad78e64b0aad7bded08bdc new file mode 100644 index 0000000..9d8f605 Binary files /dev/null and b/objects/8b/137891791fe96927ad78e64b0aad7bded08bdc differ diff --git a/objects/8c/d8d58841728376773cc0d45f3258325ceedf8b b/objects/8c/d8d58841728376773cc0d45f3258325ceedf8b new file mode 100644 index 0000000..6ddfcdd Binary files /dev/null and b/objects/8c/d8d58841728376773cc0d45f3258325ceedf8b differ diff --git a/objects/8d/9c02ea6fb05f1cb9f792dece58b373fe9d9662 b/objects/8d/9c02ea6fb05f1cb9f792dece58b373fe9d9662 new file mode 100644 index 0000000..1afa32a Binary files /dev/null and b/objects/8d/9c02ea6fb05f1cb9f792dece58b373fe9d9662 differ diff --git a/objects/8d/c1618c7881e4eca8d293b0a34508f45542825f b/objects/8d/c1618c7881e4eca8d293b0a34508f45542825f new file mode 100644 index 0000000..14de9ac Binary files /dev/null and b/objects/8d/c1618c7881e4eca8d293b0a34508f45542825f differ diff --git a/objects/91/74500140abb5b2f28b7dfd07561b001ee21c1c b/objects/91/74500140abb5b2f28b7dfd07561b001ee21c1c new file mode 100644 index 0000000..8df575a Binary files /dev/null and b/objects/91/74500140abb5b2f28b7dfd07561b001ee21c1c differ diff --git a/objects/99/b9893c46ea56e957dc5d46f48ae61219dd701b b/objects/99/b9893c46ea56e957dc5d46f48ae61219dd701b new file mode 100644 index 0000000..2b63712 Binary files /dev/null and b/objects/99/b9893c46ea56e957dc5d46f48ae61219dd701b differ diff --git a/objects/9a/3547db180348562569b6b8ed7d497b82b5fd07 b/objects/9a/3547db180348562569b6b8ed7d497b82b5fd07 new file mode 100644 index 0000000..d1f9858 Binary files /dev/null and b/objects/9a/3547db180348562569b6b8ed7d497b82b5fd07 differ diff --git a/objects/9b/31df0bda7f10922a5b96250c3dde8df0dac70d b/objects/9b/31df0bda7f10922a5b96250c3dde8df0dac70d new file mode 100644 index 0000000..26d7eb2 Binary files /dev/null and b/objects/9b/31df0bda7f10922a5b96250c3dde8df0dac70d differ diff --git a/objects/a4/9bc19dd03a0f9bcc5f5a1e6b0ea09c416ad4f3 b/objects/a4/9bc19dd03a0f9bcc5f5a1e6b0ea09c416ad4f3 new file mode 100644 index 0000000..728b735 Binary files /dev/null and b/objects/a4/9bc19dd03a0f9bcc5f5a1e6b0ea09c416ad4f3 differ diff --git a/objects/a5/06dd3ea15388adad710025216712a57b2dc114 b/objects/a5/06dd3ea15388adad710025216712a57b2dc114 new file mode 100644 index 0000000..e8e3369 Binary files /dev/null and b/objects/a5/06dd3ea15388adad710025216712a57b2dc114 differ diff --git a/objects/a8/db3442c376415ddf591a108e7902f3206f7713 b/objects/a8/db3442c376415ddf591a108e7902f3206f7713 new file mode 100644 index 0000000..a11d6c6 Binary files /dev/null and b/objects/a8/db3442c376415ddf591a108e7902f3206f7713 differ diff --git a/objects/ac/a287e2931fbbe99f494685cbddf1042f807683 b/objects/ac/a287e2931fbbe99f494685cbddf1042f807683 new file mode 100644 index 0000000..303cb1e Binary files /dev/null and b/objects/ac/a287e2931fbbe99f494685cbddf1042f807683 differ diff --git a/objects/ad/e917b5eacabd770322b0c4db476f97ac0257d2 b/objects/ad/e917b5eacabd770322b0c4db476f97ac0257d2 new file mode 100644 index 0000000..dbd957b Binary files /dev/null and b/objects/ad/e917b5eacabd770322b0c4db476f97ac0257d2 differ diff --git a/objects/b1/498b4007b0e35a96598ccd23f1af2a94120a3e b/objects/b1/498b4007b0e35a96598ccd23f1af2a94120a3e new file mode 100644 index 0000000..960e542 Binary files /dev/null and b/objects/b1/498b4007b0e35a96598ccd23f1af2a94120a3e differ diff --git a/objects/b6/63b847be2524d8a3292eec29330e66b06f63bf b/objects/b6/63b847be2524d8a3292eec29330e66b06f63bf new file mode 100644 index 0000000..21aa1dc Binary files /dev/null and b/objects/b6/63b847be2524d8a3292eec29330e66b06f63bf differ diff --git a/objects/b6/9fa313d6b67464cee7db7dca9e6be19f72932b b/objects/b6/9fa313d6b67464cee7db7dca9e6be19f72932b new file mode 100644 index 0000000..a18879a Binary files /dev/null and b/objects/b6/9fa313d6b67464cee7db7dca9e6be19f72932b differ diff --git a/objects/b9/0e2b4ca5f5c5d33d26e2951fc04c69a1d2ed1a b/objects/b9/0e2b4ca5f5c5d33d26e2951fc04c69a1d2ed1a new file mode 100644 index 0000000..9e18fc9 Binary files /dev/null and b/objects/b9/0e2b4ca5f5c5d33d26e2951fc04c69a1d2ed1a differ diff --git a/objects/c6/f8a10b65aab0fa4c097e77cc98d1bee4764c44 b/objects/c6/f8a10b65aab0fa4c097e77cc98d1bee4764c44 new file mode 100644 index 0000000..e20b86d Binary files /dev/null and b/objects/c6/f8a10b65aab0fa4c097e77cc98d1bee4764c44 differ diff --git a/objects/c7/99f5703780f9370313ca50de1b506838968bd5 b/objects/c7/99f5703780f9370313ca50de1b506838968bd5 new file mode 100644 index 0000000..3de1990 Binary files /dev/null and b/objects/c7/99f5703780f9370313ca50de1b506838968bd5 differ diff --git a/objects/cc/64e410dc7ff16c9c401939d1ce75f5be4b0dcf b/objects/cc/64e410dc7ff16c9c401939d1ce75f5be4b0dcf new file mode 100644 index 0000000..aabc222 --- /dev/null +++ b/objects/cc/64e410dc7ff16c9c401939d1ce75f5be4b0dcf @@ -0,0 +1,2 @@ +xMN0@a9+!Hѣ㱈H8RC誕 +gpoD ,ӣ]~}kvv}# format : ChatApp 2015 user (busy) + public void sendNickHello(String ver, String nick){ + StringBuilder str = new StringBuilder(); + str.append(ver + " user " + nick + "\n"); + printer.print(str.toString()); + printer.flush(); + } + public void sendNickBusy(String ver, String nick){ + StringBuilder str = new StringBuilder(); + str.append(ver + " user " + nick + " busy" + "\n"); + printer.print(str.toString()); + printer.flush(); + } + public void send(String message){ + printer.print("Message"); + printer.flush(); + printer.print(message); + printer.flush(); + } +} diff --git a/src/Const.java b/src/Const.java new file mode 100644 index 0000000..a549ce9 --- /dev/null +++ b/src/Const.java @@ -0,0 +1,5 @@ + +public class Const { + public static final String VER = "ChatApp 2015"; + public static final String NICK = "unnamed"; +} diff --git a/src/MainForm.java b/src/MainForm.java new file mode 100644 index 0000000..bb68959 --- /dev/null +++ b/src/MainForm.java @@ -0,0 +1,81 @@ +import java.awt.Color; +import java.awt.Font; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JTextArea; +import javax.swing.JTextField; +import javax.swing.SwingUtilities; + + +public class MainForm extends JFrame{ + + private JTextArea dialog = new JTextArea(); // dialogue history + private JTextField msg = new JTextField(); // new message + private JTextField locNick = new JTextField(); // local nick + private JTextField rmtAddr = new JTextField(); // remote address + private JTextField rmtNick = new JTextField();// remote nick + private JLabel localN = new JLabel("Local nick"); + private JLabel remoteAdr = new JLabel("Remote address"); + private JLabel remoteN = new JLabel("Remote nick"); + private JButton apply = new JButton("Apply"); + private JButton con = new JButton("Connect"); + private JButton discon = new JButton("Disconnect"); + private JButton send = new JButton("Send"); + + public MainForm(){ + setTitle("ChatApp 2015"); + setResizable(false); + setBounds(100, 100, 800,500); + setLayout(null); + + Font font = localN.getFont().deriveFont(15f); + + localN.setBounds(10, 20, 130, 20); + localN.setFont(font); + add(localN); + locNick.setBounds(135, 15, 150, 30); + add(locNick); + apply.setBounds(290, 15, 90, 30); + add(apply); + + remoteAdr.setBounds(10, 60, 130, 20); + remoteAdr.setFont(font); + add(remoteAdr); + rmtAddr.setBounds(135, 55, 150, 30); + add(rmtAddr); + con.setBounds(290, 55, 90, 30); + add(con); + + remoteN.setBounds(410, 20, 130, 20); + remoteN.setFont(font); + add(remoteN); + rmtNick.setBounds(520, 15, 150, 30); + add(rmtNick); + discon.setBounds(675, 15, 110, 30); + add(discon); + + dialog.setBounds(50, 100, 700, 300); + add(dialog); + + msg.setBounds(dialog.getX(), 420, 590, 30); + add(msg); + + send.setBounds(msg.getX() + msg.getWidth() + 10, 420, 100, 30); + add(send); + + setVisible(true); + } + + public static void main(String[] args) { + SwingUtilities.invokeLater(new Runnable() { + + @Override + public void run() { + MainForm form = new MainForm(); + } + }); + } + +} diff --git a/src/MessageCommand.java b/src/MessageCommand.java new file mode 100644 index 0000000..6d94880 --- /dev/null +++ b/src/MessageCommand.java @@ -0,0 +1,15 @@ +/** + * Created by user on 03.11.2015. + */ +public class MessageCommand extends Command { + private String message; + + public MessageCommand(String message) { + super(CommandType.MESSAGE); + this.message = message; + } + + public String toString(){ + return message; + } +} diff --git a/src/NickCommand.java b/src/NickCommand.java new file mode 100644 index 0000000..2209d0a --- /dev/null +++ b/src/NickCommand.java @@ -0,0 +1,22 @@ +/** + * Created by user on 03.11.2015. + */ +public class NickCommand extends Command { + private boolean busy; + private String nick; + private String version; + + public NickCommand(boolean busy, String nick, String version) { + super(CommandType.NICK); + this.busy = busy; + this.nick = nick; + this.version = version; + } + + public String toString(){ + if(busy) + return version + " nick " + nick + " busy"; + else + return version + " nick " + nick; + } +}